comando /consertar - UmNickBR - 08/01/2024
Boa tarde, gostaria de saber como faço para fazer com que o comando abaixo citado o(a) player tenha como aceitar / recusar.
Código PHP: CMD:consertar(playerid, params[]){ new id, str[128]; if(PlayerInfo[playerid][pEmprego] != 4) return SendClientMessage(playerid, Vermelho, "Você não é Mêcanico."); if((gettime() - consertar[playerid]) < 300) return SendClientMessage(playerid, -1, "{FF0000}| ERRO | Você já executou o comando {B0C4DE}/Consertar {FF0000}Aguarde 5 minutos."); if(sscanf(params,"i",id)) return SendClientMessage(playerid, CorErro,"| INFO | Erro, user: /Consertar [Id]"); if(!IsPlayerConnected(id)) return SendClientMessage(playerid, CorErro, "| INFO | Erro, jogador não está conectado"); format(str, sizeof(str),"{777777}O(A) Mêcanico {FFFFFF}%s {777777}está lhe oferecendo conserto por {118C4F}600$",NomePlayer(playerid), NomeID(id)); SendClientMessage(id, -1, str); format(str, sizeof(str),"{777777}Você enviou solicitação de conserto para o(a) jogador(a) {FFFFFF}%s",NomeID(id), id); SendClientMessage(playerid, CinzaClaro, str); GivePlayerMoney(playerid, 600); return 1; }
Valeu.
RE: comando /consertar - DarkMode_. - 08/01/2024
Fiz um exemplo para você usando o comando acima que você mostrou, o resto das funções você mesmo adiciona.
Código: new Oferta[MAX_PLAYERS];
CMD:consertar(playerid, params[]){
new id, str[128];
if(PlayerInfo[playerid][pEmprego] != 4) return SendClientMessage(playerid, Vermelho, "Você não é Mêcanico.");
if((gettime() - consertar[playerid]) < 300) return SendClientMessage(playerid, -1, "{FF0000}| ERRO | Você já executou o comando {B0C4DE}/Consertar {FF0000}Aguarde 5 minutos.");
if(sscanf(params,"i",id)) return SendClientMessage(playerid, CorErro,"| INFO | Erro, user: /Consertar [Id]");
if(!IsPlayerConnected(id)) return SendClientMessage(playerid, CorErro, "| INFO | Erro, jogador não está conectado");
format(str, sizeof(str),"{777777}O(A) Mêcanico {FFFFFF}%s {777777}está lhe oferecendo conserto por {118C4F}600$",NomePlayer(playerid), NomeID(id));
SendClientMessage(id, -1, str);
format(str, sizeof(str),"{777777}Você enviou solicitação de conserto para o(a) jogador(a) {FFFFFF}%s",NomeID(id), id);
SendClientMessage(playerid, CinzaClaro, str);
GivePlayerMoney(playerid, 600);
Oferta[id] = playerid;
return 1;
}
CMD:aceitar(playerid)
{
if(Oferta[playerid] == -1) return SendClientMessage(playerid, -1,"| ERRO | Você não recebeu nenhuma proposta..");
SendClientMessage(playerid, -1, "Você aceitou.");
Oferta[playerid] = -1;
return 1;
}
CMD:recusar(playerid)
{
if(Oferta[playerid] == -1) return SendClientMessage(playerid, -1,"| ERRO | Você não recebeu nenhuma proposta..");
SendClientMessage(playerid, -1, "Você rejeitou.");
Oferta[playerid] = -1;
return 1;
}
/*No onplayerconnect recomendo você colocar isso:
Oferta[playerid] = -1;
*/
RE: comando /consertar - UmNickBR - 08/01/2024
Valeu DarkMode deu certo aq, reputado com sucesso!
RE: comando /consertar - UmNickBR - 08/01/2024
Aproveitando esse tópico para não ter que criar outro, como faço para verificar a distancia de um player ?se tal player está distante de outro player, não encontro no open.mp se for possível a documentação agradeço!
RE: comando /consertar - White_Blue - 08/01/2024
(08/01/2024 17:27)UmNickBR Escreveu: Aproveitando esse tópico para não ter que criar outro, como faço para verificar a distancia de um player ?se tal player está distante de outro player, não encontro no open.mp se for possível a documentação agradeço!
Você pode usar a função GetPlayerDistanceFromPoint que está disponível em ambos open.mp e SA-MP.
Exemplo:
Código PHP: Float:GetDistanceBetweenPlayer(playerid, target) { static Float:X, Float:Y, Float:Z;
GetPlayerPos(target, X, Y, Z); return GetPlayerDistanceFromPoint(playerid, X, Y, Z); }
RE: comando /consertar - UmNickBR - 08/01/2024
Valeu White, reputado!
|