## XIDCine
Class LiftDoor

source: C:\XIII\XIDCine\Classes\LiftDoor.uc

    Core.Object
       |
       +--Engine.Actor
          |
          +--Engine.Mover
             |
             +--XIII.XIIIMover
                |
                +--XIDCine.LiftDoor

Direct Known Subclasses:None

class LiftDoor
extends XIII.XIIIMover

    //-----------------------------------------------------------
    //
    //-----------------------------------------------------------

Function Summary
`void` | `BeginState()`
`void` | `PostBeginPlay()`
    //____________________________________________________________________
`void` | `Trigger(Actor Other, Pawn EventInstigator)`
`void` | `UnTrigger(Actor Other, Pawn EventInstigator)`

Source Code

    00001	//-----------------------------------------------------------
    00002	//
    00003	//-----------------------------------------------------------
    00004	class LiftDoor extends XIIIMover;
    00005
    00006	//____________________________________________________________________
    00007	function PostBeginPlay()
    00008	{
    00009	    Super.PostBeginPlay();
    00010
    00011		if (KeyNum != 0)
    00012		{
    00013			bOpened=true;
    00014			bClosed=false;
    00015		}
    00016		PrevKeyNum = KeyNum;
    00017	}
    00018
    00019	state() TriggerControl
    00020	{
    00021	     function Trigger( actor Other, pawn EventInstigator )
    00022	     {
    00023	          numTriggerEvents++;
    00024	          SavedTrigger = Other;
    00025	          Instigator = EventInstigator;
    00026	          if ( SavedTrigger != None )
    00027	               SavedTrigger.BeginEvent();
    00028	          GotoState( 'TriggerControl', 'Open' );
    00029	     }
    00030	     function UnTrigger( actor Other, pawn EventInstigator )
    00031	     {
    00032	          numTriggerEvents--;
    00033	          if ( numTriggerEvents <=0 )
    00034	          {
    00035	               numTriggerEvents = 0;
    00036	               SavedTrigger = Other;
    00037	               Instigator = EventInstigator;
    00038	               SavedTrigger.BeginEvent();
    00039	               GotoState( 'TriggerControl', 'Close' );
    00040	          }
    00041	     }
    00042
    00043	     function BeginState()
    00044	     {
    00045	          numTriggerEvents = 0;
    00046	     }
    00047
    00048	Open:
    00049	     bClosed = false;
    00050	     if ( DelayTime > 0 )
    00051	     {
    00052	          bDelaying = true;
    00053	          Sleep(DelayTime);
    00054	     }
    00055	     DoOpen();
    00056	     FinishInterpolation();
    00057	     FinishedOpening();
    00058	     SavedTrigger.EndEvent();
    00059	     if( bTriggerOnceOnly )
    00060	          GotoState('');
    00061	     Stop;
    00062	Close:
    00063	     if ( DelayTime > 0 )
    00064	     {
    00065	          bDelaying = true;
    00066	          Sleep(DelayTime);
    00067	     }
    00068	     DoClose();
    00069	     FinishInterpolation();
    00070	     FinishedClosing();
    00071	}
    00072
    00073
    00074
    00075	defaultproperties
    00076	{
    00077	     bNoInteractionIcon=True
    00078	     MoverEncroachType=ME_IgnoreWhenEncroach
    00079	     InitialState="TriggerControl"
    00080	}

End Source Code