hello, how can i make 5 top5 players?
1. Nick
Rank :
Exp :
2....
3....
4....
5....
i have menu . how make first position?
hello, how can i make 5 top5 players?
1. Nick
Rank :
Exp :
2....
3....
4....
5....
i have menu . how make first position?
Last edited by malyczolg; 29th June 2013 at 19:10.
Im not sure its possible to place dvars in quickresponse menus. If i'm wrong, then you get all players and sort them according to score, and set the first 5 player's name in cvars. (self setclientcvar("first", player[0].name); )
Of course it's possible.
PHP Code:
isPlayerAlongerHunterAsB(a, b)
{
if (a.lastTimeOfDeathAsHunter > b.lastTimeOfDeathAsHunter)
return 1;
else
return 0;
}
// sample-function for sort()
a_bigger_b(a, b)
{
if (a > b)
return 1;
else
return 0;
}
// slow, but works... cba for quicksort now
sort(elements, isAbiggerB)
{
for (i=0; i<elements.size; i++)
{
for (j=i+1; j<elements.size; j++)
{
//if (elements[i] < elements[j])
if (
! // big to small...
[[isAbiggerB]](elements[i], elements[j])
)
{
// swap
tmp = elements[j];
elements[j] = elements[i];
elements[i] = tmp;
}
}
}
return elements;
}
Example:
PHP Code:
elements = [];
elements[elements.size] = 6;
elements[elements.size] = 3;
elements[elements.size] = 7;
elements[elements.size] = 34;
elements[elements.size] = 2;
elements[elements.size] = 6;
elements[elements.size] = 3;
elements[elements.size] = 5;
elements[elements.size] = 0;
elements[elements.size] = 2;
sorted = sort(elements, ::a_bigger_b);
iprintln("sorted.size="+sorted.size);
for (i=0; i<elements.size; i++)
iprintln("sorted["+i+"]=" + sorted[i]);
timescale 0.01
And menu dvar file looks something like this:
PHP Code:
itemDef
{
name "window"
group ingamebox
visible 1
rect 16 16 0 0
origin ORIGIN_QUICKMESSAGEWINDOW
forecolor 1 1 1 1
textfont UI_FONT_NORMAL
textscale .24
textaligny 8
dvar "your_dvar_name"
decoration
}
guiismiti (7th December 2014)
something a bit faster than kung's method:
PHP Code:
sort(elements, max_sort)
{
if(elements.size < max_sort)
max_sort = elements.size;
result = [];
for(i = 0; i < max_sort; i++)
{
smallest = undefined;
num = elements.size - i - 1;
for(j = 0; j < elements.size - i; j++)
{
if(!isdefined(smallest) || elements[j] < smallest)
{
smallest = elements[j];
num = j;
}
}
elements[num] = elements[elements.size - i - 1];
elements[elements.size - i - 1] = smallest;
result[result.size] = smallest;
}
return result;
}
kung foo man (30th June 2013)
The function signature is incompatible though
timescale 0.01