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