From 5344f5e7b97f42c371b71591925bd6eae782d70b Mon Sep 17 00:00:00 2001 From: Lactozilla <jp6781615@gmail.com> Date: Wed, 22 Nov 2023 17:00:26 -0300 Subject: [PATCH] Fix A_VileFire calls made from A_VileTarget A_VileTarget doesn't set var1 or var2 when calling A_VileFire, so the arguments are undefined. This change calls the action with {integer(0), integer(0)}, which makes it act like the original A_Fire from Doom --- src/p_enemy.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/p_enemy.c b/src/p_enemy.c index 61effc1432..81f123d573 100644 --- a/src/p_enemy.c +++ b/src/p_enemy.c @@ -11150,6 +11150,8 @@ void A_VileTarget(mobj_t *actor, action_val_t *args, unsigned argcount) else fogtype = (mobjtype_t)locvar1; + action_val_t call_args[2] = { ACTION_INTEGER_VAL(0), ACTION_INTEGER_VAL(0) }; + if (!locvar2) { fog = P_SpawnMobj(actor->target->x, @@ -11167,7 +11169,7 @@ void A_VileTarget(mobj_t *actor, action_val_t *args, unsigned argcount) P_SetTarget(&actor->tracer, fog); P_SetTarget(&fog->target, actor); P_SetTarget(&fog->tracer, actor->target); - A_VileFire(fog, args, 2); + A_VileFire(fog, call_args, 2); } else { @@ -11199,7 +11201,7 @@ void A_VileTarget(mobj_t *actor, action_val_t *args, unsigned argcount) P_SetTarget(&actor->tracer, fog); P_SetTarget(&fog->target, actor); P_SetTarget(&fog->tracer, players[i].mo); - A_VileFire(fog, args, argcount); + A_VileFire(fog, call_args, 2); } } } -- GitLab