Advertisement
jewalky

Untitled

Jan 21st, 2017
284
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.55 KB | None | 0 0
  1. class MyHandler : RenderEventHandler
  2. {
  3.     Actor a;
  4.     int c;
  5.     uint oldTranslation;
  6.    
  7.     override void RenderFrame()
  8.     {
  9.         c = 0;
  10.     }
  11.    
  12.     override void RenderCamera()
  13.     {
  14.         c++;
  15.     }
  16.    
  17.     override void RenderBeforeThing()
  18.     {
  19.         oldTranslation = CurrentThing.translation;
  20.         if (c != 1)
  21.             CurrentThing.A_SetTranslation('REDTRANSLATION');
  22.     }
  23.    
  24.     override void RenderAfterThing()
  25.     {
  26.         CurrentThing.translation = oldTranslation;
  27.     }
  28. }
  29.  
  30. class TestActor : Actor
  31. {
  32.     Default
  33.     {
  34.         +NOBLOCKMAP;
  35.         +NOGRAVITY;
  36.         +WALLSPRITE;
  37.        
  38.         RenderStyle 'Translucent';
  39.     }
  40.    
  41.     States
  42.     {
  43.     Spawn:
  44.         TNT1 A 1;
  45.         loop;
  46.     }
  47.  
  48.     override void BeginPlay()
  49.     {
  50.         Super.BeginPlay();
  51.         A_Log(String.Format("picnum = %d", picnum));
  52.         picnum = TexMan.CheckForTexture("M_DOOM", TexMan.Type_Any);
  53.         if (!picnum.Exists() || !picnum.IsValid())
  54.         {
  55.             A_Log("failed");
  56.             Destroy();
  57.             return;
  58.         }
  59.         A_Log("ok");
  60.         //A_Log(String.Format("picnum = %d", picnum));
  61.        
  62.         // test: register handler
  63.         MyHandler hndlr = MyHandler(EventHandler.CreateOnce('MyHandler'));
  64.         if (hndlr)
  65.         {
  66.             hndlr.a = self;
  67.             EventHandler.Register(hndlr);
  68.         }
  69.        
  70.         SetOrigin((pos.x, pos.y, pos.z+48.0), false);
  71.     }
  72.    
  73.     override void Tick()
  74.     {
  75.         Super.Tick();
  76.         //A_Log(String.Format("picnum = %d", picnum));
  77.     }
  78. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement