mirror of
https://github.com/ZDoom/gzdoom-gles.git
synced 2024-11-16 09:31:14 +00:00
- Fixed: Invulnerability checking for rails was done before the various THRU actor flags instead of after, meaning actors could block shots regardless of those flags. This was never intended.
This commit is contained in:
parent
234e690f77
commit
96153e7e7e
1 changed files with 6 additions and 6 deletions
|
@ -5100,12 +5100,6 @@ static ETraceStatus ProcessRailHit(FTraceResults &res, void *userdata)
|
||||||
return TRACE_Stop;
|
return TRACE_Stop;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Invulnerable things completely block the shot
|
|
||||||
if (data->StopAtInvul && res.Actor->flags2 & MF2_INVULNERABLE)
|
|
||||||
{
|
|
||||||
return TRACE_Stop;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Skip actors if the puff has:
|
// Skip actors if the puff has:
|
||||||
// 1. THRUACTORS (This one did NOT include a check for spectral)
|
// 1. THRUACTORS (This one did NOT include a check for spectral)
|
||||||
// 2. MTHRUSPECIES on puff and the shooter has same species as the hit actor
|
// 2. MTHRUSPECIES on puff and the shooter has same species as the hit actor
|
||||||
|
@ -5120,6 +5114,12 @@ static ETraceStatus ProcessRailHit(FTraceResults &res, void *userdata)
|
||||||
return TRACE_Skip;
|
return TRACE_Skip;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Invulnerable things completely block the shot
|
||||||
|
if (data->StopAtInvul && res.Actor->flags2 & MF2_INVULNERABLE)
|
||||||
|
{
|
||||||
|
return TRACE_Stop;
|
||||||
|
}
|
||||||
|
|
||||||
// Save this thing for damaging later, and continue the trace
|
// Save this thing for damaging later, and continue the trace
|
||||||
SRailHit newhit;
|
SRailHit newhit;
|
||||||
newhit.HitActor = res.Actor;
|
newhit.HitActor = res.Actor;
|
||||||
|
|
Loading…
Reference in a new issue