ondialogresponse problem.
#1

I got a problem that I dont know how can I add case 2?


public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(response)// They pressed the first button.
{
switch(dialogid)// If you only have one dialog, then this isn't required, but it's neater for when you implement more dialogs.
{
case 1:// Our dialog!
{
switch(listitem)// Checking which listitem was selected
{
case 0:// The first item listed
{
if(GetPlayerMoney(playerid) < 1000) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
GivePlayerMoney(playerid, -1000);
GivePlayerWeapon(playerid, 4, 1);
}
case 1:
{
if(GetPlayerMoney(playerid) < 1000) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
GivePlayerMoney(playerid, -1000);
GivePlayerWeapon(playerid, 5, 1);

}
case 2:
{
if(GetPlayerMoney(playerid) < 3500) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
GivePlayerMoney(playerid, -3500);
GivePlayerWeapon(playerid, 22, 100);
}
case 3:
{
if(GetPlayerMoney(playerid) < 4500) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
GivePlayerMoney(playerid, -4500);
GivePlayerWeapon(playerid, 23, 100);
}
case 4:
{
if(GetPlayerMoney(playerid) < 7000) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
GivePlayerMoney(playerid, -7000);
GivePlayerWeapon(playerid, 24, 57);
}
case 5:
{
if(GetPlayerMoney(playerid) < 11000) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
GivePlayerMoney(playerid, -11000);
GivePlayerWeapon(playerid, 25, 60);
}
case 6:
{
if(GetPlayerMoney(playerid) < 8000) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
GivePlayerMoney(playerid, -8000);
GivePlayerWeapon(playerid, 28, 180);
}
case 7:
{
if(GetPlayerMoney(playerid) < 20000) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
GivePlayerMoney(playerid, -20000);
GivePlayerWeapon(playerid, 30, 200);
}
case 8:
{
if(GetPlayerMoney(playerid) < 12000) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
GivePlayerMoney(playerid, -12000);
GivePlayerWeapon(playerid, 32, 150);





}
}
}
}
}
return 1;
}
Reply
#2

pawn Код:
#define DIALOGNAME 5000

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    if(dialogid == DIALOGNAME)
    {
        if(response)
        {
            switch(listitem)
            {
                case 0:
                {
                    if(GetPlayerMoney(playerid) < 1000) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
                    GivePlayerMoney(playerid, -1000);
                    GivePlayerWeapon(playerid, 4, 1);
                    }
                case 1:
                {
                    if(GetPlayerMoney(playerid) < 1000) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
                    GivePlayerMoney(playerid, -1000);
                    GivePlayerWeapon(playerid, 5, 1);
                    }
                case 2:
                {
                    if(GetPlayerMoney(playerid) < 3500) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
                    GivePlayerMoney(playerid, -3500);
                    GivePlayerWeapon(playerid, 22, 100);
                    }
                case 3:
                {
                    if(GetPlayerMoney(playerid) < 4500) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
                    GivePlayerMoney(playerid, -4500);
                    GivePlayerWeapon(playerid, 23, 100);
                    }
                case 4:
                {
                    if(GetPlayerMoney(playerid) < 7000) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
                    GivePlayerMoney(playerid, -7000);
                    GivePlayerWeapon(playerid, 24, 57);
                    }
                case 5:
                {
                    if(GetPlayerMoney(playerid) < 11000) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
                    GivePlayerMoney(playerid, -11000);
                    GivePlayerWeapon(playerid, 25, 60);
                    }
                case 6:
                {
                    if(GetPlayerMoney(playerid) < 8000) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
                    GivePlayerMoney(playerid, -8000);
                    GivePlayerWeapon(playerid, 28, 180);
                    }
                case 7:
                {
                    if(GetPlayerMoney(playerid) < 20000) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
                    GivePlayerMoney(playerid, -20000);
                    GivePlayerWeapon(playerid, 30, 200);
                    }
                case 8:
                {
                    if(GetPlayerMoney(playerid) < 12000) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
                    GivePlayerMoney(playerid, -12000);
                    GivePlayerWeapon(playerid, 32, 150);
                    }
                }
            }
        }
    return 0;
}
Correct Code.
Reply
#3

Ok compiled with no errors. why return 0? now I cant buy guns it wont let me. when player goes in the pickup.

if(pickupid==illegalammupickup)
{

ShowPlayerDialog(playerid,1,DIALOG_STYLE_LIST,"{FF 0000}illegal Ammunation","{FF0000}1)Knife $1,000\n{FF0000}2)Baseball Bat $1,000\n{FF0000}3)9mm $3,500\n{FF0000}4)9mm silenced $4,500\n{FF0000}5)Deagle $7,000\n{FF0000}6)Shotgun $11,000\n{FF0000}7)Micro SMG [Uzi] $8,000\n{FF0000}AK-47 $20,000\n{FF0000}9)Tec-9 $12,000","Buy", "Cancel");

}
Reply
#4

return 0 is used in the last dialog you have in your mode, if you have any more after this, remove one above the return key and change it to return 1;
Reply
#5

pawn Код:
if(pickupid==illegalammupickup)
{
ShowPlayerDialog(playerid,DIALOGNAME,DIALOG_STYLE_LIST,"{FF 0000}illegal Ammunation","{FF0000}1)Knife $1,000\n{FF0000}2)Baseball Bat $1,000\n{FF0000}3)9mm $3,500\n{FF0000}4)9mm silenced $4,500\n{FF0000}5)Deagle $7,000\n{FF0000}6)Shotgun $11,000\n{FF0000}7)Micro SMG [Uzi]       $8,000\n{FF0000}AK-47 $20,000\n{FF0000}9)Tec-9 $12,000","Buy", "Cancel");
}
Fixed, Right to the Dialog, +Reputation ?
Reply
#6

yeah of course il rep you man. im trying to make it work.
Reply
#7

Quote:
Originally Posted by oscar7610
Посмотреть сообщение
yeah of course il rep you man. im trying to make it work
If not working, put a return 1 instead of return 0.
Reply
#8

Ok now that all cases is for ammunation now i like to create a food menu. how?
I didnt #define I did new ammunation;
Reply
#9

That set is used only to operate the existing dialog and compile without errors, now if you want to create another dialog menu for food use DIALOGNAME +1
Reply
#10

But can you give me an example where to paste it? im a noob im finding it difficult man.

First case.

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == illegalammunation)
{
if(response)
{
switch(listitem)
{
case 0:
{
if(GetPlayerMoney(playerid) < 1000) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
GivePlayerMoney(playerid, -1000);
GivePlayerWeapon(playerid, 4, 1);
}
case 1:
{
if(GetPlayerMoney(playerid) < 1000) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
GivePlayerMoney(playerid, -1000);
GivePlayerWeapon(playerid, 5, 1);
}
case 2:
{
if(GetPlayerMoney(playerid) < 3500) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
GivePlayerMoney(playerid, -3500);
GivePlayerWeapon(playerid, 22, 100);
}
case 3:
{
if(GetPlayerMoney(playerid) < 4500) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
GivePlayerMoney(playerid, -4500);
GivePlayerWeapon(playerid, 23, 100);
}
case 4:
{
if(GetPlayerMoney(playerid) < 7000) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
GivePlayerMoney(playerid, -7000);
GivePlayerWeapon(playerid, 24, 57);
}
case 5:
{
if(GetPlayerMoney(playerid) < 11000) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
GivePlayerMoney(playerid, -11000);
GivePlayerWeapon(playerid, 25, 60);
}
case 6:
{
if(GetPlayerMoney(playerid) < 8000) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
GivePlayerMoney(playerid, -8000);
GivePlayerWeapon(playerid, 28, 180);
}
case 7:
{
if(GetPlayerMoney(playerid) < 20000) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
GivePlayerMoney(playerid, -20000);
GivePlayerWeapon(playerid, 30, 200);
}
case 8:
{
if(GetPlayerMoney(playerid) < 12000) return SendClientMessage(playerid, 0xFF0000FF, "You don't have enough cash.");
GivePlayerMoney(playerid, -12000);
GivePlayerWeapon(playerid, 32, 150);

}
}
}
}
return 0;
}

Where the second one?
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)