awangard
Умник
Помогите сделать так, что бы диалог закрывался только, если нажать кнопку "Отмена". Вообще нужно сделать так: Если нажать кнопку "Выбрать", то диалог должен обновиться и открыться ещё раз.
Вот Код
Функции диалога:
Вот Код
PHP:
Команда:
CMD:trunk(playerid, params[])
{
if(GetPlayerHouse(playerid) == 0) return SCM(playerid, COLOR_WHITE, "Ó âàñ íåò ìàøèíû!");
if(CarInfo[playerid][cLock] == 1) return SCM(playerid, COLOR_WHITE, "Îøèáêà: Âàø òðàíñïîðò çàêðûò. Îòêðîéòå åãî, ÷òîáû âîñïîëüçîâàòüñÿ áàãàæíèêîì.");
new Float: vX, Float: vY, Float: vZ;
GetCoordBootVehicle(GetPVarInt(playerid,"CREVEH"), vX, vY, vZ);
if(!IsPlayerInRangeOfPoint(playerid, 2.0, vX, vY, vZ) || IsPlayerInAnyVehicle(playerid)) return SCM(playerid, COLOR_WHITE, "Îøèáêà: Ïîäñêàçêà: Âîçìîæíî èñïîëüçîâàòü êîìàíäó âîçëå áàãàæíèêà!");
new engine,lights,alarm,doors,bonnet,boot,objective;
GetVehicleParamsEx(GetPVarInt(playerid,"CREVEH"),engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(GetPVarInt(playerid,"CREVEH"),engine,lights,alarm,doors,bonnet,1,objective);
ApplyAnimation(playerid,"CASINO","dealone",4.1,1,1,1,1,1);
new string[500];
new gunname[5][32];
for(new i = 0; i < 5; i++)
{
if(CarInfo[playerid][cGun][i] != 0) GetWeaponName(CarInfo[playerid][cGun][i],gunname[i],32);
if(CarInfo[playerid][cGun][i] == 0) format(gunname[i], 6,"Ïóñòî");
}
format(string,sizeof(string),"[-] Çàïðàâèòü òðàíñïîðò\n[-] Ïîëîæèòü îðóæèå\n[-] Çàáðàòü âñå îðóæèå\n[-] Ïîëîæèòü íàðêîòèêè\n[-] Âçÿòü íàðêîòèêè\t\t%i ã.\n{0BDA51}ß÷åéêà\t\t\t\tÏàòðîíû\n[0]ß÷åéêà(%s)\t%i ïò.\n[1]ß÷åéêà(%s)\t\t%i ïò.\n[2]ß÷åéêà(%s)\t\t%i ïò.\n[3]ß÷åéêà(%s)\t\t%i ïò.",
CarInfo[playerid][cDrugs],
gunname[0],CarInfo[playerid][cGunAmmo][0],
gunname[1],CarInfo[playerid][cGunAmmo][1],
gunname[2],CarInfo[playerid][cGunAmmo][2],
gunname[3],CarInfo[playerid][cGunAmmo][3],
gunname[4],CarInfo[playerid][cGunAmmo][4]);
SPD(playerid,169,DIALOG_STYLE_LIST,"Áàãàæíèê ëè÷íîãî òðàíñïîðòà",string,"Âûáðàòü","Çàêðûòü");
return true;
}
PHP:
case 169:
{
if(response)
{
switch(listitem)
{
case 0://Çàïðàâèòü àâòî
{
if(PlayerInfo[playerid][pJerrycan] == 0)
{
new engine,lights,alarm,doors,bonnet,boot,objective;
GetVehicleParamsEx(GetPVarInt(playerid,"CREVEH"),engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(GetPVarInt(playerid,"CREVEH"),engine,lights,alarm,doors,bonnet,0,objective);
ApplyAnimation(playerid,"CARRY","crry_prtial",4.0,0,0,0,0,0);
SCM(playerid, COLOR_GREY, "Ó âàñ íåò êàíèñòðû!");
return true;
}
PlayerInfo[playerid][pJerrycan] = 0;
Vehicle[vehicle][Fuel] += 50;
SCM(playerid, COLOR_LIGHTBLUE, "[Ò] Âû äîçàïðàâèëè òðàíñïîðò (+50 ëèòðîâ)");
}
case 1://Ïîëîæèòü îðóæèå, ïî ñëîòàì
{
new weaponid = GetPlayerWeapon(playerid);
new slot = GetWeaponSlot(weaponid);
if(slot < 2 || slot > 6)
{
new engine,lights,alarm,doors,bonnet,boot,objective;
GetVehicleParamsEx(GetPVarInt(playerid,"CREVEH"),engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(GetPVarInt(playerid,"CREVEH"),engine,lights,alarm,doors,bonnet,0,objective);
ApplyAnimation(playerid,"CARRY","crry_prtial",4.0,0,0,0,0,0);
SCM(playerid, COLOR_GREY, "Äàííîå îðóæèå íå ïîäõîäèòü ê ÿ÷åéêå!");
return true;
}
if(PlayerInfo[playerid][pGun][slot] == 0)
{
new engine,lights,alarm,doors,bonnet,boot,objective;
GetVehicleParamsEx(GetPVarInt(playerid,"CREVEH"),engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(GetPVarInt(playerid,"CREVEH"),engine,lights,alarm,doors,bonnet,0,objective);
ApplyAnimation(playerid,"CARRY","crry_prtial",4.0,0,0,0,0,0);
SCM(playerid, COLOR_GREY, "Îøèáêà!");
return true;
}
if(CarInfo[playerid][cGun][slot-2] != 0 && PlayerInfo[playerid][pGun][slot] != CarInfo[playerid][cGun][slot-2])
{
new engine,lights,alarm,doors,bonnet,boot,objective;
GetVehicleParamsEx(GetPVarInt(playerid,"CREVEH"),engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(GetPVarInt(playerid,"CREVEH"),engine,lights,alarm,doors,bonnet,0,objective);
ApplyAnimation(playerid,"CARRY","crry_prtial",4.0,0,0,0,0,0);
SCM(playerid, COLOR_GREY, "Äàííàÿ ÿ÷åéêà óæå çàíÿòà!");
return true;
}
CarInfo[playerid][cGun][slot-2] = PlayerInfo[playerid][pGun][slot];
CarInfo[playerid][cGunAmmo][slot-2] += PlayerInfo[playerid][pGunAmmo][slot];
ResetPlayerWeaponID(playerid, PlayerInfo[playerid][pGun][slot]);
}
case 2:
{
new guns;
for(new i = 0; i < 5; i++)
{
if(CarInfo[playerid][cGun][i] == 0 || CarInfo[playerid][cGunAmmo][i] == 0) continue;
GivePlayerWeaponAC(playerid, CarInfo[playerid][cGun][i], CarInfo[playerid][cGunAmmo][i]);
CarInfo[playerid][cGunAmmo][i] = 0;
CarInfo[playerid][cGun][i] = 0;
guns++;
}
if(!guns) SCM(playerid, COLOR_GREY,"Â áàãàæíèêå íåò îðóæèÿ.");
else SCM(playerid, COLOR_GREY,"Âû çàáðàëè âñå îðóæèå èç áàãàæíèêà.");
}
case 3://Ïîëîæèòü íàðêîòèêè
{
CarInfo[playerid][cDrugs] += PlayerInfo[playerid][pDrugs];
PlayerInfo[playerid][pDrugs] = 0;
}
case 4://Âçÿòü íàðêîòèêè
{
if(CarInfo[playerid][cDrugs] == 0)
{
new engine,lights,alarm,doors,bonnet,boot,objective;
GetVehicleParamsEx(GetPVarInt(playerid,"CREVEH"),engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(GetPVarInt(playerid,"CREVEH"),engine,lights,alarm,doors,bonnet,0,objective);
ApplyAnimation(playerid,"CARRY","crry_prtial",4.0,0,0,0,0,0);
SCM(playerid,COLOR_GREY,"Â òðàíñïîðòå íåò íàðêîòèêîâ!");
return true;
}
if(CarInfo[playerid][cDrugs] > 50)
{
CarInfo[playerid][cDrugs] -= 50;
PlayerInfo[playerid][pDrugs] += 50;
}
if(CarInfo[playerid][cDrugs] <= 50)
{
PlayerInfo[playerid][pDrugs] += CarInfo[playerid][cDrugs];
CarInfo[playerid][cDrugs] = 0;
}
}
}
new engine,lights,alarm,doors,bonnet,boot,objective;
GetVehicleParamsEx(GetPVarInt(playerid,"CREVEH"),engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(GetPVarInt(playerid,"CREVEH"),engine,lights,alarm,doors,bonnet,0,objective);
ApplyAnimation(playerid,"CARRY","crry_prtial",4.0,0,0,0,0,0);
if(listitem < 6) return true;
if(CarInfo[playerid][cGunAmmo][listitem-6] == 0) return SCM(playerid, COLOR_GREY," äàííîé ÿ÷åéêå íåò îðóæèÿ!");
if(CarInfo[playerid][cGunAmmo][listitem-6] > 10)
{
new gunname[32];
GetWeaponName(CarInfo[playerid][cGun][listitem-5],gunname,32);
new mes[128];
format(mes,sizeof(mes),"Âû âçÿëè 10 ïàòðîíîâ %s", gunname);
SCM(playerid, COLOR_GREY,mes);
GivePlayerWeaponAC(playerid, CarInfo[playerid][cGun][listitem-6], 10);
CarInfo[playerid][cGunAmmo][listitem-6] -= 10;
return true;
}
if(CarInfo[playerid][cGunAmmo][listitem-6] <= 10)
{
new gunname[32];
GetWeaponName(CarInfo[playerid][cGun][listitem-6],gunname,32);
new mes[128];
format(mes,sizeof(mes),"Âû âçÿëè %i ïàòðîíîâ %s", CarInfo[playerid][cGunAmmo][listitem-6], gunname);
SCM(playerid, COLOR_GREY,mes);
GivePlayerWeaponAC(playerid, CarInfo[playerid][cGun][listitem-6], CarInfo[playerid][cGunAmmo][listitem-6]);
CarInfo[playerid][cGunAmmo][listitem-6] = 0;
CarInfo[playerid][cGun][listitem-6] = 0;
return true;
}
return true;
}
else
{
new engine,lights,alarm,doors,bonnet,boot,objective;
GetVehicleParamsEx(GetPVarInt(playerid,"CREVEH"),engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(GetPVarInt(playerid,"CREVEH"),engine,lights,alarm,doors,bonnet,0,objective);
ApplyAnimation(playerid,"CARRY","crry_prtial",4.0,0,0,0,0,0);
return true;
}
}
Последнее редактирование:
