[Ajuda] Como adicionar comandos ao server.
#1

Ola sou novo em pawn , gostaria de saber onde eu acho um lugar pra eu botar um novo comando ,tipow eu tenho um gm basico nao tao , grande , ai quero aprender a adicionar novos cmd . da help ai ...


Um exemplo de comando que eu vo botar


Quote:

if(strcmp(cmd, "/desbugar", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USE: /desbugar [playerid]");
return 1;
}
new playa;
playa = ReturnUser(tmp);
if(PlayerInfo[playerid][pAdmin] >= 1)
{
if(admtrampando[playerid] < 1 && PlayerInfo[playerid][pAdmin] != 1340 && PlayerInfo[playerid][pAdmin] != 1341 && PlayerInfo[playerid][pAdmin] != 1342)
{
SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo estб trabalhando! (/administrar)");
return 1;
}
if(IsPlayerConnected(playa))
{
if(playa != INVALID_PLAYER_ID)
{
PlayerInfo[playa][pMuted] = 0;
GetPlayerName(playa, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
TogglePlayerControllable(playa, 1);
MedicBill[playa] = 0;
NeedMedicTime[playa] = 0;
SetCameraBehindPlayer(playa);
sincronizando[playa] = 1;
virt[playa] = GetPlayerVirtualWorld(playa);
interior[playa] = GetPlayerInterior(playa);
skinneg[playa] = GetPlayerSkin(playa);
GetPlayerArmour(playa,APP[playa]);
GetPlayerHealth(playa,PlayerHPP[playa]);
GetPlayerFacingAngle(playa,FaceAngle[playa]);
GetPlayerPos(playa,xx[playa],yy[playa],zz[playa]);
GetPlayerWeaponData(playa,1,gunsinc[1][playa],ammoo[1][playa]);
GetPlayerWeaponData(playa,2,gunsinc[2][playa],ammoo[2][playa]);
GetPlayerWeaponData(playa,3,gunsinc[3][playa],ammoo[3][playa]);
GetPlayerWeaponData(playa,4,gunsinc[4][playa],ammoo[4][playa]);
GetPlayerWeaponData(playa,5,gunsinc[5][playa],ammoo[5][playa]);
GetPlayerWeaponData(playa,6,gunsinc[6][playa],ammoo[6][playa]);
GetPlayerWeaponData(playa,7,gunsinc[7][playa],ammoo[7][playa]);
GetPlayerWeaponData(playa,8,gunsinc[8][playa],ammoo[8][playa]);
GetPlayerWeaponData(playa,9,gunsinc[9][playa],ammoo[9][playa]);
GetPlayerWeaponData(playa,10,gunsinc[10][playa],ammoo[10][playa]);
GetPlayerWeaponData(playa,11,gunsinc[11][playa],ammoo[11][playa]);
GetPlayerWeaponData(playa,12,gunsinc[12][playa],ammoo[12][playa]);
SpawnPlayer(playa);
TempoSinc = SetTimerEx("Sincronizar", 500, 0, "i", playa);
if(IsPlayerInAnyVehicle(playa))
{
vehicledd[playa] = 1;
VehicleIDD[playa] = GetPlayerVehicleID(playa);
}
format(string, sizeof(string), "AdmCmd: %s Desbugou %s",sendername, giveplayer);
printf("%s",string);
if(admtrampando[playerid] == 1)
{
format(string, sizeof(string), "AdmCmd: %s Foi desbugado por %s",giveplayer ,sendername);
}
ABroadCast(COLOR_LIGHTRED,string,1);
}
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " Vocк nгo estб autorizado a usar este comando!");
}
}
return 1;
}

Reply
#2

Na callback (public) OnPlayerCommandText..
Reply
#3

cara procura no teu GM CTRL+F = OnPlayerCommandText e cola na linha debaixo dele
ex:
pawn Код:
public OnPlayerCommandText(playerid,cmdtext[])
{
if(strcmp(cmd, "/desbugar", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USE: /desbugar [playerid]");
return 1;
}
new playa;
playa = ReturnUser(tmp);
if(PlayerInfo[playerid][pAdmin] >= 1)
{
if(admtrampando[playerid] < 1 && PlayerInfo[playerid][pAdmin] != 1340 && PlayerInfo[playerid][pAdmin] != 1341 && PlayerInfo[playerid][pAdmin] != 1342)
{
SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo estб trabalhando! (/administrar)");
return 1;
}
if(IsPlayerConnected(playa))
{
if(playa != INVALID_PLAYER_ID)
{
PlayerInfo[playa][pMuted] = 0;
GetPlayerName(playa, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
TogglePlayerControllable(playa, 1);
MedicBill[playa] = 0;
NeedMedicTime[playa] = 0;
SetCameraBehindPlayer(playa);
sincronizando[playa] = 1;
virt[playa] = GetPlayerVirtualWorld(playa);
interior[playa] = GetPlayerInterior(playa);
skinneg[playa] = GetPlayerSkin(playa);
GetPlayerArmour(playa,APP[playa]);
GetPlayerHealth(playa,PlayerHPP[playa]);
GetPlayerFacingAngle(playa,FaceAngle[playa]);
GetPlayerPos(playa,xx[playa],yy[playa],zz[playa]);
GetPlayerWeaponData(playa,1,gunsinc[1][playa],ammoo[1][playa]);
GetPlayerWeaponData(playa,2,gunsinc[2][playa],ammoo[2][playa]);
GetPlayerWeaponData(playa,3,gunsinc[3][playa],ammoo[3][playa]);
GetPlayerWeaponData(playa,4,gunsinc[4][playa],ammoo[4][playa]);
GetPlayerWeaponData(playa,5,gunsinc[5][playa],ammoo[5][playa]);
GetPlayerWeaponData(playa,6,gunsinc[6][playa],ammoo[6][playa]);
GetPlayerWeaponData(playa,7,gunsinc[7][playa],ammoo[7][playa]);
GetPlayerWeaponData(playa,8,gunsinc[8][playa],ammoo[8][playa]);
GetPlayerWeaponData(playa,9,gunsinc[9][playa],ammoo[9][playa]);
GetPlayerWeaponData(playa,10,gunsinc[10][playa],ammoo[10][playa]);
GetPlayerWeaponData(playa,11,gunsinc[11][playa],ammoo[11][playa]);
GetPlayerWeaponData(playa,12,gunsinc[12][playa],ammoo[12][playa]);
SpawnPlayer(playa);
TempoSinc = SetTimerEx("Sincronizar", 500, 0, "i", playa);
if(IsPlayerInAnyVehicle(playa))
{
vehicledd[playa] = 1;
VehicleIDD[playa] = GetPlayerVehicleID(playa);
}
format(string, sizeof(string), "AdmCmd: %s Desbugou %s",sendername, giveplayer);
printf("%s",string);
if(admtrampando[playerid] == 1)
{
format(string, sizeof(string), "AdmCmd: %s Foi desbugado por %s",giveplayer ,sendername);
}
ABroadCast(COLOR_LIGHTRED,string,1);
}
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " Vocк nгo estб autorizado a usar este comando!");
}
}
return 1;
}
Reply
#4

Mano, pra vocк fazer comandos presciza ter uma certa experiencia em pawno... Se eu fosse vocк, ia na Wiki-Samp e comeзava a pesquisar sobre funзхes.
Reply
#5

ok e pra colocar em baixo dessa public , so pra saber :



Quote:

public OnPlayerCommandText(playerid, cmdtext[])
{
PlayerInactivity[playerid] = 0;
new string[128]; // isso aqui eo nnumero de string que vem no comando ?
new playerdinheiro;
new giveplayer[MAX_PLAYER_NAME];
new playername[MAX_PLAYER_NAME];
new plname[MAX_PLAYER_NAME];
new cmd[128]; //eo numero de cmd que vem no comando?
new tmp[128]; //eo numero de tmp que vem no comando ?
new giveplayerid, moneys, idx;
cmd = strtok(cmdtext, idx);

tipo quando eu adicionar um comando eu botar cmd + tmp eu tenho que aumentar esses numeros ai ?
Reply
#6

cara, quer um conselho? usa zcmd й muito bom e de facil utilizaзгo (:
Reply
#7

Quando eu adicionei o novo comando :


Quote:

C:\Users\weverton\Desktop\SERVER2\gamemodes\SV.pwn (33097) : error 017: undefined symbol "admtrampando"
C:\Users\weverton\Desktop\SERVER2\gamemodes\SV.pwn (33097) : warning 215: expression has no effect
C:\Users\weverton\Desktop\SERVER2\gamemodes\SV.pwn (33097) : error 001: expected token: ";", but found "]"
C:\Users\weverton\Desktop\SERVER2\gamemodes\SV.pwn (33097) : error 029: invalid expression, assumed zero
C:\Users\weverton\Desktop\SERVER2\gamemodes\SV.pwn (33097) : fatal error 107: too many error messages on one line

Linha do error :

Quote:

if(admtrampando[playerid] < 1 && PlayerInfo[playerid][pAdmin] != 1340 && PlayerInfo[playerid][pAdmin] != 1341 && PlayerInfo[playerid][pAdmin] != 1342)

Reply
#8

Funзгo ''admtrampando''
Reply
#9

aaa intendi e pq eu to copiando esse comando de outro gm ai admtrampado e /trabalhar (voce nao estar trabalhando ) oq eu tenho que fazer e Ptrampo esse comando do meu server ' entendi
Reply
#10

Algumas pessoas preferem ensinar o funcional do que a melhor forma --'

DICA: Use ZCMD. MUITO MELHOR
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)