[AJUDA]SendClientMessage -
Keiichi - 04.06.2011
pawn Код:
if(strcmp(cmdtext, "/trabalharpolicia", true) == 0){
{
new nome[MAX_PLAYER_NAME];
GetPlayerName(playerid, nome, sizeof(nome));
if(strcmp(nome,"Tolkien, Mendigo., Tony",false) == 0) //SE O NOME FOR # VAI EXECUTAR
{
SendClientMessage(playerid, COLOR_YELLOW,"Vocк estб trabalhando como Policial.");
pTeam[playerid] = time_polic;
SetPlayerSkin(playerid, 280);
SetPlayerInterior(playerid,6);
SetPlayerPos(playerid, 246.7079,66.2239,1003.6406);
return 1;
}
return 1;
}
return 0;
}
Preciso fazer um SendClientMessage para o player que nгo tiver os nomes acima.
Como faзo?
Re: [AJUDA]SendClientMessage -
Shadoww5 - 04.06.2011
Acho que o Luxurion apagou o seu ultimo topico. Mas continuando
Pronto. Consertei:
PHP код:
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp(cmdtext, "/trabalharpolicia", true) == 0)
{
SendClientMessage(playerid, COLOR_YELLOW,"Vocк estб trabalhando como Policial.");
pTeam[playerid] = time_polic;
SetPlayerSkin(player, 280);
SetPlayerPos(playerid,246.7079,66.2239,1003.6406);
SetPlayerInterior(playerid, 6);
return 1;
}
return 0;
}
Mas este comando ai todo mundo pode usar, nгo hб restriзгo alguma.
Mesmo assim irei colocar como vocк quer:
PHP код:
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp(cmdtext, "/trabalharpolicia", true) == 0)
{
new nome[MAX_PLAYER_NAME];
GetPlayerName(playerid,nome,sizeof(nome));
if(strcmp(nome, "NOME1",false) == 0 || strcmp(nome, "NOME2", false) == 0)
{
SendClientMessage(playerid, COLOR_YELLOW,"Vocк estб trabalhando como Policial.");
pTeam[playerid] = time_polic;
SetPlayerSkin(player, 280);
SetPlayerPos(playerid,246.7079,66.2239,1003.6406);
SetPlayerInterior(playerid, 6);
return 1;
}
return 1;
}
return 0;
}
OBS: Substitua "NOME1" e "NOME2" pelos nomes do jogadores, mas eles devem estar perfeitamente igual, pois se tiver uma letra maiscula no nome e o "NOME1" nгo tiver tal letra o codigo nгo completa.
Entretanto, se vocк quiser "desprezar" o Caps Lock, basta substituir o false (que estб do lado do "NOME1" e "NOME2") por true
#EDIT
Vocк nгo pode juntar todos os nomes em um "strcmp" sу. O "strcmp" serve para comparar duas coisas. Ex:
PHP код:
new nome[MAX_PLAYER_NAME]; //CRIA A VARIAVEL QUE SERБ DEFINIDA COMO O NOME DO JOGADOR
GetPlayerName(playerid,nome,sizeof(nome)); // PEGA O NOME DE QUEM DIGITOU O COMANDO E DEFINE COMO nome
if(strcmp(nome, "Shadoww5",false) == 0) //VERIFICA SE O nome Й IGUAL А Shadoww5
Caso vocк queira fazer duas comparaзхes de uma vez sу, faзa assim:
PHP код:
if(strcmp(nome, "Shadoww5",false) == 0 || strcmp(nome, "Keiichi",false) == 0) // O "||" significa OU
#EDIT 2
PHP код:
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp(cmdtext, "/trabalharpolicia", true) == 0)
{
new nome[MAX_PLAYER_NAME];
GetPlayerName(playerid,nome,sizeof(nome));
if(strcmp(nome, "NOME1",false) == 0 || strcmp(nome, "NOME2", false) == 0)
{
SendClientMessage(playerid, COLOR_YELLOW,"Vocк estб trabalhando como Policial.");
pTeam[playerid] = time_polic;
SetPlayerSkin(player, 280);
SetPlayerPos(playerid,246.7079,66.2239,1003.6406);
SetPlayerInterior(playerid, 6);
}
else
{
SendClientMessage(playerid, -1, "Vocк nгo pode digitar este comando.");
}
return 1;
}
return 0;
}
Re: [AJUDA]SendClientMessage -
Pedraum - 04.06.2011
Acredito ser assim:
pawn Код:
if(strcmp(cmdtext, "/trabalharpolicia", true) == 0){
{
new nome[MAX_PLAYER_NAME];
GetPlayerName(playerid, nome, sizeof(nome));
if(strcmp(nome,"Tolkien, Mendigo., Tony",false) == 0) //SE O NOME FOR # VAI EXECUTAR
{
SendClientMessage(playerid, COLOR_YELLOW,"Vocк estб trabalhando como Policial.");
pTeam[playerid] = time_polic;
SetPlayerSkin(playerid, 280);
SetPlayerInterior(playerid,6);
SetPlayerPos(playerid, 246.7079,66.2239,1003.6406);
}
if(strcmp(!nome,"Tolkien, Mendigo., Tony",false) == 0)
return SendClientMessage(playerid, COLOR_YELLOW,"Vocк nгo pode ser policial");
}
return 1;
}
return 0;
}
Re: [AJUDA]SendClientMessage -
Shadoww5 - 04.06.2011
Isto esta redundante e muito errado, Pedraum:
PHP код:
if(strcmp(!nome,"Tolkien, Mendigo., Tony",false) == 0)
return SendClientMessage(playerid, COLOR_YELLOW,"Vocк nгo pode ser policial");
// DO JEITO QUE VOCК FEZ O NOME DO JOGADOR DEVERIA SER Tolkien, Mendigo., Tony
Para comparar algo e ver se estб da forma como vocк quer, faзa assim:
PHP код:
if(strcmp(string1,string2,true/false) == 0)
Ou desta:
PHP код:
if(!strcmp(string1,string2,true/false))
Mas se vocк quiser verificar se as duas string nгo forem iguais deve ser assim:
PHP код:
if(strcmp(string1,string2,true/false) == -1)
Re: [AJUDA]SendClientMessage -
Pedraum - 04.06.2011
Opa, obrigado pela correзгo!
Re: [AJUDA]SendClientMessage -
Shadoww5 - 04.06.2011
De nada ..
Re: [AJUDA]SendClientMessage -
Keiichi - 04.06.2011
AFF nao entendi tem como explicar melhor, e porque estб dando erro??
pawn Код:
if(strcmp(cmdtext, "/trabalharpolicia", true) == 0){
{
new nome[MAX_PLAYER_NAME];
GetPlayerName(playerid, nome, sizeof(nome));
if(strcmp(nome, "Tony",true) == 0 || strcmp(nome, "Mendigo", true) == 0 || strcmp(nome, "Tolkien", true) == 0 || strcmp(nome, "D4RK_S0RC3R3R", false) == 0 || strcmp(nome, "Dominic_toretto", true) == 0
{
SendClientMessage(playerid, COLOR_YELLOW,"Vocк estб trabalhando como Policial.");
pTeam[playerid] = time_polic;
SetPlayerSkin(playerid, 280);
SetPlayerInterior(playerid,6);
SetPlayerPos(playerid, 246.7079,66.2239,1003.6406);
return 1;
}
return 1;
}
return 0;
}
O erro:
Код:
C:\Documents and Settings\Adelar\Desktop\Eduardo\samp03csvr_R2-2_win32\gamemodes\sb1.pwn(5161) : error 029: invalid expression, assumed zero
A linha
<< й, й so isso mesmo na linha
Re: [AJUDA]SendClientMessage -
Shadoww5 - 04.06.2011
Troca a linha 5160 por isto:
PHP код:
if(strcmp(nome, "Tony",true) == 0 || strcmp(nome, "Mendigo", true) == 0 || strcmp(nome, "Tolkien", true) == 0 || strcmp(nome, "D4RK_S0RC3R3R", false) == 0 || strcmp(nome, "Dominic_toretto", true) == 0)
Re: [AJUDA]SendClientMessage -
Keiichi - 04.06.2011
Blz ja consegui vlw.
Re: [AJUDA]SendClientMessage -
Keiichi - 04.06.2011
Tem como eu fazer pra quando os civis digitar /policiais aparece os policiais online, e se o player digitar /procurados aparecer os players que tem Wanted level, e junto com isso do wanted level. Tem como adicionar um comando de /prender com timer ex: /prender id minutos
EDIT: E outra coisa, pra nao poder prender policiais e admins. tem como?