[Ajuda] Rank nгo da resultado dos dias VIP
#1

Ola galera, bom tenho um sistema de rank mas so que ele nгo esta dando resultado dos dias vip, ele funciona com outras variбveis mas com a variбvel do VIP ele nгo funciona...

Код:
new Top10Vip[10];

stock CheckRanking(playerid)
{
    new ValorDeleVip = converteNumber(PlayerVip[playerid]-gettime()), NomeDeleVip[32];
    GetPlayerName(playerid, NomeDeleVip, 32);
    for(new i; i < 10; i++)
    {
        if(ValorDeleVip < Top10Vip[i] && strcmp(NomeRank[i], NomeDeleVip, true) == 0)
            NomeRank[i] = "Ninguem";

        if(i == 0 &&ValorDeleVip > Top10Vip[i])
        {
            format(NomeRank[i], 32, "%s", NomeDeleVip);
            Top10Vip[i] = converteNumber(PlayerVip[playerid]-gettime());
        }
        else if(ValorDeleVip > Top10Vip[i] && ValorDeleVip < Top10Vip[i-1])
        {
            format(NomeRank[i], 32, "%s", NomeDeleVip);
            Top10Vip[i] = converteNumber(PlayerVip[playerid]-gettime());
        }
    }
}
Dialog do comando /topvip
Код:
    CheckRanking(playerid);
    new string[600], str[600];
    for(new i; i < 10; i++)
    {
        format(string, sizeof string, "{ae2e30}%dє-{FFFFFF} %s - {ae2e30}Vip:{FFFFFF} %d \n", i+1, NomeRank[i], Top10Vip[i]);
    strcat(str, string);
    }
    ShowPlayerDialog(playerid, DIALOG_TOP10+1, DIALOG_STYLE_LIST, "Top 10 Vip", str, "ok", "");
Stock Converte

Код:
stock converteNumber(n)
{
    new dia, hr, mn, seg, resto;

    resto = n;
    seg = resto % 60;
    resto /= 60;
    mn = resto % 60;
    resto /= 60;
    hr = resto % 24;
    resto /= 24;
    dia = resto;

    new str[50];
    format(str, sizeof(str), "%ddias, %02dh %02dm %02ds", dia, hr, mn, seg);
    return str;
}
Reply
#2

Primeiro isso nгo й bem um ranking entгo eu criei um para vc
lembrando para usar esse ranking um exemplo


Код:
CMD:ranking(playerid, params[]) {
MostrarMenuRanks(playerid);
}
Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 9600) //RANKINGS
{
	if(!response){return 1;}
	if(listitem == 0) ShowTopTenScoreForPlayer(playerid);
	return 1;
}
return 0;    
}

stock MostrarMenuRanks(playerid)
{
ShowPlayerDialog(playerid,9600,DIALOG_STYLE_LIST,"Escolha o  desejado:","1.\tRanking de vips","Mostrar","Voltar");
return 1;
}


stock ShowTopTenScoreForPlayer(playerid)
{
new MaxData[11];
new MaxDataID[11];
new bool:OnTheRank[MAX_PLAYERS];
new DataSource[MAX_PLAYERS];
new Ranking[570];
new DialogString[1000];

for(new i; i < GetMaxPlayers(); i++)
{
	if(IsPlayerConnected(i)) DataSource[i] = GetPlayerScore(i); //Onde ta GetPlayerScore vc colocar variavel de vip
}

for(new i; i < 11; i++){MaxData[i] = -1;MaxDataID[i] = -1;} //Preparar variбveis

for(new i; i < GetMaxPlayers(); i++) // Posiзгo 1є
{
    if(IsPlayerConnected(i))
    {
		if(DataSource[i] > MaxData[1])
		{
		MaxData[1] = DataSource[i];
		MaxDataID[1] = i;
		}
	}
}
if(MaxDataID[1] != -1) OnTheRank[MaxDataID[1]] = true;

for(new i; i < GetMaxPlayers(); i++) // Posiзгo 2є
{
    if(IsPlayerConnected(i))
    {
		if(DataSource[i] > MaxData[2] && DataSource[i] <= MaxData[1] && MaxDataID[1] != i && OnTheRank[i] == false)
		{
		MaxData[2] = DataSource[i];
		MaxDataID[2] = i;
		}
	}
}
if(MaxDataID[2] != -1) OnTheRank[MaxDataID[2]] = true;

for(new i; i < GetMaxPlayers(); i++) // Posiзгo 3є
{
    if(IsPlayerConnected(i))
    {
		if(DataSource[i] > MaxData[3] && DataSource[i] <= MaxData[2] && MaxDataID[2] != i && OnTheRank[i] == false)
		{
		MaxData[3] = DataSource[i];
		MaxDataID[3] = i;
		}
	}
}
if(MaxDataID[3] != -1) OnTheRank[MaxDataID[3]] = true;

for(new i; i < GetMaxPlayers(); i++) // Posiзгo 4є
{
    if(IsPlayerConnected(i))
    {
		if(DataSource[i] > MaxData[4] && DataSource[i] <= MaxData[3] && MaxDataID[3] != i && OnTheRank[i] == false)
		{
		MaxData[4] = DataSource[i];
		MaxDataID[4] = i;
		}
	}
}
if(MaxDataID[4] != -1) OnTheRank[MaxDataID[4]] = true;

for(new i; i < GetMaxPlayers(); i++) // Posiзгo 5є
{
    if(IsPlayerConnected(i))
    {
		if(DataSource[i] > MaxData[5] && DataSource[i] <= MaxData[4] && MaxDataID[4] != i && OnTheRank[i] == false)
		{
		MaxData[5] = DataSource[i];
		MaxDataID[5] = i;
		}
	}
}
if(MaxDataID[5] != -1) OnTheRank[MaxDataID[5]] = true;

for(new i; i < GetMaxPlayers(); i++) // Posiзгo 6є
{
    if(IsPlayerConnected(i))
    {
		if(DataSource[i] > MaxData[6] && DataSource[i] <= MaxData[5] && MaxDataID[5] != i && OnTheRank[i] == false)
		{
		MaxData[6] = DataSource[i];
		MaxDataID[6] = i;
		}
	}
}
if(MaxDataID[6] != -1) OnTheRank[MaxDataID[6]] = true;

for(new i; i < GetMaxPlayers(); i++) // Posiзгo 7є
{
    if(IsPlayerConnected(i))
    {
		if(DataSource[i] > MaxData[7] && DataSource[i] <= MaxData[6] && MaxDataID[6] != i && OnTheRank[i] == false)
		{
		MaxData[7] = DataSource[i];
		MaxDataID[7] = i;
		}
	}
}
if(MaxDataID[7] != -1) OnTheRank[MaxDataID[7]] = true;

for(new i; i < GetMaxPlayers(); i++) // Posiзгo 8є
{
    if(IsPlayerConnected(i))
    {
		if(DataSource[i] > MaxData[8] && DataSource[i] <= MaxData[7] && MaxDataID[7] != i && OnTheRank[i] == false)
		{
		MaxData[8] = DataSource[i];
		MaxDataID[8] = i;
		}
	}
}
if(MaxDataID[8] != -1) OnTheRank[MaxDataID[8]] = true;

for(new i; i < GetMaxPlayers(); i++) // Posiзгo 9є
{
    if(IsPlayerConnected(i))
    {
		if(DataSource[i] > MaxData[9] && DataSource[i] <= MaxData[8] && MaxDataID[8] != i && OnTheRank[i] == false)
		{
		MaxData[9] = DataSource[i];
		MaxDataID[9] = i;
		}
	}
}
if(MaxDataID[9] != -1) OnTheRank[MaxDataID[9]] = true;

for(new i; i < GetMaxPlayers(); i++) // Posiзгo 10є
{
    if(IsPlayerConnected(i))
    {
		if(DataSource[i] > MaxData[10] && DataSource[i] <= MaxData[9] && MaxDataID[9] != i && OnTheRank[i] == false)
		{
		MaxData[10] = DataSource[i];
		MaxDataID[10] = i;
		}
	}
}
if(MaxDataID[10] != -1) OnTheRank[MaxDataID[10]] = true;

for(new i; i < 11; i++)
{
	if(MaxDataID[i] != -1)
	{
	new Name[MAX_PLAYER_NAME];
	GetPlayerName(MaxDataID[i], Name, sizeof(Name));
	format(Ranking, sizeof(Ranking), "%s\n%iє - {00FF00}%s(%i){FF5A00} - %i", Ranking,i,Name,MaxDataID[i],MaxData[i]);
	}
}

format(DialogString, sizeof(DialogString), "{FF5A00}%s\n\n{FFFF00}Esta lista exibe somente quem estб online",Ranking);
ShowPlayerDialog(playerid,9559,DIALOG_STYLE_MSGBOX,"Ranking de score",DialogString,"OK","Voltar");
return 1;}
ъltima coisa para pegar os dias de vip ele tem que salvar pq toda vem que o player vai logar jб sabe nй.
Reply
#3

E sim um sistema de rank, Ele nгo mostrar somente quem esta online, Quem estiver off tambйm aparece, So nгo botei o cуdigo completo porque nгo precisa...
Reply
#4

Certo, mas fala sobre o resultado dos dias vip.
Reply
#5

O resultado so aparece o numero 1
Reply
#6

me add skype para eu ajuda-lo skype:Marllun
Reply
#7

Quote:
Originally Posted by Marllun
Посмотреть сообщение
me add skype para eu ajuda-lo skype:Marllun
Vai precisar nгo mano, Obrigado ai pela atenзгo ai, rep++ pra tu ai, Consegui aqui sozinho, Eu fiz da seguinte forma, Na hora de checar eu botei a variбvel do vip (player[playerid][pvip]) e no comando eu botei pra converter e funciono, Obrigadгo fera... <3
Reply
#8

Й nуis kkk boa sorte com seus cуdigos kk
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)