SA-MP Forums Archive
[Ajuda] Pegar id do Player - 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: [Ajuda] Pegar id do Player (/showthread.php?tid=651009)



Pegar id do Player - GuiKommander - 11.03.2018

Fiz a vбriavel:
PHP код:
new IdOffReparar[MAX_PLAYERS]; 
Bom, eu peguei esse ID Do Player:
PHP код:
IdOffReparar[playerid] = playerid; 
Ai no Comando que eu queria que o dinheiro fosse retirado do Player Que recebeu a oferta.. E tbm queria que colocasse o dinheiro no Outro Player.
No outro Comando que eu queria que o $$ fosse para o Player que enviou a oferta fiz assim:
PHP код:
            sGivePlayerCash(playerid, -ValorMecanicoOff[playerid]); // Tirar DInheiro do cara que aceitou
            
sGivePlayerCash(IdOffReparar[playerid] = playerid, ValorMecanicoOff[playerid]); // ++ Adicionar dinheiro pro cara da oferta 
Sу que tipo.. Nгo adiciona o Dinheiro ao jogador(da oferta) PQ ?
Se vocк confundiu fala no topico que explico Mais.


Re: Pegar id do Player - Meck - 11.03.2018

.Manda o comando completo que eu arrumo procк.


Re: Pegar id do Player - GuiKommander - 11.03.2018

Jб testei os dois CMDS, pegando certinho..
Sу que Nгo adiciona o jogador que mandou a oferta.
PHP код:
CMD:offreparar(playerid, params[])
{
    new 
id, oferta, stj[94];
    if(
sscanf(params, "ud", id, oferta)) return SendClientMessage(playerid, ERRO, "| ERRO | Digite: /OffReparar [PlayerID] [Valor]");
    if(
MandouOfertaRepararMecanico[playerid] == true) return SendClientMessage(playerid, ERRO, "| ERRO | Espere 30 Segundos para usar o comando novamente.");
    if(
VerificarDistancia(playerid, id) > 20) return SendClientMessage(playerid, ERRO, "| ERRO | Vocк estб muito longe da pessoa que quer Mandar a Oferta.");
    if(
pInfo[playerid][Prof] != Mecanico) return SendClientMessage(playerid, ERRO, "| ERRO | Vocк nгo й um Mecвnico.");
    if(!
IsPlayerConnected(id)) return SendClientMessage(playerid, ERRO, "| ERRO | Esse jogador nгo estб conectado.");
    if(
oferta < 0 || oferta > 500) return SendClientMessage(playerid, ERRO, "| ERRO | Digite a oferta entre 0 e R$500.");
    if(
GetPlayerCash(id) < oferta) return SendClientMessage(playerid, ERRO, "| ERRO | Esse jogador nгo tem dinheiro suficiente.");
    if(
playerid == id) return SendClientMessage(playerid, ERRO, "| ERRO | Vocк nгo pode mandar a oferta para vocк.");
    
TimerEsperaRepararMecanico[playerid] = SetTimerEx("EsperarTimerReparar", 30000, false, "i", playerid);
    
MandouOfertaRepararMecanico[playerid] = true;
    
MandarOfertaRepararMecanico[id] = true;
    
format(stj, sizeof(stj), "| MECВNICO | Vocк mandou a oferta de reparar o veнculo para o Jogador: %s", PlayerName(id));
    
SendClientMessage(playerid, 0x35DC23FF, stj);
    
format(stj, sizeof(stj), "| MECВNICO | Vocк recebeu uma oferta de %s Digite: /AceitarOff para Aceitar.", PlayerName(playerid));
    
SendClientMessage(id, 0x35DC23FF, stj);
    
SendClientMessage(playerid, AMARELO, "| AVISO | Caso esse jogador nгo aceita A oferta em 30 Segundos, Serб cancelado automaticamente.");
    
SendClientMessage(id, AMARELO, "| AVISO | Caso vocк nгo aceita essa oferta em 30 Segundos, automaticamente irб ser cancelado.");
    
MTimerOffReparar[id] = SetTimerEx("DemorouResponderOffMecanico", 30000, false, "i", id);
    
DemorouParaResponderOffMecanico[id] = 1;
    
ValorMecanicoOff[id] = oferta;
    
IdOffReparar[playerid] = playerid;
    return 
1;
}
CMD:aceitaroff(playerid, params[])
{
    if(!
IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, ERRO, "| ERRO | Vocк nгo estб em um veнculo.");
    if(!
IsPlayerConnected(IdOffReparar[playerid]))
    {
        
SendClientMessage(playerid, ERRO, "| ERRO | Esse jogador(a) saiu do servidor. Nos desculpe!");
           
DemorouParaResponderOffMecanico[playerid] = 0;
        
MandarOfertaRepararMecanico[playerid] = false;
    }
    if(
MandarOfertaRepararMecanico[playerid] == true)
    {
        if(
DemorouParaResponderOffMecanico[playerid] == 1)
        {
            
RepairVehicle(GetPlayerVehicleID(playerid));
            
SendClientMessage(playerid, INFO1, "| INFO | Seu veнculo foi reparado com sucesso!");
            
DemorouParaResponderOffMecanico[playerid] = 0;
            
MandarOfertaRepararMecanico[playerid] = false;
            
sGivePlayerCash(playerid, -ValorMecanicoOff[playerid]); // Tirar DInheiro do cara que aceitou
            
sGivePlayerCash(IdOffReparar[playerid] = playerid, ValorMecanicoOff[playerid]); // ++ Adicionar dinheiro pro cara da oferta
        
}
        else
        {
            
SendClientMessage(playerid, ERRO, "| ERRO | Vocк nгo tem nenhuma oferta para aceitar.");
        }
    }
    else
    {
        
SendClientMessage(playerid, ERRO, "| ERRO | Vocк nгo tem nenhuma oferta para aceitar.");
    }
    return 
1;
} 



Re: Pegar id do Player - MBJ - 11.03.2018

Substitua
PHP код:
sGivePlayerCash(IdOffReparar[playerid] = playerid, ValorMecanicoOff[playerid]); 
por
PHP код:
sGivePlayerCash(IdOffReparar[playerid], ValorMecanicoOff[playerid]); 



Re: Pegar id do Player - GuiKommander - 11.03.2018

Quote:
Originally Posted by MBJ
Посмотреть сообщение
PHP код:
sGivePlayerCash(IdOffReparar[playerid], ValorMecanicoOff[playerid]); 
Jб tentei assim, foi nгo rs


Re: Pegar id do Player - MBJ - 11.03.2018

PHP код:
CMD:offreparar(playerid, params[])
{
    new 
id, oferta, stj[94];
    if(
sscanf(params, "ud", id, oferta)) return SendClientMessage(playerid, ERRO, "| ERRO | Digite: /OffReparar [PlayerID] [Valor]");
    if(
MandouOfertaRepararMecanico[playerid] == true) return SendClientMessage(playerid, ERRO, "| ERRO | Espere 30 Segundos para usar o comando novamente.");
    if(
VerificarDistancia(playerid, id) > 20) return SendClientMessage(playerid, ERRO, "| ERRO | Vocк estб muito longe da pessoa que quer Mandar a Oferta.");
    if(
pInfo[playerid][Prof] != Mecanico) return SendClientMessage(playerid, ERRO, "| ERRO | Vocк nгo й um Mecвnico.");
    if(!
IsPlayerConnected(id)) return SendClientMessage(playerid, ERRO, "| ERRO | Esse jogador nгo estб conectado.");
    if(
oferta < 0 || oferta > 500) return SendClientMessage(playerid, ERRO, "| ERRO | Digite a oferta entre 0 e R$500.");
    if(
GetPlayerCash(id) < oferta) return SendClientMessage(playerid, ERRO, "| ERRO | Esse jogador nгo tem dinheiro suficiente.");
    if(
playerid == id) return SendClientMessage(playerid, ERRO, "| ERRO | Vocк nгo pode mandar a oferta para vocк.");
    
TimerEsperaRepararMecanico[playerid] = SetTimerEx("EsperarTimerReparar", 30000, false, "i", playerid);
    
MandouOfertaRepararMecanico[playerid] = true;
    
MandarOfertaRepararMecanico[id] = true;
    
format(stj, sizeof(stj), "| MECВNICO | Vocк mandou a oferta de reparar o veнculo para o Jogador: %s", PlayerName(id));
    
SendClientMessage(playerid, 0x35DC23FF, stj);
    
format(stj, sizeof(stj), "| MECВNICO | Vocк recebeu uma oferta de %s Digite: /AceitarOff para Aceitar.", PlayerName(playerid));
    
SendClientMessage(id, 0x35DC23FF, stj);
    
SendClientMessage(playerid, AMARELO, "| AVISO | Caso esse jogador nгo aceita A oferta em 30 Segundos, Serб cancelado automaticamente.");
    
SendClientMessage(id, AMARELO, "| AVISO | Caso vocк nгo aceita essa oferta em 30 Segundos, automaticamente irб ser cancelado.");
    
MTimerOffReparar[id] = SetTimerEx("DemorouResponderOffMecanico", 30000, false, "i", id);
    
DemorouParaResponderOffMecanico[id] = 1;
    
ValorMecanicoOff[id] = oferta;
    
IdOffReparar[id] = playerid;
    return 
1;
}
CMD:aceitaroff(playerid, params[])
{
    if(!
IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, ERRO, "| ERRO | Vocк nгo estб em um veнculo.");
    if(!
IsPlayerConnected(IdOffReparar[playerid]))
    {
        
SendClientMessage(playerid, ERRO, "| ERRO | Esse jogador(a) saiu do servidor. Nos desculpe!");
           
DemorouParaResponderOffMecanico[playerid] = 0;
        
MandarOfertaRepararMecanico[playerid] = false;
    }
    if(
MandarOfertaRepararMecanico[playerid] == true)
    {
        if(
DemorouParaResponderOffMecanico[playerid] == 1)
        {
            
RepairVehicle(GetPlayerVehicleID(playerid));
            
SendClientMessage(playerid, INFO1, "| INFO | Seu veнculo foi reparado com sucesso!");
            
DemorouParaResponderOffMecanico[playerid] = 0;
            
MandarOfertaRepararMecanico[playerid] = false;
            
sGivePlayerCash(playerid, -ValorMecanicoOff[playerid]); // Tirar DInheiro do cara que aceitou
            
sGivePlayerCash(IdOffReparar[playerid], ValorMecanicoOff[playerid]); // ++ Adicionar dinheiro pro cara da oferta
        
}
        else
        {
            
SendClientMessage(playerid, ERRO, "| ERRO | Vocк nгo tem nenhuma oferta para aceitar.");
        }
    }
    else
    {
        
SendClientMessage(playerid, ERRO, "| ERRO | Vocк nгo tem nenhuma oferta para aceitar.");
    }
    return 
1;
} 



Re: Pegar id do Player - GuiKommander - 11.03.2018

Quote:
Originally Posted by MBJ
Посмотреть сообщение
PHP код:
CMD:offreparar(playerid, params[])
{
    new 
id, oferta, stj[94];
    if(
sscanf(params, "ud", id, oferta)) return SendClientMessage(playerid, ERRO, "| ERRO | Digite: /OffReparar [PlayerID] [Valor]");
    if(
MandouOfertaRepararMecanico[playerid] == true) return SendClientMessage(playerid, ERRO, "| ERRO | Espere 30 Segundos para usar o comando novamente.");
    if(
VerificarDistancia(playerid, id) > 20) return SendClientMessage(playerid, ERRO, "| ERRO | Vocк estб muito longe da pessoa que quer Mandar a Oferta.");
    if(
pInfo[playerid][Prof] != Mecanico) return SendClientMessage(playerid, ERRO, "| ERRO | Vocк nгo й um Mecвnico.");
    if(!
IsPlayerConnected(id)) return SendClientMessage(playerid, ERRO, "| ERRO | Esse jogador nгo estб conectado.");
    if(
oferta < 0 || oferta > 500) return SendClientMessage(playerid, ERRO, "| ERRO | Digite a oferta entre 0 e R$500.");
    if(
GetPlayerCash(id) < oferta) return SendClientMessage(playerid, ERRO, "| ERRO | Esse jogador nгo tem dinheiro suficiente.");
    if(
playerid == id) return SendClientMessage(playerid, ERRO, "| ERRO | Vocк nгo pode mandar a oferta para vocк.");
    
TimerEsperaRepararMecanico[playerid] = SetTimerEx("EsperarTimerReparar", 30000, false, "i", playerid);
    
MandouOfertaRepararMecanico[playerid] = true;
    
MandarOfertaRepararMecanico[id] = true;
    
format(stj, sizeof(stj), "| MECВNICO | Vocк mandou a oferta de reparar o veнculo para o Jogador: %s", PlayerName(id));
    
SendClientMessage(playerid, 0x35DC23FF, stj);
    
format(stj, sizeof(stj), "| MECВNICO | Vocк recebeu uma oferta de %s Digite: /AceitarOff para Aceitar.", PlayerName(playerid));
    
SendClientMessage(id, 0x35DC23FF, stj);
    
SendClientMessage(playerid, AMARELO, "| AVISO | Caso esse jogador nгo aceita A oferta em 30 Segundos, Serб cancelado automaticamente.");
    
SendClientMessage(id, AMARELO, "| AVISO | Caso vocк nгo aceita essa oferta em 30 Segundos, automaticamente irб ser cancelado.");
    
MTimerOffReparar[id] = SetTimerEx("DemorouResponderOffMecanico", 30000, false, "i", id);
    
DemorouParaResponderOffMecanico[id] = 1;
    
ValorMecanicoOff[id] = oferta;
    
IdOffReparar[id] = playerid;
    return 
1;
}
CMD:aceitaroff(playerid, params[])
{
    if(!
IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, ERRO, "| ERRO | Vocк nгo estб em um veнculo.");
    if(!
IsPlayerConnected(IdOffReparar[playerid]))
    {
        
SendClientMessage(playerid, ERRO, "| ERRO | Esse jogador(a) saiu do servidor. Nos desculpe!");
           
DemorouParaResponderOffMecanico[playerid] = 0;
        
MandarOfertaRepararMecanico[playerid] = false;
    }
    if(
MandarOfertaRepararMecanico[playerid] == true)
    {
        if(
DemorouParaResponderOffMecanico[playerid] == 1)
        {
            
RepairVehicle(GetPlayerVehicleID(playerid));
            
SendClientMessage(playerid, INFO1, "| INFO | Seu veнculo foi reparado com sucesso!");
            
DemorouParaResponderOffMecanico[playerid] = 0;
            
MandarOfertaRepararMecanico[playerid] = false;
            
sGivePlayerCash(playerid, -ValorMecanicoOff[playerid]); // Tirar DInheiro do cara que aceitou
            
sGivePlayerCash(IdOffReparar[playerid], ValorMecanicoOff[playerid]); // ++ Adicionar dinheiro pro cara da oferta
        
}
        else
        {
            
SendClientMessage(playerid, ERRO, "| ERRO | Vocк nгo tem nenhuma oferta para aceitar.");
        }
    }
    else
    {
        
SendClientMessage(playerid, ERRO, "| ERRO | Vocк nгo tem nenhuma oferta para aceitar.");
    }
    return 
1;
} 
Valeu <3