From 24a12a04b4108f2e35b93b155c6dd2c599705e6d Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Sat, 30 Jan 2010 13:48:44 +0000 Subject: [PATCH] - added a minimum threshold for damage thrust to avoid micro-velocities being set for actors. - fixed: Strife's Oracle is not a living thing and needs the NOBLOOD flag. - fixed: Chex Quest's finale pic was wrong. SVN r2143 (trunk) --- src/p_interaction.cpp | 3 +++ src/p_map.cpp | 4 ++-- wadsrc/static/actors/strife/oracle.txt | 1 + wadsrc/static/mapinfo/chex.txt | 2 +- 4 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/p_interaction.cpp b/src/p_interaction.cpp index 075d978bc..24d6cfd83 100644 --- a/src/p_interaction.cpp +++ b/src/p_interaction.cpp @@ -1062,6 +1062,9 @@ void P_DamageMobj (AActor *target, AActor *inflictor, AActor *source, int damage thrust = FLOAT2FIXED(fltthrust); + // Don't apply ultra-small damage thrust + if (thrust < FRACUNIT/100) thrust = 0; + // make fall forwards sometimes if ((damage < 40) && (damage > target->health) && (target->z - origin->z > 64*FRACUNIT) diff --git a/src/p_map.cpp b/src/p_map.cpp index b7f8c04f1..7a9d9da19 100644 --- a/src/p_map.cpp +++ b/src/p_map.cpp @@ -4356,8 +4356,8 @@ void P_RadiusAttack (AActor *bombspot, AActor *bombsource, int bombdamage, int b velz *= 0.8f; } angle_t ang = R_PointToAngle2 (bombspot->x, bombspot->y, thing->x, thing->y) >> ANGLETOFINESHIFT; - thing->velx += fixed_t (finecosine[ang] * thrust); - thing->vely += fixed_t (finesine[ang] * thrust); + thing->velx += FLOAT2FIXED (finecosine[ang] * thrust); + thing->vely += FLOAT2FIXED (finesine[ang] * thrust); if (bombdodamage) thing->velz += (fixed_t)velz; // this really doesn't work well } diff --git a/wadsrc/static/actors/strife/oracle.txt b/wadsrc/static/actors/strife/oracle.txt index 594eb83af..ca25f2526 100644 --- a/wadsrc/static/actors/strife/oracle.txt +++ b/wadsrc/static/actors/strife/oracle.txt @@ -10,6 +10,7 @@ ACTOR Oracle 199 Height 56 Monster +NOTDMATCH + +NOBLOOD DamageFactor "Fire", 0.5 DamageFactor "SpectralLow", 0 MaxDropoffHeight 32 diff --git a/wadsrc/static/mapinfo/chex.txt b/wadsrc/static/mapinfo/chex.txt index 2f2f494fb..edfbc8a46 100644 --- a/wadsrc/static/mapinfo/chex.txt +++ b/wadsrc/static/mapinfo/chex.txt @@ -11,7 +11,7 @@ gameinfo chatsound = "misc/chat2" finalemusic = "$MUSIC_VICTOR" finaleflat = "FLOOR4_8" - finalepage = "HELP2", "VICTORY2", "ENDPIC" + finalepage = "CREDIT", "VICTORY2", "ENDPIC" infopage = "HELP1", "CREDIT" quitsound = "menu/quit1" borderflat = "FLOOR7_2"