Commit graph

16326 commits

Author SHA1 Message Date
Christoph Oelckers
5cd3f86775 - fixed return type. 2019-01-10 18:03:32 +01:00
Christoph Oelckers
2b30ae6ccd - fixed misplaced variable initialization. 2019-01-10 18:02:23 +01:00
Marrub
5dbd81ea7f Make LevelLocals::ExecuteSpecial return int 2019-01-10 17:28:19 +01:00
Marrub
82736985cc Make LevelLocals::ExecuteSpecial return int 2019-01-10 17:28:19 +01:00
Christoph Oelckers
203110c6fe Merge branch 'master' of https://github.com/coelckers/gzdoom 2019-01-10 16:13:41 +01:00
alexey.lysiuk
2cd1ac49eb - unary minus operator propagates boolean operand to integer
https://forum.zdoom.org/viewtopic.php?t=63214
2019-01-10 12:21:16 +01:00
alexey.lysiuk
2bb7d49664 - register interpolators on reading serialization only
Interpolators were added twice when saving a game which led to a cycle in linked list and so to an infinite loop
2019-01-10 11:15:35 +02:00
alexey.lysiuk
f44cf007b7 - fixed sector marker initialization
This fixes a crash when starting a new game for the second time
2019-01-10 10:43:18 +02:00
Christoph Oelckers
d6d66ca774 - the final batch of level removal before refactoring the underlying data. 2019-01-10 03:44:19 +01:00
Christoph Oelckers
ad17bce1f0 - use map time, not hub time for map actions. 2019-01-10 03:42:54 +01:00
Christoph Oelckers
7e3ef4d72d - fixed: The sector tag iterator needs access to the level.
This is done through the tag manager to avoid #include dependency hell. Trying to reference FLevelLocals directly from the inline functions will inevitably create a circular dependency.
2019-01-10 02:50:48 +01:00
Christoph Oelckers
72d09c0338 - the next batch of 'level' removals.
Untested, may not work!
2019-01-10 02:30:38 +01:00
Christoph Oelckers
80427b72e9 - made OP_NEW a builtin function instead of an opcode.
The code was present 3 times due to the JIt, and this is not something that benefits from being a real opcode, even in the interpreted case.
2019-01-10 02:12:43 +01:00
Christoph Oelckers
9506b0e337 - moved the SectorMarker handling into the level itself. 2019-01-10 02:00:58 +01:00
Christoph Oelckers
8cc563b80f - moved particle storage to FLevelLocals. 2019-01-10 01:21:17 +01:00
Christoph Oelckers
2aa9c065ac - added Level parameter to R/P_PointInSector(Sub)Sector. 2019-01-10 00:30:04 +01:00
Christoph Oelckers
a28d5dd973 - moved sound sequence head of list into FLevelLocals. 2019-01-09 22:55:51 +01:00
Christoph Oelckers
ce8d5b48ef - fixing things. 2019-01-09 21:19:27 +01:00
Christoph Oelckers
21ac6ab97f - fixed saving. 2019-01-09 20:54:36 +01:00
Christoph Oelckers
0b2daaf20f - fixed bad variable name. 2019-01-09 20:48:16 +01:00
Christoph Oelckers
c19e1ff5d7 - moved interpolator into FLevelLocals.
- redid P_Ticker. This function is a messy affair of mixing per-level and per-session actions which all depend on proper ordering. As a result it has to run 3 ForAllLevels iterators to ensure that the order does not change.
2019-01-09 20:46:50 +01:00
Christoph Oelckers
45a4bc88a2 - Changed the sound system to ignore sounds not from the primary level.
This is a task for later when other things actually work, but until then, any sound from a sub-level should simply not play at all.
This required giving the positioned S_Sound version a Level argument so that the sound engine can check which level such a sound belongs to.
2019-01-09 19:53:14 +01:00
Christoph Oelckers
00b49282be - the missing parts of last commit. 2019-01-09 19:02:02 +01:00
Christoph Oelckers
4227b9020c - moved bglobal.freeze to FLevelLocals, because this flag has nothing specific to do with bots as it freezes the entire level. 2019-01-09 18:59:41 +01:00
Marrub
adeb8fb65b Fix return value of native BuiltinCallLineSpecial 2019-01-09 18:10:42 +01:00
Christoph Oelckers
cf967b36ff Merge branch 'master' of https://github.com/coelckers/gzdoom 2019-01-09 16:51:43 +01:00
alexey.lysiuk
32cf79c519 - fixed crash with Line_SetPortal special
https://forum.zdoom.org/viewtopic.php?t=63191
2019-01-09 11:41:22 +02:00
alexey.lysiuk
a173021c75 - fixed crash on loading linedefs 2019-01-09 10:55:12 +02:00
alexey.lysiuk
cb4548a160 - fixed compilation error
src\p_tags.cpp(302): error C2143: syntax error: missing ')' before '}'
2019-01-09 10:01:08 +02:00
Christoph Oelckers
0180bcb178 Moved Strife conversation data into FLevelLocals. 2019-01-09 02:03:26 +01:00
Christoph Oelckers
0ed856fbd4 - moved the TIDHash array to FLevelLocals and adjusted the actor iterator code. 2019-01-09 01:42:25 +01:00
Christoph Oelckers
e70d708163 - forgot to delete the static tag manager. 2019-01-09 01:02:03 +01:00
Christoph Oelckers
520d73edf6 - moved the impact decal counter into FLevelLocals and do the counting in a less problematic fashion.
This was yet another piece of code that lived or died with the assumption that there can only be one level, stored in global variables.
2019-01-09 00:04:28 +01:00
Christoph Oelckers
6b9641d673 - moved the tag manager into FLevelLocals.
This also involves deprecating the old creation functions because they do not have a proper level context.
2019-01-08 23:39:48 +01:00
Christoph Oelckers
e91971964f - another large batch of level references removed. 2019-01-08 20:40:43 +01:00
Chronos Ouroboros
d027ef95a3 Fixed multidimensional array definitions. 2019-01-08 17:26:12 +01:00
Christoph Oelckers
c01d3210c2 Merge branch 'master' of https://github.com/coelckers/gzdoom
# Conflicts:
#	src/s_sound.cpp
2019-01-08 17:02:33 +01:00
Christoph Oelckers
cf946ff82a - removed another large batch of 'level' references. 2019-01-08 16:58:14 +01:00
alexey.lysiuk
df2893eb45 - increased range of valid sound positions and velocities
https://forum.zdoom.org/viewtopic.php?t=61420
2019-01-08 16:20:14 +02:00
alexey.lysiuk
ac9ab26556 - fixed crash on sound playback without a level 2019-01-08 16:16:26 +02:00
Christoph Oelckers
457969262d - listenactor can be null. 2019-01-08 12:33:14 +01:00
Christoph Oelckers
73fd072d10 Merge branch 'master' of https://github.com/coelckers/gzdoom 2019-01-08 10:03:57 +01:00
alexey.lysiuk
3d7b4d946b - fixed build of optimized targets
Undefined symbols for architecture x86_64:
  "AActor::__GetLevel() const", referenced from:
      FModelRenderer::RenderModel(float, float, float, FSpriteModelFrame*, AActor*, double) in models.cpp.o
      FCajunMaster::RemoveAllBots(bool) in b_game.cpp.o
      AF_AAmbientSound_Tick(VMValue*, int, VMReturn*, int) in s_advsound.cpp.o
      V_AddPlayerBlend(player_t*, float*, float, int) in v_blend.cpp.o
      ModActorFlag(AActor*, FString const&, bool, bool) in thingdef_properties.cpp.o
2019-01-08 10:13:41 +02:00
Christoph Oelckers
48fa938b10 - Gave DThinker a Level field and replaced all uses of the placeholer __GetLevel function.
Thinkers are always part of a level if they are linked and active, so this reference needs to be kept so that a thinker can unlink itself on destruction.
2019-01-08 01:57:26 +01:00
Christoph Oelckers
8dabd2961d Merge branch 'master' of https://github.com/coelckers/gzdoom 2019-01-08 01:19:26 +01:00
Christoph Oelckers
63c516a1a9 - p_acs.cpp done. 2019-01-08 00:49:49 +01:00
Christoph Oelckers
52fbfb3f49 - removed level references in the software renderers. 2019-01-07 22:31:19 +01:00
Christoph Oelckers
f251e341a8 - continued with the 'level' eradication. 2019-01-07 20:50:34 +01:00
Christoph Oelckers
aac7657fb1 - P_Ticker handled
It may be a bit tricky to separate per-session and per-level actions here - for now only the sound resuming has been moved because that cannot be done per level.
2019-01-07 17:33:17 +01:00
Christoph Oelckers
15f933f20a - did some more simple replacements of level 2019-01-07 17:31:06 +01:00