PDA

Просмотр полной версии : [Вопрос] IsPlayerInRangeOfPoint



Skyline
08.09.2016, 16:20
Здравствуйте. Помогите с проблемой, в интерьере аммо, только в 2х вирт мирах должен появляться диалог. Поставил проверку, чтобы узнавал находиться ли игрок в этом вирт мире. Без проверок работает, с ними, нифига. ID виртуальных миров верные 1, 2.

if(newkeys & KEY_WALK)
{
if(IsPlayerInRangeOfPoint(playerid, 2.0, 312.2367,-166.1369,999.6010) && GetPlayerVirtualWorld(playerid) == 1 && GetPlayerVirtualWorld(playerid) == 2)
{
ShowPlayerDialog(playerid, 24, DIALOG_STYLE_TABLIST_HEADERS,!"{FFFFFF}Аммуниция",
!"Оружие\tЦена\n\
{FFDEAD}Rifle\t{FFFFFF}$1000\n\
{FFDEAD}SDPistol\t{FFFFFF}$600\n\
{FFDEAD}Colt45\t{FFFFFF}$400\n\
{FFDEAD}Deagle\t{FFFFFF}$600\n\
{FFDEAD}MP5\t{FFFFFF}$800\n\
{FFDEAD}ShotGun\t{FFFFFF}$1200\n\
{FFDEAD}AK-47\t{FFFFFF}$1500\n\
{FFDEAD}M-4\t{FFFFFF}$1500\n\
{FFDEAD}Spray\t{FFFFFF}$150\n\
{FFDEAD}Armour\t{FFFFFF}$800\n\
{FFDEAD}Парашют\t{FFFFFF}$500\n\
",!"Купить",!"Выход");
}
}

Sp1ke
08.09.2016, 16:30
Здравствуйте. Помогите с проблемой, в интерьере аммо, только в 2х вирт мирах должен появляться диалог. Поставил проверку, чтобы узнавал находиться ли игрок в этом вирт мире. Без проверок работает, с ними, нифига. ID виртуальных миров верные 1, 2.

if(newkeys & KEY_WALK)
{
if(IsPlayerInRangeOfPoint(playerid, 2.0, 312.2367,-166.1369,999.6010) && GetPlayerVirtualWorld(playerid) == 1 && GetPlayerVirtualWorld(playerid) == 2)
{
ShowPlayerDialog(playerid, 24, DIALOG_STYLE_TABLIST_HEADERS,!"{FFFFFF}Аммуниция",
!"Оружие\tЦена\n\
{FFDEAD}Rifle\t{FFFFFF}$1000\n\
{FFDEAD}SDPistol\t{FFFFFF}$600\n\
{FFDEAD}Colt45\t{FFFFFF}$400\n\
{FFDEAD}Deagle\t{FFFFFF}$600\n\
{FFDEAD}MP5\t{FFFFFF}$800\n\
{FFDEAD}ShotGun\t{FFFFFF}$1200\n\
{FFDEAD}AK-47\t{FFFFFF}$1500\n\
{FFDEAD}M-4\t{FFFFFF}$1500\n\
{FFDEAD}Spray\t{FFFFFF}$150\n\
{FFDEAD}Armour\t{FFFFFF}$800\n\
{FFDEAD}Парашют\t{FFFFFF}$500\n\
",!"Купить",!"Выход");
}
}


if(newkeys & KEY_WALK)
{
new player_world = GetPlayerVirtualWorld(playerid);
if((IsPlayerInRangeOfPoint(playerid, 2.0, 312.2367,-166.1369,999.6010)) && (player_world == 1 || player_world == 2))
{
ShowPlayerDialog(playerid, 24, DIALOG_STYLE_TABLIST_HEADERS,!"{FFFFFF}Аммуниция",
!"Оружие\tЦена\n\
{FFDEAD}Rifle\t{FFFFFF}$1000\n\
{FFDEAD}SDPistol\t{FFFFFF}$600\n\
{FFDEAD}Colt45\t{FFFFFF}$400\n\
{FFDEAD}Deagle\t{FFFFFF}$600\n\
{FFDEAD}MP5\t{FFFFFF}$800\n\
{FFDEAD}ShotGun\t{FFFFFF}$1200\n\
{FFDEAD}AK-47\t{FFFFFF}$1500\n\
{FFDEAD}M-4\t{FFFFFF}$1500\n\
{FFDEAD}Spray\t{FFFFFF}$150\n\
{FFDEAD}Armour\t{FFFFFF}$800\n\
{FFDEAD}Парашют\t{FFFFFF}$500\n\
",!"Купить",!"Выход");
}
}

Skyline
08.09.2016, 16:34
Работает, тогда почему нельзя на стандартной функции тоже самое сделать?

Sp1ke
08.09.2016, 16:37
Работает, тогда почему нельзя на стандартной функции тоже самое сделать?

А это что не стандартная функция? Переменную я создал для того, чтобы не обращаться к клиенту 2 раза за получением виртуального мира игрока. Ты перепутал оператор && (и) и || (или) в проверке с виртуальными мирами