06.05.2013, 19:31
Olб pessoa, eu estou com um poblema com esse comando:
Oque acontece? Quando o player й Vendedor de Armas e digita /venderarmas o servidor INTEIRO buga, todos ficam num chat sу como se nгo houvesse mais gm no host e nenhum comando mais passa a pegar...
Oq seria isso?
pawn Код:
if(strcmp(cmd,"/venderarmas",true)==0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pJob] != 9)
{
SendClientMessage(playerid,COLOR_GREY," Vocк nгo й um vendedor de armas !");
return 1;
}
if(PlayerToPoint(40.0, playerid, 245.9469,75.8629,1003.6406))
{
SendClientMessage(playerid, COLOR_GREY, " Vocк nгo pode vender armas na DP! ");
return 1;
}
new x_weapon[256],weapon[MAX_PLAYERS],ammo[MAX_PLAYERS],price[MAX_PLAYERS];
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD1, "USO: /venderarmas [playerid/Parte-do-Nick] [nome da arma]");
SendClientMessage(playerid, COLOR_GREY, "Armas: flores(25) sdpistol(100) eagle(150) mp5(200) escopeta(200)");
SendClientMessage(playerid, COLOR_GREY, "Armas: ak47(600) m4(600) rifle (600) paraquedas (100)");
return 1;
}
giveplayerid = ReturnUser(tmp);
if (IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
x_weapon = strtok(cmdtext, idx);
if(!strlen(x_weapon))
{
SendClientMessage(playerid, COLOR_GREEN, "________________________________________________");
SendClientMessage(playerid, COLOR_WHITE, "*** Vender de armas ***");
SendClientMessage(playerid, COLOR_GREY, "USO: /venderarmas [playerid/Parte-do-Nick] [nome da arma]");
SendClientMessage(playerid, COLOR_GREY, "Armas: flores(25) sdpistol(100) eagle(200) mp5(200) escopeta(200)");
SendClientMessage(playerid, COLOR_GREY, "Armas: ak47(600) m4(600) rifle(600) paraquedas (100)");
SendClientMessage(playerid, COLOR_GREEN, "________________________________________________");
return 1;
}
}
if(strcmp(x_weapon,"sdpistol",true) == 0) { if(PlayerInfo[playerid][pMats] > 99) { weapon[playerid] = 23; price[playerid] = 100; ammo[playerid] = 50; PlayerInfo[giveplayerid][pGun2] = 23; PlayerInfo[giveplayerid][pAmmo2] = 50; } else { SendClientMessage(playerid,COLOR_GREY," Materiais insuficientes para esta arma."); return 1; } }
else if(strcmp(x_weapon,"flores",true) == 0) { if(PlayerInfo[playerid][pMats] > 24) { weapon[playerid] = 14; price[playerid] = 25; ammo[playerid] = 1; PlayerInfo[giveplayerid][pGun1] = 14; PlayerInfo[giveplayerid][pAmmo1] = 1; } else { SendClientMessage(playerid,COLOR_GREY," Materiais insuficientes para esta arma."); return 1; } }
else if(strcmp(x_weapon,"eagle",true) == 0) { if(PlayerInfo[playerid][pMats] > 199) { weapon[playerid] = 24; price[playerid] = 150; ammo[playerid] = 50; PlayerInfo[giveplayerid][pGun2] = 24; PlayerInfo[giveplayerid][pAmmo2] = 50; } else { SendClientMessage(playerid,COLOR_GREY," Materiais insuficientes para esta arma."); return 1; } }
else if(strcmp(x_weapon,"mp5",true) == 0) { if(PlayerInfo[playerid][pMats] > 199) { weapon[playerid] = 29; price[playerid] = 200; ammo[playerid] = 200; PlayerInfo[giveplayerid][pGun2] = 29; PlayerInfo[giveplayerid][pAmmo2] = 200; } else { SendClientMessage(playerid,COLOR_GREY," Materiais insuficientes para esta arma."); return 1; } }
else if(strcmp(x_weapon,"escopeta",true) == 0) { if(PlayerInfo[playerid][pMats] > 199) { weapon[playerid] = 25; price[playerid] = 200; ammo[playerid] = 50; PlayerInfo[giveplayerid][pGun2] = 25; PlayerInfo[giveplayerid][pAmmo2] = 50; } else { SendClientMessage(playerid,COLOR_GREY," Materiais insuficientes para esta arma."); return 1; } }
else if(strcmp(x_weapon,"ak47",true) == 0) { if(PlayerInfo[playerid][pMats] > 599) { weapon[playerid] = 30; price[playerid] = 600; ammo[playerid] = 250; PlayerInfo[giveplayerid][pGun2] = 30; PlayerInfo[giveplayerid][pAmmo2] = 250; } else { SendClientMessage(playerid,COLOR_GREY," Materiais insuficientes para esta arma."); return 1; } }
else if(strcmp(x_weapon,"m4",true) == 0) { if(PlayerInfo[playerid][pMats] > 599) { weapon[playerid] = 31; price[playerid] = 600; ammo[playerid] = 250; PlayerInfo[giveplayerid][pGun2] = 31; PlayerInfo[giveplayerid][pAmmo2] = 250; } else { SendClientMessage(playerid,COLOR_GREY," Materiais insuficientes para esta arma."); return 1; } }
else if(strcmp(x_weapon,"rifle",true) == 0) { if(PlayerInfo[playerid][pMats] > 599) { weapon[playerid] = 33; price[playerid] = 600; ammo[playerid] = 50; PlayerInfo[giveplayerid][pGun2] = 33; PlayerInfo[giveplayerid][pAmmo2] = 50; } else { SendClientMessage(playerid,COLOR_GREY," Materiais insuficientes para esta arma."); return 1; } }
else if(strcmp(x_weapon,"paraquedas",true) == 0) { if(PlayerInfo[playerid][pMats] > 99) { weapon[playerid] = 46; price[playerid] = 100; ammo[playerid] = 1; PlayerInfo[giveplayerid][pGun2] = 46; PlayerInfo[giveplayerid][pAmmo2] = 1; } else { SendClientMessage(playerid,COLOR_GREY," Materiais insuficientes para esta arma."); return 1; } }
else { SendClientMessage(playerid,COLOR_GREY," Nome inexistente."); return 1; }
if (ProxDetectorS(5.0, playerid, giveplayerid))
{
if(giveplayerid == playerid)
{
SendClientMessage(playerid, COLOR_GRAD1, " Vocк nгo pode vender armas a vocк mesmo");
return 1;
}
if(PlayerInfo[playerid][pMiserPerk] > 0)
{
new skill = 2 * PlayerInfo[playerid][pMiserPerk];
new mats = price[playerid] / 100;
price[playerid] -= (mats)*(skill);
}
ConsumingMoney[playerid] = 1;
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), " Vocк deu a %s uma %s com %d municхes usando %d materiais.", giveplayer,x_weapon, ammo[playerid], price[playerid]);
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
SendClientMessage(playerid, COLOR_GRAD1, string);
format(string, sizeof(string), " Vocк recebeu uma %s com %d de %s.", x_weapon, ammo[playerid], sendername);
SendClientMessage(giveplayerid, COLOR_GRAD1, string);
PlayerPlaySound(giveplayerid, 1052, 0.0, 0.0, 0.0);
format(string, sizeof(string), "%s recebeu armas de %s.", giveplayer, sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
new gunname[100];
GetWeaponName(weapon[playerid], gunname, sizeof(gunname));
format(string, sizeof(string), "%s vendeu uma %s para %s.", sendername, gunname,giveplayer);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
GivePlayerWeapon(giveplayerid,weapon[playerid],ammo[playerid]);
PlayerInfo[playerid][pMats] -= price[playerid];
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " Aproxime-se.");
return 1;
}
}
else
{
format(string, sizeof(string), " %d Invбlido", giveplayerid);
SendClientMessage(playerid, COLOR_GRAD1, string);
}
}
return 1;
}
Oq seria isso?