home *** CD-ROM | disk | FTP | other *** search
/ Game Level Design / GLDesign.bin / Software / UnrealEngine2Runtime / UE2Runtime-22262001_Demo.exe / Engine / Classes / ZoneTrigger.uc < prev   
Text File  |  2003-06-23  |  1KB  |  49 lines

  1. //=============================================================================
  2. // ZoneTrigger.
  3. //=============================================================================
  4. class ZoneTrigger extends Trigger;
  5.  
  6. //
  7. // Called when something touches the trigger.
  8. //
  9. function Touch( actor Other )
  10. {
  11.     local ZoneInfo Z;
  12.     if( IsRelevant( Other ) )
  13.     {
  14.         // Broadcast the Trigger message to all matching actors.
  15.         if( Event != '' )
  16.             foreach AllActors( class 'ZoneInfo', Z )
  17.                 if ( Z.ZoneTag == Event )
  18.                     Z.Trigger( Other, Other.Instigator );
  19.  
  20.         if( Message != "" )
  21.             // Send a string message to the toucher.
  22.             Other.Instigator.ClientMessage( Message );
  23.  
  24.         if( bTriggerOnceOnly )
  25.             // Ignore future touches.
  26.             SetCollision(False);
  27.     }
  28. }
  29.  
  30. //
  31. // When something untouches the trigger.
  32. //
  33. function UnTouch( actor Other )
  34. {
  35.     local ZoneInfo Z;
  36.     if( IsRelevant( Other ) )
  37.     {
  38.         // Untrigger all matching actors.
  39.         if( Event != '' )
  40.             foreach AllActors( class 'ZoneInfo', Z )
  41.                 if ( Z.ZoneTag == Event )
  42.                     Z.UnTrigger( Other, Other.Instigator );
  43.     }
  44. }
  45.  
  46. defaultproperties
  47. {
  48. }
  49.