From 240b24d7715bf06ac428d2502e38ce4eb362da5f Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Wed, 14 Dec 2022 00:11:35 +0100 Subject: [PATCH] - exported all females. --- source/games/duke/src/flags_r.cpp | 8 -- source/games/duke/src/spawn_d.cpp | 26 ---- source/games/duke/src/spawn_r.cpp | 8 -- .../filter/dukelike/rmapinfo.spawnclasses | 16 +++ wadsrc/static/zscript.txt | 1 + .../zscript/games/duke/actors/controllers.zs | 1 + .../zscript/games/duke/actors/females.zs | 127 ++++++++++++++++++ 7 files changed, 145 insertions(+), 42 deletions(-) create mode 100644 wadsrc/static/zscript/games/duke/actors/females.zs diff --git a/source/games/duke/src/flags_r.cpp b/source/games/duke/src/flags_r.cpp index 37e607b6a..f254aa768 100644 --- a/source/games/duke/src/flags_r.cpp +++ b/source/games/duke/src/flags_r.cpp @@ -206,14 +206,6 @@ void initactorflags_r() setflag(SFLAG3_BLOODY, { RTILE_BLOODPOOL }); setflag(SFLAG3_BROWNBLOOD, { RTILE_FECES }); - setflag(SFLAG2_TRIGGERRESPAWN, { - RTILE_FEM10, - RTILE_PODFEM1, - RTILE_NAKED1, - RTILE_STATUE, - RTILE_TOUGHGAL - }); - setflag(SFLAG2_NOFLOORPAL, { RTILE_RESPAWNMARKERRED, RTILE_RESPAWNMARKERYELLOW, diff --git a/source/games/duke/src/spawn_d.cpp b/source/games/duke/src/spawn_d.cpp index 1fed2d8f1..08b79b181 100644 --- a/source/games/duke/src/spawn_d.cpp +++ b/source/games/duke/src/spawn_d.cpp @@ -137,10 +137,6 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray* if (!badguy(act) || commonEnemySetup(act, actj)) CallInitialize(act); break; - case FOF: - act->spr.scale = DVector2(0, 0); - ChangeActorStat(act, STAT_MISC); - break; case DTILE_BLOOD: act->spr.scale = DVector2(0.25, 0.25); act->spr.pos.Z -= 26; @@ -154,28 +150,6 @@ DDukeActor* spawninit_d(DDukeActor* actj, DDukeActor* act, TArray* ChangeActorStat(act, STAT_MISC); break; - case DTILE_FEM1: - case DTILE_FEM2: - case DTILE_FEM3: - case DTILE_FEM4: - case DTILE_FEM5: - case DTILE_FEM6: - case DTILE_FEM7: - case DTILE_FEM8: - case DTILE_FEM9: - case DTILE_FEM10: - case DTILE_PODFEM1: - case DTILE_NAKED1: - case DTILE_TOUGHGAL: - if (act->spr.picnum == DTILE_PODFEM1) act->spr.extra <<= 1; - [[fallthrough]]; - - case DTILE_BLOODYPOLE: - act->spr.cstat |= CSTAT_SPRITE_BLOCK_ALL; - act->clipdist = 8; - ChangeActorStat(act, STAT_ZOMBIEACTOR); - break; - case DTILE_DUKELYINGDEAD: if (actj && actj->isPlayer()) { diff --git a/source/games/duke/src/spawn_r.cpp b/source/games/duke/src/spawn_r.cpp index 5cc773e14..b920816e3 100644 --- a/source/games/duke/src/spawn_r.cpp +++ b/source/games/duke/src/spawn_r.cpp @@ -90,14 +90,6 @@ DDukeActor* spawninit_r(DDukeActor* actj, DDukeActor* act, TArray* act->spr.cstat |= CSTAT_SPRITE_BLOCK_ALL; ChangeActorStat(act, 0); break; - case RTILE_FEM10: - case RTILE_NAKED1: - case RTILE_STATUE: - case RTILE_TOUGHGAL: - act->spr.cstat |= CSTAT_SPRITE_BLOCK_ALL; - act->clipdist = 8; - ChangeActorStat(act, STAT_ZOMBIEACTOR); - break; case RTILE_DUKELYINGDEAD: if (actj && actj->isPlayer()) { diff --git a/wadsrc/static/filter/dukelike/rmapinfo.spawnclasses b/wadsrc/static/filter/dukelike/rmapinfo.spawnclasses index c9341220e..5e14cbbc1 100644 --- a/wadsrc/static/filter/dukelike/rmapinfo.spawnclasses +++ b/wadsrc/static/filter/dukelike/rmapinfo.spawnclasses @@ -251,6 +251,22 @@ spawnclasses 661 = DukeWaterBubble 2329 = DukeSmallSmoke 1250 = DukeSteam + 1312 = DukeFemale1 + 1317 = DukeFemale2 + 1321 = DukeFemale3 + 1325 = DukeFemale4 + 1323 = DukeFemale5 + 1334 = DukeFemale6 + 1395 = DukeFemale7 + 1336 = DukeFemale8 + 3450 = DukeFemale9 + 4864 = DukeFemale10 + 4866 = DukeToughGal + 603 = DukeNaked + 1294 = DukePodFemale + 1324 = DukeBloodyPole + + 2000 = DukePigCop 2001 = DukePigCopStayPut diff --git a/wadsrc/static/zscript.txt b/wadsrc/static/zscript.txt index 9f96eff26..41e374f33 100644 --- a/wadsrc/static/zscript.txt +++ b/wadsrc/static/zscript.txt @@ -119,6 +119,7 @@ version "4.10" #include "zscript/games/duke/actors/boss3.zs" #include "zscript/games/duke/actors/boss4.zs" #include "zscript/games/duke/actors/boss5.zs" +#include "zscript/games/duke/actors/females.zs" #include "zscript/games/duke/actors/flamethrowerflame.zs" #include "zscript/games/duke/actors/firefly.zs" diff --git a/wadsrc/static/zscript/games/duke/actors/controllers.zs b/wadsrc/static/zscript/games/duke/actors/controllers.zs index fb5fdf5bd..5fda448d6 100644 --- a/wadsrc/static/zscript/games/duke/actors/controllers.zs +++ b/wadsrc/static/zscript/games/duke/actors/controllers.zs @@ -193,3 +193,4 @@ class RedneckGeometryEffect : DukeActor class RedneckKeyinfoSetter : DukeActor { } + diff --git a/wadsrc/static/zscript/games/duke/actors/females.zs b/wadsrc/static/zscript/games/duke/actors/females.zs new file mode 100644 index 000000000..853718789 --- /dev/null +++ b/wadsrc/static/zscript/games/duke/actors/females.zs @@ -0,0 +1,127 @@ + +class DukeFemale1 : DukeActor +{ + default + { + pic "FEM1"; + } + + override void Initialize() + { + self.cstat |= CSTAT_SPRITE_BLOCK_ALL; + self.clipdist = 8; + self.ChangeStat(STAT_ZOMBIEACTOR); + } +} + +class DukeFemale2 : DukeFemale1 +{ + default + { + pic "FEM2"; + } +} + +class DukeFemale3 : DukeFemale1 +{ + default + { + pic "FEM3"; + } +} + +class DukeFemale4 : DukeFemale1 +{ + default + { + pic "FEM4"; + } +} + +class DukeFemale5 : DukeFemale1 +{ + default + { + pic "FEM5"; + } +} + +class DukeFemale6 : DukeFemale1 +{ + default + { + pic "FEM6"; + } +} + +class DukeFemale7 : DukeFemale1 +{ + default + { + pic "FEM7"; + } +} + +class DukeFemale8 : DukeFemale1 +{ + default + { + pic "FEM8"; + } +} + +class DukeFemale9 : DukeFemale1 +{ + default + { + pic "FEM9"; + } +} + +class DukeFemale10 : DukeFemale1 +{ + default + { + pic "FEM10"; + } +} + +class DukeNaked : DukeFemale1 +{ + default + { + pic "NAKED1"; + } +} + +class DukeToughGal : DukeFemale1 +{ + default + { + pic "TOUGHGAL"; + } +} + +class DukeBloodyPole : DukeFemale1 +{ + default + { + pic "BLOODYPOLE"; + } +} + +class DukePodFemale : DukeFemale1 +{ + default + { + pic "PODFEM1"; + } + + override void Initialize() + { + Super.Initialize(); + self.extra <<= 1; + } + +} + \ No newline at end of file