h3r0
Умник
В этой команде нужно водить /sellgun ид оружие патроны, но как сделать чтобы просто писать /sellgun ид оружие, а патроны сами давались(например 50 патронов)
PHP:
if(strcmp(cmd,"/sellgun",true)==0)
{
if(IsPlayerConnected(playerid))
{
new x_gun[500];
new weapon[MAX_PLAYERS],ammo[MAX_PLAYERS];
tmp = strtok(cmdtext, idx); //делаем пробел
if(!strlen(tmp))
{
SendClientMessage(playerid, TEAM_VAGOS_COLOR, "____________________________________________________________________");
SendClientMessage(playerid, COLOR_WHITE, "Используй: /sellgun [ид] [оружие] [патроны]");
SendClientMessage(playerid, COLOR_GREY, "Weapons: eagle(150) mp5(200) shotgun(250)");
SendClientMessage(playerid, COLOR_GREY, "Weapons: ak47(300) m4(300) rifle (250)");
SendClientMessage(playerid, TEAM_VAGOS_COLOR, "____________________________________________________________________");
return 1;
}
giveplayerid = ReturnUser(tmp);
if (IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
x_gun = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, TEAM_VAGOS_COLOR, "____________________________________________________________________");
SendClientMessage(playerid, COLOR_WHITE, "Используй: /sellgun [ид] [оружие] [патроны]");
SendClientMessage(playerid, COLOR_GREY, "Weapons: eagle(150) mp5(200) shotgun(250)");
SendClientMessage(playerid, COLOR_GREY, "Weapons: ak47(300) m4(300) rifle (250)");
SendClientMessage(playerid, TEAM_VAGOS_COLOR, "____________________________________________________________________");
return 1;
}
tmp = strtok(cmdtext, idx); //делаем пробел
ammo[playerid] = strval(tmp);
if(!strlen(tmp))
{
SendClientMessage(playerid, TEAM_VAGOS_COLOR, "____________________________________________________________________");
SendClientMessage(playerid, COLOR_WHITE, "Используй: /sellgun [ид] [оружие] [патроны]");
SendClientMessage(playerid, COLOR_GREY, "Weapons: eagle(150) mp5(200) shotgun(250)");
SendClientMessage(playerid, COLOR_GREY, "Weapons: ak47(300) m4(300) rifle (250)");
SendClientMessage(playerid, TEAM_VAGOS_COLOR, "____________________________________________________________________");
return 1;
}
}
if(strcmp(x_gun,"eagle",true) == 0)
{
weapon[playerid]=24;
}
else if(strcmp(x_gun,"mp5",true) == 0)
{
weapon[playerid]=29;
}
else if(strcmp(x_gun,"shotgun",true) == 0)
{
weapon[playerid]=25;
}
else if(strcmp(x_gun,"ak47",true) == 0)
{
weapon[playerid]=30;
}
else if(strcmp(x_gun,"m4",true) == 0)
{
weapon[playerid]=31;
}
else if(strcmp(x_gun,"rifle",true) == 0)
{
weapon[playerid]=33;
}
else { SendClientMessage(playerid,COLOR_RED,"** Неизвестное название оружия!"); return 1; }
if (ProxDetectorS(5.0, playerid, giveplayerid))
{
if(PlayerInfo[playerid][pMats]>=ammo[playerid])
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "Вы собрали игроку %s оружие %s с %d патронами потративши %d материалов.", giveplayer, x_gun, ammo[playerid],ammo[playerid]);
SendClientMessage(playerid, COLOR_GRAD1, string);
format(string, sizeof(string), "Игрок %s собрал(a) вам оружие %s с %d патронами.", sendername, x_gun, ammo[playerid]);
SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
PlayerPlaySound(giveplayerid, 1052, 0.0, 0.0, 0.0);
format(string, sizeof(string), "собрал(а) оружие из материалов и передал(а) его %s." ,giveplayer);
Action(playerid, string);
PlayerInfo[playerid][pMats] -= ammo[playerid];
GiveWeapon(giveplayerid,weapon[playerid],ammo[playerid]);
}
else
{
SendClientMessage(playerid, COLOR_GREY, "* Нехватает материалов!");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, "** Игрок слишком далеко");
return 1;
}
}
else
{
format(string, sizeof(string), "** Игрок с id %d не в игре!", giveplayerid);
SendClientMessage(playerid, COLOR_RED, string);
}
if(playerid != giveplayerid)
{
format(string, sizeof(string), "Ты не можешь сделать оружие сам себе", giveplayerid);
SendClientMessage(playerid, COLOR_RED, string);
return 1;
}
}
return 1;
}
