diff --git a/wadsrc/static/zscript/games/duke/actors/airplane.zs b/wadsrc/static/zscript/games/duke/actors/airplane.zs index 6f3982dcc..a974abb9b 100644 --- a/wadsrc/static/zscript/games/duke/actors/airplane.zs +++ b/wadsrc/static/zscript/games/duke/actors/airplane.zs @@ -2,16 +2,15 @@ class RedneckAirplane : DukeActor { default { - statnum STAT_ACTOR; pic "AIRPLANE"; - ScaleX 1; - ScaleY 1; } override void Initialize() { self.extra = self.lotag; self.cstat |= CSTAT_SPRITE_BLOCK_ALL; + self.Scale = (1, 1); + self.ChangeStat(STAT_ACTOR); } override void Tick() diff --git a/wadsrc/static/zscript/games/duke/actors/balloons.zs b/wadsrc/static/zscript/games/duke/actors/balloons.zs index 17d741df6..89328213e 100644 --- a/wadsrc/static/zscript/games/duke/actors/balloons.zs +++ b/wadsrc/static/zscript/games/duke/actors/balloons.zs @@ -3,17 +3,16 @@ class RedneckBalloons1 : DukeActor { Default { - ScaleX 0.5; - ScaleY 0.5; - Extra 0; - Hitag 0; - Statnum STAT_ACTOR; Spriteset "BALLOONS1", "BALLOONS1BROKE"; } override void Initialize() { self.cstat |= CSTAT_SPRITE_BLOCK_ALL; + self.Scale = (0.5, 0.5); + self.extra = 0; + self.hitag = 0; + self.ChangeStat(STAT_ACTOR); } override void Tick() diff --git a/wadsrc/static/zscript/games/duke/actors/bloodpool.zs b/wadsrc/static/zscript/games/duke/actors/bloodpool.zs index 33f4b818a..455a04fdf 100644 --- a/wadsrc/static/zscript/games/duke/actors/bloodpool.zs +++ b/wadsrc/static/zscript/games/duke/actors/bloodpool.zs @@ -3,7 +3,6 @@ class DukeBloodPool : DukeActor default { pic "BLOODPOOL"; - statnum STAT_MISC; } virtual void SetPalette() @@ -32,6 +31,7 @@ class DukeBloodPool : DukeActor self.cstat |= CSTAT_SPRITE_ALIGNMENT_FLOOR; if (!self.mapSpawned) self.scale = (REPEAT_SCALE, REPEAT_SCALE); + self.ChangeStat(STAT_MISC); } override void Tick() diff --git a/wadsrc/static/zscript/games/duke/actors/bloodsplats.zs b/wadsrc/static/zscript/games/duke/actors/bloodsplats.zs index caa6e91ea..5c8d826eb 100644 --- a/wadsrc/static/zscript/games/duke/actors/bloodsplats.zs +++ b/wadsrc/static/zscript/games/duke/actors/bloodsplats.zs @@ -2,7 +2,6 @@ class DukeBloodSplat1 : DukeActor { default { - statnum STAT_MISC; Pic "BLOODSPLAT1"; } @@ -15,6 +14,7 @@ class DukeBloodSplat1 : DukeActor if (!self.mapSpawned && self.ownerActor && self.ownerActor.pal == 6) self.pal = 6; self.insertspriteq(); + self.ChangeStat(STAT_MISC); } override void Tick() diff --git a/wadsrc/static/zscript/games/duke/actors/bolt.zs b/wadsrc/static/zscript/games/duke/actors/bolt.zs index b3a49685c..7039a592f 100644 --- a/wadsrc/static/zscript/games/duke/actors/bolt.zs +++ b/wadsrc/static/zscript/games/duke/actors/bolt.zs @@ -2,14 +2,14 @@ class DukeBolt1 : DukeActor { default { - yint 0; - statnum STAT_STANDABLE; SpriteSet "BOLT1", "BOLT2", "BOLT3", "BOLT4"; spritesetindex 0; } override void Initialize() { self.temp_pos.XY = self.scale; + self.yint = 0; + self.ChangeStat(STAT_STANDABLE); } override void Tick() diff --git a/wadsrc/static/zscript/games/duke/actors/canwithsomething.zs b/wadsrc/static/zscript/games/duke/actors/canwithsomething.zs index 17ea473be..3ba49dae6 100644 --- a/wadsrc/static/zscript/games/duke/actors/canwithsomething.zs +++ b/wadsrc/static/zscript/games/duke/actors/canwithsomething.zs @@ -3,9 +3,6 @@ class DukeCanWithSomething : DukeActor { Default { - extra 0; - clipdist 18; - statnum STAT_ZOMBIEACTOR; pic "CANWITHSOMETHING"; } @@ -15,6 +12,9 @@ class DukeCanWithSomething : DukeActor self.scale = (0.5, 0.5); self.makeitfall(); self.cstat = CSTAT_SPRITE_BLOCK_ALL | randomXFlip(); + self.extra = 0; + self.clipdist = 18; + self.ChangeStat(STAT_ZOMBIEACTOR); } diff --git a/wadsrc/static/zscript/games/duke/actors/crack.zs b/wadsrc/static/zscript/games/duke/actors/crack.zs index ccf983423..9669956f5 100644 --- a/wadsrc/static/zscript/games/duke/actors/crack.zs +++ b/wadsrc/static/zscript/games/duke/actors/crack.zs @@ -3,7 +3,6 @@ class DukeCrack : DukeActor { default { - statnum STAT_STANDABLE; pic "CRACK1"; } @@ -23,6 +22,7 @@ class DukeCrack : DukeActor self.ownerActor = self; self.vel.X = 0.5; self.DoMove(CLIPMASK0); + self.ChangeStat(STAT_STANDABLE); } override void Tick() diff --git a/wadsrc/static/zscript/games/duke/actors/doorshock.zs b/wadsrc/static/zscript/games/duke/actors/doorshock.zs index 8a62dc06a..71eca82be 100644 --- a/wadsrc/static/zscript/games/duke/actors/doorshock.zs +++ b/wadsrc/static/zscript/games/duke/actors/doorshock.zs @@ -2,13 +2,14 @@ class DukeDoorShock : DukeActor { default { - shade -12; - statnum STAT_STANDABLE; + pic "DOORSHOCK"; } override void Initialize() { self.cstat |= CSTAT_SPRITE_BLOCK_ALL; + self.shade = -12; + self.ChangeStat(STAT_STANDABLE); } diff --git a/wadsrc/static/zscript/games/duke/actors/ducktarget.zs b/wadsrc/static/zscript/games/duke/actors/ducktarget.zs index 28eaddcc6..3fa9d85ef 100644 --- a/wadsrc/static/zscript/games/duke/actors/ducktarget.zs +++ b/wadsrc/static/zscript/games/duke/actors/ducktarget.zs @@ -3,13 +3,13 @@ class DukeLetter : DukeActor default { pic "LETTER"; - statnum STAT_ACTOR; - extra 1; } override void Initialize() { self.cstat |= CSTAT_SPRITE_BLOCK_ALL; + self.ChangeStat(STAT_ACTOR); + self.extra = 1; } } diff --git a/wadsrc/static/zscript/games/duke/actors/emptybike.zs b/wadsrc/static/zscript/games/duke/actors/emptybike.zs index f26b75dbd..403e0692d 100644 --- a/wadsrc/static/zscript/games/duke/actors/emptybike.zs +++ b/wadsrc/static/zscript/games/duke/actors/emptybike.zs @@ -4,10 +4,6 @@ class RedneckEmptyBike : DukeActor default { pic "EMPTYBIKE"; - scaleX 0.28125; - scaleY 0.28125; - lotag 1; - statnum STAT_ACTOR; } override void Initialize() @@ -18,10 +14,13 @@ class RedneckEmptyBike : DukeActor self.ChangeStat(STAT_MISC); return; } + self.lotag = 1; + self.Scale = (0.28125, 0.28125); self.pal = 0; self.setClipDistFromTile(); self.saved_ammo = 100; self.cstat = CSTAT_SPRITE_BLOCK_ALL; + self.ChangeStat(STAT_ACTOR); } override void Tick() @@ -53,10 +52,6 @@ class RedneckEmptyBoat : DukeActor default { pic "EMPTYBOAT"; - scaleX 0.5; - scaleY 0.5; - lotag 1; - statnum STAT_ACTOR; } override void Initialize() @@ -67,10 +62,13 @@ class RedneckEmptyBoat : DukeActor self.ChangeStat(STAT_MISC); return; } + self.lotag = 1; + self.Scale = (0.5, 0.5); self.pal = 0; self.setClipDistFromTile(); self.saved_ammo = 20; self.cstat = CSTAT_SPRITE_BLOCK_ALL; + self.ChangeStat(STAT_ACTOR); } diff --git a/wadsrc/static/zscript/games/duke/actors/fireext.zs b/wadsrc/static/zscript/games/duke/actors/fireext.zs index 04ce4ecc0..f6a47e9bd 100644 --- a/wadsrc/static/zscript/games/duke/actors/fireext.zs +++ b/wadsrc/static/zscript/games/duke/actors/fireext.zs @@ -3,7 +3,6 @@ class DukeFireext : DukeActor { default { - statnum STAT_STANDABLE; pic "FIREEXT"; } @@ -23,6 +22,7 @@ class DukeFireext : DukeActor self.ownerActor = self; self.vel.X = 0.5; self.DoMove(CLIPMASK0); + self.ChangeStat(STAT_STANDABLE); } override void Tick() diff --git a/wadsrc/static/zscript/games/duke/actors/frameeffect.zs b/wadsrc/static/zscript/games/duke/actors/frameeffect.zs index 82c526eec..c5f0b4fc0 100644 --- a/wadsrc/static/zscript/games/duke/actors/frameeffect.zs +++ b/wadsrc/static/zscript/games/duke/actors/frameeffect.zs @@ -2,7 +2,6 @@ class DukeFrameEffect : DukeActor { default { - statnum STAT_MISC; Pic "SMALLSMOKE"; } @@ -17,6 +16,7 @@ class DukeFrameEffect : DukeActor { self.Scale = (0, 0); } + self.ChangeStat(STAT_MISC); } override void Tick() diff --git a/wadsrc/static/zscript/games/duke/actors/gamblingmachine.zs b/wadsrc/static/zscript/games/duke/actors/gamblingmachine.zs index f43e4f2b4..a57fa0b8d 100644 --- a/wadsrc/static/zscript/games/duke/actors/gamblingmachine.zs +++ b/wadsrc/static/zscript/games/duke/actors/gamblingmachine.zs @@ -3,10 +3,6 @@ class RedneckGamblingMachine : DukeActor { default { - statnum STAT_ACTOR; - lotag 1; - clipdist 0; - extra 0; spriteset "GAMBLINGMACHINE2", "GAMBLINGMACHINE3", "GAMBLINGMACHINE4", "GAMBLINGMACHINE5", "GAMBLINGMACHINE6", "GAMBLINGMACHINE7", "GAMBLINGMACHINE8", "GAMBLINGMACHINEBROKE"; spritesetindex 3; RedneckGamblingMachine.winsound "COW3"; @@ -16,6 +12,14 @@ class RedneckGamblingMachine : DukeActor meta Sound winsound; property winsound: winsound; + override void Initialize() + { + self.lotag = 1; + self.clipdist = 0; + self.extra = 0; + self.ChangeStat(STAT_ACTOR); + } + override void Tick() { int spriteindex; diff --git a/wadsrc/static/zscript/games/duke/actors/helicopt.zs b/wadsrc/static/zscript/games/duke/actors/helicopt.zs index 9394f182d..b9c9ea9ef 100644 --- a/wadsrc/static/zscript/games/duke/actors/helicopt.zs +++ b/wadsrc/static/zscript/games/duke/actors/helicopt.zs @@ -2,17 +2,17 @@ class DukeCar : DukeActor { default { - extra 1; - clipdist 32; pic "DUKECAR"; - statnum STAT_ACTOR; } override void Initialize() { + self.extra = 1; + self.clipdist = 32; self.vel.X = 292 / 16.; self.vel.Z = 360 / 256.; self.cstat = CSTAT_SPRITE_BLOCK_ALL; + self.ChangeStat(STAT_ACTOR); } override void Tick() diff --git a/wadsrc/static/zscript/games/duke/actors/lumberblade.zs b/wadsrc/static/zscript/games/duke/actors/lumberblade.zs index a265365e5..2c9f00605 100644 --- a/wadsrc/static/zscript/games/duke/actors/lumberblade.zs +++ b/wadsrc/static/zscript/games/duke/actors/lumberblade.zs @@ -3,10 +3,14 @@ class RedneckLumberBlade : DukeActor { default { - statnum STAT_LUMBERMILL; - extra 0; spriteset "LUMBERBLADE1", "LUMBERBLADE"; } + + override void Initialize() + { + self.ChangeStat(STAT_LUMBERMILL); + self.extra = 0; + } override void Tick() { @@ -60,13 +64,13 @@ Class RedneckKegHolder : DukeActor { default { - statnum STAT_LUMBERMILL; pic "KEGHOLDER"; } override void Initialize() { self.cstat = CSTAT_SPRITE_INVISIBLE; + self.ChangeStat(STAT_LUMBERMILL); } override bool OnUse(DukePlayer user) diff --git a/wadsrc/static/zscript/games/duke/actors/masterswitch.zs b/wadsrc/static/zscript/games/duke/actors/masterswitch.zs index e51aa0909..f05dc64a2 100644 --- a/wadsrc/static/zscript/games/duke/actors/masterswitch.zs +++ b/wadsrc/static/zscript/games/duke/actors/masterswitch.zs @@ -1,14 +1,10 @@ class DukeMasterSwitch : DukeActor { - default - { - statnum STAT_STANDABLE; - } - override void Initialize() { self.cstat = CSTAT_SPRITE_INVISIBLE; self.yint = 0; + self.ChangeStat(STAT_STANDABLE); } override void Tick() diff --git a/wadsrc/static/zscript/games/duke/actors/mortar.zs b/wadsrc/static/zscript/games/duke/actors/mortar.zs index 21c9a1115..9d6d87c96 100644 --- a/wadsrc/static/zscript/games/duke/actors/mortar.zs +++ b/wadsrc/static/zscript/games/duke/actors/mortar.zs @@ -107,10 +107,10 @@ class DukeMortar : DukeActor { self.temp_data[4]++; - DukePlayer p; - double xx; - - [p,xx] = self.findplayer(); + DukePlayer p; + double xx; + + [p,xx] = self.findplayer(); if (self.temp_data[4] == 2) { diff --git a/wadsrc/static/zscript/games/duke/actors/nukebutton.zs b/wadsrc/static/zscript/games/duke/actors/nukebutton.zs index 8d2fd4c0b..a8be11b52 100644 --- a/wadsrc/static/zscript/games/duke/actors/nukebutton.zs +++ b/wadsrc/static/zscript/games/duke/actors/nukebutton.zs @@ -4,7 +4,11 @@ class DukeNukeButton : DukeActor default { spriteset "NUKEBUTTON", "NUKEBUTTON1", "NUKEBUTTON2", "NUKEBUTTON3"; - statnum STAT_MISC; + } + + override void Initialize() + { + self.ChangeStat(STAT_MISC); } override void Tick() diff --git a/wadsrc/static/zscript/games/duke/actors/ooz.zs b/wadsrc/static/zscript/games/duke/actors/ooz.zs index 8fc58f747..f370304aa 100644 --- a/wadsrc/static/zscript/games/duke/actors/ooz.zs +++ b/wadsrc/static/zscript/games/duke/actors/ooz.zs @@ -2,8 +2,6 @@ class DukeOoz : DukeActor { default { - shade -12; - statnum STAT_ACTOR; pic "OOZ"; } @@ -24,6 +22,7 @@ class DukeOoz : DukeActor self.scale = (max(0., 0.390625 - z * 0.5), z); self.cstat |= randomXFlip(); + self.ChangeStat(STAT_ACTOR); } override void Tick() diff --git a/wadsrc/static/zscript/games/duke/actors/oozfilter.zs b/wadsrc/static/zscript/games/duke/actors/oozfilter.zs index 2f72e620d..41ed09954 100644 --- a/wadsrc/static/zscript/games/duke/actors/oozfilter.zs +++ b/wadsrc/static/zscript/games/duke/actors/oozfilter.zs @@ -3,7 +3,6 @@ class DukeOozFilter : DukeActor { default { - statnum STAT_STANDABLE; spriteset "OOZFILTER"; } @@ -18,6 +17,7 @@ class DukeOozFilter : DukeActor else self.cstat = CSTAT_SPRITE_BLOCK_ALL; self.extra = gs.impact_damage << 2; self.ownerActor = self; + self.ChangeStat(STAT_STANDABLE); } override void Tick() diff --git a/wadsrc/static/zscript/games/duke/actors/paper.zs b/wadsrc/static/zscript/games/duke/actors/paper.zs index ec89d89c1..4280998f2 100644 --- a/wadsrc/static/zscript/games/duke/actors/paper.zs +++ b/wadsrc/static/zscript/games/duke/actors/paper.zs @@ -3,17 +3,16 @@ class DukeMoney : DukeActor { default { - statnum STAT_MISC; spriteset "MONEY", "MONEY1"; - ScaleX 0.125; - ScaleY 0.125; } override void Initialize() { + self.scale = (0.125, 0.125); self.temp_data[0] = random(0, 2047); self.cstat = self.randomFlip(); self.angle = frandom(0, 360); + self.ChangeStat(STAT_MISC); } override void Tick() diff --git a/wadsrc/static/zscript/games/duke/actors/piano.zs b/wadsrc/static/zscript/games/duke/actors/piano.zs index 5a6f333fb..b95836452 100644 --- a/wadsrc/static/zscript/games/duke/actors/piano.zs +++ b/wadsrc/static/zscript/games/duke/actors/piano.zs @@ -2,12 +2,16 @@ class RedneckPiano : DukeActor { default { - lotag 5; - clipdist 0; - statnum STAT_ACTOR; spriteset "PIANO", "PIANOBUST"; } + override void Initialize() + { + self.lotag = 5; + self.clipdist = 0; + self.ChangeStat(STAT_ACTOR); + } + override void Tick() { if (self.lotag == 5) diff --git a/wadsrc/static/zscript/games/duke/actors/pigback.zs b/wadsrc/static/zscript/games/duke/actors/pigback.zs index 60af717a1..3a9484977 100644 --- a/wadsrc/static/zscript/games/duke/actors/pigback.zs +++ b/wadsrc/static/zscript/games/duke/actors/pigback.zs @@ -4,16 +4,15 @@ class RedneckPigDisplay : DukeActor default { spriteset "PIGBACK", "PIGBACK1", "PIGBACK2", "PIGBACK3", "PIGBACK4"; - ScaleX 0.25; - ScaleY 0.25; - clipdist 0; - extra 0; - statnum STAT_ACTOR; } override void Initialize() { cstat = 0; + self.scale = (0.25, 0.25); + self.clipdist = 0; + self.extra = 0; + self.ChangeStat(STAT_ACTOR); } override void Tick() diff --git a/wadsrc/static/zscript/games/duke/actors/queball.zs b/wadsrc/static/zscript/games/duke/actors/queball.zs index 3b275b1c7..43c5d2391 100644 --- a/wadsrc/static/zscript/games/duke/actors/queball.zs +++ b/wadsrc/static/zscript/games/duke/actors/queball.zs @@ -7,14 +7,14 @@ class DukeQueball : DukeActor { default { - clipdist 2; pic "QUEBALL"; - statnum STAT_ZOMBIEACTOR; } override void Initialize() { + self.clipdist = 2; self.cstat = CSTAT_SPRITE_BLOCK_HITSCAN; + self.ChangeStat(STAT_ZOMBIEACTOR); } override void Tick() diff --git a/wadsrc/static/zscript/games/duke/actors/rabbitspawner.zs b/wadsrc/static/zscript/games/duke/actors/rabbitspawner.zs index 75a7bb28f..19b84f827 100644 --- a/wadsrc/static/zscript/games/duke/actors/rabbitspawner.zs +++ b/wadsrc/static/zscript/games/duke/actors/rabbitspawner.zs @@ -1,14 +1,10 @@ class RedneckRabbitSpawner : DukeActor { - default - { - statnum STAT_FX; - extra 0; - } - override void Initialize() { self.cstat = CSTAT_SPRITE_INVISIBLE; + self.extra = 0; + self.ChangeStat(STAT_FX); } override void Tick() diff --git a/wadsrc/static/zscript/games/duke/actors/rat.zs b/wadsrc/static/zscript/games/duke/actors/rat.zs index 6092e9f1f..7423e88d0 100644 --- a/wadsrc/static/zscript/games/duke/actors/rat.zs +++ b/wadsrc/static/zscript/games/duke/actors/rat.zs @@ -5,9 +5,6 @@ class DukeRat : DukeActor default { pic "RAT"; - clipdist 10; - scaleX 0.75; - scaleY 0.75; } override void Initialize() @@ -32,8 +29,9 @@ class DukeRat : DukeActor if (Raze.isRR()) self.shade = self.ownerActor.shade; } else self.ChangeStat(STAT_ZOMBIEACTOR); - } + self. clipdist = 10; + self. scale = (0.75, 0.75); } override void Tick() diff --git a/wadsrc/static/zscript/games/duke/actors/reactor.zs b/wadsrc/static/zscript/games/duke/actors/reactor.zs index f8c21af9c..a821e8e03 100644 --- a/wadsrc/static/zscript/games/duke/actors/reactor.zs +++ b/wadsrc/static/zscript/games/duke/actors/reactor.zs @@ -3,9 +3,6 @@ class DukeReactor : DukeActor default { spriteset "REACTOR", "REACTORBURNT"; - statnum STAT_ZOMBIEACTOR; - shade -17; - pal 0; } @@ -13,11 +10,14 @@ class DukeReactor : DukeActor { self.extra = gs.impact_damage; self.cstat |= CSTAT_SPRITE_BLOCK_ALL; // Make it hitable + self.shade = -17; + self.pal = 0; if (ud.multimode < 2 && self.pal != 0) { self.scale = (0, 0); self.ChangeStat(STAT_MISC); } + else self.ChangeStat(STAT_ZOMBIEACTOR); } diff --git a/wadsrc/static/zscript/games/duke/actors/respawncontroller.zs b/wadsrc/static/zscript/games/duke/actors/respawncontroller.zs index 3b7f138fa..c152c1b67 100644 --- a/wadsrc/static/zscript/games/duke/actors/respawncontroller.zs +++ b/wadsrc/static/zscript/games/duke/actors/respawncontroller.zs @@ -1,11 +1,5 @@ class DukeRespawnController : DukeActor { - default - { - statnum STAT_FX; - extra 66 - 13; - } - override void Initialize() { if (ud.multimode < 2 && self.pal == 1) @@ -14,7 +8,11 @@ class DukeRespawnController : DukeActor self.ChangeStat(STAT_MISC); } else + { self.cstat = CSTAT_SPRITE_INVISIBLE; + self.extra = 66 - 13; + self.ChangeStat(STAT_FX); + } } override void Tick() diff --git a/wadsrc/static/zscript/games/duke/actors/respawnmarker.zs b/wadsrc/static/zscript/games/duke/actors/respawnmarker.zs index 2bdc6bae4..f0ab5aa08 100644 --- a/wadsrc/static/zscript/games/duke/actors/respawnmarker.zs +++ b/wadsrc/static/zscript/games/duke/actors/respawnmarker.zs @@ -5,13 +5,12 @@ class DukeRespawnMarker : DukeActor default { spriteset "RESPAWNMARKERRED", "RESPAWNMARKERYELLOW", "RESPAWNMARKERGREEN"; - scalex 0.375; - scaley 0.375; } override void Initialize() { if (!self.mapSpawned && ownerActor != null) self.pos.Z = ownerActor.floorZ; + self.scale = (0.375, 0.375); } override void Tick() diff --git a/wadsrc/static/zscript/games/duke/actors/rrcactus.zs b/wadsrc/static/zscript/games/duke/actors/rrcactus.zs index 286c4f2eb..562bd2971 100644 --- a/wadsrc/static/zscript/games/duke/actors/rrcactus.zs +++ b/wadsrc/static/zscript/games/duke/actors/rrcactus.zs @@ -3,7 +3,6 @@ class RedneckCactusLargeYellow : DukeActor { default { - statnum STAT_ACTOR; SpriteSet "CACTUSLARGEYELLOW"; } @@ -16,6 +15,7 @@ class RedneckCactusLargeYellow : DukeActor p.pals = Color(32, 32, 0, 0); p.actor.PlayActorSound("PLAYER_LONGTERM_PAIN"); } + self.ChangeStat(STAT_ACTOR); } } diff --git a/wadsrc/static/zscript/games/duke/actors/rrteleport.zs b/wadsrc/static/zscript/games/duke/actors/rrteleport.zs index 324433d24..dd30a9654 100644 --- a/wadsrc/static/zscript/games/duke/actors/rrteleport.zs +++ b/wadsrc/static/zscript/games/duke/actors/rrteleport.zs @@ -4,10 +4,13 @@ class RedneckTeleportDest : DukeActor default { pic "RRTELEPORTDEST"; - statnum STAT_TELEPORT; - ScaleX 1; - ScaleY 1; - clipdist 16; + } + + override void Initialize() + { + self. Scale = (1, 1); + self.clipdist = 16; + self.ChangeStat(STAT_TELEPORT); } } diff --git a/wadsrc/static/zscript/games/duke/actors/scrap.zs b/wadsrc/static/zscript/games/duke/actors/scrap.zs index eeb0e8299..42112a155 100644 --- a/wadsrc/static/zscript/games/duke/actors/scrap.zs +++ b/wadsrc/static/zscript/games/duke/actors/scrap.zs @@ -1,11 +1,6 @@ class DukeScrap : DukeActor { - default - { - statnum STAT_MISC; - } - enum EScrap { Scrap6 = 0, diff --git a/wadsrc/static/zscript/games/duke/actors/shell.zs b/wadsrc/static/zscript/games/duke/actors/shell.zs index cca672c77..10e30eb84 100644 --- a/wadsrc/static/zscript/games/duke/actors/shell.zs +++ b/wadsrc/static/zscript/games/duke/actors/shell.zs @@ -3,8 +3,6 @@ class DukeShell : DukeActor { default { - shade -8; - statnum STAT_MISC; spriteset "SHELL", "SHELL1"; } @@ -49,6 +47,8 @@ class DukeShell : DukeActor double scale = Raze.isRR() && isshell ? 0.03125 : 0.0625; self.scale = (scale, scale); } + self.shade = -8; + self.ChangeStat(STAT_MISC); } override void Initialize() diff --git a/wadsrc/static/zscript/games/duke/actors/soundcontroller.zs b/wadsrc/static/zscript/games/duke/actors/soundcontroller.zs index 100b59174..49009b784 100644 --- a/wadsrc/static/zscript/games/duke/actors/soundcontroller.zs +++ b/wadsrc/static/zscript/games/duke/actors/soundcontroller.zs @@ -2,11 +2,6 @@ class DukeSoundController : DukeActor { - default - { - statnum STAT_FX; - } - override void Initialize() { if (ud.multimode < 2 && self.pal == 1) @@ -16,6 +11,7 @@ class DukeSoundController : DukeActor return; } self.cstat = CSTAT_SPRITE_INVISIBLE; + self.ChangeStat(STAT_FX); } override void Tick() diff --git a/wadsrc/static/zscript/games/duke/actors/tongue.zs b/wadsrc/static/zscript/games/duke/actors/tongue.zs index 239f01bfb..8a47c690e 100644 --- a/wadsrc/static/zscript/games/duke/actors/tongue.zs +++ b/wadsrc/static/zscript/games/duke/actors/tongue.zs @@ -3,7 +3,6 @@ class DukeTongue : DukeActor { default { - statnum STAT_PROJECTILE; pic "TONGUE"; } @@ -14,6 +13,7 @@ class DukeTongue : DukeActor self.pos.Z -= gs.playerheight; self.vel.Z = 1 - frandom(0, 2); self.vel.X = 4 - frandom(0, 8); + self.ChangeStat(STAT_PROJECTILE); } override void Tick() @@ -65,7 +65,6 @@ class DukeInnerJaw : DukeActor { default { - statnum STAT_MISC; pic "InnerJaw"; } @@ -86,6 +85,7 @@ class DukeInnerJaw : DukeActor { self.Destroy(); } + self.ChangeStat(STAT_MISC); } } diff --git a/wadsrc/static/zscript/games/duke/actors/touchplate.zs b/wadsrc/static/zscript/games/duke/actors/touchplate.zs index 567c5467f..895843d34 100644 --- a/wadsrc/static/zscript/games/duke/actors/touchplate.zs +++ b/wadsrc/static/zscript/games/duke/actors/touchplate.zs @@ -1,11 +1,6 @@ class DukeTouchPlate : DukeActor { - default - { - statnum STAT_STANDABLE; - } - private bool checkspawn() { if (!Raze.isWorldTour()) @@ -36,6 +31,7 @@ class DukeTouchPlate : DukeActor return; } self.cstat = CSTAT_SPRITE_INVISIBLE; + self.ChangeStat(STAT_STANDABLE); } diff --git a/wadsrc/static/zscript/games/duke/actors/trash.zs b/wadsrc/static/zscript/games/duke/actors/trash.zs index 8f1ea9221..624773563 100644 --- a/wadsrc/static/zscript/games/duke/actors/trash.zs +++ b/wadsrc/static/zscript/games/duke/actors/trash.zs @@ -2,15 +2,14 @@ class DukeTrash : DukeActor { default { - ScaleX 0.375; - ScaleY 0.375; - statnum STAT_STANDABLE; pic "TRASH"; } override void Initialize() { + self.Scale = (0.375, 0.375); self.angle = frandom(0, 360); + self.ChangeStat(STAT_STANDABLE); } override void Tick() diff --git a/wadsrc/static/zscript/games/duke/actors/tripbomb.zs b/wadsrc/static/zscript/games/duke/actors/tripbomb.zs index ad613a9f8..d8a1dc986 100644 --- a/wadsrc/static/zscript/games/duke/actors/tripbomb.zs +++ b/wadsrc/static/zscript/games/duke/actors/tripbomb.zs @@ -224,7 +224,6 @@ class DukeLaserLine : DukeActor { default { - statnum STAT_MISC; pic "LASERLINE"; } diff --git a/wadsrc/static/zscript/games/duke/actors/viewscreen.zs b/wadsrc/static/zscript/games/duke/actors/viewscreen.zs index b33e3f7ae..5a2962526 100644 --- a/wadsrc/static/zscript/games/duke/actors/viewscreen.zs +++ b/wadsrc/static/zscript/games/duke/actors/viewscreen.zs @@ -2,9 +2,6 @@ class DukeViewscreen : DukeActor { default { - lotag 1; - extra 1; - statnum STAT_STANDABLE; spriteset "VIEWSCREEN", "STATIC", "VIEWSCR"; } @@ -13,6 +10,9 @@ class DukeViewscreen : DukeActor override void Initialize() { self.ownerActor = self; + self.lotag = 1; + self.extra = 1; + self.ChangeStat(STAT_STANDABLE); } override void Tick() @@ -93,8 +93,6 @@ class DukeCamera : DukeActor default { pic "CAMERA1"; - statnum STAT_ACTOR; - extra 1; } override void Initialize() @@ -109,6 +107,8 @@ class DukeCamera : DukeActor return; } else self.pal = 0; + self.extra = 1; + self.ChangeStat(STAT_ACTOR); } override void Tick() diff --git a/wadsrc/static/zscript/games/duke/actors/waterdrip.zs b/wadsrc/static/zscript/games/duke/actors/waterdrip.zs index e26dcf629..843b19d90 100644 --- a/wadsrc/static/zscript/games/duke/actors/waterdrip.zs +++ b/wadsrc/static/zscript/games/duke/actors/waterdrip.zs @@ -2,9 +2,6 @@ class DukeWaterDrip : DukeActor { default { - ScaleX 0.375; - ScaleY 0.375; - statnum STAT_STANDABLE; pic "WATERDRIP"; } @@ -30,6 +27,8 @@ class DukeWaterDrip : DukeActor self.temp_pos.Z = self.pos.Z; self.temp_data[1] = random(0, 127); } + self.Scale = (0.375, 0.375); + self.ChangeStat(STAT_STANDABLE); } override void Tick() diff --git a/wadsrc/static/zscript/games/duke/actors/waterfountain.zs b/wadsrc/static/zscript/games/duke/actors/waterfountain.zs index d9e236fcf..6a88931df 100644 --- a/wadsrc/static/zscript/games/duke/actors/waterfountain.zs +++ b/wadsrc/static/zscript/games/duke/actors/waterfountain.zs @@ -6,7 +6,6 @@ class DukeWaterFountain : DukeActor default { spriteset "WATERFOUNTAIN", "WATERFOUNTAIN1", "WATERFOUNTAIN2", "WATERFOUNTAIN3", "WATERFOUNTAINBROKE"; - statnum STAT_STANDABLE; } //--------------------------------------------------------------------------- @@ -21,6 +20,7 @@ class DukeWaterFountain : DukeActor self.lotag = 1; self.cstat = CSTAT_SPRITE_BLOCK_ALL; // Make it hitable self.extra = 1; + self.ChangeStat(STAT_STANDABLE); } override void Tick() @@ -99,9 +99,13 @@ class DukeWaterFountainBroke : DukeActor default { pic "WATERFOUNTAINBROKE"; - statnum STAT_STANDABLE; } + override void Initialize() + { + self.ChangeStat(STAT_STANDABLE); + } + override void onHit(DukeActor hitter) { self.PlayActorSound("GLASS_BREAKING"); diff --git a/wadsrc/static/zscript/games/duke/actors/watersplash.zs b/wadsrc/static/zscript/games/duke/actors/watersplash.zs index a436c9c5f..9dede34ab 100644 --- a/wadsrc/static/zscript/games/duke/actors/watersplash.zs +++ b/wadsrc/static/zscript/games/duke/actors/watersplash.zs @@ -2,8 +2,6 @@ class DukeWatersplash : DukeActor { default { - shade -16; - statnum STAT_MISC; spriteset "WATERSPLASH2", "WATERSPLASH2A", "WATERSPLASH2B", "WATERSPLASH2C", "WATERSPLASH2D"; } @@ -23,6 +21,7 @@ class DukeWatersplash : DukeActor self.scale = (s, s); } + self.shade = -16; self.cstat |= CSTAT_SPRITE_YCENTER; if (Owner) {