-
üdv nem tom miért eddig rendesen ment de vmiért mindig leamortizálja magát a modom na most a probléma az h ha kiválasztok egy opciót dialógban akkor nem hajtsa azt végre
ShowPlayerDialog(playerid, DIALOG_2, DIALOG_STYLE_LIST, \"Válaszd ki, hogy melyik csapat bázisát akarod felrobbantani!\", \"{FFFF00}Német bázis - Las Payasadas\\n{00FF00}Arab bázis - Las Barrancas\\n{0000FF}Amerikai bázis - Fort Carson\\n{FF0000}Orosz bázis - El Quebrados\\n{C0C0C0}Spanyol bázis - Villa\\n{FF8000}Indiai bázis - Bayside\\n{747474}Indokínai bázis - Blackfield\", \"Választ\", \"Kilépés\");
if(dialogid == DIALOG_2)
{
if(listitem == 0)
{
if(GetPlayerMoney(playerid) < 100000) return SendClientMessage(playerid,COLOR_RED,\"Nincs elég pénzed!\");
GivePlayerMoney(playerid, -100000);
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Légicsapás parancs kiadva!...\");
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Parancs végrehajtva!\");
SendClientMessageToAll(COLOR_KHAKI, \"Felrobbantották a Német bázist!\");
legicsapas(-233.3154,2693.9761,62.6875,100);
SetPVarInt(playerid,\"LegicsapIdo\",GetTickCount()+600000);
SetPlayerScore(playerid, GetPlayerScore(playerid) + 5);
}
if(listitem == 1)
{
if(GetPlayerMoney(playerid) < 100000) return SendClientMessage(playerid,COLOR_RED,\"Nincs elég pénzed!\");
GivePlayerMoney(playerid, -100000);
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Légicsapás parancs kiadva!...\");
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Parancs végrehajtva!\");
SendClientMessageToAll(COLOR_KHAKI, \"Felrobbantották a Arab bázist!\");
legicsapas(-822.6929,1514.4755,20.2842,100);
SetPlayerScore(playerid, GetPlayerScore(playerid) + 5);
SetPVarInt(playerid,\"LegicsapIdo\",GetTickCount()+600000);
}
if(listitem == 2)
{
if(GetPlayerMoney(playerid) < 100000) return SendClientMessage(playerid,COLOR_RED,\"Nincs elég pénzed!\");
GivePlayerMoney(playerid, -100000);
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Légicsapás parancs kiadva!...\");
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Parancs végrehajtva!\");
SendClientMessageToAll(COLOR_KHAKI, \"Felrobbantották az Amerikai bázist!\");
legicsapas(-134.2827,1148.6831,19.5938,100);
SetPlayerScore(playerid, GetPlayerScore(playerid) + 5);
SetPVarInt(playerid,\"LegicsapIdo\",GetTickCount()+600000);
}
if(listitem == 3)
{
if(GetPlayerMoney(playerid) < 100000) return SendClientMessage(playerid,COLOR_RED,\"Nincs elég pénzed!\");
GivePlayerMoney(playerid, -100000);
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Légicsapás parancs kiadva!...\");
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Parancs végrehajtva!\");
SendClientMessageToAll(COLOR_KHAKI, \"Felrobbantották az Orosz bázist!\");
legicsapas(-1496.7515,2626.2053,55.6875,100);
SetPlayerScore(playerid, GetPlayerScore(playerid) + 5);
SetPVarInt(playerid,\"LegicsapIdo\",GetTickCount()+600000);
}
if(listitem == 4)
{
if(GetPlayerMoney(playerid) < 100000) return SendClientMessage(playerid,COLOR_RED,\"Nincs elég pénzed!\");
GivePlayerMoney(playerid, -100000);
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Légicsapás parancs kiadva!...\");
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Parancs végrehajtva!\");
SendClientMessageToAll(COLOR_KHAKI, \"Felrobbantották a Spanyol bázist!\");
legicsapas(-687.3618,939.9363,13.6328,100);
SetPlayerScore(playerid, GetPlayerScore(playerid) + 5);
SetPVarInt(playerid,\"LegicsapIdo\",GetTickCount()+600000);
}
if(listitem == 5)
{
if(GetPlayerMoney(playerid) < 100000) return SendClientMessage(playerid,COLOR_RED,\"Nincs elég pénzed!\");
GivePlayerMoney(playerid, -100000);
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Légicsapás parancs kiadva!...\");
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Parancs végrehajtva!\");
SendClientMessageToAll(COLOR_KHAKI, \"Felrobbantották az Indiai bázist!\");
legicsapas(-2244.3735,2338.6782,4.9672,100);
SetPlayerScore(playerid, GetPlayerScore(playerid) + 5);
SetPVarInt(playerid,\"LegicsapIdo\",GetTickCount()+600000);
if(listitem == 6)
{
if(GetPlayerMoney(playerid) < 100000) return SendClientMessage(playerid,COLOR_RED,\"Nincs elég pénzed!\");
GivePlayerMoney(playerid, -100000);
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Légicsapás parancs kiadva!...\");
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Parancs végrehajtva!\");
SendClientMessageToAll(COLOR_KHAKI, \"Felrobbantották az Indokínai bázist!\");
legicsapas(1044.6735,1323.9254,15.2328,100);
SetPlayerScore(playerid, GetPlayerScore(playerid) + 5);
SetPVarInt(playerid,\"LegicsapIdo\",GetTickCount()+600000);
}
}
-
Inkább switch-el csináld mert az gyorsabb.
-
aha!... hogy mi?
-
if(dialogid == DIALOG_2)
{
switch(listitem)
{
case 0:
{
//amit akarsz
}
case 1:
{
//amit akarsz
}
// és így tovább
}
return 1;
}
-
Tessék:
CMD:asd(playerid) {
ShowPlayerDialog(playerid, DIALOG_2, DIALOG_STYLE_LIST, \"Válaszd ki, hogy melyik csapat bázisát akarod felrobbantani!\", \"{FFFF00}Német bázis - Las Payasadas\\n{00FF00}Arab bázis - Las Barrancas\\n{0000FF}Amerikai bázis - Fort Carson\\n{FF0000}Orosz bázis - El Quebrados\\n{C0C0C0}Spanyol bázis - Villa\\n{FF8000}Indiai bázis - Bayside\\n{747474}Indokínai bázis - Blackfield\", \"Választ\", \"Kilépés\");
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) {
switch(dialogid) {
case DIALOG_2: {
if(!response) return 1;
switch(listitem) {
case 0: {
if(GetPlayerMoney(playerid) < 100000) return SendClientMessage(playerid,COLOR_RED,\"Nincs elég pénzed!\");
GivePlayerMoney(playerid, -100000);
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Légicsapás parancs kiadva!...\");
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Parancs végrehajtva!\");
SendClientMessageToAll(COLOR_KHAKI, \"Felrobbantották a Német bázist!\");
legicsapas(-233.3154,2693.9761,62.6875,100);
SetPVarInt(playerid,\"LegicsapIdo\",GetTickCount()+600000);
SetPlayerScore(playerid, GetPlayerScore(playerid) + 5);
}
case 1: {
if(GetPlayerMoney(playerid) < 100000) return SendClientMessage(playerid,COLOR_RED,\"Nincs elég pénzed!\");
GivePlayerMoney(playerid, -100000);
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Légicsapás parancs kiadva!...\");
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Parancs végrehajtva!\");
SendClientMessageToAll(COLOR_KHAKI, \"Felrobbantották a Arab bázist!\");
legicsapas(-822.6929,1514.4755,20.2842,100);
SetPlayerScore(playerid, GetPlayerScore(playerid) + 5);
SetPVarInt(playerid,\"LegicsapIdo\",GetTickCount()+600000);
}
case 2: {
if(GetPlayerMoney(playerid) < 100000) return SendClientMessage(playerid,COLOR_RED,\"Nincs elég pénzed!\");
GivePlayerMoney(playerid, -100000);
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Légicsapás parancs kiadva!...\");
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Parancs végrehajtva!\");
SendClientMessageToAll(COLOR_KHAKI, \"Felrobbantották az Amerikai bázist!\");
legicsapas(-134.2827,1148.6831,19.5938,100);
SetPlayerScore(playerid, GetPlayerScore(playerid) + 5);
SetPVarInt(playerid,\"LegicsapIdo\",GetTickCount()+600000);
}
case 3: {
if(GetPlayerMoney(playerid) < 100000) return SendClientMessage(playerid,COLOR_RED,\"Nincs elég pénzed!\");
GivePlayerMoney(playerid, -100000);
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Légicsapás parancs kiadva!...\");
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Parancs végrehajtva!\");
SendClientMessageToAll(COLOR_KHAKI, \"Felrobbantották az Orosz bázist!\");
legicsapas(-1496.7515,2626.2053,55.6875,100);
SetPlayerScore(playerid, GetPlayerScore(playerid) + 5);
SetPVarInt(playerid,\"LegicsapIdo\",GetTickCount()+600000);
}
case 4: {
if(GetPlayerMoney(playerid) < 100000) return SendClientMessage(playerid,COLOR_RED,\"Nincs elég pénzed!\");
GivePlayerMoney(playerid, -100000);
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Légicsapás parancs kiadva!...\");
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Parancs végrehajtva!\");
SendClientMessageToAll(COLOR_KHAKI, \"Felrobbantották a Spanyol bázist!\");
legicsapas(-687.3618,939.9363,13.6328,100);
SetPlayerScore(playerid, GetPlayerScore(playerid) + 5);
SetPVarInt(playerid,\"LegicsapIdo\",GetTickCount()+600000);
}
case 5: {
if(GetPlayerMoney(playerid) < 100000) return SendClientMessage(playerid,COLOR_RED,\"Nincs elég pénzed!\");
GivePlayerMoney(playerid, -100000);
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Légicsapás parancs kiadva!...\");
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Parancs végrehajtva!\");
SendClientMessageToAll(COLOR_KHAKI, \"Felrobbantották az Indiai bázist!\");
legicsapas(-2244.3735,2338.6782,4.9672,100);
SetPlayerScore(playerid, GetPlayerScore(playerid) + 5);
SetPVarInt(playerid,\"LegicsapIdo\",GetTickCount()+600000);
}
case 6: {
if(GetPlayerMoney(playerid) < 100000) return SendClientMessage(playerid,COLOR_RED,\"Nincs elég pénzed!\");
GivePlayerMoney(playerid, -100000);
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Légicsapás parancs kiadva!...\");
SendClientMessage(playerid,COLOR_GREEN,\"Rádió: Parancs végrehajtva!\");
SendClientMessageToAll(COLOR_KHAKI, \"Felrobbantották az Indokínai bázist!\");
legicsapas(1044.6735,1323.9254,15.2328,100);
SetPlayerScore(playerid, GetPlayerScore(playerid) + 5);
SetPVarInt(playerid,\"LegicsapIdo\",GetTickCount()+600000);
}
}
}
}
return 1;
}
-
király, kösz!