10.11.2015, 21:20
Tem um comando em Zcmd que eu gostaria de converter para Sscanf, pois meu gm й com base nela, eu procurei e achei uma cambada de tуpicos porйm o maluco postava e comando e os caras convertiam porйm ninguйm explicou como fez para converter, nгo achei mais nada alйm disso...
Aqui estб um exemplo de cmd em sscanf do GM:
Aqui o comando que quero converter.. (Por favor expliquem como fizeram para converter)
Aqui estб um exemplo de cmd em sscanf do GM:
Code:
if(strcmp(cmd, "/trazer", true) == 0)
{
if(pAdmin[playerid] == 2 || pAdmin[playerid] == 3 || pAdmin[playerid] == 4 || dini_Int(file, "Profissao") == Temac ||dini_Int(file, "Profissao") == Caminhoneiro || pAdmin[playerid] == 5 || pAdmin[playerid] == 6 || pAdmin[playerid] == 7 || pAdmin[playerid] == 8)
{
new tmp[256], plid;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, Vermelho, "Digite: /trazer [id]");
return 1;
}
plid = strval(tmp);
if(IsPlayerConnected(plid))
{
new Float:X, Float:Y, Float:Z;
new interiormeu = GetPlayerInterior(playerid);
SetPlayerInterior(plid, interiormeu);
GetPlayerPos(playerid, X, Y, Z);
if(IsPlayerInAnyVehicle(plid))
{
new VehicleID = GetPlayerVehicleID(plid);
SetVehiclePos(VehicleID, X+2, Y+2, Z);
PutPlayerInVehicle(plid, VehicleID, 0);
}
else
{
SetPlayerPos(plid, X+2, Y+2, Z);
TogglePlayerControllable(plid, false);
SetTimerEx("DestogglePlayerControllable", 1000, 0, "d", plid);
}
format(string, sizeof(string), "%s (ID: %d) trouxe vocк atй sua posiзгo!", PlayerName(playerid), playerid);
SendClientMessage(plid, tcadm, string);
format(string, sizeof(string), "Vocк trouxe %s (ID: %d) atй sua posiзгo!", PlayerName(plid), plid);
SendClientMessage(playerid, tcadm, string);
}
else
{
SendClientMessage(playerid, 0xFF0000AA, "Valor invбlido, tente novamente!");
}
}
return 1;
}
Code:
CMD:siren(playerid, params[])
{
if(IsACop(playerid))
{
new string[128], type;
new VID = GetPlayerVehicleID(playerid);
if(sscanf(params, "d", type))
{
SendClientMessageEx(playerid, COLOR_WHITE, "USAGE: /siren [type]");
SendClientMessageEx(playerid, COLOR_GRAD2, "Type: 1 = Inside, 2 = Roof, 3 = Off.");
return 1;
}
switch(type)
{
case 1:
{
if(Siren[VID] == 1)
{
SendClientMessageEx(playerid, COLOR_GRAD2, "This vehicle already has a siren!");
return 1;
}
new sendername[MAX_PLAYER_NAME];
Siren[VID] = 1;
GetPlayerName(playerid, sendername, sizeof(sendername));
SirenObject[VID] = CreateObject(18646, 10.0, 10.0, 10.0, 0, 0, 0);
AttachObjectToVehicle(SirenObject[VID], VID, 0.0, 0.75, 0.275, 0.0, 0.1, 0.0);
format(string, sizeof(string), "* %s puts the siren on the dashboard.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
return 1;
}
case 2:
{
if(Siren[VID] == 1)
{
SendClientMessageEx(playerid, COLOR_GRAD2, "This vehicle already has a siren!");
return 1;
}
Siren[VID] = 1;
new sendername[MAX_PLAYER_NAME];
GetPlayerName(playerid, sendername, sizeof(sendername));
SirenObject[VID] = CreateObject(18646, 10.0, 10.0, 10.0, 0, 0, 0);
AttachObjectToVehicle(SirenObject[VID], VID, -0.43, 0.0, 0.785, 0.0, 0.1, 0.0);
format(string, sizeof(string), "* %s puts the siren on the roof.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
return 1;
}
case 3:
{
if(Siren[VID] == 0)
{
SendClientMessageEx(playerid, COLOR_GRAD2, "This vehicle doesn't have a siren on it!");
return 1;
}
Siren[VID] = 0;
new sendername[MAX_PLAYER_NAME];
GetPlayerName(playerid, sendername, sizeof(sendername));
DestroyObject(SirenObject[VID]);
format(string, sizeof(string), "* %s takes down the siren.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
return 1;
}
default:
{
SendClientMessageEx(playerid, COLOR_WHITE, "Invalid license type! /siren [type]");
SendClientMessageEx(playerid, COLOR_GRAD2, "Type: 1 = Roof, 2 = Inside, 3 = Off.");
}
}
}
else SendClientMessageEx(playerid, COLOR_GREY, "You're not authorised to use this command.");
return 1;
}


?