My Dialogs aren't working Properly!!
#1

I basically want to start the server and first see a dialog with a dialog where you can choose what team you wanna be with like america or europe etc, then when you choose where you wanna spawn then another dialog appears showing who you want to be like a pyroman or soldier etc. I have it all done but It's just not working! When I load the server the dialog box appears before the login, and when I login the second dialog doesn't appear. Just empty player selection and when I spawn I spawn As CJ in the middle of nowhere.

These are what iv'e done!


Spawn places selection like europe etc:
pawn Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 2)
            {
                if(response)
                    {


                if(listitem == 1) //America
                {
                       
                        SetPlayerPos(playerid, 240.4377,1860.0693,17.8856);
                        TogglePlayerControllable(playerid, 0);
                       
                }
                if(listitem == 2) //Russia
                {
                           

                            SetPlayerPos(playerid, 240.4377,1860.0693,17.8856);
                            TogglePlayerControllable(playerid, 0);
                }
                if(listitem == 3)//Europe
                {
                           

                            SetPlayerPos(playerid, 240.4377,1860.0693,17.8856);
                            TogglePlayerControllable(playerid, 0);
                   
                }
                if(listitem == 4)//Special Ops
                {
                           
                            SetPlayerPos(playerid, 240.4377,1860.0693,17.8856);
                }           TogglePlayerControllable(playerid, 0);
                           
                return 1;

return 1;

================================================== =====================================
Ok Now it's class selection like pyroman and soldier!

pawn Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 1)
            {
                if(response)
                    {

                        if(GetPlayerScore(playerid) <= 0)//Private
                        {

                        SetPlayerSkin(playerid, 287);
                        SendClientMessage(playerid, COLOR_WHITE, "You chose the assault as your class.");
                        SendClientMessage(playerid, COLOR_WHITE, "You can type /switchclass to change your class again.");
                        gPlayerClass[playerid] = ASSAULT_CLASS;
                        PickedClass[playerid] = 1;
                        SetPlayerVirtualWorld(playerid, 0);
                        TogglePlayerControllable(playerid, 1);
                        GivePlayerWeapon(playerid, 24, 200);
                        GivePlayerWeapon(playerid, 31, 500);
                        GivePlayerWeapon(playerid, 17, 5);
                        }
                        }


                if(listitem == 1)//sniper DONE
                    {
                        if(GetPlayerScore(playerid) <= 10)//Private

                        {

                            SetPlayerSkin(playerid, 122);
                            SendClientMessage(playerid, COLOR_WHITE, "You chose the Sniper as your class.");
                            SendClientMessage(playerid, COLOR_WHITE, "You can type /switchclass to change your class again.");
                            gPlayerClass[playerid] = SNIPER_CLASS;
                            PickedClass[playerid] = 1;
                            SetPlayerVirtualWorld(playerid, 0);
                            TogglePlayerControllable(playerid, 1);
                            GivePlayerWeapon(playerid, 23, 500);
                            GivePlayerWeapon(playerid, 34, 100);
                            GivePlayerWeapon(playerid, 29, 200);

                    }
                        else
                    {
                        SendClientMessage(playerid, COLOR_WHITE, "You need to be atleast Private class [/rank to see yours]");
                        TogglePlayerControllable(playerid, 0);
                    }
                }


                if(listitem == 2)//pilot DONE
                    {
                            if(GetPlayerScore(playerid) <= 1150)//Lieutenant Colonel

                            {

                            SetPlayerSkin(playerid, 61);
                            SendClientMessage(playerid, COLOR_WHITE, "You chose the Pilot as your class.");
                            SendClientMessage(playerid, COLOR_WHITE, "You can type /switchclass to change your class again.");
                            gPlayerClass[playerid] = AIRMAN_CLASS;
                            PickedClass[playerid] = 1;
                            SetPlayerVirtualWorld(playerid, 0);
                            TogglePlayerControllable(playerid, 1);
                            GivePlayerWeapon(playerid, 22, 50);
                            GivePlayerWeapon(playerid, 29, 500);
                            GivePlayerWeapon(playerid, 16, 5);

                    }
                            else
                    {
                        SendClientMessage(playerid, COLOR_WHITE, "You need to be atleast Lieutenant Colonel class [/rank to see yours]");
                        TogglePlayerControllable(playerid, 0);
                    }
                }
                if(listitem == 3)//Engineer
                    {
                            if(GetPlayerScore(playerid) <= 250)//Sergeant

                            {
                            SetPlayerSkin(playerid, 285);
                            SendClientMessage(playerid, COLOR_WHITE, "You chose the Engineer as your class.");
                            SendClientMessage(playerid, COLOR_WHITE, "You can type /switchclass to change your class again.");
                            gPlayerClass[playerid] = ENGINEER_CLASS;
                            PickedClass[playerid] = 1;
                            SetPlayerVirtualWorld(playerid, 0);
                            TogglePlayerControllable(playerid, 1);
                            GivePlayerWeapon(playerid, 22, 100);
                            GivePlayerWeapon(playerid, 32, 500);
                            GivePlayerWeapon(playerid, 35, 5);


                    }
                            else
                    {
                        SendClientMessage(playerid, COLOR_WHITE, "You need to be atleast Sergeant class [/rank to see yours]");
                        TogglePlayerControllable(playerid, 0);
                    }
                }

                if(listitem == 4)//FlameThrower
                    {
                            if(GetPlayerScore(playerid) <= 400)//CAPTAIN

                            {

                            SetPlayerSkin(playerid, 144);
                            SendClientMessage(playerid, COLOR_WHITE, "You chose the Flamethrower as your class.");
                            SendClientMessage(playerid, COLOR_WHITE, "You can type /switchclass to change your class again.");
                            gPlayerClass[playerid] = FLAMETHROWER_CLASS;
                            PickedClass[playerid] = 1;
                            SetPlayerVirtualWorld(playerid, 0);
                            TogglePlayerControllable(playerid, 1);
                            GivePlayerWeapon(playerid, 24, 200);
                            GivePlayerWeapon(playerid, 30, 200);
                            GivePlayerWeapon(playerid, 37, 200);


                    }
                            else
                    {
                        SendClientMessage(playerid, COLOR_WHITE, "You need to be atleast Captain class [/rank to see yours]");
                        TogglePlayerControllable(playerid, 0);
                    }
                }
                return 1;
        }
return 1;
}


================================================== =====================================
Ok Now It's my OnPlayerConnect:

pawn Код:
public OnPlayerConnect(playerid)
{
    ShowPlayerDialog(playerid, 2, DIALOG_STYLE_LIST, "Spawn", "America\nRussia\nEurope\nSpecial Ops", "Select", "Cancel");
    ShowPlayerDialog(playerid, 1, DIALOG_STYLE_LIST, "Classes", "Assault\nSniper\nPilot\nEngineer\nPyroman", "Select", "Cancel");
}

But What's wrong? It's like the second dialog doesn't appear, only empty class selection!!!
Reply
#2

Quote:
Originally Posted by Eminem 2ka9
Посмотреть сообщение
I basically want to start the server and first see a dialog with a dialog where you can choose what team you wanna be with like america or europe etc, then when you choose where you wanna spawn then another dialog appears showing who you want to be like a pyroman or soldier etc. I have it all done but It's just not working! When I load the server the dialog box appears before the login, and when I login the second dialog doesn't appear. Just empty player selection and when I spawn I spawn As CJ in the middle of nowhere.

These are what iv'e done!


Spawn places selection like europe etc:
pawn Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 2)
            {
                if(response)
                    {


                if(listitem == 1) //America
                {
                       
                        SetPlayerPos(playerid, 240.4377,1860.0693,17.8856);
                        TogglePlayerControllable(playerid, 0);
                       
                }
                if(listitem == 2) //Russia
                {
                           

                            SetPlayerPos(playerid, 240.4377,1860.0693,17.8856);
                            TogglePlayerControllable(playerid, 0);
                }
                if(listitem == 3)//Europe
                {
                           

                            SetPlayerPos(playerid, 240.4377,1860.0693,17.8856);
                            TogglePlayerControllable(playerid, 0);
                   
                }
                if(listitem == 4)//Special Ops
                {
                           
                            SetPlayerPos(playerid, 240.4377,1860.0693,17.8856);
                }           TogglePlayerControllable(playerid, 0);
                           
                return 1;

return 1;

================================================== =====================================
Ok Now it's class selection like pyroman and soldier!

pawn Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 1)
            {
                if(response)
                    {

                        if(GetPlayerScore(playerid) <= 0)//Private
                        {

                        SetPlayerSkin(playerid, 287);
                        SendClientMessage(playerid, COLOR_WHITE, "You chose the assault as your class.");
                        SendClientMessage(playerid, COLOR_WHITE, "You can type /switchclass to change your class again.");
                        gPlayerClass[playerid] = ASSAULT_CLASS;
                        PickedClass[playerid] = 1;
                        SetPlayerVirtualWorld(playerid, 0);
                        TogglePlayerControllable(playerid, 1);
                        GivePlayerWeapon(playerid, 24, 200);
                        GivePlayerWeapon(playerid, 31, 500);
                        GivePlayerWeapon(playerid, 17, 5);
                        }
                        }


                if(listitem == 1)//sniper DONE
                    {
                        if(GetPlayerScore(playerid) <= 10)//Private

                        {

                            SetPlayerSkin(playerid, 122);
                            SendClientMessage(playerid, COLOR_WHITE, "You chose the Sniper as your class.");
                            SendClientMessage(playerid, COLOR_WHITE, "You can type /switchclass to change your class again.");
                            gPlayerClass[playerid] = SNIPER_CLASS;
                            PickedClass[playerid] = 1;
                            SetPlayerVirtualWorld(playerid, 0);
                            TogglePlayerControllable(playerid, 1);
                            GivePlayerWeapon(playerid, 23, 500);
                            GivePlayerWeapon(playerid, 34, 100);
                            GivePlayerWeapon(playerid, 29, 200);

                    }
                        else
                    {
                        SendClientMessage(playerid, COLOR_WHITE, "You need to be atleast Private class [/rank to see yours]");
                        TogglePlayerControllable(playerid, 0);
                    }
                }


                if(listitem == 2)//pilot DONE
                    {
                            if(GetPlayerScore(playerid) <= 1150)//Lieutenant Colonel

                            {

                            SetPlayerSkin(playerid, 61);
                            SendClientMessage(playerid, COLOR_WHITE, "You chose the Pilot as your class.");
                            SendClientMessage(playerid, COLOR_WHITE, "You can type /switchclass to change your class again.");
                            gPlayerClass[playerid] = AIRMAN_CLASS;
                            PickedClass[playerid] = 1;
                            SetPlayerVirtualWorld(playerid, 0);
                            TogglePlayerControllable(playerid, 1);
                            GivePlayerWeapon(playerid, 22, 50);
                            GivePlayerWeapon(playerid, 29, 500);
                            GivePlayerWeapon(playerid, 16, 5);

                    }
                            else
                    {
                        SendClientMessage(playerid, COLOR_WHITE, "You need to be atleast Lieutenant Colonel class [/rank to see yours]");
                        TogglePlayerControllable(playerid, 0);
                    }
                }
                if(listitem == 3)//Engineer
                    {
                            if(GetPlayerScore(playerid) <= 250)//Sergeant

                            {
                            SetPlayerSkin(playerid, 285);
                            SendClientMessage(playerid, COLOR_WHITE, "You chose the Engineer as your class.");
                            SendClientMessage(playerid, COLOR_WHITE, "You can type /switchclass to change your class again.");
                            gPlayerClass[playerid] = ENGINEER_CLASS;
                            PickedClass[playerid] = 1;
                            SetPlayerVirtualWorld(playerid, 0);
                            TogglePlayerControllable(playerid, 1);
                            GivePlayerWeapon(playerid, 22, 100);
                            GivePlayerWeapon(playerid, 32, 500);
                            GivePlayerWeapon(playerid, 35, 5);


                    }
                            else
                    {
                        SendClientMessage(playerid, COLOR_WHITE, "You need to be atleast Sergeant class [/rank to see yours]");
                        TogglePlayerControllable(playerid, 0);
                    }
                }

                if(listitem == 4)//FlameThrower
                    {
                            if(GetPlayerScore(playerid) <= 400)//CAPTAIN

                            {

                            SetPlayerSkin(playerid, 144);
                            SendClientMessage(playerid, COLOR_WHITE, "You chose the Flamethrower as your class.");
                            SendClientMessage(playerid, COLOR_WHITE, "You can type /switchclass to change your class again.");
                            gPlayerClass[playerid] = FLAMETHROWER_CLASS;
                            PickedClass[playerid] = 1;
                            SetPlayerVirtualWorld(playerid, 0);
                            TogglePlayerControllable(playerid, 1);
                            GivePlayerWeapon(playerid, 24, 200);
                            GivePlayerWeapon(playerid, 30, 200);
                            GivePlayerWeapon(playerid, 37, 200);


                    }
                            else
                    {
                        SendClientMessage(playerid, COLOR_WHITE, "You need to be atleast Captain class [/rank to see yours]");
                        TogglePlayerControllable(playerid, 0);
                    }
                }
                return 1;
        }
return 1;
}


================================================== =====================================
Ok Now It's my OnPlayerConnect:

pawn Код:
public OnPlayerConnect(playerid)
{
    ShowPlayerDialog(playerid, 2, DIALOG_STYLE_LIST, "Spawn", "America\nRussia\nEurope\nSpecial Ops", "Select", "Cancel");
    ShowPlayerDialog(playerid, 1, DIALOG_STYLE_LIST, "Classes", "Assault\nSniper\nPilot\nEngineer\nPyroman", "Select", "Cancel");
}

But What's wrong? It's like the second dialog doesn't appear, only empty class selection!!!
If you are using filterscript then:

http://forum.sa-mp.com/showpost.php?...34&postcount=2

or

http://forum.sa-mp.com/showpost.php?...87&postcount=3
Reply
#3

I have one other problem and it's easier to solve..the below code doesn't work. When I spawn the dialog appears but when I click any class I don't get the weapons? That's all I want but the dialog just closes. Also no other filterscript is conflicting cause this is a different id Dialog!

pawn Код:
//============================Dialog System===================================
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 45)
            {
                if(response)
                    {

                        if(GetPlayerScore(playerid) <= 0)//Private
                        {

                        SetPlayerSkin(playerid, 287);
                        SendClientMessage(playerid, COLOR_WHITE, "You chose the assault as your class.");
                        SendClientMessage(playerid, COLOR_WHITE, "You can type /switchclass to change your class again.");
                        gPlayerClass[playerid] = ASSAULT_CLASS;
                        PickedClass[playerid] = 1;
                        TogglePlayerControllable(playerid, 1);
                        GivePlayerWeapon(playerid, 24, 200);
                        GivePlayerWeapon(playerid, 31, 500);
                        GivePlayerWeapon(playerid, 17, 5);
                        }
                        }


                if(listitem == 1)//sniper DONE
                    {
                        if(GetPlayerScore(playerid) <= 0)//Private

                        {

                            SetPlayerSkin(playerid, 122);
                            SendClientMessage(playerid, COLOR_WHITE, "You chose the Sniper as your class.");
                            SendClientMessage(playerid, COLOR_WHITE, "You can type /switchclass to change your class again.");
                            gPlayerClass[playerid] = SNIPER_CLASS;
                            PickedClass[playerid] = 1;
                            TogglePlayerControllable(playerid, 1);
                            GivePlayerWeapon(playerid, 23, 500);
                            GivePlayerWeapon(playerid, 34, 100);
                            GivePlayerWeapon(playerid, 29, 200);

                    }
                        else
                    {
                        SendClientMessage(playerid, COLOR_WHITE, "You need to be atleast Private class [/rank to see yours]");
                        TogglePlayerControllable(playerid, 0);
                    }
                }


                if(listitem == 2)//pilot DONE
                    {
                            if(GetPlayerScore(playerid) <= 0)//Lieutenant Colonel

                            {

                            SetPlayerSkin(playerid, 61);
                            SendClientMessage(playerid, COLOR_WHITE, "You chose the Pilot as your class.");
                            SendClientMessage(playerid, COLOR_WHITE, "You can type /switchclass to change your class again.");
                            gPlayerClass[playerid] = AIRMAN_CLASS;
                            PickedClass[playerid] = 1;
                            TogglePlayerControllable(playerid, 1);
                            GivePlayerWeapon(playerid, 22, 50);
                            GivePlayerWeapon(playerid, 29, 500);
                            GivePlayerWeapon(playerid, 16, 5);

                    }
                            else
                    {
                        SendClientMessage(playerid, COLOR_WHITE, "You need to be atleast Lieutenant Colonel class [/rank to see yours]");
                        TogglePlayerControllable(playerid, 0);
                    }
                }
                if(listitem == 3)//Engineer
                    {
                            if(GetPlayerScore(playerid) <= 0)//Sergeant

                            {
                            SetPlayerSkin(playerid, 285);
                            SendClientMessage(playerid, COLOR_WHITE, "You chose the Engineer as your class.");
                            SendClientMessage(playerid, COLOR_WHITE, "You can type /switchclass to change your class again.");
                            gPlayerClass[playerid] = ENGINEER_CLASS;
                            PickedClass[playerid] = 1;
                            TogglePlayerControllable(playerid, 1);
                            GivePlayerWeapon(playerid, 22, 100);
                            GivePlayerWeapon(playerid, 32, 500);
                            GivePlayerWeapon(playerid, 35, 5);


                    }
                            else
                    {
                        SendClientMessage(playerid, COLOR_WHITE, "You need to be atleast Sergeant class [/rank to see yours]");
                        TogglePlayerControllable(playerid, 0);
                    }
                }

                if(listitem == 4)//FlameThrower
                    {
                            if(GetPlayerScore(playerid) <= 0)//CAPTAIN

                            {

                            SetPlayerSkin(playerid, 144);
                            SendClientMessage(playerid, COLOR_WHITE, "You chose the Flamethrower as your class.");
                            SendClientMessage(playerid, COLOR_WHITE, "You can type /switchclass to change your class again.");
                            gPlayerClass[playerid] = FLAMETHROWER_CLASS;
                            PickedClass[playerid] = 1;
                            TogglePlayerControllable(playerid, 1);
                            GivePlayerWeapon(playerid, 24, 200);
                            GivePlayerWeapon(playerid, 30, 200);
                            GivePlayerWeapon(playerid, 37, 200);


                    }
                            else
                    {
                        SendClientMessage(playerid, COLOR_WHITE, "You need to be atleast Captain class [/rank to see yours]");
                        TogglePlayerControllable(playerid, 0);
                    }
                }
                return 1;
        }
return 1;
}
public OnPlayerSpawn(playerid)
{
    ShowPlayerDialog(playerid, 1, DIALOG_STYLE_LIST, "Classes", "Assault\nSniper\nPilot\nEngineer\nPyroman", "Select", "Cancel");
}
Reply
#4

Are you talking about /Switchclass command?

I'm confuse with your script.-

Are you requesting on that, a class? or a team...?


Because if you want a team you may start with:

pawn Код:
#define TEAM_AMERICA 1 //This is a team
new gteam[MAX_PLAYERS]; //it goes for team

#define SNIPER_CLASS 1 //This is a class

new gPlayerClass[MAX_PLAYERS]; //It goes for Class
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)