Commit graph

972 commits

Author SHA1 Message Date
Marisa Kirisame
38c8f0d585 Adds OnDrop virtual to inventory items. Called on the dropped item at the end of AActor::DropInventory. 2018-09-16 17:58:57 +02:00
Christoph Oelckers
5b7d3c91f9 - defaulted constructors and assignment operators of several trivial types. 2018-08-25 23:51:36 +02:00
Christoph Oelckers
fad406c4c9 - got rid of FNameNoInit and made the default constructor of FName non-initializing.
This setup has been a constant source of problems so now I reviewed all uses of FName to make sure that everything that needs to be initialized is done manually.
This also merges the player_t constructor into the class definition as default values.
2018-08-19 08:19:19 +02:00
Christoph Oelckers
0c5a47ac90 - fixed: MF3_DONTSPLASH disabled all terrain effects, not just the splash.
Untested for now because the report came without any example to check it with.
2018-06-02 12:10:44 +02:00
Christoph Oelckers
9bdb0f2e49 - renamed the flag bits for sector_t::MoreFlags, so that they are easier to distinguish from sector_t::Flags.
- precalculate if a sector's floor and ceiling plane overlap. This avoids rechecking this for each single call of hw_FakeFlat.
- vertices must be marked dirty every time they change after map setup. That means that ChangePlaneTexZ must do this as well, because it cannot rely on interpolation taking care of it.
- Having a 'dirty' argument for SetPlaneTexZ's ZScript version makes no sense. If the value changes from the script side the vertices must always be marked to be recalculated.
2018-05-01 11:29:29 +02:00
alexey.lysiuk
2ae8d39441 Removed all superfluous #include's
Automatically optimized by CLion IDE with manual corrections
2018-04-24 14:30:35 +03:00
alexey.lysiuk
b0261d9545 Actor's Activation property is now stored in saved game
https://forum.zdoom.org/viewtopic.php?t=60295
2018-04-21 13:12:12 +03:00
Christoph Oelckers
d474b849a5 - removed the remaining calls from the FRenderer interface from the main game code.
This does not work with a setup where the same backend is driving both renderers.
Most of this is now routed through 'screen', and the decision between renderers has to be made inside the actual render functions.
The software renderer is still driven by a thin opaque interface to keep it mostly an isolated module.
2018-04-04 00:21:25 +02:00
alexey.lysiuk
17bc9c3f69 Fixed handling of default value in Actor.Vec3Angle() 2018-03-31 11:46:06 +03:00
alexey.lysiuk
341a9bcf91 Added target and last enemy to linetarget CCMD output
https://forum.zdoom.org/viewtopic.php?t=59716
2018-03-18 11:23:24 +02:00
Major Cooke
7ac8b496f1 Added Distance(2/3)DSquared functions. 2018-02-28 09:28:11 +01:00
ZZYZX
ef867c3415 Fixed arg0str for dynamic light actors 2018-02-04 03:37:41 -05:00
Christoph Oelckers
2bb80e3d0b - fixed: Upon resurrection, a monster must check if the current setting of the link flags (NOBLOCKMAP and NOSECTOR) match the defaults. 2018-01-29 18:18:31 +01:00
Christoph Oelckers
56e2db38fd - Use FName instead of FString to store arg0str in FMapThing.
This is because FMapThing gets memset to 0 and changing that would cause more work than it is worth to keep the string. The only thing it is used for is the color for dynamic lights and those do not need case sensitivity so a name will just do as well, but require less adjustments elsewhere.
2018-01-21 09:10:04 +01:00
Christoph Oelckers
6aaf5df617 - reworked spot lights to receive all relevant information through the args.
As a bonus, arg0str can now be used for all dynamic lights to pass a color in textual form, including X11R6RGB-names.
2018-01-20 22:41:28 +01:00
Christoph Oelckers
dbf0a68b02 Merge commit '67e3106254e987f5acb9534e725d4f5c3eaa82b2'
# Conflicts:
#	src/doomdata.h
#	src/namedef.h
#	src/p_udmf.cpp
2018-01-20 19:07:54 +01:00
Rachael Alexanderson
ee9736fbb3 - print out FriendlySeeBlocks on 'info' ccmd
- not setting FriendlySeeBlocks on UDMF now causes the actor to use its ZScript default
2018-01-09 15:48:19 -05:00
Rachael Alexanderson
9c189e5d4b - expose a monster's 'friendlyseeblocks' to UDMF 2018-01-09 15:30:45 -05:00
Rachael Alexanderson
7416f42b47 - add 'FriendlySeeBlocks' actor property that allows a modder to expand the maximum radius that a friendly monster can see enemies. 2018-01-09 12:34:12 -05:00
Jonathan Russell
e754fe04ef - removed the 0 check on the UDMF property, so 0 can be a valid aperture 2018-01-04 23:22:45 +00:00
Jonathan Russell
7f7c720883 - added UDMF properties for spotlights (args have all been used up for dynlights) 2018-01-04 22:41:57 +00:00
alexey.lysiuk
8f70d70dd6 Generalized maximum amount for give cheat
https://forum.zdoom.org/viewtopic.php?t=58930
2017-12-31 15:25:51 +02:00
alexey.lysiuk
294bf6ed53 Simplified base class checks in AActor::GiveInventory() 2017-12-31 15:23:54 +02:00
alexey.lysiuk
de4fc97ac6 Fixed ammo limit for give cheat
https://forum.zdoom.org/viewtopic.php?t=58930
2017-12-31 13:30:30 +02:00
Rachael Alexanderson
45531090a7 - add 'playerrespawn' skill flag to allow gameplay mods to retroactively enable player respawns in single player on all maps 2017-12-28 00:53:30 -05:00
Christoph Oelckers
12ad7ee933 Do not call DoEffect when predicting player movement. 2017-09-02 07:57:03 +02:00
nashmuhandes
42db31b816 Added per-actor camera FOV. 2017-08-28 21:14:11 -04:00
Christoph Oelckers
2e670ae71d - fixed: When offsetting the projectile for testing, P_CheckMissileSpawn must also reset the projectile's sector to its new location.
If this isn't done the portal checks may fail and create incorrect positioning info.
2017-08-27 09:16:04 +02:00
Christoph Oelckers
4483d665d4 - fixed: FastProjectile's movement code was missong a portal check. 2017-08-12 13:58:16 +02:00
Christoph Oelckers
163b10286f - Reset interpolation coordinates for all actors before the current thinking turn instead of at the start of each actor's own Tick function so that indirect actor movement gets properly interpolated. 2017-08-12 11:48:36 +02:00
Rachael Alexanderson
91ff447a90 - fixed compile from last commit
- refactored the zscript hookup a bit, made it actually work
2017-07-29 17:03:43 -04:00
Christoph Oelckers
b81a23c5e5 - fixed return type of CountsAsKill. 2017-07-25 08:14:46 +02:00
Christoph Oelckers
e8e940d221 - fixed portal handling for P_CheckMissileSpawn to obey commonly established rules about portal types. 2017-07-20 18:32:54 +02:00
Rachael Alexanderson
63d9148604 Merge https://github.com/coelckers/gzdoom 2017-06-09 05:57:10 -04:00
Christoph Oelckers
8c053c0141 - let P_CheckMissileSpawn also clear MF2_PCROSS before checking the move. 2017-06-08 09:00:26 +02:00
Major Cooke
15df231a95 - Fixed: Vel3DFromAngle's internal function call had the pitch and angle parameters backwards: 2017-06-08 08:54:30 +02:00
Rachael Alexanderson
717e9dd0d8 Merge https://github.com/coelckers/gzdoom 2017-06-07 16:46:21 -04:00
Christoph Oelckers
55df3a91ec - fixed: P_CheckMissileSpawn's setup for P_TryMove must be done in a way that allows detecting portal transitions.
By setting the position before the call any portal lying between the actual spawn point and the check position would be skipped.
2017-06-07 22:42:59 +02:00
Rachael Alexanderson
5d40b2c36c Merge https://github.com/coelckers/gzdoom 2017-06-04 21:04:33 -04:00
Rachael Alexanderson
757957bfac - prevent SetShaded action function from messing up the RGB-to-PAL conversion with a possible overflow
- add RGB-to-PAL support for UDMF fillcolor property
2017-06-04 14:46:03 -04:00
Rachael Alexanderson
64b22f6cb3 Merge https://github.com/coelckers/gzdoom 2017-06-03 22:34:13 -04:00
jplebreton
2c7a0c87c8 add FloatBobStrength Actor property, a multiplier on Z offset created by FloatBob behavior. default of 1.0 is current behavior, set higher/lower for more/less extreme bobbing. 2017-06-03 18:02:27 +02:00
Rachael Alexanderson
fd0602a163 Merge https://github.com/coelckers/gzdoom 2017-05-19 23:40:51 -04:00
Christoph Oelckers
fc8639226d - yet again Visual Studio's autocompletion feature deleted some tildes. 2017-05-19 21:36:32 +02:00
Christoph Oelckers
e1cd0dc588 - major optimization on carry scroller code.
The old version was checking every single actor in every single sector for being affected by a carry scroller if there was so much as a single such scroller in the map.
Changed it so that the scroll thinker flags all actors in the affected sectors so that these expensive calculations can be skipped for everything else.
This change and reduce think time by 1/3 on maps like ZDCMP2 (on the test machine it went down from 6 ms to 4 ms on this map.)
2017-05-19 16:31:44 +02:00
Rachael Alexanderson
0f54d7f854 Merge https://github.com/coelckers/gzdoom 2017-05-17 08:53:34 -04:00
Rachael Alexanderson
a96ef5276d - Added new flags8 actor field. Isn't it frightening how quickly how we got to our 8th flag field?
- Speaking of frightening, added +FRIGHTENING flag.
2017-05-15 19:17:46 +02:00
Rachael Alexanderson
ac244b3229 Merge https://github.com/coelckers/gzdoom 2017-05-10 05:15:49 -04:00
Christoph Oelckers
8be7ff01dd - removed some pointless restrictions from AActor::IsOkayToAttack which prevented its use on normal monsters.
This all made sense as long as the function was only used internally but that's not the case anymore.
2017-05-09 09:57:38 +02:00
Rachael Alexanderson
a59336908c Merge https://github.com/coelckers/gzdoom 2017-05-02 03:13:40 -04:00