Dialog problem
#1

The problem is when i click something in the dialog then the dialog disappears but he doesn't give/do anything

((only the register and login dialog are working right!))

Example: I do /shop and click the m4 to buy then the dialog disappears but i don't receive any message or gun

So who knows the problem, Thanks for help!

my code:

pawn Код:
if(dialogid == DIALOG_RADIOURL)
    {
        if(response)
        {
         if(strlen(inputtext) > 0)
                 {
                    PlayAudioStreamForPlayer(playerid, inputtext);
                 }
                 else
                 {
                     SendClientMessage(playerid,C_WRONG,"Not Valid");
                     return 1;
                 }


        }
     }

    if(dialogid == DIALOG_TELEPORT)
{
         if(!response) return SendClientMessage(playerid, C_CANCELED, "[SYSTEM]: The action is canceled!");
         switch(listitem)
{
                case 0:
                {
                SetPlayerPos(playerid,1529.6,-1691.2,13.3);
                SendClientMessage(playerid,C_VIP,"You Teleported to Wheel Arch Angels");
                }
                case 1:
                {
                SetPlayerPos(playerid,-1417.0,-295.8,14.1);
                SendClientMessage(playerid,C_VIP,"You Teleported to Transfender");
                }
                case 2:
                {
                SetPlayerPos(playerid,1699.2,1435.1, 10.7);
                SendClientMessage(playerid,C_VIP,"You Teleported to Loco Low Co.");
                }
                case 3:
                {
                SetPlayerPos(playerid,1699.2,1435.1, 10.7);
                SendClientMessage(playerid,C_VIP,"You Teleported back to Los Santos.");
                return 1;

}
}
}
 
     
     


    if(dialogid == DIALOG_SHOP)
{
        if(!response) return SendClientMessage(playerid, C_CANCELED, "[SYSTEM]: The action is canceled!");
        switch(listitem)
        {
            case 0: // Deagle
            {
                if (GetPlayerMoney(playerid)>=5000)
                {
                    SendClientMessage(playerid,  C_BUY, "[SYSTEM]: You have sucessfully bought an deagle!");
                    GivePlayerWeapon(playerid, 24, 100);
                    GivePlayerMoney(playerid, -5000);
                    return 1;
                }
                else SendClientMessage(playerid, C_WRONG, "[SYSTEM]: You don't have enough money!");
                return 1;
            }
            case 1: // AK
            {
                if (GetPlayerMoney(playerid)>=2500)
                {
                    SendClientMessage(playerid,   C_BUY, "[SYSTEM]: You have sucessfully bought an AK!");
                    GivePlayerWeapon(playerid, 30, 150);
                    GivePlayerMoney(playerid, -2500);
                    return 1;
                }
                else SendClientMessage(playerid,  C_WRONG, "[SYSTEM]: You don't have enough money!");
                return 1;
            }
            case 2: // M4
            {
                    if (GetPlayerMoney(playerid)>=3000)
                    {
                        SendClientMessage(playerid,   C_BUY, "[SYSTEM]: You have sucessfully bought an M4!");
                        GivePlayerWeapon(playerid, 31, 150);
                        GivePlayerMoney(playerid, -3000);
                        return 1;
                    }
                    else SendClientMessage(playerid,  C_WRONG, "[SYSTEM]:  don't have enough money!");
                    return 1;
            }
            case 3: // Shotgun
            {
                if (GetPlayerMoney(playerid)>=2500)
                {
                    SendClientMessage(playerid,   C_BUY, "[SYSTEM]: You have sucessfully bought an Shotgun !");
                    GivePlayerWeapon(playerid, 25, 50);
                    GivePlayerMoney(playerid, -2500);
                    return 1;
                }
                else SendClientMessage(playerid,  C_WRONG, "[SYSTEM]: You don't have enough money!");
                return 1;
            }
            case 4: // Sniper
            {
                if (GetPlayerMoney(playerid)>=5000)
                {
                    SendClientMessage(playerid,   C_BUY, "[SYSTEM]: You have sucessfully bought an Sniper!");
                    GivePlayerWeapon(playerid, 34, 50);
                    GivePlayerMoney(playerid, -5000);
                    return 1;
                }
                else SendClientMessage(playerid,  C_WRONG, "[SYSTEM]: You don't have enough money!");
                return 1;
             }
             case 5:
             {
                if (GetPlayerMoney(playerid)>=4500)
                {
                    SendClientMessage(playerid,   C_BUY, "[SYSTEM]: You have sucessfully bought an Sniper!");
                    GivePlayerWeapon(playerid, 33, 50);
                    GivePlayerMoney(playerid, -4500);
                    return 1;
                }
                else SendClientMessage(playerid,  C_WRONG, "[SYSTEM]: You don't have enough money!");
                return 1;
            }
            case 6: // MP5
            {
                    if (GetPlayerMoney(playerid)>=1500)
                    {
                    SendClientMessage(playerid,   C_BUY, "[SYSTEM]: You have sucessfully bought an MP5!");
                    GivePlayerWeapon(playerid, 29, 180);
                    GivePlayerMoney(playerid, -1500);
                    return 1;
                    }
                    else SendClientMessage(playerid,  C_WRONG, "[SYSTEM]: You don't have enough money!");
                    return 1;
                    }
}
}
   
    return 1;
}
Reply
#2

Try this, it should work. You should put return 1; and then return 0; at the end of "ondialogresponse"

pawn Код:
if(dialogid == DIALOG_RADIOURL)
    {
        if(response)
        {
         if(strlen(inputtext) > 0)
                 {
                    PlayAudioStreamForPlayer(playerid, inputtext);
                 }
                 else
                 {
                     SendClientMessage(playerid,C_WRONG,"Not Valid");
                     return 1;
                 }


        }
     }

    if(dialogid == DIALOG_TELEPORT)
{
         if(!response) return SendClientMessage(playerid, C_CANCELED, "[SYSTEM]: The action is canceled!");
         switch(listitem)
{
                case 0:
                {
                SetPlayerPos(playerid,1529.6,-1691.2,13.3);
                SendClientMessage(playerid,C_VIP,"You Teleported to Wheel Arch Angels");
                }
                case 1:
                {
                SetPlayerPos(playerid,-1417.0,-295.8,14.1);
                SendClientMessage(playerid,C_VIP,"You Teleported to Transfender");
                }
                case 2:
                {
                SetPlayerPos(playerid,1699.2,1435.1, 10.7);
                SendClientMessage(playerid,C_VIP,"You Teleported to Loco Low Co.");
                }
                case 3:
                {
                SetPlayerPos(playerid,1699.2,1435.1, 10.7);
                SendClientMessage(playerid,C_VIP,"You Teleported back to Los Santos.");
                return 1;

}
}
}
 
     
     


    if(dialogid == DIALOG_SHOP)
{
        if(!response) return SendClientMessage(playerid, C_CANCELED, "[SYSTEM]: The action is canceled!");
        switch(listitem)
        {
            case 0: // Deagle
            {
                if (GetPlayerMoney(playerid)>=5000)
                {
                    SendClientMessage(playerid,  C_BUY, "[SYSTEM]: You have sucessfully bought an deagle!");
                    GivePlayerWeapon(playerid, 24, 100);
                    GivePlayerMoney(playerid, -5000);
                    return 1;
                }
                else SendClientMessage(playerid, C_WRONG, "[SYSTEM]: You don't have enough money!");
                return 1;
            }
            case 1: // AK
            {
                if (GetPlayerMoney(playerid)>=2500)
                {
                    SendClientMessage(playerid,   C_BUY, "[SYSTEM]: You have sucessfully bought an AK!");
                    GivePlayerWeapon(playerid, 30, 150);
                    GivePlayerMoney(playerid, -2500);
                    return 1;
                }
                else SendClientMessage(playerid,  C_WRONG, "[SYSTEM]: You don't have enough money!");
                return 1;
            }
            case 2: // M4
            {
                    if (GetPlayerMoney(playerid)>=3000)
                    {
                        SendClientMessage(playerid,   C_BUY, "[SYSTEM]: You have sucessfully bought an M4!");
                        GivePlayerWeapon(playerid, 31, 150);
                        GivePlayerMoney(playerid, -3000);
                        return 1;
                    }
                    else SendClientMessage(playerid,  C_WRONG, "[SYSTEM]:  don't have enough money!");
                    return 1;
            }
            case 3: // Shotgun
            {
                if (GetPlayerMoney(playerid)>=2500)
                {
                    SendClientMessage(playerid,   C_BUY, "[SYSTEM]: You have sucessfully bought an Shotgun !");
                    GivePlayerWeapon(playerid, 25, 50);
                    GivePlayerMoney(playerid, -2500);
                    return 1;
                }
                else SendClientMessage(playerid,  C_WRONG, "[SYSTEM]: You don't have enough money!");
                return 1;
            }
            case 4: // Sniper
            {
                if (GetPlayerMoney(playerid)>=5000)
                {
                    SendClientMessage(playerid,   C_BUY, "[SYSTEM]: You have sucessfully bought an Sniper!");
                    GivePlayerWeapon(playerid, 34, 50);
                    GivePlayerMoney(playerid, -5000);
                    return 1;
                }
                else SendClientMessage(playerid,  C_WRONG, "[SYSTEM]: You don't have enough money!");
                return 1;
             }
             case 5:
             {
                if (GetPlayerMoney(playerid)>=4500)
                {
                    SendClientMessage(playerid,   C_BUY, "[SYSTEM]: You have sucessfully bought an Sniper!");
                    GivePlayerWeapon(playerid, 33, 50);
                    GivePlayerMoney(playerid, -4500);
                    return 1;
                }
                else SendClientMessage(playerid,  C_WRONG, "[SYSTEM]: You don't have enough money!");
                return 1;
            }
            case 6: // MP5
            {
                    if (GetPlayerMoney(playerid)>=1500)
                    {
                    SendClientMessage(playerid,   C_BUY, "[SYSTEM]: You have sucessfully bought an MP5!");
                    GivePlayerWeapon(playerid, 29, 180);
                    GivePlayerMoney(playerid, -1500);
                    return 1;
                    }
                    else SendClientMessage(playerid,  C_WRONG, "[SYSTEM]: You don't have enough money!");
                    return 1;
                    }
}
}
   
    return 0;
}
Reply
#3

Nop doesn't work
Reply
#4

sorry for bump i really need it to fix
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)