01.07.2013, 07:48
I created a door at LSPD with Streamer and it enter the interior but when you enter it or exit it you you become frozen... And I cant figure out how to fix it. Will post code on request
TogglePlayerControllable(playerid,0);
CMD:enter(playerid, params[])
{
for(new idx=0; idx<MAX_DOORS; idx++) // Dynamic Doors
{
if(IsPlayerInRangeOfPoint(playerid, 2, DoorInfo[idx][dOX], DoorInfo[idx][dOY], DoorInfo[idx][dOZ]))
{
if(DoorInfo[idx][dCInt])
{
GameTextForPlayer(playerid, "~w~Loading Objects", 3500, 3);
TogglePlayerControllable(playerid, 0);
SetTimerEx("EnterExitTimer", 5000, false, "i", playerid);
PlayerInfo[playerid][pSpawnFreeze] = 1;
}
SetPlayerInterior(playerid, DoorInfo[idx][dIInt]);
SetPlayerVirtualWorld(playerid, DoorInfo[idx][dIVW]);
SetPlayerFacingAngle(playerid, DoorInfo[idx][dIA]);
SetCameraBehindPlayer(playerid);
SetPlayerPos(playerid, DoorInfo[idx][dIX], DoorInfo[idx][dIY], DoorInfo[idx][dIZ]);
return 1;
}
if(IsPlayerInRangeOfPoint(playerid,8.0,1554.6433,-1675.7488,16.1953)) //LSPD
{
SetPlayerVirtualWorld(playerid, 0);
SetPlayerInterior(playerid,6);
SetPlayerPos(playerid,246.8240,62.6125,1003.6406);
TogglePlayerControllable(playerid, 0);
}
}
return 1;
}
SetTimerEx("EnterExitTimer", 5000, false, "i", playerid);
forward EnterExitTimer(playerid);
public EnterExitTimer(playerid)
{
TogglePlayerControllable(playerid, 1);
return 1;
}
|
replace TogglePlayerControllable(playerid, 0); with TogglePlayerControllable(playerid, 1); and it will work ! i will explain
When TogglePlayerControllable is set to 0 the player freeze but when it is set to 1 the player unfreeze |
SetTimerEx("EnterExitTimer", 5000, false, "i", playerid);