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;
}