From e27dc5113371f206c8ef73c55d2be73c6f8169aa Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Sat, 31 Dec 2022 12:03:10 +0100 Subject: [PATCH] - moved all of RR's enemies to a subfolder. --- .../redneck.ridesagain/rmapinfo.spawnclasses | 3 +- .../filter/redneck/rmapinfo.spawnclasses | 3 - wadsrc/static/zscript.txt | 22 ++- .../zscript/games/duke/actors/billyray.zs | 62 ------- .../zscript/games/duke/actors/controllers.zs | 32 ---- .../games/duke/actors/redneckenemies.zs | 155 ------------------ .../duke/actors/redneckenemies/billyray.zs | 40 +++++ .../games/duke/actors/redneckenemies/bubba.zs | 18 ++ .../duke/actors/{ => redneckenemies}/coot.zs | 36 +--- .../duke/actors/{ => redneckenemies}/cow.zs | 5 +- .../duke/actors/redneckenemies/destructo.zs | 39 +++++ .../games/duke/actors/redneckenemies/dog.zs | 17 ++ .../actors/redneckenemies/enemy_common.zs | 3 + .../games/duke/actors/redneckenemies/gator.zs | 16 ++ .../duke/actors/{ => redneckenemies}/hen.zs | 19 +-- .../games/duke/actors/redneckenemies/hulk.zs | 43 +++++ .../actors/{ => redneckenemies}/minion.zs | 27 ++- .../duke/actors/redneckenemies/mosquito.zs | 26 +++ .../duke/actors/{ => redneckenemies}/pig.zs | 16 +- .../duke/actors/redneckenemies/sheriff.zs | 27 +++ .../duke/actors/redneckenemies/shitboss.zs | 24 +++ .../duke/actors/redneckenemies/tornado.zs | 18 ++ 22 files changed, 329 insertions(+), 322 deletions(-) delete mode 100644 wadsrc/static/zscript/games/duke/actors/billyray.zs create mode 100644 wadsrc/static/zscript/games/duke/actors/redneckenemies/billyray.zs create mode 100644 wadsrc/static/zscript/games/duke/actors/redneckenemies/bubba.zs rename wadsrc/static/zscript/games/duke/actors/{ => redneckenemies}/coot.zs (55%) rename wadsrc/static/zscript/games/duke/actors/{ => redneckenemies}/cow.zs (76%) create mode 100644 wadsrc/static/zscript/games/duke/actors/redneckenemies/destructo.zs create mode 100644 wadsrc/static/zscript/games/duke/actors/redneckenemies/dog.zs create mode 100644 wadsrc/static/zscript/games/duke/actors/redneckenemies/enemy_common.zs create mode 100644 wadsrc/static/zscript/games/duke/actors/redneckenemies/gator.zs rename wadsrc/static/zscript/games/duke/actors/{ => redneckenemies}/hen.zs (57%) create mode 100644 wadsrc/static/zscript/games/duke/actors/redneckenemies/hulk.zs rename wadsrc/static/zscript/games/duke/actors/{ => redneckenemies}/minion.zs (61%) create mode 100644 wadsrc/static/zscript/games/duke/actors/redneckenemies/mosquito.zs rename wadsrc/static/zscript/games/duke/actors/{ => redneckenemies}/pig.zs (61%) create mode 100644 wadsrc/static/zscript/games/duke/actors/redneckenemies/sheriff.zs create mode 100644 wadsrc/static/zscript/games/duke/actors/redneckenemies/shitboss.zs create mode 100644 wadsrc/static/zscript/games/duke/actors/redneckenemies/tornado.zs diff --git a/wadsrc/static/filter/redneck.ridesagain/rmapinfo.spawnclasses b/wadsrc/static/filter/redneck.ridesagain/rmapinfo.spawnclasses index 20e43ea93..5a4fa69fa 100644 --- a/wadsrc/static/filter/redneck.ridesagain/rmapinfo.spawnclasses +++ b/wadsrc/static/filter/redneck.ridesagain/rmapinfo.spawnclasses @@ -55,6 +55,7 @@ spawnclasses 8704 = RedneckJoe9000, noskill 7220 = RedneckEmptyBike, noskill 7233 = RedneckEmptyBoat, noskill + 4352 = RedneckRASheriff 7636 = DukeGenericDestructible, noskill, "OLDPHOTO0", "OLDPHOTO0BROKE", "VENT_BUST" 7638 = DukeGenericDestructible, noskill, "OLDPHOTO1", "OLDPHOTO1BROKE", "VENT_BUST" @@ -166,8 +167,6 @@ spawnclasses // stuff below uses CON - 5376 = RedneckRACoot - 5377 = RedneckRACootStayput 7280 = RedneckRabbit 5995 = RedneckBiker 5890 = RedneckBikerB diff --git a/wadsrc/static/filter/redneck/rmapinfo.spawnclasses b/wadsrc/static/filter/redneck/rmapinfo.spawnclasses index dbb008c97..4724f60ce 100644 --- a/wadsrc/static/filter/redneck/rmapinfo.spawnclasses +++ b/wadsrc/static/filter/redneck/rmapinfo.spawnclasses @@ -337,7 +337,6 @@ spawnclasses 4861 = RedneckHen - 4862 = RedneckHenStayput 5376 = RedneckCoot 5377 = RedneckCootStayput 5317 = RedneckCow @@ -345,8 +344,6 @@ spawnclasses 4946 = RedneckPigStayput 4162 = RedneckBillyRay 4163 = RedneckBillyRayStayput - 4147 = RedneckBillyRayCock - 4249 = RedneckBillyRaySniper 5120 = RedneckMinion 5121 = RedneckMinionStayput 4504 = RedneckBubbaStand diff --git a/wadsrc/static/zscript.txt b/wadsrc/static/zscript.txt index 35ac499ff..e33d88c18 100644 --- a/wadsrc/static/zscript.txt +++ b/wadsrc/static/zscript.txt @@ -85,12 +85,6 @@ version "4.10" #include "zscript/games/duke/actors/bowling.zs" #include "zscript/games/duke/actors/rabbitspawner.zs" -#include "zscript/games/duke/actors/coot.zs" -#include "zscript/games/duke/actors/billyray.zs" -#include "zscript/games/duke/actors/minion.zs" -#include "zscript/games/duke/actors/hen.zs" -#include "zscript/games/duke/actors/cow.zs" -#include "zscript/games/duke/actors/pig.zs" #include "zscript/games/duke/actors/rabbit.zs" #include "zscript/games/duke/actors/nwinter.zs" @@ -184,6 +178,22 @@ version "4.10" #include "zscript/games/duke/actors/redneckcstuff/rrcactus.zs" #include "zscript/games/duke/actors/redneckcstuff/rrteleport.zs" +#include "zscript/games/duke/actors/redneckenemies/enemy_common.zs" +#include "zscript/games/duke/actors/redneckenemies/billyray.zs" +#include "zscript/games/duke/actors/redneckenemies/bubba.zs" +#include "zscript/games/duke/actors/redneckenemies/coot.zs" +#include "zscript/games/duke/actors/redneckenemies/cow.zs" +#include "zscript/games/duke/actors/redneckenemies/destructo.zs" +#include "zscript/games/duke/actors/redneckenemies/dog.zs" +#include "zscript/games/duke/actors/redneckenemies/gator.zs" +#include "zscript/games/duke/actors/redneckenemies/hen.zs" +#include "zscript/games/duke/actors/redneckenemies/hulk.zs" +#include "zscript/games/duke/actors/redneckenemies/minion.zs" +#include "zscript/games/duke/actors/redneckenemies/mosquito.zs" +#include "zscript/games/duke/actors/redneckenemies/pig.zs" +#include "zscript/games/duke/actors/redneckenemies/sheriff.zs" +#include "zscript/games/duke/actors/redneckenemies/shitboss.zs" +#include "zscript/games/duke/actors/redneckenemies/tornado.zs" #include "zscript/games/duke/actors/redneckenemies/vixen.zs" #include "zscript/games/duke/actors/redneckweapons/boatcannon.zs" diff --git a/wadsrc/static/zscript/games/duke/actors/billyray.zs b/wadsrc/static/zscript/games/duke/actors/billyray.zs deleted file mode 100644 index 2dddb61fa..000000000 --- a/wadsrc/static/zscript/games/duke/actors/billyray.zs +++ /dev/null @@ -1,62 +0,0 @@ - -class RedneckBillyRay : DukeActor -{ - default - { - pic "BILLYRAY"; - +INTERNAL_BADGUY; - +KILLCOUNT; - } - - override void PlayFTASound() - { - self.PlayActorSound("BR_RECOG"); - } - - override void Initialize() - { - self.scale = (0.390625, 0.328125); - self.setClipDistFromTile(); - } -} - -class RedneckBillyRayStayput: RedneckBillyRay -{ - default - { - pic "BILLYRAYSTAYPUT"; - } - - override void PlayFTASound() - { - } - - override void initialize() - { - super.initialize(); - self.actorstayput = self.sector; // make this a flag once everything has been exported. - } -} - -class RedneckBillyRayCock: RedneckBillyRay -{ - default - { - pic "BILLYCOCK"; - } - -} - -class RedneckBillyRaySniper: RedneckBillyRay -{ - default - { - pic "BRAYSNIPER"; - } - - override void initialize() - { - super.initialize(); - self.actorstayput = self.sector; // make this a flag once everything has been exported. - } -} diff --git a/wadsrc/static/zscript/games/duke/actors/controllers.zs b/wadsrc/static/zscript/games/duke/actors/controllers.zs index 45170835d..3a2c5dc20 100644 --- a/wadsrc/static/zscript/games/duke/actors/controllers.zs +++ b/wadsrc/static/zscript/games/duke/actors/controllers.zs @@ -246,38 +246,6 @@ class RedneckLadder : DukeActor } } -class RedneckDestructo : DukeActor -{ - default - { - +DESTRUCTOIMMUNE; - pic "DESTRUCTO"; - statnum STAT_DESTRUCT; - } - - override bool animate(tspritetype t) - { - t.cstat |= CSTAT_SPRITE_INVISIBLE; - return true; - } -} - -class RedneckDestroyTags : DukeActor -{ - default - { - +DESTRUCTOIMMUNE; - pic "DESTROYTAGS"; - } - override void Initialize() - { - self.cstat |= CSTAT_SPRITE_INVISIBLE; - self.scale = (REPEAT_SCALE, REPEAT_SCALE); - self.clipdist = 0.25; - self.ChangeStat(STAT_DESTRUCT); - } -} - class RedneckPistonSoundEnabler : DukeActor { override void StaticSetup() diff --git a/wadsrc/static/zscript/games/duke/actors/redneckenemies.zs b/wadsrc/static/zscript/games/duke/actors/redneckenemies.zs index f39dfb236..af47cfcb8 100644 --- a/wadsrc/static/zscript/games/duke/actors/redneckenemies.zs +++ b/wadsrc/static/zscript/games/duke/actors/redneckenemies.zs @@ -306,79 +306,6 @@ class RedneckCheerStayput : RedneckCheerleader } } -class RedneckShitBoss : DukeActor -{ - default - { - pic "SBMOVE"; - +FULLBRIGHT; - +INTERNAL_BADGUY; - +KILLCOUNT; - +NORADIUSPUSH; - } - - override void Initialize() - { - self.scale = (0.75, 0.75); - self.setClipDistFromTile(); - } -} - -class RedneckBubbaStand : DukeActor -{ - default - { - pic "BUBBASTAND"; - +INTERNAL_BADGUY; - } - - override void initialize() - { - self.actorstayput = self.sector; // make this a flag once everything has been exported. - self.scale = (0.390625, 0.328125); - self.setClipDistFromTile(); - } -} - - -class RedneckHulk : DukeActor -{ - default - { - pic "HULK"; - +INTERNAL_BADGUY; - +KILLCOUNT; - +NORADIUSPUSH; - ProjectileSpread -5.625; - } - - override void Initialize() - { - self.scale = (0.5, 0.5); - self.setClipDistFromTile(); - } - - override Vector3 SpecialProjectileOffset() - { - return ((self.Angle + 45).ToVector() * 16, 12); - } - -} - -class RedneckHulkStayput : RedneckHulk -{ - default - { - pic "HULKSTAYPUT"; - } - - override void initialize() - { - super.initialize(); - self.actorstayput = self.sector; // make this a flag once everything has been exported. - } -} - class RedneckBoulder : DukeActor { default @@ -396,85 +323,3 @@ class RedneckBoulder1 : DukeActor +INTERNAL_BADGUY; } } - -class RedneckTornado : DukeActor -{ - default - { - pic "TORNADO"; - +DESTRUCTOIMMUNE; - +INTERNAL_BADGUY; - +NOHITSCANHIT; - } - override void Initialize() - { - self.scale = (1, 2); - self.setClipDistFromTile(); - self.clipdist *= 0.25; - self.cstat = CSTAT_SPRITE_TRANSLUCENT; - } -} - -class RedneckDog : DukeActor -{ - default - { - pic "DOGRUN"; - +INTERNAL_BADGUY; - +KILLCOUNT; - } - override void Initialize() - { - self.scale = (0.25, 0.25); - self.setClipDistFromTile(); - } -} - -class RedneckSheriff : DukeActor -{ - default - { - pic "LTH"; - +INTERNAL_BADGUY; - +KILLCOUNT; - } - override void Initialize() - { - self.scale = (0.375, 0.34375); - self.setClipDistFromTile(); - } -} - -class RedneckMosquito : DukeActor -{ - default - { - pic "DRONE"; - +INTERNAL_BADGUY; - +KILLCOUNT; - +NOWATERDIP; - +FLOATING; - +QUICKALTERANG; - +NOJIBS; - +NOHITJIBS; - falladjustz 0; - floating_floordist 30; - floating_ceilingdist 50; - } - override void Initialize() - { - self.scale = (0.21875, 0.109375); - self.clipdist = 32; - } -} - -// only new thing in Route 66. -class RedneckGator : DukeActor -{ - default - { - pic "GATOR"; - +INTERNAL_BADGUY; - +KILLCOUNT; - } -} \ No newline at end of file diff --git a/wadsrc/static/zscript/games/duke/actors/redneckenemies/billyray.zs b/wadsrc/static/zscript/games/duke/actors/redneckenemies/billyray.zs new file mode 100644 index 000000000..029c3bb27 --- /dev/null +++ b/wadsrc/static/zscript/games/duke/actors/redneckenemies/billyray.zs @@ -0,0 +1,40 @@ + +class RedneckBillyRay : DukeActor +{ + const BILLYRAYSTRENGTH = 100; + default + { + pic "BILLYRAY"; + +INTERNAL_BADGUY; + +KILLCOUNT; + Strength BILLYRAYSTRENGTH; + + } + + override void PlayFTASound() + { + self.PlayActorSound("BR_RECOG"); + } + + override void Initialize() + { + self.scale = (0.390625, 0.328125); + self.setClipDistFromTile(); + } + + +} + +class RedneckBillyRayStayput: RedneckBillyRay +{ + default + { + pic "BILLYRAYSTAYPUT"; + +BADGUYSTAYPUT + } + + override void PlayFTASound() + { + } + +} \ No newline at end of file diff --git a/wadsrc/static/zscript/games/duke/actors/redneckenemies/bubba.zs b/wadsrc/static/zscript/games/duke/actors/redneckenemies/bubba.zs new file mode 100644 index 000000000..10b52fc7c --- /dev/null +++ b/wadsrc/static/zscript/games/duke/actors/redneckenemies/bubba.zs @@ -0,0 +1,18 @@ +class RedneckBubbaStand : DukeActor +{ + default + { + pic "BUBBASTAND"; + +INTERNAL_BADGUY; + Strength 100; + } + + override void initialize() + { + self.actorstayput = self.sector; // make this a flag once everything has been exported. + self.scale = (0.390625, 0.328125); + self.setClipDistFromTile(); + } + + +} diff --git a/wadsrc/static/zscript/games/duke/actors/coot.zs b/wadsrc/static/zscript/games/duke/actors/redneckenemies/coot.zs similarity index 55% rename from wadsrc/static/zscript/games/duke/actors/coot.zs rename to wadsrc/static/zscript/games/duke/actors/redneckenemies/coot.zs index 3fe49e982..e5b8759c5 100644 --- a/wadsrc/static/zscript/games/duke/actors/coot.zs +++ b/wadsrc/static/zscript/games/duke/actors/redneckenemies/coot.zs @@ -1,8 +1,13 @@ + + class RedneckCoot : DukeActor { + const COOTSTRENGTH = 50; + default { pic "COOT"; + Strength COOTSTRENGTH; +INTERNAL_BADGUY; +KILLCOUNT; +DESTRUCTOIMMUNE; @@ -19,7 +24,10 @@ class RedneckCoot : DukeActor self.scale = (0.375, 0.28125); self.setClipDistFromTile(); self.clipdist *= 4; + if (Raze.isRRRA()) bLookAllaround = true; } + + } class RedneckCootStayput: RedneckCoot @@ -29,38 +37,12 @@ class RedneckCootStayput: RedneckCoot pic "COOTSTAYPUT"; +INTERNAL_BADGUY; +KILLCOUNT; - } - - override void PlayFTASound() - { - } - - override void initialize() - { - super.initialize(); - self.actorstayput = self.sector; // make this a flag once everything has been exported. - } -} - -// CON for this is different in RRRA, so we need the split regardless of the flag. -class RedneckRACoot : RedneckCoot -{ - default - { - +LOOKALLAROUND - } -} - -class RedneckRACootStayput: RedneckRACoot -{ - default - { - pic "COOTSTAYPUT"; +BADGUYSTAYPUT; } override void PlayFTASound() { } + } diff --git a/wadsrc/static/zscript/games/duke/actors/cow.zs b/wadsrc/static/zscript/games/duke/actors/redneckenemies/cow.zs similarity index 76% rename from wadsrc/static/zscript/games/duke/actors/cow.zs rename to wadsrc/static/zscript/games/duke/actors/redneckenemies/cow.zs index e056afd98..16d14b220 100644 --- a/wadsrc/static/zscript/games/duke/actors/cow.zs +++ b/wadsrc/static/zscript/games/duke/actors/redneckenemies/cow.zs @@ -1,9 +1,12 @@ class RedneckCow : DukeActor { + const COWSTRENGTH = 50; + default { pic "COW"; +BADGUY; + Strength COWSTRENGTH; } override void Initialize() @@ -11,5 +14,5 @@ class RedneckCow : DukeActor self.scale = (0.5, 0.5); self.setClipDistFromTile(); } -} +} \ No newline at end of file diff --git a/wadsrc/static/zscript/games/duke/actors/redneckenemies/destructo.zs b/wadsrc/static/zscript/games/duke/actors/redneckenemies/destructo.zs new file mode 100644 index 000000000..4ac647c0c --- /dev/null +++ b/wadsrc/static/zscript/games/duke/actors/redneckenemies/destructo.zs @@ -0,0 +1,39 @@ +class RedneckDestructo : DukeActor +{ + default + { + pic "DESTRUCTO"; + statnum STAT_DESTRUCT; + +DESTRUCTOIMMUNE; + Strength MEGASTRENGTH; + + } + + override void Initialize() + { + // do NOT run the default init code for this one. + } + + override bool animate(tspritetype t) + { + t.cstat |= CSTAT_SPRITE_INVISIBLE; + return true; + } + +} + +class RedneckDestroyTags : DukeActor +{ + default + { + pic "DESTROYTAGS"; + +DESTRUCTOIMMUNE; + } + override void Initialize() + { + self.cstat |= CSTAT_SPRITE_INVISIBLE; + self.scale = (REPEAT_SCALE, REPEAT_SCALE); + self.clipdist = 0.25; + self.ChangeStat(STAT_DESTRUCT); + } +} diff --git a/wadsrc/static/zscript/games/duke/actors/redneckenemies/dog.zs b/wadsrc/static/zscript/games/duke/actors/redneckenemies/dog.zs new file mode 100644 index 000000000..1b0a15a5b --- /dev/null +++ b/wadsrc/static/zscript/games/duke/actors/redneckenemies/dog.zs @@ -0,0 +1,17 @@ +class RedneckDog : DukeActor +{ + default + { + pic "DOGRUN"; + +INTERNAL_BADGUY; + +KILLCOUNT; + Strength 200; + } + override void Initialize() + { + self.scale = (0.25, 0.25); + self.setClipDistFromTile(); + } + + +} diff --git a/wadsrc/static/zscript/games/duke/actors/redneckenemies/enemy_common.zs b/wadsrc/static/zscript/games/duke/actors/redneckenemies/enemy_common.zs new file mode 100644 index 000000000..28802e540 --- /dev/null +++ b/wadsrc/static/zscript/games/duke/actors/redneckenemies/enemy_common.zs @@ -0,0 +1,3 @@ +extend class DukeActor +{ +} \ No newline at end of file diff --git a/wadsrc/static/zscript/games/duke/actors/redneckenemies/gator.zs b/wadsrc/static/zscript/games/duke/actors/redneckenemies/gator.zs new file mode 100644 index 000000000..33658a251 --- /dev/null +++ b/wadsrc/static/zscript/games/duke/actors/redneckenemies/gator.zs @@ -0,0 +1,16 @@ + +// The gator is the only new thing in Route 66. +class RedneckGator : DukeActor +{ + const GATOR_STRENGTH = 100; + const GATOR_BITE = -5; + const GATOR_GOOD_BITE = -10; + + default + { + pic "GATOR"; + Strength GATOR_STRENGTH; + +INTERNAL_BADGUY; + +KILLCOUNT; + } +} \ No newline at end of file diff --git a/wadsrc/static/zscript/games/duke/actors/hen.zs b/wadsrc/static/zscript/games/duke/actors/redneckenemies/hen.zs similarity index 57% rename from wadsrc/static/zscript/games/duke/actors/hen.zs rename to wadsrc/static/zscript/games/duke/actors/redneckenemies/hen.zs index 0e27e45d5..e01c5a279 100644 --- a/wadsrc/static/zscript/games/duke/actors/hen.zs +++ b/wadsrc/static/zscript/games/duke/actors/redneckenemies/hen.zs @@ -1,9 +1,14 @@ class RedneckHen : DukeActor { + const HEN_NORMAL_STRENGTH = 5; + const HEN_TOUGHER_STRENGTH = 12; + const HEN_DAMAGE_TO_PLAYER = -1; + default { pic "HEN"; +INTERNAL_BADGUY; + Strength HEN_TOUGHER_STRENGTH; } override void Initialize() @@ -19,18 +24,6 @@ class RedneckHen : DukeActor self.clipdist = 16; } } -} - -class RedneckHenStayput: RedneckHen -{ - default - { - pic "HENSTAYPUT"; - } - override void initialize() - { - super.initialize(); - self.actorstayput = self.sector; // make this a flag once everything has been exported. - } + } diff --git a/wadsrc/static/zscript/games/duke/actors/redneckenemies/hulk.zs b/wadsrc/static/zscript/games/duke/actors/redneckenemies/hulk.zs new file mode 100644 index 000000000..6001c1a32 --- /dev/null +++ b/wadsrc/static/zscript/games/duke/actors/redneckenemies/hulk.zs @@ -0,0 +1,43 @@ +extend class DukeActor +{ +} + +class RedneckHulk : DukeActor +{ + const HULKSTRENGTH = 1200; + const HULKRESPAWNEDSTRENGTH = 600; + const HULKWHACKAMOUNT = -22; + + default + { + pic "HULK"; + +INTERNAL_BADGUY; + +KILLCOUNT; + +NORADIUSPUSH; + ProjectileSpread -5.625; + Strength HULKSTRENGTH; + } + + override void Initialize() + { + self.scale = (0.5, 0.5); + self.setClipDistFromTile(); + } + + override Vector3 SpecialProjectileOffset() + { + return ((self.Angle + 45).ToVector() * 16, 12); + } + +} + +class RedneckHulkStayput : RedneckHulk +{ + default + { + pic "HULKSTAYPUT"; + +BADGUYSTAYPUT; + } + + +} diff --git a/wadsrc/static/zscript/games/duke/actors/minion.zs b/wadsrc/static/zscript/games/duke/actors/redneckenemies/minion.zs similarity index 61% rename from wadsrc/static/zscript/games/duke/actors/minion.zs rename to wadsrc/static/zscript/games/duke/actors/redneckenemies/minion.zs index d0c9ffe21..21dd3a45f 100644 --- a/wadsrc/static/zscript/games/duke/actors/minion.zs +++ b/wadsrc/static/zscript/games/duke/actors/redneckenemies/minion.zs @@ -1,5 +1,8 @@ class RedneckMinion : DukeActor { + const MINIONSTRENGTH = 50; + const MINIONFREAK = -10; + default { pic "MINION"; @@ -13,16 +16,12 @@ class RedneckMinion : DukeActor { self.scale = (0.25, 0.25); self.setClipDistFromTile(); - if (Raze.isRRRA()) + if (ud.ufospawnsminion) + self.pal = 8; + if (self.pal == 19) { - if (ud.ufospawnsminion) - self.pal = 8; - - if (self.pal == 19) - { - self.bHitradius_NoEffect = true; - self.bMagmaImmune = true; - } + self.bHitradius_NoEffect = true; + self.bMagmaImmune = true; } } @@ -32,6 +31,7 @@ class RedneckMinion : DukeActor t.shade = -127; return false; } + } class RedneckMinionStayput: RedneckMinion @@ -39,15 +39,12 @@ class RedneckMinionStayput: RedneckMinion default { pic "MINIONSTAYPUT"; + +BADGUYSTAYPUT; } override void PlayFTASound() { } - - override void initialize() - { - super.initialize(); - self.actorstayput = self.sector; // make this a flag once everything has been exported. - } + } + diff --git a/wadsrc/static/zscript/games/duke/actors/redneckenemies/mosquito.zs b/wadsrc/static/zscript/games/duke/actors/redneckenemies/mosquito.zs new file mode 100644 index 000000000..33d813beb --- /dev/null +++ b/wadsrc/static/zscript/games/duke/actors/redneckenemies/mosquito.zs @@ -0,0 +1,26 @@ +class RedneckMosquito : DukeActor +{ + const MOSQUITOSTRENGTH = 1; + const MOSQDAMAGE = -4; + default + { + pic "DRONE"; + +INTERNAL_BADGUY; + +KILLCOUNT; + +NOWATERDIP; + +FLOATING; + +QUICKALTERANG; + +NOJIBS; + +NOHITJIBS; + falladjustz 0; + floating_floordist 30; + floating_ceilingdist 50; + } + + override void Initialize() + { + self.scale = (0.21875, 0.109375); + self.clipdist = 32; + } + +} diff --git a/wadsrc/static/zscript/games/duke/actors/pig.zs b/wadsrc/static/zscript/games/duke/actors/redneckenemies/pig.zs similarity index 61% rename from wadsrc/static/zscript/games/duke/actors/pig.zs rename to wadsrc/static/zscript/games/duke/actors/redneckenemies/pig.zs index 6b085da85..cd94b844c 100644 --- a/wadsrc/static/zscript/games/duke/actors/pig.zs +++ b/wadsrc/static/zscript/games/duke/actors/redneckenemies/pig.zs @@ -1,9 +1,13 @@ class RedneckPig : DukeActor { + const PIGSTRENGTH = 75; + const PIG_GNAW_AMOUNT = -1; + default { pic "PIG"; +INTERNAL_BADGUY; + Strength PIGSTRENGTH; } override void Initialize() @@ -11,20 +15,18 @@ class RedneckPig : DukeActor self.scale = (0.25, 0.25);; self.setClipDistFromTile(); } + + } -class RedneckPigStayput: RedneckPig +class RedneckPigStayput : RedneckPig { default { pic "PIGSTAYPUT"; + +BADGUYSTAYPUT; } - override void initialize() - { - super.initialize(); - self.actorstayput = self.sector; // make this a flag once everything has been exported. - } } class RedneckPigEat : RedneckPig @@ -33,5 +35,7 @@ class RedneckPigEat : RedneckPig { pic "PIGEAT"; } + + } diff --git a/wadsrc/static/zscript/games/duke/actors/redneckenemies/sheriff.zs b/wadsrc/static/zscript/games/duke/actors/redneckenemies/sheriff.zs new file mode 100644 index 000000000..f8fef0eb1 --- /dev/null +++ b/wadsrc/static/zscript/games/duke/actors/redneckenemies/sheriff.zs @@ -0,0 +1,27 @@ +class RedneckSheriff : DukeActor +{ + const LTHSNDAMB = 16; + const LTHSTRENGTH = 500; + default + { + pic "LTH"; + +INTERNAL_BADGUY; + +KILLCOUNT; + Strength LTHSTRENGTH; + } + override void Initialize() + { + self.scale = (0.375, 0.34375); + self.setClipDistFromTile(); + } + +} + +class RedneckRASheriff : DukeActor // LTH (4352) // less health than in RR! +{ + default + { + Strength 300; + } +} + diff --git a/wadsrc/static/zscript/games/duke/actors/redneckenemies/shitboss.zs b/wadsrc/static/zscript/games/duke/actors/redneckenemies/shitboss.zs new file mode 100644 index 000000000..85bc77cd1 --- /dev/null +++ b/wadsrc/static/zscript/games/duke/actors/redneckenemies/shitboss.zs @@ -0,0 +1,24 @@ +class RedneckShitBoss : DukeActor +{ + const SBSPITSPD = 16; + const SBDIPSPD = 16; + const SBSNDRND = 64; + const SBSWHACKAMOUNT = -22; + + default + { + pic "SBMOVE"; + +FULLBRIGHT; + +INTERNAL_BADGUY; + +KILLCOUNT; + +NORADIUSPUSH; + Strength 2500; + } + + override void Initialize() + { + self.scale = (0.75, 0.75); + self.setClipDistFromTile(); + } + +} \ No newline at end of file diff --git a/wadsrc/static/zscript/games/duke/actors/redneckenemies/tornado.zs b/wadsrc/static/zscript/games/duke/actors/redneckenemies/tornado.zs new file mode 100644 index 000000000..b42bd81dc --- /dev/null +++ b/wadsrc/static/zscript/games/duke/actors/redneckenemies/tornado.zs @@ -0,0 +1,18 @@ +class RedneckTornado : DukeActor +{ + default + { + pic "TORNADO"; + +DESTRUCTOIMMUNE; + +INTERNAL_BADGUY; + +NOHITSCANHIT; + Strength MEGASTRENGTH; + } + override void Initialize() + { + self.scale = (1, 2); + self.setClipDistFromTile(); + self.clipdist *= 0.25; + self.cstat = CSTAT_SPRITE_TRANSLUCENT; + } +} \ No newline at end of file