SA-MP Forums Archive
rescue dialog help - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (https://sampforum.blast.hk/forumdisplay.php?fid=12)
+--- Thread: rescue dialog help (/showthread.php?tid=280820)



rescue dialog help - [LHT]Bally - 03.09.2011

i have this rescue filterscript obviously, but when i type /rescue the dialog comes up but when i click the place i want to go it dont do anything ? i have tried lots of random numbers{AS I WAS TOLD TO DO} any help


pawn Code:
#include <a_samp>
#include <sscanf2>

#define PoliceRescueDialog 2354
#define TruckersRescueDialog 2356
#define AssistanceRescueDialog 2376
#define BusRescueDialog 2365
#define LIST DIALOG_STYLE_LIST

new teamid;

public OnPlayerCommandText(playerid, cmdtext[])
{
    teamid = GetPlayerTeam(playerid);
    new command[130], params[130];
    if(sscanf(cmdtext, "s[128]s[128]", command, params) != 0)
    {
        sscanf(cmdtext, "s[128]", command);
    }
    if(!strcmp("/rescue", command, true, 7))
    {
        switch(teamid)
        {
            case 1: // \r\n Adds a new item to the list
            {
                ShowPlayerDialog(playerid,PoliceRescueDialog,DIALOG_STYLE_LIST,"Choose rescue point","LVPD\r\nSFPD","Rescue","Cancel");
            }
            case 2:
            {
                ShowPlayerDialog(playerid,TruckersRescueDialog,DIALOG_STYLE_LIST,"Choose rescue point","LV TRUCK\r\nWillowfield","Rescue","Cancel");
            }

            case 3:
            {
                ShowPlayerDialog(playerid,AssistanceRescueDialog,DIALOG_STYLE_LIST,"Choose rescue point","BlueBerry Garage","Rescue","Cancel");
            }
            case 4:
            {
                ShowPlayerDialog(playerid,BusRescueDialog,DIALOG_STYLE_LIST,"Choose rescue point","LS Bus Depot\r\nLV Bus Terminal","Rescue","Cancel");
            }
        }
        return 1;
    }
    return 0;
}
       

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    if(response == 1)
    {
        if(dialogid == PoliceRescueDialog)
        {
            switch(listitem)
            {
                case 0: //Add another 'case' but with +1 id and change the cords/name
                {
                    SetPlayerPos(playerid,2296.7986,2450.9976,10.8203);
                    SetPlayerFacingAngle(playerid,94.1423);
                    SendClientMessage(playerid,0xFFFF00FF,"You have been rescued to LVPD HQ");
                    SendClientMessage(playerid,0xFFFF00FF,"Rescue fee: $200");
                    GivePlayerMoney(playerid, -200);
                }
                case 1:
                {
                    SetPlayerPos(playerid,2296.79885674216534165326,2450.9976,10.8203);
                    SetPlayerFacingAngle(playerid,94.1423);
                    SendClientMessage(playerid,0xFFFF00FF,"You have been rescued to SFPD HQ");
                    SendClientMessage(playerid,0xFFFF00FF,"Rescue fee: $200");
                    GivePlayerMoney(playerid, -200);
                }
               
            }
        }
        if(dialogid == TruckersRescueDialog)
        {
            switch(listitem)
            {
                case 0:
                {
                    SetPlayerPos(playerid,2810.7017,934.2364,10.9766);
                    SetPlayerFacingAngle(playerid,96.8919);
                    SendClientMessage(playerid,0xFFFF00FF,"You have been rescued to LV truckdepot");
                    SendClientMessage(playerid,0xFFFF00FF,"Rescue fee: $200");
                    GivePlayerMoney(playerid, -200);
                }
                case 1:
                {
                    SetPlayerPos(playerid,1752.7346,-2054.6328,14.0441);
                    SetPlayerFacingAngle(playerid,96.8919);
                    SendClientMessage(playerid,0xFFFF00FF,"You have been rescued to Willowfield Truck depot");
                    SendClientMessage(playerid,0xFFFF00FF,"Rescue fee: $200");
                    GivePlayerMoney(playerid, -200);
                }


            }
        }
        if(dialogid == BusRescueDialog)
        {
            switch(listitem)
            {
                case 0:
                {
                    SetPlayerPos(playerid,1046.0646,1305.6222,11.0412);
                    SetPlayerFacingAngle(playerid,96.8919);
                    SendClientMessage(playerid,0xFFFF00FF,"You have been rescued to LV Bus Terminal");
                    SendClientMessage(playerid,0xFFFF00FF,"Rescue fee: $200");
                    GivePlayerMoney(playerid, -200);
                }
                case 1:
                {
                    SetPlayerPos(playerid,1957.7957,-2214.2544,16.1250);
                    SetPlayerFacingAngle(playerid,96.8919);
                    SendClientMessage(playerid,0xFFFF00FF,"You have been rescued to LS Bus Depot");
                    SendClientMessage(playerid,0xFFFF00FF,"Rescue fee: $200");
                    GivePlayerMoney(playerid, -200);
                }


            }
        }
        if(dialogid == AssistanceRescueDialog)
        {
            switch(listitem)
            {
                case 0:
                {
                    SetPlayerPos(playerid,56.0339,-186.9275,1.8145);
                    SetPlayerFacingAngle(playerid,96.8919);
                    SendClientMessage(playerid,0x00B82EFF,"You have been rescued to BlueBerry Garage");
                    SendClientMessage(playerid,0x00B82EFF,"Rescue fee: $200");
                    GivePlayerMoney(playerid, -200);
                    return 1;
                 }
            }
        }
    }
    return 0;
}



Re: rescue dialog help - =WoR=Varth - 03.09.2011

Do you have any other FS?
Did you return their OnDialogResponse at the end to 0?


Re: rescue dialog help - [LHT]Bally - 03.09.2011

no other filterscripts have dialogs, the only other dialogs i have are message boxes for like /rules,/cmds,and there in the gamemode


Re: rescue dialog help - =WoR=Varth - 03.09.2011

Debug your code:
pawn Code:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    if(response == 1)
    {
        SendClientMesage(playerid,0,"ASD");//Put this



Re: rescue dialog help - [LHT]Bally - 03.09.2011

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(response == 1)
{
SendClientMesage(playerid,0,"ASD");//Put this <<-- what is the asd for ? and where do i put this ? sorry if im being noobish im new to scripting


Re: rescue dialog help - iggy1 - 03.09.2011

Return one at the end of OnDialogResponse. Make sure your co-ords are right and that you set the players interior - if that is needed.

EDIT: You add the messages every line (or few) then when you run the code you can see what gets executed, because the message will tell you.


Re: rescue dialog help - [LHT]Bally - 03.09.2011

ic hanged it to like this and now the police rescue dont work lol i think i done it totally wrong

pawn Code:
#include <a_samp>
#include <sscanf2>

#define PoliceRescueDialog 1000
#define TruckersRescueDialog 1001
#define AssistanceRescueDialog 1003
#define BusRescueDialog 1002
#define LIST DIALOG_STYLE_LIST

new teamid;

public OnPlayerCommandText(playerid, cmdtext[])
{
    teamid = GetPlayerTeam(playerid);
    new command[130], params[130];
    if(sscanf(cmdtext, "s[128]s[128]", command, params) != 0)
    {
        sscanf(cmdtext, "s[128]", command);
    }
    if(!strcmp("/rescue", command, true, 7))
    {
        switch(teamid)
        {
            case 1: // \r\n Adds a new item to the list
            {
                ShowPlayerDialog(playerid,PoliceRescueDialog,DIALOG_STYLE_LIST,"Choose rescue point","LVPD\r\nSFPD","Rescue","Cancel");
            }
            case 2:
            {
                ShowPlayerDialog(playerid,TruckersRescueDialog,DIALOG_STYLE_LIST,"Choose rescue point","LV TRUCK\r\nWillowfield\nRock Shore Depot","Rescue","Cancel");
            }

            case 3:
            {
                ShowPlayerDialog(playerid,AssistanceRescueDialog,DIALOG_STYLE_LIST,"Choose rescue point","BlueBerry Garage\r\nRock Shore Depot","Rescue","Cancel");
            }
            case 4:
            {
                ShowPlayerDialog(playerid,BusRescueDialog,DIALOG_STYLE_LIST,"Choose rescue point","LS Bus Depot\r\nLV Bus Terminal","Rescue","Cancel");
            }
        }
        return 1;
    }
    return 0;
}
       

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    if(response == 1)
    {
        SendClientMessage(playerid,0,"ASD");//Put this
        if(dialogid == PoliceRescueDialog)
        {
            switch(listitem)
            {
                case 0: //Add another 'case' but with +1 id and change the cords/name
                {
                    SetPlayerPos(playerid,2296.7986,2450.9976,10.8203);
                    SetPlayerFacingAngle(playerid,94.1423);
                    SendClientMessage(playerid,0xFFFF00FF,"You have been rescued to LVPD HQ");
                    SendClientMessage(playerid,0xFFFF00FF,"Rescue fee: $200");
                    GivePlayerMoney(playerid, -200);
                }
                case 1:
                {
                    SetPlayerPos(playerid,2296.79885674216534165326,2450.9976,10.8203);
                    SetPlayerFacingAngle(playerid,94.1423);
                    SendClientMessage(playerid,0xFFFF00FF,"You have been rescued to SFPD HQ");
                    SendClientMessage(playerid,0xFFFF00FF,"Rescue fee: $200");
                    GivePlayerMoney(playerid, -200);
                }
               
            }
        }
        if(dialogid == TruckersRescueDialog)
        {
            switch(listitem)
            {
                case 0:
                {
                    SetPlayerPos(playerid,2810.7017,934.2364,10.9766);
                    SetPlayerFacingAngle(playerid,96.8919);
                    SendClientMessage(playerid,0xFFFF00FF,"You have been rescued to LV truckdepot");
                    SendClientMessage(playerid,0xFFFF00FF,"Rescue fee: $200");
                    GivePlayerMoney(playerid, -200);
                }
                case 1:
                {
                    SetPlayerPos(playerid,1752.7346,-2054.6328,14.0441);
                    SetPlayerFacingAngle(playerid,96.8919);
                    SendClientMessage(playerid,0xFFFF00FF,"You have been rescued to Willowfield Truck depot");
                    SendClientMessage(playerid,0xFFFF00FF,"Rescue fee: $200");
                    GivePlayerMoney(playerid, -200);
                }
                case 2:
                {
                    SetPlayerPos(playerid,2817.3284,972.9627,10.7500,208);
                    SetPlayerFacingAngle(playerid,96.8919);
                    SendClientMessage(playerid,0x00B82EFF,"You have been rescued to Rock Shore Depot");
                    SendClientMessage(playerid,0x00B82EFF,"Rescue fee: $200");
                    GivePlayerMoney(playerid, -200);
                    return 1;
                 }


            }
        }
        if(dialogid == BusRescueDialog)
        {
            switch(listitem)
            {
                case 0:
                {
                    SetPlayerPos(playerid,1046.0646,1305.6222,11.0412);
                    SetPlayerFacingAngle(playerid,96.8919);
                    SendClientMessage(playerid,0xFFFF00FF,"You have been rescued to LV Bus Terminal");
                    SendClientMessage(playerid,0xFFFF00FF,"Rescue fee: $200");
                    GivePlayerMoney(playerid, -200);
                }
                case 1:
                {
                    SetPlayerPos(playerid,1957.7957,-2214.2544,16.1250);
                    SetPlayerFacingAngle(playerid,96.8919);
                    SendClientMessage(playerid,0xFFFF00FF,"You have been rescued to LS Bus Depot");
                    SendClientMessage(playerid,0xFFFF00FF,"Rescue fee: $200");
                    GivePlayerMoney(playerid, -200);
                }


            }
        }
        if(dialogid == AssistanceRescueDialog)
        {
            switch(listitem)
            {
                case 0:
                {
                    SetPlayerPos(playerid,56.0339,-186.9275,1.8145);
                    SetPlayerFacingAngle(playerid,96.8919);
                    SendClientMessage(playerid,0x00B82EFF,"You have been rescued to BlueBerry Garage");
                    SendClientMessage(playerid,0x00B82EFF,"Rescue fee: $200");
                    GivePlayerMoney(playerid, -200);
                    return 1;
                 }
                 case 1:
                {
                    SetPlayerPos(playerid,2817.3284,972.9627,10.7500,208);
                    SetPlayerFacingAngle(playerid,96.8919);
                    SendClientMessage(playerid,0x00B82EFF,"You have been rescued to Rock Shore Depot");
                    SendClientMessage(playerid,0x00B82EFF,"Rescue fee: $200");
                    GivePlayerMoney(playerid, -200);
                    return 1;
                 }
            }
        }
    }
    return 0;
}



Re: rescue dialog help - iggy1 - 03.09.2011

Can you see that "return 0" at the end of OnDialogResponse?? Remove it!! (the very last return in he code you posted) I'm sure you should be returning one there. Whether that will help fix the prob IDK.

EDIT: Also the \r is not needed when displaying listitems (since the text aligns to the left auto), try removing that to.


Re: rescue dialog help - =WoR=Varth - 03.09.2011

Quote:
Originally Posted by iggy1
View Post
Can you see that "return 0" at the end of OnDialogResponse?? Remove it!! (the very last return in he code you posted) I'm sure you should be returning one there. Whether that will help fix the prob IDK.
pawn Code:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    if(response == 1)
    {
        SendClientMessage(playerid,0,"ASD");//Put this
        if(dialogid == PoliceRescueDialog)
        {
            switch(listitem)
            {
                case 0: //Add another 'case' but with +1 id and change the cords/name
                {
                    SetPlayerPos(playerid,2296.7986,2450.9976,10.8203);
                    SetPlayerFacingAngle(playerid,94.1423);
                    SendClientMessage(playerid,0xFFFF00FF,"You have been rescued to LVPD HQ");
                    SendClientMessage(playerid,0xFFFF00FF,"Rescue fee: $200");
                    GivePlayerMoney(playerid, -200);
                }
                case 1:
                {
                    SetPlayerPos(playerid,2296.79885674216534165326,2450.9976,10.8203);
                    SetPlayerFacingAngle(playerid,94.1423);
                    SendClientMessage(playerid,0xFFFF00FF,"You have been rescued to SFPD HQ");
                    SendClientMessage(playerid,0xFFFF00FF,"Rescue fee: $200");
                    GivePlayerMoney(playerid, -200);
                }
               
            }
        }
        if(dialogid == TruckersRescueDialog)
        {
            switch(listitem)
            {
                case 0:
                {
                    SetPlayerPos(playerid,2810.7017,934.2364,10.9766);
                    SetPlayerFacingAngle(playerid,96.8919);
                    SendClientMessage(playerid,0xFFFF00FF,"You have been rescued to LV truckdepot");
                    SendClientMessage(playerid,0xFFFF00FF,"Rescue fee: $200");
                    GivePlayerMoney(playerid, -200);
                }
                case 1:
                {
                    SetPlayerPos(playerid,1752.7346,-2054.6328,14.0441);
                    SetPlayerFacingAngle(playerid,96.8919);
                    SendClientMessage(playerid,0xFFFF00FF,"You have been rescued to Willowfield Truck depot");
                    SendClientMessage(playerid,0xFFFF00FF,"Rescue fee: $200");
                    GivePlayerMoney(playerid, -200);
                }
                case 2:
                {
                    SetPlayerPos(playerid,2817.3284,972.9627,10.7500,208);
                    SetPlayerFacingAngle(playerid,96.8919);
                    SendClientMessage(playerid,0x00B82EFF,"You have been rescued to Rock Shore Depot");
                    SendClientMessage(playerid,0x00B82EFF,"Rescue fee: $200");
                    GivePlayerMoney(playerid, -200);
                    return 1;
                 }


            }
        }
        if(dialogid == BusRescueDialog)
        {
            switch(listitem)
            {
                case 0:
                {
                    SetPlayerPos(playerid,1046.0646,1305.6222,11.0412);
                    SetPlayerFacingAngle(playerid,96.8919);
                    SendClientMessage(playerid,0xFFFF00FF,"You have been rescued to LV Bus Terminal");
                    SendClientMessage(playerid,0xFFFF00FF,"Rescue fee: $200");
                    GivePlayerMoney(playerid, -200);
                }
                case 1:
                {
                    SetPlayerPos(playerid,1957.7957,-2214.2544,16.1250);
                    SetPlayerFacingAngle(playerid,96.8919);
                    SendClientMessage(playerid,0xFFFF00FF,"You have been rescued to LS Bus Depot");
                    SendClientMessage(playerid,0xFFFF00FF,"Rescue fee: $200");
                    GivePlayerMoney(playerid, -200);
                }


            }
        }
        if(dialogid == AssistanceRescueDialog)
        {
            switch(listitem)
            {
                case 0:
                {
                    SetPlayerPos(playerid,56.0339,-186.9275,1.8145);
                    SetPlayerFacingAngle(playerid,96.8919);
                    SendClientMessage(playerid,0x00B82EFF,"You have been rescued to BlueBerry Garage");
                    SendClientMessage(playerid,0x00B82EFF,"Rescue fee: $200");
                    GivePlayerMoney(playerid, -200);
                    return 1;
                 }
                 case 1:
                {
                    SetPlayerPos(playerid,2817.3284,972.9627,10.7500,208);
                    SetPlayerFacingAngle(playerid,96.8919);
                    SendClientMessage(playerid,0x00B82EFF,"You have been rescued to Rock Shore Depot");
                    SendClientMessage(playerid,0x00B82EFF,"Rescue fee: $200");
                    GivePlayerMoney(playerid, -200);
                    return 1;
                 }
            }
        }
        return 1;
    }
    return 0;
}
He need to return 0 at the end of OnDialogResponse.
https://sampwiki.blast.hk/wiki/OnDialogResponse


Re: rescue dialog help - iggy1 - 03.09.2011

Quote:
Originally Posted by varthshenon
View Post
He need to return 0 at the end of OnDialogResponse.
https://sampwiki.blast.hk/wiki/OnDialogResponse
Quote:
Originally Posted by wiki
return 0; // If you put return 1 here the callback will not continue to be called in other scripts
Bloody hell i've never noticed that. The default "new" program should probably return zero there too then.