PHP код:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(PRESSED(KEY_SUBMISSION)) // работает
{
if(!IsPlayerInAnyVehicle(playerid)) return true;
if(GetPVarInt(playerid, "Engining") > 0) return true;
new vehicleid = GetPlayerVehicleID(playerid);
if(GetPlayerState(playerid) != 2) return true;
if(PlaneVeh(vehicleid) || BoatVeh(vehicleid) || BikeVeh(vehicleid)) return true;
if(engine_car{vehicleid} == 0)
{
new text[29+MAX_PLAYER_NAME];
format(text, sizeof(text), "%s вставляет ключ в замок зажигания.", sendername(playerid));
ProxDetectorEx(15.0, playerid, text, COLOR_PURPLE);
SetTimerEx("RandomEnginingCar", 1500, 0, "%i", playerid);
SetPVarInt(playerid, "Engining", 1);
}
else
{
engine_car{vehicleid} = 0;
new text2[19+MAX_PLAYER_NAME];
format(text2, sizeof(text2), "%s заглушил двигатель.", sendername(playerid));
ProxDetectorEx(15.0, playerid, text2, COLOR_PURPLE);
GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(vehicleid,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
}
}
if(PRESSED(KEY_WALK))
{
if(IsPlayerInRangeOfPoint(playerid,2.0,246.7667,62.7068,1003.6406)) // Работает
return tpint(playerid,0, 0, 1551.7064,-1675.6198,15.9680,89.9772); // Выход из LSPD центр.
else if(IsPlayerInRangeOfPoint(playerid,2.0,1555.1411,-1675.6617,16.1953))
return tpint(playerid,6, 1, 246.5239,65.9137,1003.6406,359.2728); // Вход в LSPD центр.
new virtual_world = GetPlayerInterior(playerid),
interior = GetPlayerInterior(playerid);
for(new a = 0; a < TOTALATM; a++) // работает
{
if(!IsPlayerInRangeOfPoint(playerid
,
1.0,
ATMInfo[a][aCor][0],
ATMInfo[a][aCor][1],
ATMInfo[a][aCor][2]
)
&& virtual_world != ATMInfo[a][aWorld][0]
&& interior != ATMInfo[a][aWorld][1])
continue;
return cmd_atm(playerid);
}
for(new i = 0; i < sizeof(HouseInfo); i++) // не работает
{
if(IsPlayerInRangeOfPoint(playerid,7,HouseInfo[i][hEntrx], HouseInfo[i][hEntry], HouseInfo[i][hEntrz]))
{
if(HouseInfo[i][hLock] == 0)
{
SetPlayerInterior(playerid,HouseInfo[i][hInt]);
SetPlayerVirtualWorld(playerid,250+i);
//Pinfo[playerid][pLocal] = i;
SetCameraBehindPlayer(playerid);
return SetPlayerPos(playerid,HouseInfo[i][hExitx],HouseInfo[i][hExity],HouseInfo[i][hExitz]);
}
else return GameTextForPlayer(playerid, "~r~Closed", 5000, 1);
}
}
for(new a = 0; a < TOTALSPRUNK; a++) // то же не работает.
{
if(!IsPlayerInRangeOfPoint(playerid
,
1.0,
SPRUNKInfo[a][aCor][0],
SPRUNKInfo[a][aCor][1],
SPRUNKInfo[a][aCor][2]
)
&& virtual_world != SPRUNKInfo[a][aWorld][0]
&& interior != SPRUNKInfo[a][aWorld][1])
continue;
if(GetMoney(playerid) < 50)
return SendClientMessage(playerid, COLOR_GREY, YouDoNotHaveEnoughMoney);
new Float: health;
GetPlayerHealth(playerid, health);
if(_:health >= _:100)
return SendClientMessage(playerid, COLOR_GREY, !"У вас полное здоровье.");
if(_:health < _:91)
SetPlayerHealth(playerid, health + 50);
else
SetPlayerHealth(playerid, 100);
GiveMoney(playerid, -50);
PlayerPlaySound(playerid, 42600, 0.0, 0.0, 0.0);
return ApplyAnimation(playerid, !"VENDING", !"VEND_DRINK2_P", 4.1,0,0,0,0,0);
}
}
return 1;
}
В чем может быть проблема?