Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie
Edycja Pluginu

Edycja Ranga

edycja pluginu

  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
2 odpowiedzi w tym temacie

#1 Hiko

    Wszechpomocny

  • Użytkownik

Reputacja: 34
Życzliwy

  • Postów:302
Offline

Napisano 30.10.2016 18:45

Witam Posiadam rangi klpsq i one nie raz dzialaja poprawnie a nie raz rangi same sie zmieniaja ;x Naprawi to ktoś . 

Sma :

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <csx>


#define TASK 666

#define PLUGIN "RangiCSGO"
#define VERSION "1.3"
#define AUTHOR "`Burdavsky"


new ranga[33];
new cvar
new sync;
new const limit = 18;
new const limit_min = 1
new const rangi[][] = {
	{5, "Silver I"},
	{15, "Silver II"},
	{30, "Silver III"},
	{50, "Silver IV"},
	{75, "Silver elite"},
	{100, "Silver elite master"},
	{150, "Gold nova I"},
	{200, "Gold nova II"},
	{300, "Gold nova III"},
	{500, "Gold nova master"},
	{750, "Master guardian I"},
	{1000, "Master guardian II"},
	{1500, "Master guardian elite"},
	{2000, "Distinguished master guardian"},
	{2500, "Legendary eagle"},
	{3000, "Legendary eagle master"},
	{5000, "Supreme master first class"},
	{999999, "THE GLOBAL ELITE"}
}
new Float:liczby[] = {0.55, 0.6, 0.65, 0.7, 0.75, 0.8, 0.85, 0.9, 0.95, 1.0, 1.05, 1.1, 1.15, 1.2, 1.25, 1.3, 1.35, 2000.0}
public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	register_clcmd("say /rangi", "motd")
	register_message(get_user_msgid("SayText"), "Prefix");
	sync = CreateHudSyncObj()
	register_cvar("rangi_kolor", "0")
	

}

public client_connect(id)
{
    
	new param[1]
	param[0] = id
	set_task(1.0,"rank",TASK+id,param,1, "b")
}

public client_disconnect(id)
{
	if(task_exists(TASK+id))
	remove_task(TASK+id)
}
public rank(param[])
{
	new id = param[0]
	new stats[8]
	new body[8]
	get_user_stats(id, stats, body)		
	if(!is_user_alive(id))
	{
		id = pev(id, pev_iuser2);
		if(!id)
			id = param[0]
	}
	
	new Float:kdratio[33]
	kdratio[id] = float(stats[0]) / float(stats[1])


	if(kdratio[id] >= liczby[ranga[id]] && stats[0] >= rangi[ranga[id]][0] && ranga[id] < limit)
		ranga[id]++

	if(kdratio[id] < liczby[ranga[id]] && ranga[id] > limit_min)
		ranga[id]--
		
	new name[33]
	get_user_name(id,name,32)
	cvar = get_cvar_num("rangi_kolor")
	switch(cvar)
	{
		case 0:
		{
			set_hudmessage(255, 255, 255, 0.01, 0.22)
			ShowSyncHudMsg(id, sync, "[CSGO]^n[Nick: %s]^n[Ranga: %s]^n[Zabojstwa: %d]^n[Stosunek: %0.2f%]", name , rangi[ranga[id]][1], stats[0], kdratio[id])
		}
		case 1:
		{
			set_hudmessage(255, 0, 0, 0.01, 0.22)
			ShowSyncHudMsg(id, sync, "[CSGO]^n[Nick: %s]^n[Ranga: %s]^n[Zabojstwa: %d]^n[Stosunek: %0.2f%]", name , rangi[ranga[id]][1], stats[0], kdratio[id])
		}
		case 2:
		{
			set_hudmessage(0, 255, 0, 0.01, 0.22)
			ShowSyncHudMsg(id, sync, "[CSGO]^n[Nick: %s]^n[Ranga: %s]^n[Zabojstwa: %d]^n[Stosunek: %0.2f%]", name , rangi[ranga[id]][1], stats[0], kdratio[id])	
		}
		case 3:
		{
			set_hudmessage(0, 0, 255, 0.01, 0.22)
			ShowSyncHudMsg(id, sync, "[CSGO]^n[Nick: %s]^n[Ranga: %s]^n[Zabojstwa: %d]^n[Stosunek: %0.2f%]", name , rangi[ranga[id]][1], stats[0], kdratio[id])
		}
	}
  return PLUGIN_CONTINUE;
}
public Prefix(msgId,msgDest,msgEnt)
{
	new id = get_msg_arg_int(1);
	if(!is_user_connected(id))
		return PLUGIN_CONTINUE;
		
	new szTmp[256],szTmp2[256];
	get_msg_arg_string(2,szTmp, charsmax( szTmp ) )
	new szPrefix[64];
	
	formatex(szPrefix,charsmax( szPrefix ),"^x04[^x04%s^x04]^x03", rangi[ranga[id]][1]);
	
	if(!equal(szTmp,"#Cstrike_Chat_All"))	{
		add(szTmp2,charsmax(szTmp2),szPrefix);
		add(szTmp2,charsmax(szTmp2)," ");
		add(szTmp2,charsmax(szTmp2),szTmp);
	}else{
		add(szTmp2,charsmax(szTmp2),szPrefix);
		add(szTmp2,charsmax(szTmp2),"^x03%s1^x01 : %s2");
	}
	set_msg_arg_string(2,szTmp2);
		
	return PLUGIN_CONTINUE;
}
public motd(id)
	if(is_user_connected(id))
		show_motd(id, "rangi.txt", "Rangi na serwerze");


/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1045\\ f0\\ fs16 \n\\ par }
*/


  • +
  • -
  • 0

POMAGAM NA ILE TYLKO POTRAFIĘ !

 

 


#2 _McHappy

    Wszechwiedzący

  • Support Team

Reputacja: 243
Wszechwidzący

  • Postów:501
  • GG:
  • Imię:Radek
  • Lokalizacja:Tak
Offline

Napisano 30.10.2016 18:57

Rangi się zmieniają, bo system opiera się na wyliczaniu stosunku zabójstw do śmierci. Jeżeli współczynnik będzie miał odpowiednio niską wartość, to Twoja ranga spadnie.
Opisz dokładniej, jak te rangi Ci się zmieniają, tzn. nagle się resetują, czy też jedynie zmieniają się w zakresie +/- 2
  • +
  • -
  • 0

#3 Hiko

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 34
Życzliwy

  • Postów:302
Offline

Napisano 30.10.2016 19:10

Jest tak ze gram i mam stosunek : 1,5 i zabije 2 graczy to nagle mi się pojawia ranga np. Master Guardia 1 ale za rundę wraca do mojej rangi
  • +
  • -
  • 0

POMAGAM NA ILE TYLKO POTRAFIĘ !

 

 






Również z jednym lub większą ilością słów kluczowych: edycja pluginu

Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych