Commit graph

367 commits

Author SHA1 Message Date
MajorCooke
0735cb9550 - Updated many functions.
- Added A_KillTarget(damagetype, int flags).
- Added A_KillTracer(damagetype, int flags).
- Added A_RemoveTarget.
- Added A_RemoveTracer.

A_Kill (Master/Target/Tracer/Children/Siblings):
- KILS_FOILINVUL: foils invulnerability.
- KILS_KILLMISSILES: destroys projectiles. Does not work on invulnerable
projectiles without KILS_FOILINVUL, and doesn't work at all on missiles
with NODAMAGE flag.
- KILS_NOMONSTERS: actors that are monsters will not be killed.

A_Damage (Self/Target/Master/Tracer/Children/Siblings):
- DMSS_FOILINVUL: foils invulnerability.
- DMSS_AFFECTARMOR: damages the actor's armor instead of bypassing it
entirely.
- DMSS_KILL: damages the actor by its remaining health (useful for
modular DECORATE programming).

- Added A_SpawnItemEx flags:
- SXF_SETTARGET: sets the calling actor as the target.
- SXF_SETTRACER: sets the calling actor as the tracer.
Both of these functions take priority similar to SXF_SETMASTER over
SXF_TRANSFERPOINTERS.
2014-09-27 00:10:31 -05:00
MajorCooke
5b71ce6dcb - Added FDARI's A_JumpIfHealthLower patch.
Now with pointer accessibility.
2014-09-26 11:48:20 -05:00
MajorCooke
422e83a1b9 - Added more A_Damage functions:
- A_DamageTarget
- A_DamageTracer
-Both take a number for how much damage to deal and the damagetype to
inflict. Negative numbers means healing.
2014-09-25 23:12:25 -05:00
MajorCooke
b1f87295b8 - Added A_DamageSelf.
- A_DamageSelf(int amount, name damagetype)
2014-09-25 16:47:41 -05:00
MajorCooke
44683657f2 - Added jpalomo's A_SetSpeed patch. 2014-09-20 17:34:57 -05:00
MajorCooke
33f83cc7f9 Added Blue Shadow's A_SpawnItemEx changes: (2/2)
SXF_TRANSFERALPHA and SXF_TRANSFERRENDERSTYLE
2014-09-19 14:17:24 -05:00
Christoph Oelckers
cfd24f438f - jpalomo's A_Saw flags submission. 2014-09-08 13:02:05 +02:00
Christoph Oelckers
8f238f8d32 - fixed: the Revenant's frame duration in its missile state were wrong. 2014-08-27 11:06:12 +02:00
Randy Heit
ea7ba9dba3 Add per-actor friction
- This is multiplied by the sector's friction.
- This is intentionally not serialized yet, while awaiting feedback.
2014-07-28 23:15:50 -05:00
Christoph Oelckers
6d4eb7f62d - changed handling of DF_NO_COOP_WEAPON_SPAWN dmflag so that weapons are not determined by class type but by a newly added flag WEAPONSPAWN, to allow CustomInventory replacements to act like weapons when being spawned. 2014-07-27 10:07:37 +02:00
Braden Obrzut
bfbea40415 - Fixed some typos with chex quest obituaries and French translation error. 2014-07-15 21:20:05 -04:00
Christoph Oelckers
e56e525d0f - A_FireCustomMissile transfer tranlsation flag, code submission by jpalomo 2014-06-22 08:55:21 +02:00
Christoph Oelckers
63a0e01c6a Merge branch 'interpview_optin' 2014-05-08 09:17:00 +02:00
Christoph Oelckers
67ebbe3ed4 made some changes to turn the CF_INTERPVIEW flag when changing angles into an op-in feature instead of making it automatic. 2014-05-08 09:15:56 +02:00
Christoph Oelckers
94c4f38c58 - added constants for sound channels 5-7. 2014-04-28 01:26:30 +02:00
Gaerzi
60fe07df74 Added slow states to relevant Strife monsters
Namely, acolyte, shadow acolyte, reaver, stalker, and turret. Info on
which states needed the slow flag was obtained with Quasar's permission
by looking at G_InitNew() in g_game.c and the info.c state tables from
Chocolate Strife.
Also added fast flag to acolyte states that needed it, based on the same
source.
2014-04-17 17:42:16 +02:00
alexey.lysiuk
a97b068ed7 Enable fighting between different types of gargoyles and golems
In vanilla Heretic:
- Gargoyles are able to fight with Fire Gargoyles
- Golems are able to fight with Nitro Golems, both regular and ghosted versions
2014-03-30 13:27:27 +03:00
alexey.lysiuk
6a958b032c Add NOBLOOD flag to Heresiarch actor
Heresiarch entity in vanilla Hexen doesn't spawn blood when hit
2014-03-18 12:29:14 +02:00
Randy Heit
fe67ae5e54 Merge branch 'maint' 2013-11-19 21:01:15 -06:00
Randy Heit
62ffe7e4e2 Add NOGRAVITY to every Raven actor with FLOATBOB
- Fixed: Heretic and Hexen completely skip all normal Z processing on
  mobjs with FLOATBOB set. To emulate that, we need to add NOGRAVITY to
  everything with that flag set.
2013-11-19 19:42:13 -06:00
Christoph Oelckers
a144221174 - changed the invisible waiting frame of the ExplosiveBarrel to use TNTA10 instead of the real barrel frame. This is so that sprite checks do not erroneously determine that there's still something to see. GZDoom's dynamic light code has problems with this. 2013-09-20 10:43:10 +02:00
Christoph Oelckers
8e8f6cf5a6 - A_AlertMonsters flags submission by NeuralStunner. 2013-08-20 20:33:03 +02:00
Christoph Oelckers
3300566493 - P_DropItem's chance parameter had an incorrect default value. 2013-08-12 01:54:45 +02:00
Christoph Oelckers
c0174ea7cd - Added A_DropItem for DECORATE. 2013-08-11 20:48:08 +02:00
Christoph Oelckers
d438c6c456 - fixed typo in Strife spectre's obituary message and added it to the DECORATE definition of the spectre. 2013-08-10 20:42:34 +02:00
Christoph Oelckers
1c889dc9fa - let APowerRegeneration use the Strength property to define the amount of regeneration it gives. 2013-08-10 09:51:48 +02:00
Christoph Oelckers
5d0369d4ed - Ability to set A_VileAttack's initial attack's damage type - by BlueShadow. 2013-08-09 12:18:58 +02:00
Christoph Oelckers
34b71baad1 - added Player.Aircapacity property which is used as a multiplier for the level's air supply. 2013-08-09 11:57:14 +02:00
Christoph Oelckers
cbc0b70e7c - TransferStencilColor A_SpawnItemEx patch / by Ryan Cordell. 2013-07-24 20:15:17 +02:00
Christoph Oelckers
83bd8ba1b8 - added NeuralStunner's player.userange submission, but changed it to use the value directly from the PlayerPawn data.
- bumped savegame version for addition of APlayerPawn::userange.
2013-07-22 22:37:50 +02:00
Christoph Oelckers
e4f78f225c Merge fix. 2013-06-24 02:26:23 +02:00
Christoph Oelckers
631fd69719 - fixed: GoldWandPuff2 requires the PUFFONACTORS flag. 2013-06-24 02:25:16 +02:00
Christoph Oelckers
7d56311152 - added Ryan Cordell's A_CheckRange submission. 2013-06-23 18:45:17 +02:00
Randy Heit
2d13a45773 - Added read access to an actor's melee range from DECORATE and ACS, via Blue Shadow.
SVN r4305 (trunk)
2013-06-01 02:23:27 +00:00
Christoph Oelckers
dbf68e3f2c - fixed the Peasants DECORATE definition.
SVN r4298 (trunk)
2013-05-30 21:07:29 +00:00
Christoph Oelckers
a7c2346b32 - added a FloatBobPhase property for DECORATE. Now, if FloatBobPhase is anything but -1 it will be used directly as the initial phase, allowing to define actors that bob in sync. The allowed range of phases is 0 - 63. The main reason for this is that each actor spawn called the pr_spawnmobj RNG just to randomize this value which causes problems with non-interactive actors, in particular GZDoom's dynamic lights.
SVN r4296 (trunk)
2013-05-30 08:52:29 +00:00
Christoph Oelckers
567fbace22 - re-fixed r4279.
SVN r4282 (trunk)
2013-05-25 18:30:23 +00:00
Christoph Oelckers
2767f31a92 - fixed: PillarAlienPower must loop its state.
SVN r4279 (trunk)
2013-05-25 16:22:51 +00:00
Braden Obrzut
332e39d6c8 - Fixed: Typo in WaterDropOnFloor actor's active sound.
SVN r4276 (trunk)
2013-05-22 21:26:06 +00:00
Randy Heit
71f42122bc - Added a definition for OB_MPMAULER1 and removed the needless reference to OB_MPMAULER2.
SVN r4270 (trunk)
2013-05-17 01:22:19 +00:00
Randy Heit
404df07629 - Fixed: The Ironlich lost its Pain state when it was converted to DECORATE.
SVN r4252 (trunk)
2013-05-07 01:57:05 +00:00
Randy Heit
8830d3a07a - Fixed: Ever since r1078, D'Sparil has been too quiet.
SVN r4249 (trunk)
2013-05-04 19:46:38 +00:00
Randy Heit
e9cd2777f3 - Fixed: r4226 had bad copy-paste angles for Demon2's XDeath.
SVN r4241 (trunk)
2013-04-30 04:49:24 +00:00
Randy Heit
77b57e2f98 - Fixed: Hexen's A_DemonDeath and A_Demon2Death had been converted to incorrect generic Decorate.
SVN r4226 (trunk)
2013-04-28 01:58:51 +00:00
Christoph Oelckers
9f71c7cb4e - added Xaser's reactiontime for ACS and DECORATE expression patch.
SVN r4222 (trunk)
2013-04-20 21:32:03 +00:00
Randy Heit
d99517292b - Added DONTGIB flag to Key, so key-dropping enemies can be used reliably near crushers.
SVN r4218 (trunk)
2013-04-16 20:26:35 +00:00
Randy Heit
147da94e2f - Added FDARI's CLOFF_JUMP_ON_MISS and CLOFF_AIM_VERT_NOOFFSET flags.
SVN r4207 (trunk)
2013-03-28 01:29:23 +00:00
Randy Heit
f9915d7cf2 - Added FDARI's A_CheckLOF, modified to use a Trace callback function.
SVN r4201 (trunk)
2013-03-23 02:55:59 +00:00
Randy Heit
c54ea7f6b7 - Added SXF_TRANSFERSPECIAL and SXF_CLEARCALLERSPECIAL flags for A_SpawnItemEx.
SVN r4199 (trunk)
2013-03-23 01:22:37 +00:00
Randy Heit
53e73783e0 - Added spawnofs_z parameter to A_RailAttack and A_CustomRailgun.
SVN r4191 (trunk)
2013-03-20 03:36:45 +00:00
Randy Heit
277d59b2bb - Added flags SXF_CLEARCALLERTID, SXF_MULTIPLYSPEED, and SXF_TRANSFERSCALE for A_SpawnItemEx.
SVN r4188 (trunk)
2013-03-20 03:07:45 +00:00
Christoph Oelckers
b0203c9f1d - added Xaser's SXF_USEBLOODCOLOR for A_SpawnItemEx submission
SVN r4181 (trunk)
2013-03-13 11:27:30 +00:00
Randy Heit
8410ac760a - Added A_SetDamageType.
SVN r4180 (trunk)
2013-03-13 04:04:48 +00:00
Christoph Oelckers
33f363f4c6 - added TheFortuneTeller's NORANDOMPUFFZ submission.
SVN r4170 (trunk)
2013-02-27 10:35:44 +00:00
Christoph Oelckers
81785124c5 - fixed: the ExplosiveBarrel's height was wrong.
SVN r4161 (trunk)
2013-02-22 21:18:29 +00:00
Randy Heit
bd601a1bc8 - Added NOTRAIL flag for PowerSpeed.
SVN r4146 (trunk)
2013-02-19 02:44:49 +00:00
Randy Heit
87b8b6201c - Added WRF_DISABLESWITCH flag for A_WeaponReady to indicate that any attempts to switch the weapon
should be discarded.

SVN r4062 (trunk)
2013-02-05 02:27:35 +00:00
Randy Heit
5f4bcaac3d - Added A_UnSetInvulnerable() to the FireDemon (aka Afrit)'s Pain state, in case it gets pained
before entering its Chase state.

SVN r4033 (trunk)
2013-01-23 03:38:13 +00:00
Randy Heit
5cbdc3382d - Slow down the scripted marines' rocket attack and speed up the plasma attack to better reflect
the speeds of the equivalent player weapons.

SVN r4023 (trunk)
2013-01-06 04:32:27 +00:00
Randy Heit
7f74d28638 - Do not use the muzzle flash player sprites for the scripted marines' melee attacks.
SVN r4022 (trunk)
2013-01-06 04:20:37 +00:00
Randy Heit
7fb0d37d99 - Added a flag to A_M_Refire to ignore the actor's missile state, so the rocket marine will
not continue to punch air if it starts attacking while its target is in melee range and
  then moves out of it.

SVN r4021 (trunk)
2013-01-06 04:15:28 +00:00
Randy Heit
0d47c6cbc8 - Added bright flags to the scripted marines' BFG and railgun attacks.
SVN r4020 (trunk)
2013-01-06 04:06:19 +00:00
Randy Heit
dfe470e5f2 - Added JLOSF_NOAUTOAIM flag for when you want to use A_JumpIfTargetInLOS in conjunction with
something that never autoaims, such as a railgun.
- Fixed: A_JumpIfTargetInLOS should use P_AimLineAttack() instead of P_BulletSlope(), because the
  latter intentionally checks to the sides of the aimed line.

SVN r4007 (trunk)
2013-01-02 03:17:52 +00:00
Randy Heit
92a07ab8b4 - Fixed: The Fist had the wrong Tag string.
SVN r3996 (trunk)
2012-12-22 00:21:18 +00:00
Randy Heit
3f02444ffe - Fixed: ArtiTeleport was missing its SpawnID.
SVN r3966 (trunk)
2012-11-13 04:59:38 +00:00
Randy Heit
2ce1debe8d - Added FDARI's get actor height and radius patch.
SVN r3955 (trunk)
2012-11-09 23:06:40 +00:00
Randy Heit
68b3c4860f - Remove redundant redundancy in the PigPlayer definition.
SVN r3950 (trunk)
2012-11-09 05:02:05 +00:00
Randy Heit
a77705e04e - Added A_JumpIfTargetOutsideMeleeRange and A_JumpIfTargetInsideMeleeRange because I thought
I could be clever and have the beggar chase after you some after you attack him, with a
  random chance to cease pursuit. However, that didn't look much different from his normal
  wandering animation, and he usually gave up before getting anywhere near you, so it was
  kind of pointless. I kept the action functions around anyway, since they're simple things that
  somebody else might find useful.
- Added a melee range check to A_SentinelRefire for actors without missile states. This fixes
  Strife's Beggar trying to attack you when you're nowhere near him.

SVN r3863 (trunk)
2012-09-06 03:36:25 +00:00
Randy Heit
6a91335841 - Turned A_Explode's affectsource parameter into a flags parameter and added XF_NOTMISSILE
and RTF_NOTMISSILE so that you can use A_Explode and A_RadiusThrust with non-missiles without
  them telling P_RadiusAttack() that the target is the source.

SVN r3860 (trunk)
2012-08-30 04:01:50 +00:00
Randy Heit
a94cf9d548 - Added A_SetTics.
SVN r3851 (trunk)
2012-08-24 21:02:49 +00:00
Randy Heit
100391507e - Added two new PlayerPawn properties:
* GruntSpeed: The minimum speed a player must be falling at the time of landing to play *grunt.
  * FallingScreamSpeed: When a player is falling within this range of speeds, they will play *falling.

SVN r3829 (trunk)
2012-08-14 03:24:59 +00:00
Randy Heit
a26cd841ae - Fixed: Getting remorphed into a chicken should give you a Tome of Power so that you become a
super chicken. Rawr! The PlayerPawn flag CANSUPERMORPH now enables this.

SVN r3763 (trunk)
2012-07-15 03:10:00 +00:00
Randy Heit
9b041cb431 - What I didn't have this saved? ugh
SVN r3742 (trunk)
2012-07-06 03:15:40 +00:00
Christoph Oelckers
006a0b1641 - fixed the Programmer's last state's sprite frame (was Y, should be X.
SVN r3715 (trunk)
2012-06-28 23:11:32 +00:00
Randy Heit
70c11f7568 - Added RGF_CENTERZ to spawn a rail from the actor's center instead of offsetting it upward.
- Merged all the multiple bool parameters to the railgun functions into a single flags parameter.

SVN r3706 (trunk)
2012-06-22 03:56:08 +00:00
Christoph Oelckers
37d9519673 - added Xaser's submission for no impact damage from blasting.
SVN r3693 (trunk)
2012-06-16 09:01:05 +00:00
Christoph Oelckers
ff25785781 - removed the MF5_FASTER and MF5_FASTMELEE flags and replaced them with a 'Fast' state flag.
SVN r3692 (trunk)
2012-06-16 08:35:51 +00:00
Randy Heit
44932a6c56 - Added OB_MPDEFAULT string for being killed by a player for an unknown reason. This can be
overridden in custom player classes by changing their Obituary property to something else.
- ClientObituary() now only looks up the obituary message from the killing player's weapon if the
  damage type was 'Melee' or 'Hitscan'.
- Gave P_GunShot() and A_FireBullets the new damage type 'Hitscan'.
- Switched A_Saw and A_CustomPunch to the 'Melee' damage type.

SVN r3646 (trunk)
2012-05-13 01:06:28 +00:00
Christoph Oelckers
cbcc7443c6 - added Xaser's bobbing style options submission.
SVN r3615 (trunk)
2012-05-02 20:58:29 +00:00
Christoph Oelckers
26dbec2aae - added FDARI*s damagetype fix
SVN r3533 (trunk)
2012-04-07 15:29:47 +00:00
Christoph Oelckers
4637ed53fa - added Thomas's patch to add a Pufftype parameter to A_Explode.
SVN r3532 (trunk)
2012-04-07 13:17:38 +00:00
Christoph Oelckers
235a09d92a - Added Xaser's weapon patch to check +reload and +zoom in A_WeaponReady.
SVN r3530 (trunk)
2012-04-07 13:07:25 +00:00
Christoph Oelckers
34820aacd2 - added Xaser's modified version of kgsws's railgun enhancements patch.
SVN r3529 (trunk)
2012-04-07 12:57:44 +00:00
Christoph Oelckers
3aa759714a - added DavidPH's A_FaceTarget with pitch submission.
SVN r3528 (trunk)
2012-04-07 12:48:56 +00:00
Christoph Oelckers
c3638eb338 - added FDARI's submission for A_CustomMissile options.
SVN r3526 (trunk)
2012-04-07 12:36:39 +00:00
Randy Heit
cfb9329c7f - Add Gez's A_RadiusGive.
SVN r3493 (trunk)
2012-03-30 04:28:10 +00:00
Randy Heit
49aaf9b451 - Added A_ClearLastHeard action function.
SVN r3464 (trunk)
2012-03-22 21:40:26 +00:00
Randy Heit
73a78caa5c - Added support for a few extra color ranges to Player.Colorset so that the Strife player's
predefined colors can properly define the standard Strife translation ranges.

SVN r3446 (trunk)
2012-03-16 02:23:31 +00:00
Christoph Oelckers
e4880d162f - added Xaser's submission for accessing accuracy and stamina from DECORATE and ACS.
- added DECORATE properties for accuracy and stamina.
- Since these changes move properties from player_t to AActor all savegame compatibility code was removed and the min. savegame version bumped.


SVN r3427 (trunk)
2012-03-11 09:08:35 +00:00
Randy Heit
514f29a34a - Added Gez's custom flechettes patch, with ArtiPoisonBag4 renamed to ArtiPoisonBagGiver and
ArtiPoisonBag5 renamed to ArtiPoisonBagShooter.

SVN r3379 (trunk)
2012-02-21 20:58:33 +00:00
Randy Heit
7561beb212 - Added action functions that work with script names instead of script numbers. They are
named the same as their ACS function equivalents. e.g. From DECORATE, you can now use
  ACS_NamedExecuteAlways to run a script with a name.

SVN r3364 (trunk)
2012-02-16 21:49:09 +00:00
Randy Heit
68fbd75897 - Fixed compilation with FMOD 4.38+. The removal of hardware voices and EAX was a fairly
major change, so I'm making no provisions for using older FMOD DLLs when compiled with the
  4.38 API. However, sound positioning is still broken like in 4.28, so you are recommended
  to continue building with 4.26. Also, the Freeverb-based DSP unit is no longer present in
  FMOD, so the underwater effect is currently unavailable when using 4.38 until I can figure
  out how to make it work with the SFX Reverb unit instead. (And on that topic, the Freeverb
  DSP was officially only for stereo outputs, so I really shouldn't have been using it in the
  first place.)
- Since I would like to eventually figure out the sound positioning issues with the newer
  FMODs, the following have been added:
  * snd_drawoutput now labels its outputs with the speakers they represent.
  * DCanvas::DrawTextA was added as an alias for DrawText, since the Windows headers #define
    DrawText to a Unicode/non-Unicode variant.
  * The loopsound console command was added to spawn an actor at the player's location and
    have it loop a sound infinitely.
  Hopefully I can figure it out. FMOD's 3D example works, so I assume the problem lies with
  my code, though I don't really know where to begin looking for the problem.

SVN r3350 (trunk)
2012-02-10 00:53:50 +00:00
Randy Heit
b41dbf8a52 - A_SetPitch now clamps the player's pitch within the valid range. It can
be made to clamp other actors' pitches to within the range (-90,+90)
  degrees with the SPF_FORCECLAMP flag.
- Transmit the local viewpitch limits to the other players.



SVN r3323 (trunk)
2011-12-06 01:25:37 +00:00
Randy Heit
7d502e7789 - Added SMF_CURSPEED flag for A_SeekerMissile to cause it to use the missile's current speed rather than its Speed property.
SVN r3318 (trunk)
2011-11-24 04:27:47 +00:00
Christoph Oelckers
3c47a30249 - added Gez's submission for inventory restrictions but changed the added checks to be in the main CallTryPickup function.
SVN r3296 (trunk)
2011-09-23 08:23:51 +00:00
Braden Obrzut
eafb9da2c1 - Backported GZDoom r1246:
* Fixed possible crash when texture for menu item patch cannot be loaded. (From Alexey's Mac OS X port.)
* Fixed iwadinfo.txt definitions of Hexen and Freedoom demos (also from Alexey's port.)
* Added missing LOF_NOJUMP definition.


SVN r3284 (trunk)
2011-08-23 02:39:20 +00:00
Christoph Oelckers
24593fe008 - added FDARI's A_Warp submission.
SVN r3238 (trunk)
2011-06-14 22:45:42 +00:00
Christoph Oelckers
4d7fcbf1b8 - added Major Cooke's Death/Paintype submission.
SVN r3237 (trunk)
2011-06-13 17:15:09 +00:00
Christoph Oelckers
6ba0689b8d - added DavidPH's A_AlertMonsters range submission.
SVN r3233 (trunk)
2011-06-13 10:30:30 +00:00
Christoph Oelckers
f69181f851 - added FDARI's latest actor pointer submission.
SVN r3222 (trunk)
2011-06-07 23:05:24 +00:00