Jump to content

pomoc [HELP] Warp pomocí dialogu


Sanka

Recommended Posts

Zdravim,

mam problém, udělal jsem si warp systém pomocí dialogu, ale když ve hře kliknu na listitem č. 1, odwarpuje mne to na stejný místo a napíše mi to to samé, jako když kliknu na listitem č. 0. Díky za pomoc.

#include <a_samp>
#define IsPlayerInSphere(%0,%1,%2,%3,%4) IsPlayerInRangeOfPoint(%0,%4,%1,%2,%3)
#pragma tabsize 0

#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_BLUE 0x33CCFFAA


public OnGameModeInit()
{
CreatePickup(1239,1,140.7595,-79.2612,1.5781);
return 1;
}

public OnPlayerPickUpPickup(playerid, pickupid)
{
if(IsPlayerInSphere(playerid, 140.7595,-79.2612,1.5781,3))
{
ShowPlayerDialog(playerid,1,DIALOG_STYLE_LIST,"Exporal Airlines","San Fierro 1500$\nLos Santos 1500$","Cestuj","Zrušit");
}
return 1;
}

public OnDialogResponse(playerid,dialogid,response,listitem,inputtext[])
{
if(dialogid == 1)
{
if(response == 1)
{
if(listitem == 0)
{
if(GetPlayerMoney(playerid) < 1499)
SendClientMessage(playerid, COLOR_YELLOW, "Nemáš dostatek financí pro odcestování do San Fierro!");
}if(GetPlayerMoney(playerid) > 1499){
SetPlayerInterior(playerid,0);
SetPlayerPos(playerid,-1421.9365,-288.0746,14.1484);
GivePlayerMoney(playerid,-1500);
new string[256];
new sendername[256];
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "Hráč %s odletěl do státu San Fierro se společností Exporal Airlines.", sendername);
SendClientMessageToAll(COLOR_BLUE, string);
}
else if(listitem == 1)
{
if(GetPlayerMoney(playerid) < 1499)
SendClientMessage(playerid, COLOR_YELLOW, "Nemáš dostatek financí pro odcestování do Los Santos!");
}if(GetPlayerMoney(playerid) > 1499){
SetPlayerInterior(playerid,0);
SetPlayerPos(playerid,1640.0881,-2238.7280,13.4999);
GivePlayerMoney(playerid,-1500);
new string[256];
new sendername[256];
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "Hráč %s odletěl do státu Los Santos se společností Exporal Airlines.", sendername);
SendClientMessageToAll(COLOR_BLUE, string);
}
}
}
return 1;
}
Link to comment
Share on other sites

Neviem prečo nevyužívaš tento spôsob:

public OnDialogResponse(playerid,dialogid,response,listitem,inputtext[])
{
switch(dialogid)
{
   case DIALOG_ID:
   {
       if(response)
       {
           switch(listitem)
           {
               case 0:
               {
                   //Položka 1
                   return 1;
               }
               case 1:
               {
                   //Položka 2
                   return 1;
               }
           }
       }
       return 1;
   }
}
return 1;
}
Link to comment
Share on other sites

Tak díky za kritiku, ale tu jsem nežádal.. :) Jsem uplnej nováček v pawnu, takže myslim, že jsem celkem dobrej, že jsem udělal aspoň tohle.. :) A prosil jsem o pomoc a ne o kritiku.. :)

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...