MajorCooke
47029a3efc
DoKill bug
...
-Fixed: DoKill did not target 'killtarget' for missiles, causing crashes and making the function not work properly.
2014-10-07 11:33:08 -05:00
MajorCooke
f54a59fdf8
- Added JLOSF_CHECKTRACER for A_JumpIfTargetInLOS.
...
- CHECKTRACER doesn't need to be a missile or have the SEEKERMISSILE
flag.
2014-10-02 17:00:17 -05:00
MajorCooke
5030832df0
- Added DMSS_NOFACTOR for all A_Damage functions.
2014-10-02 11:48:07 -05:00
Christoph Oelckers
cfb623d517
Merge branch 'master' of https://github.com/MajorCooke/zdoom
2014-09-29 00:42:59 +02:00
MajorCooke
96c6e7d9bf
Minor fix; didn't mean to include that flag check.
2014-09-28 08:20:27 -05:00
MajorCooke
43b86288c7
- Added A_Remove(int pointer, int flags).
...
- RMVF_MISSILES removes missiles.
- RMVF_NOMONSTERS ignores monsters.
- RMVF_MISC includes non-monsters and missiles.
- RMVF_EVERYTHING disregards all checks and remove it.
These flags now apply to the following in addition to the new function:
-A_RemoveTarget
-A_RemoveMaster
-A_RemoveTracer
-A_RemoveChildren
-A_RemoveSiblings
2014-09-28 08:15:00 -05:00
fdari
a2f7b86a0f
IsPointerEqual (ACS and Decorate)
...
Decorate: IsPointerEqual(int aaptr_selector1, int aaptr_selector2)
ACS: IsPointerEqual(int aaptr_selector1, int aaptr_selector2, int tid1 = 0, int tid2 = 0)
Compare the pointers values returned by two pointer select operations. Returns true if they both resolve to the same value. Null values can be explicitly tested using IsPointerEqual(AAPTR_NULL, ...)
ACS: IsPointerEqual(int aaptr1, int aaptr2, int tid1 = 0, int tid2 = 0)
This function lets you compare pointers from other actors than the activator, using tids. Tid1 determines the actor used to resolve aaptr1, Tid2 does the same for aaptr2. If tid1 and tid2 are equal, the same actor will be used for resolving both pointers (that could always happen randomly; this way you know it will happen).
2014-09-28 11:52:37 +02:00
MajorCooke
97d5d614c4
- Fixed: SXF_NOPOINTERS didn't clear LastHeard, causing monsters to spawn with targets.
2014-09-27 16:50:24 -05:00
MajorCooke
68a5db3c8c
- Added SXF_NOPOINTERS for A_SpawnItemEx.
...
- Added WARPF_ABSOLUTEPOSITION for A_Warp.
2014-09-27 13:22:14 -05:00
Christoph Oelckers
e025f40902
- more redundancy removal: Consolidated the common part of the A_Kill* functions into a subfunction.
2014-09-27 08:54:18 +02:00
Christoph Oelckers
afaa88a460
- consolidated the common portion of the 6 different A_Damage* functions into a subfunction.
2014-09-27 08:48:36 +02:00
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
Christoph Oelckers
80060cf1ac
Merge branch 'checkclass' of https://github.com/MajorCooke/zdoom
2014-09-26 08:30:33 +02:00
MajorCooke
6586fa29fd
- Added FDARI's A_JumpIf CheckClass submission.
...
- bool CheckClass(string classname, int ptr_select = aaptr_default, bool
match_superclass = false)
2014-09-25 23:56:10 -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
Christoph Oelckers
cbf72fe992
- fixed: Since the serializing code cannot distinguish between user variables of the same name coming from different actors in an inheritance chain, this kind of name duplication must be prohibited.
2014-09-21 08:32:39 +02:00
MajorCooke
44683657f2
- Added jpalomo's A_SetSpeed patch.
2014-09-20 17:34:57 -05:00
alexey.lysiuk
0f602fb1ce
Merge branch 'master' of https://github.com/rheit/zdoom into z_osx_clean
2014-09-20 11:54:21 +03:00
MajorCooke
5c4ad9be68
Added Blue Shadow's A_SpawnItemEx changes: (1/2)
...
SXF_TRANSFERALPHA and SXF_TRANSFERRENDERSTYLE
2014-09-19 14:15:31 -05:00
MajorCooke
7a62459c00
Allow SXF_SETMASTER to work on non-monsters.
2014-09-18 17:58:06 -05:00
alexey.lysiuk
c7fc44062e
Merge branch 'master' of https://github.com/rheit/zdoom into z_osx_clean
2014-09-13 16:12:14 +03:00
Christoph Oelckers
2be3b776d8
- fixed: A_CustomMissile should not jump to the See state for dead monsters when using CMF_CHECKTARGETDEAD.
2014-09-13 10:15:09 +02:00
alexey.lysiuk
0a5dd94072
Fixed whole program (link-time) optimization build with Clang
2014-08-03 12:20:30 +03: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
Christoph Oelckers
7d7f146ce1
- fixed: transferring a translation to a missile needs to check if the missile was spawned successfully.
2014-06-28 15:21:19 +02:00
alexey.lysiuk
65203760a8
Fix incorrect actor flag handling on big endian platforms
2014-06-28 11:00:08 +03:00
Christoph Oelckers
e56e525d0f
- A_FireCustomMissile transfer tranlsation flag, code submission by jpalomo
2014-06-22 08:55:21 +02:00
Christoph Oelckers
30f57c0b8e
- added new renderstyles AddStencil and AddShaded.
2014-05-13 21:16:06 +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
3f8c7239af
Merge branch 'master' of https://github.com/Gaerzi/zdoom
2014-04-24 09:41:54 +02:00
Gaerzi
7c3660087e
Restore shadow renderstyle.
...
It was accidentally lost in r3085.
2014-04-22 13:32:33 +02:00
Gaerzi
83182b703d
Added slow monsters, the inverse of fast monsters
...
This is a skill setting only, no "always slow" or "never slow" actor
flags, and no DM flags.
2014-04-15 21:01:49 +02:00
Edward Richardson
4270838613
CANRAISE state definition
...
CANRAISE state for allowing a monster to be resurrected without an
infinite frame
2014-04-12 22:02:19 +12:00
Gaerzi
18f2644162
A_Log formatted text
...
Make DECORATE version of Log consistent with ACS version.
2014-02-22 04:09:52 +13:00
Christoph Oelckers
c959b3f250
- added 'subtract' render style to DECORATE parser. This is actually 'reverse subtract'
2013-12-05 15:28:09 +01:00
Randy Heit
1f723c10ae
Add CF_INTERPVIEW for players.
...
- Added CF_INTERPVIEW flag for players. A_SetPitch/A_SetAngle and the
similar ACS APROPs set this when changing an angle. This forces the
renderer to interpolate the view angles instead of updating with the
latest mouse positions. The effect lasts one tick.
2013-10-09 21:50:24 -05:00
Randy Heit
fc843c28ba
Merge branch 'maint'
2013-09-18 22:06:31 -05:00
Randy Heit
a7a7d5d6b3
Add missing prantheses for A_CustomPunch's puffFlags calculation
...
- Fixed: Need parentheses for precedence when setting puffFlags in
A_CustomPunch. Otherwise, it's completely broken.
2013-09-18 21:25:00 -05:00
Randy Heit
33ee8f9fef
Merge branch 'maint'
2013-08-29 22:27:49 -05:00
Randy Heit
7143ae49e1
Fixed: CheckPlayerCamera not sync safe
...
- If a player is spying through another player, CheckPlayerCamera will
return the TID of the player you are "spying", but as coopspy isn't a
net command, this wont be reflected by all nodes. So to fix this,
CheckPlayerCamera now returns -1 if a player's camera is that of any
player at all. (thanks edward850)
2013-08-29 21:45:37 -05:00
Randy Heit
aac0de3e48
Fixed: Make A_SetTics work with weapons.
...
- When A_SetTics is called from a weapon, we need to set the tics for the
psprite instead of the actor itself.
2013-08-29 21:40:01 -05:00
Braden Obrzut
0fb37ca5f1
Merge branch 'maint'
2013-08-27 20:41:10 -04:00
Braden Obrzut
5079d6c505
- Fixed: clang 32-bit compile (I hear it still doesn't run though).
...
- Applied edward's patch to remove boolean increment.
2013-08-27 20:28:38 -04:00
Christoph Oelckers
7a87e08107
- added MF7_ALWAYSTELEFRAG flag that causes an actor to be telefragged by everything that teleports into the same place.
2013-08-13 21:01:14 +02:00
Christoph Oelckers
61c94648dc
- added ACS CheckFlag function.
2013-08-12 22:38:52 +02:00
Christoph Oelckers
aa03609b69
- added IF_TOSSED inventory flag.
2013-08-12 21:00:23 +02:00
Christoph Oelckers
be1a00c537
Merge branch 'maint'
2013-08-12 20:42:21 +02:00
Christoph Oelckers
e14590d8ce
- moved NOTELESTOMP to flags7. When committing I was accidentally on maint instead of master and in master flags6 was already full.
2013-08-12 20:41:33 +02:00
Christoph Oelckers
44a1b94ad9
- added MF6_NOTELESTOMP flag that prevents an actor from telefragging under all possible circumstances.
2013-08-12 20:23:54 +02:00
Christoph Oelckers
f2c250d35d
- flags7 variable added to AActor.
2013-08-12 20:09:21 +02:00
Christoph Oelckers
2bcc5cd7cc
Merge branch 'maint'
2013-08-12 09:14:18 +02:00
Christoph Oelckers
ecfe67dd78
- removed weirdness from Powerup.Strength property that was specifically tailored to its use on PowerInvisibility and made its use problematic elsewhere.
2013-08-12 09:13:55 +02:00
Christoph Oelckers
fabf8272e6
Merge branch 'maint'
2013-08-11 21:04:17 +02:00
Christoph Oelckers
c0174ea7cd
- Added A_DropItem for DECORATE.
2013-08-11 20:48:08 +02:00
Christoph Oelckers
c8f0df44f2
Merge branch 'maint'
...
Conflicts:
src/am_map.cpp
2013-08-10 09:41:50 +02:00
Christoph Oelckers
25ec3fb8fe
- added MF6_RELATIVETOFLOOR flag.
2013-08-10 09:32:55 +02:00
Christoph Oelckers
211d293002
- added MF6_NOTONAUTOMAP flag to exclude things from being shown with the scanner powerup. The IDDT cheat will not be affected by this.
2013-08-10 08:53:37 +02:00
Christoph Oelckers
9c12c03684
Merge branch 'maint'
2013-08-09 20:36:08 +02:00
Christoph Oelckers
a78ad3188b
- added MF5_NOFORWARDFALL flag to prevent attacks from making its victim fall forward randomly.
2013-08-09 20:20:23 +02:00
Christoph Oelckers
21bce3b0c4
Merge branch 'maint'
2013-08-09 12:51:26 +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
Edoardo Prezioso
0dc70f847c
- Be more compatible with C++11 narrowing conversions system.
2013-07-31 12:27:54 +02:00
Edoardo Prezioso
8cab8f180b
- Be clear about the safe 'memset/memcpy' operations on virtual classes.
...
Since I remember that 'memset/memcpy' is safe in this code, it should be okay to cast to the generic pointer all the 'virtual class' arguments before calling the above functions. Shuts up Clang warnings.
2013-07-31 12:23:31 +02:00
Christoph Oelckers
cbc0b70e7c
- TransferStencilColor A_SpawnItemEx patch / by Ryan Cordell.
2013-07-24 20:15:17 +02:00
Christoph Oelckers
f3d8790995
Merge branch 'maint' of https://github.com/rheit/zdoom into maint
2013-07-22 22:54:45 +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
a90b49dc72
- added string table replacement for A_Print, A_PrintBold and A_Log.
2013-07-14 14:33:45 +02:00
Christoph Oelckers
94a3d92f93
Merge branch 'maint'
2013-06-24 16:49:51 +02:00
Christoph Oelckers
394f21f71e
- fixed: Draining health from a victim must check for damage reduction before awarding the health to the player. This affected Heretic's gauntlets, A_Saw and A_CustomPunch.
...
- added a DONTDRAIN flag that prevents the above attacks from draining any health at all.
2013-06-24 16:42:43 +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
9e3c6a3cc7
- fixed parameter type for Floatbobphase property.
...
SVN r4300 (trunk)
2013-05-31 18:10:41 +00:00
Christoph Oelckers
ad12be4877
- fixed inappropriate type for FloatBobPhase property.
...
SVN r4299 (trunk)
2013-05-30 21:10:54 +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
Randy Heit
504496278b
- Fixed: FxBinaryInts that needed to cast the right-side parameter to an int resolved the left
...
side instead.
SVN r4265 (trunk)
2013-05-13 02:55:48 +00:00
Randy Heit
894c4198b0
- Fixed possible NULL pointer deref in A_FireBullets
...
SVN r4263 (trunk)
2013-05-13 02:27:39 +00:00
Randy Heit
c63273348a
- Fixed possible NULL pointer deref in A_CustomPunch
...
SVN r4255 (trunk)
2013-05-12 18:31:36 +00:00
Randy Heit
2668988870
- Switched to a genericly extensible representation for userinfo.
...
- Fixed: The playerinfo CCMD did not range check the player number.
SVN r4253 (trunk)
2013-05-12 18:27:03 +00:00
Randy Heit
9072c25e65
- Added a big-endian fix for actor flag fields that aren't four bytes wide.
...
SVN r4251 (trunk)
2013-05-05 00:01:51 +00:00
Randy Heit
40f7abb8e9
- Added bounce states. Set the BOUNCE_UseBounceState flag to use them (+USEBOUNCESTATE via
...
DECORATE). Then you can use:
* Bounce
* Bounce.Floor
* Bounce.Ceiling
* Bounce.Wall
* Bounce.Actor
* Bounce.Actor.Creature
Partial matches work just like Pain states, so if an actor bounces off a floor and you don't
have a Bounce.Floor state, but you do have a Bounce state, it will use the Bounce state.
Conversely, if you only have a Bounce.Floor state but no Bounce state, then the actor will
only enter the Bounce.Floor state when it bounces on a floor; bouncing off anything else will
not cause it to change state.
SVN r4250 (trunk)
2013-05-04 22:52:37 +00:00
Christoph Oelckers
bed47c6eff
- A_KIllSiblings and A_DamageSiblings didn't check for a valid master.
...
SVN r4242 (trunk)
2013-04-30 06:48:53 +00:00
Randy Heit
0e19a0e330
- Added a NODELAY state flag. This is only valid for a state immediately following a Spawn label.
...
When set, the actor will run this state during its first tick. This means Spawn
states may now run an action function if you set this flag. Note that this action function
is executed during the actor's first tick, which is not the same as when it is spawned.
SVN r4240 (trunk)
2013-04-30 04:20:09 +00:00
Randy Heit
5dc034c2ed
- Fixed: A_RemoveSiblings and A_KillSiblings did not check that the caller had a master to deduce siblings from.
...
SVN r4237 (trunk)
2013-04-30 02:46:47 +00:00
Randy Heit
f7aa019f85
- Stylistic changes.
...
SVN r4236 (trunk)
2013-04-30 02:45:15 +00:00
Randy Heit
e92560b4da
- Be consistent with whitespace tabs.
...
SVN r4235 (trunk)
2013-04-30 02:41:59 +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
cb64014494
- Added CROUCHABLEMORPH flag for the PlayerPawn class. Use this to indicate that a morphed
...
player class can crouch. (Regular players can always crouch, hence the name CROUCHABLEMORPH
and not CANMORPH or ALLOWMORPH.)
SVN r4221 (trunk)
2013-04-19 02:24:20 +00:00
Randy Heit
ec6d522a29
- Remove the requirement that only action function default parameters can accept a constant
...
expression that evaluates to the class 'None'. (I don't know why that was there to begin with.)
SVN r4210 (trunk)
2013-04-09 22:15:41 +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
324b13c89b
- Added Weapon.MinSelectionAmmo1 and Weapon.MinSelectionAmmo2 to exclude weapons from autoselection
...
even if they have enough ammo to be used.
SVN r4203 (trunk)
2013-03-24 02:25:12 +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
2874d927b1
- Random spawners no longer move the missile forward when spawning them, because presumably
...
whatever spawned the random spawner already took care of this.
- Added a maxdist parameter to P_CheckMissileSpawn() to help ensure that it doesn't completely
move the spawned missile outside of its shooter (and potentially beyond a wall the shooter
might happen to be standing next to).
SVN r4194 (trunk)
2013-03-21 03:06:04 +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
Randy Heit
de20936b13
- Allow negative force for A_RadiusThrust.
...
SVN r4187 (trunk)
2013-03-20 02:41:59 +00:00