Problem Adding more then 1 Dialog.
#1

Well i have a problem when i try to add more than one dialog it gives me alot of errors only happens with this dialog style DIALOG_STYLE_LIST any ideas?
Reply
#2

Post the script and where the problems are.
Reply
#3

you have to have case:1, case:2 ...etc
Reply
#4

can you guys help me set it up
Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
	if(dialogid == 2)
	{
		if(response == 0)
		{
			SendClientMessage(playerid, COLOR_DIS_RED, "You Have Been Kicked For not Accepting the rules!");
			Kick(playerid);
			new stringsys [256];
			new pName[MAX_PLAYER_NAME];
			GetPlayerName(playerid, pName, sizeof(pName));
			format(stringsys, sizeof(stringsys), "[Rules]%s Has been kicked for not accepting the rules.", pName);
			SendClientMessageToAll(COLOR_DIS_RED, stringsys);
			}
			if(response == 1)
			SendClientMessage(playerid, COLOR_DIS_RED, "{00FF40}[ACCEPTED]{F2C80C}Thanks for accepting the rules!{A1C2FF}Welcome to the server!");
			new Float:pX, Float:pY, Float:pZ;
			PlayerPlaySound(playerid,1057,pX,pY,pZ);
		}
	}
	if(dialogid == 1)
	{
		if(response)
		{
			if(listitem == 0)
			{
			if(GetPlayerMoney(playerid) < 50000) return SendClientMessage(playerid,0xFF0000AA, "You don't have enough money!You Need 50,000!");
			GivePlayerMoney(playerid, -50000);
			GivePlayerWeapon(playerid,31,500);
			}
			if(listitem == 1)
    		        {
			if(GetPlayerMoney(playerid) < 50000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -50000);
			GivePlayerWeapon(playerid,30,500);
			}
			if(listitem == 2)
			{
			if(GetPlayerMoney(playerid) < 30000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -30000);
			GivePlayerWeapon(playerid,29,500);
			}
			if(listitem == 3)
			{
			if(GetPlayerMoney(playerid) < 25000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -25000);
			GivePlayerWeapon(playerid,32,500);
			}
			if(listitem == 4)
			{
			if(GetPlayerMoney(playerid) < 25000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -25000);
			GivePlayerWeapon(playerid,28,500);
			}
			if(listitem == 5)
			{
			if(GetPlayerMoney(playerid) < 35000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -35000);
			GivePlayerWeapon(playerid,24,500);
			}
			if(listitem == 6)
			{
			if(GetPlayerMoney(playerid) < 2000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -2000);
			GivePlayerWeapon(playerid,23,100);
			}
			if(listitem == 7)
			{
			if(GetPlayerMoney(playerid) < 10000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -10000);
			GivePlayerWeapon(playerid,22,600);
			}
			if(listitem == 8)
			{
			if(GetPlayerMoney(playerid) < 60000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -60000);
			GivePlayerWeapon(playerid,26,100);
			}
			if(listitem == 9)
			{
			if(GetPlayerMoney(playerid) < 60000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -60000);
			GivePlayerWeapon(playerid,27,100);
			}
			if(listitem == 10)
			{
			if(GetPlayerMoney(playerid) < 10000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -10000);
			GivePlayerWeapon(playerid,16,30);
			}
			if(listitem == 11)
			{
			if(GetPlayerMoney(playerid) < 10000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -10000);
			GivePlayerWeapon(playerid,18,30);
			}
			if(listitem == 12)
			{
			if(GetPlayerMoney(playerid) < 10000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerWeapon(playerid,34,100);
			GivePlayerMoney(playerid,-10000);
			}
			if(listitem == 13)
			{
			if(GetPlayerMoney(playerid) < 5000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -5000);
			SetPlayerArmour(playerid, 100);
			}
			if(listitem == 14)
			{
			if(GetPlayerMoney(playerid) < 5000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -5000);
			SetPlayerHealth(playerid, 100);
			}
			if(listitem == 15)
			{
			if(GetPlayerMoney(playerid) < 500000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerWeapon(playerid,35,5);
			GivePlayerMoney(playerid,-500000);
			}
		}
	if(dialogid == 3)
	{
		if(response)
		{
			if(listitem == 0)
			{
			if(GetPlayerMoney(playerid) < 50) return SendClientMessage(playerid,0xFF0000AA, "You don't have enough money!You Need 50,000!");
			GivePlayerMoney(playerid, -50);
			}
			if(listitem == 1)
    		{
			if(GetPlayerMoney(playerid) < 5000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -5000);
			}
			if(listitem == 2)
			{
			if(GetPlayerMoney(playerid) < 3000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -3000);
			}
			if(listitem == 3)
			{
			if(GetPlayerMoney(playerid) < 25000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -25000);
			}
Reply
#5

pawn Код:
}
else if(blah)
{
Reply
#6

heres a example
pawn Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    if(dialogid == 2)
    {
        if(response == 0)
        {
                   case:1
                   {
                      case:0
                      {
            SendClientMessage(playerid, COLOR_DIS_RED, "You Have Been Kicked For not Accepting the rules!");
            Kick(playerid);
            new stringsys [256];
            new pName[MAX_PLAYER_NAME];
            GetPlayerName(playerid, pName, sizeof(pName));
            format(stringsys, sizeof(stringsys), "[Rules]%s Has been kicked for not accepting the rules.", pName);
            SendClientMessageToAll(COLOR_DIS_RED, stringsys);
              }
            case: 1
                        {
            SendClientMessage(playerid, COLOR_DIS_RED, "{00FF40}[ACCEPTED]{F2C80C}Thanks for accepting the rules!{A1C2FF}Welcome to the server!");
            new Float:pX, Float:pY, Float:pZ;
            PlayerPlaySound(playerid,1057,pX,pY,pZ);
        }
Reply
#7

Quote:
Originally Posted by TheYoungCapone
Посмотреть сообщение
can you guys help me set it up
Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
	if(dialogid == 2)
	{
		if(response == 0)
		{
			SendClientMessage(playerid, COLOR_DIS_RED, "You Have Been Kicked For not Accepting the rules!");
			Kick(playerid);
			new stringsys [256];
			new pName[MAX_PLAYER_NAME];
			GetPlayerName(playerid, pName, sizeof(pName));
			format(stringsys, sizeof(stringsys), "[Rules]%s Has been kicked for not accepting the rules.", pName);
			SendClientMessageToAll(COLOR_DIS_RED, stringsys);
			}
			if(response == 1)
			SendClientMessage(playerid, COLOR_DIS_RED, "{00FF40}[ACCEPTED]{F2C80C}Thanks for accepting the rules!{A1C2FF}Welcome to the server!");
			new Float:pX, Float:pY, Float:pZ;
			PlayerPlaySound(playerid,1057,pX,pY,pZ);
		}
	}
	if(dialogid == 1)
	{
		if(response)
		{
			if(listitem == 0)
			{
			if(GetPlayerMoney(playerid) < 50000) return SendClientMessage(playerid,0xFF0000AA, "You don't have enough money!You Need 50,000!");
			GivePlayerMoney(playerid, -50000);
			GivePlayerWeapon(playerid,31,500);
			}
			if(listitem == 1)
    		        {
			if(GetPlayerMoney(playerid) < 50000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -50000);
			GivePlayerWeapon(playerid,30,500);
			}
			if(listitem == 2)
			{
			if(GetPlayerMoney(playerid) < 30000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -30000);
			GivePlayerWeapon(playerid,29,500);
			}
			if(listitem == 3)
			{
			if(GetPlayerMoney(playerid) < 25000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -25000);
			GivePlayerWeapon(playerid,32,500);
			}
			if(listitem == 4)
			{
			if(GetPlayerMoney(playerid) < 25000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -25000);
			GivePlayerWeapon(playerid,28,500);
			}
			if(listitem == 5)
			{
			if(GetPlayerMoney(playerid) < 35000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -35000);
			GivePlayerWeapon(playerid,24,500);
			}
			if(listitem == 6)
			{
			if(GetPlayerMoney(playerid) < 2000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -2000);
			GivePlayerWeapon(playerid,23,100);
			}
			if(listitem == 7)
			{
			if(GetPlayerMoney(playerid) < 10000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -10000);
			GivePlayerWeapon(playerid,22,600);
			}
			if(listitem == 8)
			{
			if(GetPlayerMoney(playerid) < 60000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -60000);
			GivePlayerWeapon(playerid,26,100);
			}
			if(listitem == 9)
			{
			if(GetPlayerMoney(playerid) < 60000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -60000);
			GivePlayerWeapon(playerid,27,100);
			}
			if(listitem == 10)
			{
			if(GetPlayerMoney(playerid) < 10000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -10000);
			GivePlayerWeapon(playerid,16,30);
			}
			if(listitem == 11)
			{
			if(GetPlayerMoney(playerid) < 10000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -10000);
			GivePlayerWeapon(playerid,18,30);
			}
			if(listitem == 12)
			{
			if(GetPlayerMoney(playerid) < 10000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerWeapon(playerid,34,100);
			GivePlayerMoney(playerid,-10000);
			}
			if(listitem == 13)
			{
			if(GetPlayerMoney(playerid) < 5000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -5000);
			SetPlayerArmour(playerid, 100);
			}
			if(listitem == 14)
			{
			if(GetPlayerMoney(playerid) < 5000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -5000);
			SetPlayerHealth(playerid, 100);
			}
			if(listitem == 15)
			{
			if(GetPlayerMoney(playerid) < 500000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerWeapon(playerid,35,5);
			GivePlayerMoney(playerid,-500000);
			}
		}
	if(dialogid == 3)
	{
		if(response)
		{
			if(listitem == 0)
			{
			if(GetPlayerMoney(playerid) < 50) return SendClientMessage(playerid,0xFF0000AA, "You don't have enough money!You Need 50,000!");
			GivePlayerMoney(playerid, -50);
			}
			if(listitem == 1)
    		{
			if(GetPlayerMoney(playerid) < 5000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -5000);
			}
			if(listitem == 2)
			{
			if(GetPlayerMoney(playerid) < 3000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -3000);
			}
			if(listitem == 3)
			{
			if(GetPlayerMoney(playerid) < 25000) return SendClientMessage(playerid,0xFF0000AA, "ERROR: You don't have enough money to buy this weapon!");
			GivePlayerMoney(playerid, -25000);
			}
You need to count your brackets, you've finished the OnDialogResponse callback just before

pawn Код:
if(dialogid == 1)
You should check the Pawn documentation for more information on the syntax used. Additionally you should look into optimization/improvement of your code. Using else if's and switch statements would substantially improve your code.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)