Dialog Bug
#1

i created the dm script with dialog, but not works after i click

Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
	if(!strcmp(cmdtext, "/tdm", true))
{
	ShowPlayerDialog(playerid, T-DM, DIALOG_STYLE_LIST, "Choose a Team", "{F81414}Terrorists \n{0049FF}Counter-Terrorists \n{FFFFFF}Player", "Select", "Cancel");
    }
    return 1;
}
Response

pawn Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
 if(dialogid == 2123 && response)
    {
      switch(listitem)
        {
            case 0:
            {
        DMZone[playerid] = 1;
        SendClientMessage(playerid, 0x33AA33AA, "You chose Terrorists.");
        GivePlayerWeapon(playerid, 16, 10);
        GivePlayerWeapon(playerid, 30, 1000);
        GivePlayerWeapon(playerid, 32, 1000);
        SetPlayerHealth(playerid, 100);
        SetPlayerArmour(playerid, 100);
        SetPlayerColor(playerid,COLOR_RED);
        SetPlayerTeam(playerid, 1);
        SetPlayerSkin(playerid,79);
        SetPlayerPos(playerid, 2927.7348632813,4312.9345703125,42.668674468994);
         }
            case 1:
            {
             SendClientMessage(playerid, 0x33AA33AA, "You chose Counter-Terrorists.");
             GivePlayerWeapon(playerid, 16, 10);
             GivePlayerWeapon(playerid, 31, 1000);
             GivePlayerWeapon(playerid, 32, 1000);
             SetPlayerHealth(playerid, 100);
             SetPlayerColor(playerid,COLOR_GILE);
             SetPlayerArmour(playerid, 100);
             SetPlayerTeam(playerid, 2);
             SetPlayerSkin(playerid,285);
             SetPlayerPos(playerid, 2922.6501464844,4044.9099121094,42.10636138916);
            }
                        case 2:
            {
        SendClientMessage(playerid, 0x33AA33AA, "You are a Player");
        ResetPlayerWeapons(playerid);
        SetPlayerHealth(playerid,100);
        SetPlayerTeam(playerid,0);
        SetPlayerColor(playerid,COLOR_WHITE);
        SetPlayerPos(playerid, 2931.8654785156,4167.9775390625,73.815414428711);
         }
        }
    }
 return 1;
}
Reply
#2

are u sure about ur T-DM define?

do u have in ur gamemode #define T-DM 2123 ?
Reply
#3

nope i use

#define T-DM 2014
Reply
#4

if(dialogid == 2123 && response) should be if(dialogid == T-DM && response)
Reply
#5

Hmm and one more thing I will suggest you to turn return 1; to return 0; in all dialog responses because sometimes,because of this dialogs wont work(I too suffered from this)
Reply
#6

Have you defined T-DM? otherwise it won't work.
Reply
#7

hmm this is full of code

pawn Код:
#include <a_samp>
//colour


#define T-DM 2013
#define CS-DM 2014

new DMZone[MAX_PLAYERS];





public OnPlayerCommandText(playerid, cmdtext[])
{
    if(!strcmp(cmdtext, "/tdm", true))
{
    ShowPlayerDialog(playerid, T-DM, DIALOG_STYLE_LIST, "Choose a Team", "{F81414}Terrorists \n{0049FF}Counter-Terrorists \n{FFFFFF}Player", "Select", "Cancel");
    }
    return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
 if(dialogid == CS-DM && response)
    {
      switch(listitem)
        {
            case 0:
            {
        DMZone[playerid] = 1;
        SendClientMessage(playerid, 0x33AA33AA, "You chose Terrorists.");
        GivePlayerWeapon(playerid, 16, 10);
        GivePlayerWeapon(playerid, 30, 1000);
        GivePlayerWeapon(playerid, 32, 1000);
        SetPlayerHealth(playerid, 100);
        SetPlayerArmour(playerid, 100);
        SetPlayerColor(playerid,COLOR_RED);
        SetPlayerTeam(playerid, 1);
        SetPlayerSkin(playerid,79);
        SetPlayerPos(playerid, 2927.7348632813,4312.9345703125,42.668674468994);
         }
            case 1:
            {
             SendClientMessage(playerid, 0x33AA33AA, "You chose Counter-Terrorists.");
             GivePlayerWeapon(playerid, 16, 10);
             GivePlayerWeapon(playerid, 31, 1000);
             GivePlayerWeapon(playerid, 32, 1000);
             SetPlayerHealth(playerid, 100);
             SetPlayerColor(playerid,COLOR_GILE);
             SetPlayerArmour(playerid, 100);
             SetPlayerTeam(playerid, 2);
             SetPlayerSkin(playerid,285);
             SetPlayerPos(playerid, 2922.6501464844,4044.9099121094,42.10636138916);
            }
                        case 2:
            {
        SendClientMessage(playerid, 0x33AA33AA, "You are a Player");
        ResetPlayerWeapons(playerid);
        SetPlayerHealth(playerid,100);
        SetPlayerTeam(playerid,0);
        SetPlayerColor(playerid,COLOR_WHITE);
        SetPlayerPos(playerid, 2931.8654785156,4167.9775390625,73.815414428711);
         }
        }
    }
 return 1;
}
Reply
#8

its wrong.

i must have this:
pawn Код:
if(dialogid == T-DM && response)
because ShowDialog use T-DM definition. it has value 2013. but in OnDialogResponse u are checking CS-DM. but that is 2014. so it cant works.
Reply
#9

wowoow TNX v.much it works !!
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)