[DUV] Me ajudem com esse comando
#1

Код:
if(strcmp(cmdtext,"/setrecruta",true)==0 && IsPlayerAdmin(playerid))
{
	if( IsPlayerConnected(playerid))
  SetPlayerTeam(playerid, 1);
  SetPlayerSkin(playerid, 81);
  SetPlayerPos(playerid,216.3093,1874.0894,17.6406);
return 1;
}
Esse й o comando que й pra setar o Team do Player pra Recruta
No comeзo do GM eu botei
Код:
#define Recruta 1
Ele nao ta dando erro mas nao funfa o
Код:
if( IsPlayerConnected(playerid))
Que eu acho que й pra ser tipo /setrecruta id
Se nao for assim me falem como eh

E como boto pra so se o player for de tal time ele podera executar tal comando



Erros:
Код:
D:\Gabriel\SAMP SERVER\filterscripts\exercito.pwn(202) : error 017: undefined symbol "strtok"
D:\Gabriel\SAMP SERVER\filterscripts\exercito.pwn(202) : error 033: array must be indexed (variable "tmp")
Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase


2 Errors.
Linha 202:
pawn Код:
tmp = strtok(cmdtext, idx);
Reply
#2

Assim deve dar ..


pawn Код:
if(strcmp(cmd, "/recruta", true) == 0)
{
if(gTeam[playerid] != 2) return SendClientMessage(playerid,0xFFFFFFFF,"Comando reservado apenas para ...");// traca 2 por sua team
new tmp[128];
tmp = strtok(cmdtext, idx);
new playerid2;
playerid2 = strval(tmp);
distancia = GetDistanceBetweenPlayers(playerid, playerid2);
if(gTeam[playerid] == 2)
if(distancia >6)
{
SendClientMessage(playerid,COR_VERMELHO,"Estas muito longe deste Jogador!");//se a distancia for maior que 6, retorna uma mensagem de erro.
return 1;
}
if(!strlen(tmp))// se o player nao digitou o id do playerid2, retorna uma mensagem de erro
{
SendClientMessage(playerid, 0xFFFFFFFF, "Uso do Comando: /recruta ID");
return 1;
}
if(gTeam[playerid] != 2) return SendClientMessage(playerid,0xFFFFFFFF,"Comando reservado apenas para ...");
if(distancia <=6)// e se a distancia for menor ou igual a 6, faz o que vocк quer
{
GameTextForPlayer(strval(tmp), "~r~Recrutado para a equipa", 3000, 3);
SetPlayerTeam(strval(tmp),1);
SetPlayerSkin(strval(tmp),81);
SetPlayerPos(strval(tmp),216.3093,1874.0894,17.6406);
SendClientMessage(playerid, COR_VERMELHO, "mudas-te um jogador para tua equipa");
new pName[MAX_PLAYER_NAME];
    GetPlayerName(playerid,pName,sizeof(pName));
    new string[248];
format(string,sizeof(string)," %s recrutou um jogador",pName);
SendClientMessageToAll(COR_VERMELHO, string);
return 1;
}
return 1;
}
Altera as cores para as tuas, fiz um pouco a pressa se nгo der avisa
Reply
#3

lol... n entendi absolutamente nada
Reply
#4

Esse comando й de recrutamento, para recrutar jogadores para o seu time
Reply
#5

Quote:
Originally Posted by Rick_DR
Esse comando й de recrutamento

igual ao teu em cima, sу que completo!

sу veres com atenзгo
Eu apahuei algumas coisas como a distancia que dai nao precisa estar perto para recrutar para o exercito
Reply
#6

lol como poe esse tanto de coisa em baixo da minha mensagem
Reply
#7

sim tens razгo, so meti porque depois podes utilizar isso como base para outros comandos como por exemplo

pawn Код:
if(strcmp(cmd, "/vender", true) == 0)
{
new tmp[128];
tmp = strtok(cmdtext, idx);
new playerid2;
playerid2 = strval(tmp);
distancia = GetDistanceBetweenPlayers(playerid, playerid2);
if(gTeam[playerid] != 1) return SendClientMessage(playerid,0xFFFFFFFF,"Comando reservado apenas para o GANG");
if(distancia >6)
{
SendClientMessage(playerid,COR_ROXO,"Estas muito longe deste Jogador!");
return 1;
}
if(!strlen(tmp))
{
SendClientMessage(playerid, COR_ROXO, "Uso do Comando: /vdroga ID");
return 1;
}
if(gTeam[playerid] != 1) return SendClientMessage(playerid,0xFFFFFFFF,"Comando reservado apenas para o GANG");
if(distancia <=6)
{
GameTextForPlayer(strval(tmp), "~g~Compras-te Droga a um trafuca", 3000, 3);
SetPlayerDrunkLevel(strval(tmp), 3000);
SetPlayerSpecialAction(strval(tmp), 21);
GivePlayerMoney(playerid,150);
GivePlayerMoney(strval(tmp),-150);
SendClientMessage(playerid, COR_ROXO, "Vendes-te droga a um jogador. 150Ђ");
return 1;
}
return 1;
Reply
#8

Quote:
Originally Posted by Rick_DR
sim tens razгo, so meti porque depois podes utilizar isso como base para outros comandos como por exemplo

pawn Код:
if(strcmp(cmd, "/vender", true) == 0)
{
new tmp[128];
tmp = strtok(cmdtext, idx);
new playerid2;
playerid2 = strval(tmp);
distancia = GetDistanceBetweenPlayers(playerid, playerid2);
if(gTeam[playerid] != 1) return SendClientMessage(playerid,0xFFFFFFFF,"Comando reservado apenas para o GANG");
if(distancia >6)
{
SendClientMessage(playerid,COR_ROXO,"Estas muito longe deste Jogador!");
return 1;
}
if(!strlen(tmp))
{
SendClientMessage(playerid, COR_ROXO, "Uso do Comando: /vdroga ID");
return 1;
}
if(gTeam[playerid] != 1) return SendClientMessage(playerid,0xFFFFFFFF,"Comando reservado apenas para o GANG");
if(distancia <=6)
{
GameTextForPlayer(strval(tmp), "~g~Compras-te Droga a um trafuca", 3000, 3);
SetPlayerDrunkLevel(strval(tmp), 3000);
SetPlayerSpecialAction(strval(tmp), 21);
GivePlayerMoney(playerid,150);
GivePlayerMoney(strval(tmp),-150);
SendClientMessage(playerid, COR_ROXO, "Vendes-te droga a um jogador. 150Ђ");
return 1;
}
return 1;
HUm tava dando 26 erros ai eu tirei um dos returns e deu o /vender tb ta com dois
Код:
return 1;
Reply
#9

pawn Код:
if (strcmp("/recruta", cmdtext, true)==0)
{
new tmp[128];
tmp = strtok(cmdtext, idx);
new playerid2;
playerid2 = strval(tmp);
distancia = GetDistanceBetweenPlayers(playerid, playerid2);

if(gTeam[playerid] == 7)
SetPlayerTeam(strval(tmp),7);
else if(gTeam[playerid] == 1)
SetPlayerTeam(strval(tmp),1);
else if(gTeam[playerid] == 2)
SetPlayerTeam(strval(tmp),2);
else if(gTeam[playerid] == 3)
SetPlayerTeam(strval(tmp),3);
else if(gTeam[playerid] == 4)
SetPlayerTeam(strval(tmp),4);
else if(gTeam[playerid] == 5)
SetPlayerTeam(strval(tmp),5);
else if(gTeam[playerid] == 6)
SetPlayerTeam(strval(tmp),6);
else if(gTeam[playerid] == 8)
SetPlayerTeam(strval(tmp),8);


new pName[MAX_PLAYER_NAME];
    GetPlayerName(playerid,pName,sizeof(pName));
    new string[248];
format(string,sizeof(string)," %s fez uma recruta",pName);
SendClientMessageToAll(TEAM_mecanicos_COLOR, string);
GameTextForPlayer(strval(tmp), "~r~Recrutado para uma org", 3000, 3);
return 1;
}
Reply
#10

Quote:
Originally Posted by Rick_DR
pawn Код:
if (strcmp("/recruta", cmdtext, true)==0)
{
new tmp[128];
tmp = strtok(cmdtext, idx);
new playerid2;
playerid2 = strval(tmp);
distancia = GetDistanceBetweenPlayers(playerid, playerid2);

if(gTeam[playerid] == 7)
SetPlayerTeam(strval(tmp),7);
else if(gTeam[playerid] == 1)
SetPlayerTeam(strval(tmp),1);
else if(gTeam[playerid] == 2)
SetPlayerTeam(strval(tmp),2);
else if(gTeam[playerid] == 3)
SetPlayerTeam(strval(tmp),3);
else if(gTeam[playerid] == 4)
SetPlayerTeam(strval(tmp),4);
else if(gTeam[playerid] == 5)
SetPlayerTeam(strval(tmp),5);
else if(gTeam[playerid] == 6)
SetPlayerTeam(strval(tmp),6);
else if(gTeam[playerid] == 8)
SetPlayerTeam(strval(tmp),8);


new pName[MAX_PLAYER_NAME];
    GetPlayerName(playerid,pName,sizeof(pName));
    new string[248];
format(string,sizeof(string)," %s fez uma recruta",pName);
SendClientMessageToAll(TEAM_mecanicos_COLOR, string);
GameTextForPlayer(strval(tmp), "~r~Recrutado para uma org", 3000, 3);
return 1;
}
Nгo to entendendo mesmo com o
pawn Код:
new tmp[128]
ele nao reconhece o q eh tmp
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)