SA-MP Forums Archive
[Pedido] Uma Mensagem Por Vez - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Pedido] Uma Mensagem Por Vez (/showthread.php?tid=652041)



Uma Mensagem Por Vez - BrGabrielBr - 01.04.2018

Bom queria enviar uma mensagem por vez do meu ranking

Code:
PHP код:
SetTimer("Ranking",400001);
public 
Ranking(playerid)
{
    new
    
Money,
    
Level,
    
Kill
    
;
    for(new 
0<= GetPlayerPoolSize(); i++)
    {
        if(
GetPlayerScore(i) > Level)
        {
            
Level GetPlayerScore(i);
        }
        if(
GetPlayerMoney(i) > Money)
        {
            
Money GetPlayerMoney(i);
        }
    }
    new 
String[500];
    
format(String,sizeof(String),"O jogador com maior level online й %s. Level atual : %d",Nome(playerid),Level);
    
SendClientMessageToAll(-1,String);
    
format(String,sizeof(String),"O jogador com mais dinheiro online й %s. Dinheiro atual : %d",Nome(playerid),Money);
    
SendClientMessageToAll(-1,String);

Tб indo as 2 mensagem de uma vez:
PHP код:
new String[500];
    
format(String,sizeof(String),"O jogador com maior level online й %s. Level atual : %d",Nome(playerid),Level);
    
SendClientMessageToAll(-1,String);
    
format(String,sizeof(String),"O jogador com mais dinheiro online й %s. Dinheiro atual : %d",Nome(playerid),Money);
    
SendClientMessageToAll(-1,String);




Re: Uma Mensagem Por Vez - Injury - 01.04.2018

Bem simples.
Aliбs, seu sistema estava meio errado, nгo que nгo iria funcionar, mas ia sempre mostrar o ID 0. Fixado!

Код:
SetTimerEx("Ranking", 40000, 0, "i", 0); 

public Ranking(id) 
{ 
    new 
        value, 
    	Kill,
	String[500],
     	playerid 
    ;

    switch(id)
    {
    	case 0:
    	{
            for(new i = 0; i <= GetPlayerPoolSize(); i++) 
            { 
	        if(GetPlayerScore(i) > value) 
		{ 
		    value = GetPlayerScore(i);
                    playerid = i; 
		}
	    }
            format(String,sizeof(String),"O jogador com maior level online й %s. Level atual : %d",Nome(playerid), value); 
            SendClientMessageToAll(-1,String); 		         
    	}
    	case 1:
    	{
            for(new i = 0; i <= GetPlayerPoolSize(); i++) 
	    {
	        if(GetPlayerMoney(i) > value) 
	        { 
	            value = GetPlayerMoney(i);
                    playerid = i; 
	        }         		
    	    }
            format(String,sizeof(String),"O jogador com mais dinheiro online й %s. Dinheiro atual : %d",Nome(playerid), value); 
	    SendClientMessageToAll(-1,String);     		
    	}  
    }
    SetTimerEx("Ranking", 40000, 0, "i", ++id % 2);
}



Re: Uma Mensagem Por Vez - BrGabrielBr - 01.04.2018

Quote:
Originally Posted by Injury
Посмотреть сообщение
Bem simples.
Aliбs, seu sistema estava meio errado, nгo que nгo iria funcionar, mas ia sempre mostrar o ID 0. Fixado!

Код:
SetTimerEx("Ranking", 40000, 0, "i", 0); 

public Ranking(id) 
{ 
    new 
        value, 
    	Kill,
	String[500],
     	playerid 
    ;

    switch(id)
    {
    	case 0:
    	{
            for(new i = 0; i <= GetPlayerPoolSize(); i++) 
            { 
	        if(GetPlayerScore(i) > value) 
		{ 
		    value = GetPlayerScore(i);
                    playerid = i; 
		}
	    }
            format(String,sizeof(String),"O jogador com maior level online й %s. Level atual : %d",Nome(playerid), value); 
            SendClientMessageToAll(-1,String); 		         
    	}
    	case 1:
    	{
            for(new i = 0; i <= GetPlayerPoolSize(); i++) 
	    {
	        if(GetPlayerMoney(i) > value) 
	        { 
	            value = GetPlayerMoney(i);
                    playerid = i; 
	        }         		
    	    }
            format(String,sizeof(String),"O jogador com mais dinheiro online й %s. Dinheiro atual : %d",Nome(playerid), value); 
	    SendClientMessageToAll(-1,String);     		
    	}  
    }
    SetTimerEx("Ranking", 40000, 0, "i", ++id % 2);
}
Tipo assim se nгo tive nenhum player com level 1 ou com 1 de dinheiro nгo vai mostra tipo Tб la o jogador com mais dinheiro online й %s ai no caso n vai mostra o nick pq ninguem tem 1 de level ou 1 de dinheiro?


Re: Uma Mensagem Por Vez - XandyMello - 02.04.2018

PHP код:
#include <a_samp>
public OnGameModeInit(){
        
SetTimer("Ranking",400001);
        return 
true;
}
forward Ranking(playerid);
public 
Ranking(playerid)
{
    new
        
MoneyID_0,
        
LevelID_1
    
;
    for(new 
0<= GetPlayerPoolSize(); i++)
    {
        if(!
IsPlayerConnected(i)) continue;
        
        if(
GetPlayerScore(i) > Level)
            
Level GetPlayerScore(i), ID_0 i;
    
        if(
GetPlayerMoney(i) > Money)
            
Money GetPlayerMoney(i), ID_1 i;
       
    }
    new
        
Name[MAX_PLAYER_NAME],
        
string[128]
    ;
    
GetPlayerName(ID_0Namesizeof(Name));
    
format(string,sizeof(string),"O jogador com maior level online й %s. Level atual : %d"NameLevel);
    
SendClientMessageToAll(-1,string);
    
GetPlayerName(ID_1Namesizeof(Name));
    
format(string,sizeof(string),"O jogador com mais dinheiro online й %s. Dinheiro atual : %d"NameMoney);
    
SendClientMessageToAll(-1,string);
    
    return 
true;

USE ESSE E IGNORE O RESTO..


Re: Uma Mensagem Por Vez - BrGabrielBr - 02.04.2018

Quote:
Originally Posted by XandyMello
Посмотреть сообщение
PHP код:
#include <a_samp>
public OnGameModeInit(){
        
SetTimer("Ranking",400001);
        return 
true;
}
forward Ranking(playerid);
public 
Ranking(playerid)
{
    new
        
MoneyID_0,
        
LevelID_1
    
;
    for(new 
0<= GetPlayerPoolSize(); i++)
    {
        if(!
IsPlayerConnected(i)) continue;
        
        if(
GetPlayerScore(i) > Level)
            
Level GetPlayerScore(i), ID_0 i;
    
        if(
GetPlayerMoney(i) > Money)
            
Money GetPlayerMoney(i), ID_1 i;
       
    }
    new
        
Name[MAX_PLAYER_NAME],
        
string[128]
    ;
    
GetPlayerName(ID_0Namesizeof(Name));
    
format(string,sizeof(string),"O jogador com maior level online й %s. Level atual : %d"NameLevel);
    
SendClientMessageToAll(-1,string);
    
GetPlayerName(ID_1Namesizeof(Name));
    
format(string,sizeof(string),"O jogador com mais dinheiro online й %s. Dinheiro atual : %d"NameMoney);
    
SendClientMessageToAll(-1,string);
    
    return 
true;

USE ESSE E IGNORE O RESTO..
Tipo entrei com uma conta teste no servidor pelo serve do samp msm pra testa й tava lб
PHP код:
O jogador com maior level online й [TEV]Gabriel.1994Level atual 
se eu sou level zero nгo tinha que aparece meu nick tinha que parace й

PHP код:
O jogador com maior level online й (NinguйmLevel atual 
tendeu amigo?


Re: Uma Mensagem Por Vez - FerrariL - 02.04.2018

Faзa uma condicional...


Re: Uma Mensagem Por Vez - BrGabrielBr - 02.04.2018

Quote:
Originally Posted by FerrariL
Посмотреть сообщение
Faзa uma condicional...
Como?


Re: Uma Mensagem Por Vez - FerrariL - 02.04.2018

Aqui : https://sampforum.blast.hk/showthread.php?tid=467770


Re: Uma Mensagem Por Vez - Gguiz - 02.04.2018

Meu conselho para uma organizaзгo melhor, use uma dialog e separe o ranking de level e dinheiro. Caso tenha dъvidas me contate.