PDA

Просмотр полной версии : [Вопрос] вход/выход



Dimon_Fanat
24.06.2014, 18:04
Вообщем столкнулся с такой проблемой создал дом и вот что нашел вхожу долеко от входа как сделать чтоб входил прям на значке и пикапе а не далеко от него. Получается могу входить и на пикапе и далеко от него.

http://s014.radikal.ru/i326/1406/c0/670cf6ce0df0.png
http://s43.radikal.ru/i101/1406/eb/b78970e21476.png
http://s020.radikal.ru/i723/1406/68/ee0a0ec248f9.png
http://s52.radikal.ru/i137/1406/e5/5ef2fde4959c.png

Как уменьшить радиус входа выхода.?


Вот коды /exit и /enter


if(strcmp(cmd, "/enter", true) == 0)
{
if(IsPlayerConnected(playerid))
{
for(new i = 0; i < AllHouse; i++)
{
if (PlayerToPoint(3, playerid,HouseInfo[i][hEntrancex], HouseInfo[i][hEntrancey], HouseInfo[i][hEntrancez]))
{
if(HouseInfo[i][hOwned] == 0){HouseInfo[i][hLock] = 0;}
if(PlayerInfo[playerid][pPhousekey] == i || HouseInfo[i][hLock] == 0)
{
SetPlayerVirtualWorld(playerid,i+50);
SetPlayerInterior(playerid,HouseInfo[i][hInt]);
SetPlayerPosServer(playerid,HouseInfo[i][hExitx],HouseInfo[i][hExity],HouseInfo[i][hExitz]);
PlayerInfo[playerid][pLocal] = i+50;
}
else GameTextForPlayer(playerid, "~r~€AKP‘¦O", 5000, 1); // надпись закрыто
}
}
for(new i = 0; i < sizeof(FlatsInfo); i++)
{
if (PlayerToPoint(3, playerid,FlatsInfo[i][fEntrancex], FlatsInfo[i][fEntrancey], FlatsInfo[i][fEntrancez]) && GetPlayerVirtualWorld(playerid) == FlatsInfo[i][fVirtWorld])
{
if(PlayerInfo[playerid][pFlatKey] == i || FlatsInfo[i][fLock] == 0)
{
SetPlayerVirtualWorld(playerid,i+9999);
SetPlayerInterior(playerid,FlatsInfo[i][fInt]);
SetPlayerPosServer(playerid,FlatsInfo[i][fExitx],FlatsInfo[i][fExity],FlatsInfo[i][fExitz]);
GameTextForPlayer(playerid, "~w~Welcome Flat", 5000, 1);
}
else GameTextForPlayer(playerid, "~r~€AKP‘¦O", 5000, 1);// натпись закрыто
}
}
for(new i = 0; i < sizeof(BizzInfo); i++)
{
if (PlayerToPoint(3, playerid,BizzInfo[i][bEntranceX], BizzInfo[i][bEntranceY], BizzInfo[i][bEntranceZ]))
{
if(PlayerInfo[playerid][pPbiskey] == i || PlayerInfo[playerid][pMoney] >= BizzInfo[i][bEntranceCost])
{
if(PlayerInfo[playerid][pPbiskey] != i)
if(BizzInfo[i][bLocked] == 0) return GameTextForPlayer(playerid, FixText("~r~Закрыто"), 5000, 1);
if (PlayerInfo[playerid][pLevel] < 1) return SFM(playerid, COLOR_GREY, "Тебе нужен 1 уровень.");
if(BizzInfo[i][bProducts] <= 0) return GameTextForPlayer(playerid, FixText("~r~Отсутствует на складе"), 5000, 1);
GiveMoney(playerid,-BizzInfo[i][bEntranceCost]);
format(string, sizeof(string), "~r~-%d$", BizzInfo[i][bEntranceCost]);
BizzInfo[i][bTill] += BizzInfo[i][bEntranceCost]/10*6;
BizzInfo[i][bProducts]--;
GameTextForPlayer(playerid, string, 5000, 3);
SetPlayerInterior(playerid,BizzInfo[i][bInterior]);
SetPlayerPosServer(playerid,BizzInfo[i][bExitX],BizzInfo[i][bExitY],BizzInfo[i][bExitZ]);
PlayerInfo[playerid][pLocal] = i+99;
SetPlayerVirtualWorld(playerid,i+99);
new krisha = BizzInfo[i][bBanda];
ObwyakInfo[krisha][oMoney] += BizzInfo[i][bEntranceCost]/10*4;
SaveObwyak();
}
else GameTextForPlayer(playerid, FixText("~r~У вас нет наличных денег"), 5000, 1);
}
}
}
return true;
}
if(strcmp(cmd, "/exit", true) == 0)
{
if(IsPlayerConnected(playerid))
{
for(new i = 0; i < AllHouse; i++)
{
if(GetPlayerVirtualWorld(playerid) == i+50)
{
if (PlayerToPoint(3, playerid,HouseInfo[i][hExitx], HouseInfo[i][hExity], HouseInfo[i][hExitz]))
{
SetPlayerInterior(playerid,0);
SetPlayerVirtualWorld(playerid,0);
SetPlayerPosServer(playerid,HouseInfo[i][hEntrancex],HouseInfo[i][hEntrancey],HouseInfo[i][hEntrancez]);
PlayerInfo[playerid][pLocal] = 0;
if(HouseInfo[i][hHel] == 1)
{
new Float:tempheal;
GetPlayerHealth(playerid,tempheal);
if(tempheal < 100.0)
{
SetPlayerHealth(playerid,100.0);
}
}
}
}
}
for(new i = 0; i < sizeof(FlatsInfo); i++)
{
if(GetPlayerVirtualWorld(playerid) == i+9999)
{
if (PlayerToPoint(3, playerid,FlatsInfo[i][fExitx], FlatsInfo[i][fExity], FlatsInfo[i][fExitz]))
{
SetPlayerInterior(playerid,3);
SetPlayerVirtualWorld(playerid,FlatsInfo[i][fVirtWorld]);
SetPlayerPosServer(playerid,FlatsInfo[i][fEntrancex],FlatsInfo[i][fEntrancey],FlatsInfo[i][fEntrancez]);
}
}
}
for(new i = 0; i < sizeof(BizzInfo); i++)
{
if (PlayerToPoint(3, playerid,BizzInfo[i][bExitX], BizzInfo[i][bExitY], BizzInfo[i][bExitZ]) && GetPlayerVirtualWorld(playerid) == i+99)
{
SetPlayerInterior(playerid,0);
SetPlayerPosServer(playerid,BizzInfo[i][bEntranceX],BizzInfo[i][bEntranceY],BizzInfo[i][bEntranceZ]);
SetPlayerVirtualWorld(playerid,0);
PlayerInfo[playerid][pLocal] = 255;
}
}
if(RentcarLSVeh((playerid)) || RentcarLSVeh(GetPlayerVehicleID(playerid)))
{
TogglePlayerControllable(playerid, 1);
RemovePlayerFromVehicle(playerid); SetTimerEx("CarHack", 3000, false, "i", playerid);
}
if(RentcarLSSVeh((playerid)) || RentcarLSSVeh(GetPlayerVehicleID(playerid)))
{
TogglePlayerControllable(playerid, 1);
RemovePlayerFromVehicle(playerid); SetTimerEx("CarHack", 3000, false, "i", playerid);
}
}
return true;
}

DeimoS
24.06.2014, 20:13
Координаты нужные подставьте и всё. В вашем случае нужно найти нужные переменные с координатами

underwoker
25.06.2014, 03:36
if (PlayerToPoint(3,
Уменьши значение например на 1.

Dimon_Fanat
25.06.2014, 10:39
if (PlayerToPoint(3,
Уменьши значение например на 1.

ок попробую