Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: branac_rocky poslato Decembar 06, 2015, 18:39:27 POSLE PODNE

Naslov: [POMOC] Toplista
Poruka od: branac_rocky poslato Decembar 06, 2015, 18:39:27 POSLE PODNE
Skripta koju koristim: Nebitno
Detaljan opis problema: Treba mi savjet kako bi nesto mogao poredat od najveceg do najmanjeg.
Dio skripte:

[pawn]
//primjerdajem
new nekibroj = 50;
new nekibroj1 = 52;
new nekibroj2 = 79;
new nekibroj3 = 103;
new nekibroj4 = 59;
new nekibroj5 = 1;


[/pawn]
Kako bi mogao napraviti da mi ispise te brojeve od najveceg do najmanjeg?
Neke slike/video za lakse dobivanje pomoci(neobavezno):
Naslov: Odg: [POMOC] Toplista
Poruka od: קlเשค poslato Decembar 10, 2015, 15:45:04 POSLE PODNE
Imas mnogo algoritama koji se koriste za rasporeÄ'ivanje vrijednosti od manje prema većoj ili obratno. Jedni od takvih su
Marge -Sort, Bubble-Sort, Quick-Sort etc.

Ako se ne želiš zamarati s njima jednostavno ispitaj da li igrac ima vecu ili manju vrijednost od trenutne.

Primjer:

[pawn]
new topkiller[5]={-1,...};//Varijabla u koju spremi ID-eve. Kasnije se moze koristiti funkcija GetPlayerName() etc..
                     //topkiller[0] predstavlja ID s najviÅ¡e ubistava

foreach(Player,i)
         {
            if(GetPVarInt(i,"Kills") > GetPVarInt(topkiller[0],"Kills")) {topkiller[4]=topkiller[3];topkiller[3]=topkiller[2];topkiller[2]=topkiller[1];topkiller[1]=topkiller[0];topkiller[0]=i;continue;}
            if(GetPVarInt(i,"Kills") > GetPVarInt(topkiller[1],"Kills")) {topkiller[4]=topkiller[3];topkiller[3]=topkiller[2];topkiller[2]=topkiller[1];topkiller[1]=i;continue;}
            if(GetPVarInt(i,"Kills") > GetPVarInt(topkiller[2],"Kills")) {topkiller[4]=topkiller[3];topkiller[3]=topkiller[2];topkiller[2]=i;continue;}
            if(GetPVarInt(i,"Kills") > GetPVarInt(topkiller[3],"Kills")) {topkiller[4]=topkiller[3];topkiller[3]=i;continue;}
            if(GetPVarInt(i,"Kills") > GetPVarInt(topkiller[4],"Kills")) {topkiller[4]=i;continue;}
         }

[/pawn]