mirror of
https://github.com/ZDoom/gzdoom.git
synced 2024-11-25 13:31:37 +00:00
- Moved the terget->velz assignment to the end of A_VileAttack to remove the
influence of vertical thrust from the radius attack, since ZDoom does explosions in three dimensions, but Doom only did it in two. - Fixed: The last three parameters to A_VileAttack had their references off by one. Most notably as a result, the blast radius was used as the thrust, so it sent you flying far faster than it should have. SVN r1745 (trunk)
This commit is contained in:
parent
1e554a1fcc
commit
8330a69212
2 changed files with 12 additions and 7 deletions
|
@ -1,4 +1,10 @@
|
|||
August 1, 2009
|
||||
- Moved the terget->velz assignment to the end of A_VileAttack to remove the
|
||||
influence of vertical thrust from the radius attack, since ZDoom does
|
||||
explosions in three dimensions, but Doom only did it in two.
|
||||
- Fixed: The last three parameters to A_VileAttack had their references off
|
||||
by one. Most notably as a result, the blast radius was used as the thrust,
|
||||
so it sent you flying far faster than it should have.
|
||||
- Restored the reactiontime countdown for A_SpawnFly, since some Dehacked
|
||||
mod could conceivable rely on it. The deadline is now kept in special2
|
||||
and used in preference as long as it is non-zero.
|
||||
|
|
|
@ -103,16 +103,16 @@ DEFINE_ACTION_FUNCTION_PARAMS(AActor, A_VileTarget)
|
|||
//
|
||||
DEFINE_ACTION_FUNCTION_PARAMS(AActor, A_VileAttack)
|
||||
{
|
||||
ACTION_PARAM_START(5);
|
||||
ACTION_PARAM_START(6);
|
||||
ACTION_PARAM_SOUND(snd,0);
|
||||
ACTION_PARAM_INT(dmg,1);
|
||||
ACTION_PARAM_INT(blastdmg,2);
|
||||
ACTION_PARAM_INT(blastrad,2);
|
||||
ACTION_PARAM_FIXED(thrust,3);
|
||||
ACTION_PARAM_NAME(dmgtype,4);
|
||||
ACTION_PARAM_INT(blastrad,3);
|
||||
ACTION_PARAM_FIXED(thrust,4);
|
||||
ACTION_PARAM_NAME(dmgtype,5);
|
||||
|
||||
AActor *fire, *target;
|
||||
int an;
|
||||
angle_t an;
|
||||
|
||||
if (NULL == (target = self->target))
|
||||
return;
|
||||
|
@ -125,10 +125,8 @@ DEFINE_ACTION_FUNCTION_PARAMS(AActor, A_VileAttack)
|
|||
S_Sound (self, CHAN_WEAPON, snd, 1, ATTN_NORM);
|
||||
P_TraceBleed (dmg, target);
|
||||
P_DamageMobj (target, self, self, dmg, NAME_None);
|
||||
target->velz = Scale(thrust, 1000, target->Mass);
|
||||
|
||||
an = self->angle >> ANGLETOFINESHIFT;
|
||||
|
||||
fire = self->tracer;
|
||||
|
||||
if (fire != NULL)
|
||||
|
@ -140,4 +138,5 @@ DEFINE_ACTION_FUNCTION_PARAMS(AActor, A_VileAttack)
|
|||
|
||||
P_RadiusAttack (fire, self, blastdmg, blastrad, dmgtype, false);
|
||||
}
|
||||
target->velz = Scale(thrust, 1000, target->Mass);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue