NightMane
Дебютант
Здравствуйте, хотел бы вас попросить о помощи...
Вот сам скрипт его принцип заключается в том что-бы игрок состоящий в Армии мог брать патроны с точки A и донести их до точки B что-бы пополнить склад армии...
Командами /ammo get[Взять со склада точки A] /ammo put положить их на склад...
Но вот не задача я плохо знаю pawno и сам баг в том что можно просто прописывать /ammo put даже не брав в руки патроны, и склад пополняется.
Так-же тут стоит ограничение в 50.000 пт. Но оно может выйти за рамки этих ограничений...
Возможно надо создать переменную при которой мы не сможем положить на склад патроны не взях их.
Заранее всем спасибо 
Если нужны скрины я могу их предоставить вам)
Вот сам скрипт его принцип заключается в том что-бы игрок состоящий в Армии мог брать патроны с точки A и донести их до точки B что-бы пополнить склад армии...
Командами /ammo get[Взять со склада точки A] /ammo put положить их на склад...
Но вот не задача я плохо знаю pawno и сам баг в том что можно просто прописывать /ammo put даже не брав в руки патроны, и склад пополняется.
Так-же тут стоит ограничение в 50.000 пт. Но оно может выйти за рамки этих ограничений...
Возможно надо создать переменную при которой мы не сможем положить на склад патроны не взях их.
PHP:
CMD:ammo(playerid,params[]) {
if(!IsAArmy(playerid)) return SendClientMessage(playerid,COLOR_GREY,T_CMD);
if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER) return SendClientMessage(playerid, COLOR_GREY, "Âû äîëæíû íàõîäèòñ&# 255; âîçëå àâòî!");
if(sscanf(params,"s[4]",params[0])) {
SendClientMessage(playerid,COLOR_GREEN,"Â 6;åäèòå: /ammo [äåéñòâèå ;]");
SendClientMessage(playerid,COLOR_GREEN,"Ä 9;éñòâèÿ: get âçÿòü, put - ïîëîæèòü") ;
return 1;
}
if(!strcmp("get",params[0],true)) {
if(IsPlayerInRangeOfPoint(playerid,10.0,-1384.3207,809.8448,1550.0859))
{
ArmyMats[1] -= 50;
strin = "";
format(strin, 124, "{72c100}<< Ïàòðîíîâ ; íà ñêëàäå >>\n{e2ba00}%d èç 50000 øò",ArmyMats[1]);
Update3DTextLabelText(WareHouse[5], COLOR_YELLOW, strin);
SetPVarInt(playerid,"PlayerMats",50);
SetPlayerAttachedObject(playerid, 1 , 2358, 1,0.11,0.36,0.0,0.0,90.0);
ApplyAnimation(playerid,"CARRY","crry_prtial",4.1, 0,1,1,1,1);
}
else {
SendClientMessage(playerid,COLOR_GREY,"Âû ; íå íà ñêëàäå àðìèè ëèáî íà ñêëàäå íåò ïàòðîí!");
}
}
if(!strcmp("put",params[0],true)) {
if(IsPlayerInRangeOfPoint(playerid,8.0,-1384.3207,809.8448,1550.0859))//320.6225,1979.2566,17.6406
{
ArmyMats[0] += 50;
strin = "";
format(strin, 124, "{72c100}<< Ïàòðîíîâ ; íà ñêëàäå >>\n{e2ba00}%d èç 50000 øò",ArmyMats[0]);
Update3DTextLabelText(WareHouse[4], COLOR_YELLOW, strin);
strin = "";
format(strin, 124, "{72c100}<< Ïàòðîíîâ ; íà ñêëàäå >>\n{e2ba00}%d èç 50000 øò",ArmyMats[0]);
Update3DTextLabelText(WareHouse[6], COLOR_YELLOW, strin);
if(IsPlayerAttachedObjectSlotUsed(playerid, 1)) RemovePlayerAttachedObject(playerid, 1);
ApplyAnimation(playerid,"PED","IDLE_tired",4.1,0,1 ,1,0,1);
SetPVarInt(playerid,"PlayerMats",0);
}
else SendClientMessage(playerid,COLOR_GREY,"Âû ; íå íà ñêëàäå àðìèè!");
}
return 1;
}
Если нужны скрины я могу их предоставить вам)
