public UnregisterObjectPos ( FSO.SimAntics.VMEntity obj ) : void | ||
obj | FSO.SimAntics.VMEntity | |
Результат | void |
public void UnregisterObjectPos(VMEntity obj)
{
var pos = obj.Position;
//remove object from room
var room = GetObjectRoom(obj);
RoomInfo[room].Entities.Remove(obj);
if (obj.EntryPoints[15].ActionFunction != 0)
{ //portal
RemoveRoomPortal(obj, room);
}
if (obj.GetValue(VMStackObjectVariable.LightingContribution) > 0)
RefreshLighting(room, true);
SetToNextCache.UnregisterObjectPos(obj);
}
public override void PositionChange(VMContext context, bool noEntryPoint) { if (GhostImage) { return; } var room = context.GetObjectRoom(this); SetRoom(room); if (HandObject != null) { context.UnregisterObjectPos(HandObject); HandObject.Position = Position; HandObject.PositionChange(context, noEntryPoint); } context.RegisterObjectPos(this); if (Container != null) { return; } if (Position == LotTilePos.OUT_OF_WORLD) { return; } base.PositionChange(context, noEntryPoint); }