Commit graph

561 commits

Author SHA1 Message Date
Randy Heit
b2abf224b5 Save function name for error message in ParseStates()
- The error "You cannot pass parameters to..." used the most recent token,
  which was always ( and not the function name. (Note that this was
  already fixed in the scripting branch, so this is probably going to be a
  conflict. Meh.)
2015-01-06 19:31:00 -06:00
MajorCooke
643d37ab7c - Added A_SetFloatBobPhase(int). Takes a number between 0 and 63. If it's outside that range, it does nothing.
- Added A_Warp flags:
- WARPF_BOB: Gets the bob offset of actor pointer with the FLOATBOB flag.
- WARPF_MOVEPTR: The function is inversed to move the pointed actor with applied flags, but only the original caller will make the success/jump.
2015-01-06 11:55:41 -06:00
nashmuhandes
2b12db153b New functions to manipulate an actor's roll.
- DECORATE functions: A_SetRoll code pointer.
- DECORATE expressions: "roll" variable.
- ACS functions: SetActorRoll, GetActorRoll.
2015-01-05 17:51:32 +08:00
Blue-Shadow
ba3988290c Added an option to A_Check[SightOr]Range to be able to perform a 2D-based distance check. 2015-01-01 22:16:51 +03:00
Christoph Oelckers
c57cc91d7c - cleaned up the RipLevel logic a bit to be less confusing. 2014-12-31 10:13:15 +01:00
MajorCooke
4ddfd0f46a - Added 3 new properties and 3 functions to control them.
- Rippers will rip through anything with an equivalent ripper level, or if their level is between or on the min and max ranges.
- If no min or max is defined, it simply checks if the monster's ripper level is lower than the missiles.
- Functions: A_SetRipperLevel(int level), A_SetRipMin(int min), A_SetRipMax(int max)
- Properties: RipperLevel, RipLevelMin, and RipLevelMax.
- RipperLevel: Applicable to monsters and projectiles.
- RipLevelMin and RipLevelMax are only useful on monsters.
- By default, all are 0.
2014-12-30 19:59:31 -06:00
MajorCooke
f2551dceda - Corrected the species checking. 2014-12-24 17:49:58 -06:00
Randy Heit
3fb9e754f1 Rename 'Pick' to 'RandomPick'
... because 'pick' is way too generic a name to spend a keyword on.
2014-12-23 21:46:27 -06:00
rheit
bfb94f13d2 Merge pull request #198 from MajorCooke/filters
- Added name filtering to all A_Damage/Kill/Remove functions.
2014-12-23 21:42:31 -06:00
Randy Heit
d7d022144e Call A_Face() directly from A_CustomBullletAttack 2014-12-23 21:30:24 -06:00
Randy Heit
c13f1551e6 Merge branch 'custommissileptr' of git://github.com/MajorCooke/zdoom into MajorCooke-custommissileptr 2014-12-23 21:27:05 -06:00
Randy Heit
2b323d01ed Reorder pick parsing to require one parameter.
- This function is pointless without any parameters, so don't allow that.
2014-12-21 21:22:14 -06:00
MajorCooke
91bfe4cceb - Added pointers for A_CustomMissile and A_CustomBulletAttack. 2014-12-21 12:29:19 -06:00
MajorCooke
2c7a3f2eba - Optimized DoDamage and DoKill.
- Do a filter and species check first to save time.
- Added DMSS/KILS/RMVF_EITHER, which means if the actor is of type or species, it counts.
- A_DamageTarget(20,"Normal",DMSS_EITHER,"DoomImp","CyberdemonSpecies")
- This affects actor DoomImp, and anything that's of species CyberdemonSpecies.
- Added a little more documentation via comments.
2014-12-21 10:38:51 -06:00
MajorCooke
5a472e815b - Added species checking.
- Added two more flags for each of the functions, EXFILTER and EXSPECIES.
- Stands for "exclude filter/species" and makes the function not take them into account.
- Cleaned up the code and placed all the checking in their own subfunctions.
2014-12-21 09:31:24 -06:00
MajorCooke
c168761eda - Couple additional fixes:
- The wiki said the minimum distance to teleport defaults to 0, actor.txt on the other hand said otherwise. I was wondering why it was still broken somewhat...
- Prevent stickiness from happening, a.k.a. getting stuck in ceiling or floor and letting the engine unstick the actor. This caused velocity loss.
2014-12-20 22:51:43 -06:00
MajorCooke
e5a41a1358 - Added name filtering to all A_Damage/Kill/Remove functions.
- A_DamageChildren(20,"Normal",0,"DoomImp") for example will only target actors of DoomImp specifically.
2014-12-20 16:57:00 -06:00
Christoph Oelckers
2a53ebb6b9 - fixed state checking in A_Teleport. 2014-12-20 14:48:22 +01:00
Christoph Oelckers
a19f0219c5 Merge branch 'master' of https://github.com/Blue-Shadow/zdoom 2014-12-20 11:36:10 +01:00
MajorCooke
86b0065c0b - Added a multitude of flags for A_Teleport.
- TF_KEEPVELOCITY: Keep the velocity after teleporting.
- TF_KEEPANGLE: Don't use the special spot's angle.
- TF_USESPOTZ: Normally, this function
- TF_NOSRCFOG: Don't leave fog at the previous location.
- TF_NODESTFOG: Don't leave fog at the arriving location.
- TF_USEACTORFOG: Use the actor's TeleFogSourceType and TeleFogDestType properties.
- TF_NOJUMP: Don't require or cause a jump. In this case, put 0 (or "") in for the jump destination when using CustomInventory items to teleport actors around.
2014-12-19 12:37:02 -06:00
Blue-Shadow
a150e0686c Added 'lifestealmax' parameter and STEALARMOR flag to A_Saw and A_CustomPunch. 2014-12-18 23:05:59 +03:00
MajorCooke
dcab57b236 - Allow NULL.
- Instead of reverting the teleport fog back to defaults, if there wasn't a class or if the class failed to be found, set it to NULL.
- P_SpawnTeleportFog will not spawn anything if it's NULL.
- Added "" so it can be used to mean 'don't change anything' for A_SetTeleFog.
2014-12-18 09:19:39 -06:00
MajorCooke
93ca8502dd - Rewrote a bunch of things for stability. 2014-12-17 21:47:00 -06:00
MajorCooke
160ded99a9 - A few more checks to be safe. 2014-12-17 17:42:16 -06:00
MajorCooke
b255e5d67d - Thought I was forgetting something. 2014-12-17 17:12:33 -06:00
MajorCooke
30acb72006 - Added per-actor teleport fog modifications.
- New properties include TeleFogSourceType and TeleFogDestType.
- TeleFogSourceType is the fog left behind where the actor teleported away from.
- TeleFogDestType is the fog the actor sees when it arrives at its destination.
- Added A_SetTeleFog(<oldpos>,<newpos>) -- oldpos sets TeleFogSourceType, newpos sets TeleFogDestType.
2014-12-17 16:11:07 -06:00
MajorCooke
465d9ab89a - Added flags for A_CheckLOF:
- CLOFF_SETTARGET | CLOFF_SETMASTER | CLOFF_SETTRACER
- An actor that causes A_CheckLOF (and only an actor) to succeed will set the intercepting actor as its target, master, and/or tracer, respectively.
2014-12-15 14:50:35 -06:00
Christoph Oelckers
6410428715 - fixed: FxPick leaked the array's content. Also did some cleanup on FxPick code. 2014-12-14 12:03:55 +01:00
MajorCooke
3f3aab42f1 - Pick can now hold unlimited numbers to choose from.
- I.e. pick(1,4,12,16)
2014-12-14 04:45:39 -06:00
MajorCooke
785f72d6eb - Renamed RClamp to Pick. 2014-12-13 15:59:27 -06:00
MajorCooke
8c5a8c54f0 - Added rclamp(<int>,<int>).
- Usable for DECORATE expressions. Chooses one of the two numbers placed in the field.
2014-12-13 15:08:18 -06:00
Christoph Oelckers
6afe9cc048 Merge branch 'hitpointer2' of https://github.com/MajorCooke/zdoom
Conflicts:
	src/actor.h
	src/thingdef/thingdef_data.cpp
2014-12-10 11:48:32 +01:00
MajorCooke
533ae95933 - Added three missile impact pointer changing flags.
- HITTARGET, HITMASTER, and HITTRACER.
- A missile that dies hitting an actor will set this impacted actor as the new target/master/tracer, depending on specifications.
2014-12-09 12:30:14 -06:00
MajorCooke
e5340ad637 - Splitting the pull request in half.
- Added THRUREFLECT, MIRRORREFLECT, and AIMREFLECT. All require REFLECTIVE to work.
- THRUREFLECT prevents missiles from changing course if reflected, and takes precedence over all reflective flags.
- MIRRORREFLECT causes missiles to perform a direct 180 turn-around.
- AIMREFLECT turns the missile back to the original shooter, and does not slow the missile down.
2014-12-09 12:09:36 -06:00
Christoph Oelckers
b2452b806e - missed a return. 2014-12-08 12:01:20 +01:00
Christoph Oelckers
e6de24a7de - turned out that the recent change to allow cancelling a powerup blend through a powerup giver did not work well so now there's an explicit 'Powerup.Color none' to do it that works a bit differently. 2014-12-06 22:08:39 +01:00
Christoph Oelckers
fbe14d59bb - fixed: All powerup blend colors with an alpha of 0 were treated as 'has no color' for PowerupGivers. 2014-12-03 13:05:50 +01:00
MajorCooke
94f08aa593 - Added: Boolean to specify if A_Raise functions should perform CopyFriendliness based upon who raised it. By default, this is false. 2014-11-27 15:12:33 -06:00
MajorCooke
08570ec48e - Added flags for A_Fade functions:
- FTF_REMOVE: Removes the actor when the alpha hits a certain level.
- - A_FadeIn - 1.0
- - A_FadeOut - 0.0
- - A_FadeTo - Alpha target level reached
- FTF_CLAMP: Automatically fixes the alpha so it won't leave the range [0.0, 1.0].
2014-11-25 13:24:35 -06:00
alexey.lysiuk
06764c6aae Merge branch 'master' of https://github.com/rheit/zdoom into z_osx_clean 2014-11-15 13:35:29 +02:00
Christoph Oelckers
23bb12b0b8 Merge branch 'cpf_noturn' of https://github.com/edward-san/zdoom 2014-11-15 08:58:36 +01:00
Edoardo Prezioso
fd354dbe9a - Added CPF_NOTURN flag for A_CustomPunch. 2014-11-14 12:18:46 +01:00
MajorCooke
b54b18c8c5 -Added: CAUSEPAIN. Actors which deal damage (even if 0) while having this flag can cause other actors to trigger pain chances.
-Fixed: ALLOWPAIN should not trigger pain states if the damage is 0, but still allow for infighting to occur.
-Fixed: an unneeded logic call was processing damage modification when it was 0 to begin with.
2014-11-12 14:08:26 -06:00
alexey.lysiuk
fc8f260375 Merge branch 'master' of https://github.com/rheit/zdoom into z_osx_clean 2014-11-09 15:22:11 +02:00
Christoph Oelckers
22b5d0af8a Merge branch 'hotfix' of https://github.com/MajorCooke/zdoom 2014-11-09 12:13:13 +01:00
MajorCooke
87207bdb6d - Fixed: The mask didn't incorporate RGF_MISSILES, causing it to fail. 2014-11-09 00:16:10 -06:00
Edoardo Prezioso
8b85e6d00b - Port an empty version of 'A_FaceConsolePlayer'.
Hissies will be happy now.
2014-11-08 18:49:16 +01:00
Christoph Oelckers
c28c0b8f0b Revert "Backport 'A_FaceConsolePlayer' from zandronum."
This reverts commit eab971500b.

As Edward850 pointed out, this feature is broken by design and therefore completely useless.
2014-11-08 08:53:32 +01:00
Edoardo Prezioso
eab971500b Backport 'A_FaceConsolePlayer' from zandronum.
By Dusk, who authorized me to do this.
2014-11-08 00:31:16 +01:00
alexey.lysiuk
1074a031a2 Merge branch 'master' of https://github.com/rheit/zdoom into z_osx_clean 2014-11-02 16:00:53 +02:00