Christoph Oelckers
daf43f9d35
- added polyobject serializer.
...
- added sanity checks to prevent a savegame from being loaded with an incompatible map
- refactored a few things to simplify serialization.
- started work on main level serializer function.
2016-09-20 09:11:13 +02:00
Christoph Oelckers
c665cc53f9
- moved new code to its proper location and started moving the replaced old archive code to a placeholder file for easy removal later.
2016-09-19 10:34:54 +02:00
Christoph Oelckers
9313a99e12
- started implementing a JSON based serializer. Unfortunately it is far too slow to be of any real use.
2016-09-18 13:26:34 +02:00
raa-eruanna
dede94b7e2
Merge branch 'master' of https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/posix/cocoa/i_video.mm
# src/win32/hardware.cpp
# wadsrc/static/menudef.txt
2016-09-08 03:26:11 -04:00
raa-eruanna
32f758de41
Merge branch 'truecolor' of https://github.com/dpjudas/zdoom
...
# Conflicts:
# src/v_video.cpp
2016-09-08 03:19:08 -04:00
Christoph Oelckers
58bc64ee8f
Merge branch 'master' of https://github.com/rheit/zdoom
2016-08-26 02:20:53 +02:00
Christoph Oelckers
465792df0a
- make sure that after travelling has finished, no travelling thinkers are left in the list.
...
Since this list is excluded from regular thinker cleaning, anything that may survive through the end of G_FinishTravel will endlessly multiply and severely break the following savegames or just simply crash on broken pointers.
2016-08-26 02:16:06 +02:00
Christoph Oelckers
4a822a8f50
Merge branch 'master' of c:\programming\doom-dev\zdoom into Branch_97ff4cc02574e3773ff231b1d74c0fdb25e9440d
2016-08-25 22:02:23 +02:00
Christoph Oelckers
9ca6764556
Revert "- removed STAT_INVENTORY."
...
This reverts commit 5ff0abe568
.
- use STAT_INVENTORY only for held items.
Seems this was causing some strange issues with hubs, but for items placed in the world it still cannot be allowed to have them in a different statnum.
2016-08-25 21:41:17 +02:00
Christoph Oelckers
5c267a2169
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# wadsrc/static/language.eng
2016-08-21 08:42:06 +02:00
Christoph Oelckers
5ff0abe568
- removed STAT_INVENTORY.
...
This was causing issues with sprite sorting. For this to work as intended, all actors in the world that display sprites need to remain in spawn order, including inventory items.
The only thing this statnum was used for were some bot related search actions which are simply not worth breaking actual maps for some very minor performance gain.
2016-08-20 19:10:14 +02:00
Magnus Norddahl
b322043724
Merge remote-tracking branch 'upstream/master' into truecolor
2016-06-19 23:13:16 +02:00
Christoph Oelckers
b7d13c0711
Merge branch 'master' of https://github.com/rheit/zdoom
2016-06-17 16:18:24 +02:00
Christoph Oelckers
05fabbe294
- fixed: G_InitNew may only clear the hub statistics when it is not called during loading of a savegame.
2016-06-17 16:14:58 +02:00
Magnus Norddahl
9420826094
Merge remote-tracking branch 'upstream/master'
2016-06-10 16:59:20 +02:00
Magnus Norddahl
0c8c9e0aea
Added FDynamicColormap support to true color mode
2016-06-05 14:08:03 +02:00
Christoph Oelckers
18ebe92cfc
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# src/g_level.cpp
2016-06-01 11:45:57 +02:00
Christoph Oelckers
26a15d0ccc
- delete thinkers before starting to restore the savegame data to avoid interference of the old thinkers' Destroy() method with the newly loaded data.
...
Note that even with this change it is still not possible to unarchive any thinker pointers before the thinker list has been loaded as it would create broken lists.
2016-06-01 11:43:56 +02:00
Christoph Oelckers
9c6e7753d8
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# src/p_spec.cpp
# src/r_bsp.cpp
# src/r_defs.h
2016-04-20 19:56:07 +02:00
Christoph Oelckers
e5dc92f998
- some reshuffling of save data so that the actors won't get restored before the sectors.
...
Note that this required splitting P_SerializeWorld, because sector_t and FSectorPortal contain some actor pointers, for which the same rule applies: Portal linking can only be done after all sectors have been read, meaning it cannot be done along with the rest of the data in these structures.
Obviously such a change breaks savegame compatibility so the min. savegame version had to be increased again.
2016-04-20 19:42:00 +02:00
Christoph Oelckers
082042818b
- refactored sector portal data so that it does not rely on actors.
...
This is necessary because otherwise the level data cannot be serialized before the actors.
2016-04-20 19:20:11 +02:00
Christoph Oelckers
990f5a79b4
Merge branch 'master' of https://github.com/rheit/zdoom
2016-04-18 15:29:45 +02:00
Christoph Oelckers
2327107f32
- fixed: Actors cannot be linked into the world until after all actors and sectors have been deserialized.
...
Two issues:
Portal linking requires all skyboxes in the sectors to be present, without them some info is not there when needed.
UpdateWaterLevel was called in AActor::Serialize, which operated on the freshly loaded level where lots of things haven't been set up yet and plane heights may be wrong.
2016-04-18 15:27:19 +02:00
Christoph Oelckers
447ce0abe7
Merge branch 'floatcvt' of https://github.com/rheit/zdoom into floatcvt
...
# Conflicts:
# src/p_saveg.cpp
# src/r_defs.h
2016-04-03 22:16:06 +02:00
Christoph Oelckers
3ee42f6aa6
- removed all savegame compatibility handling, since the data is just too different from what it was before to try to convert it.
2016-04-03 20:55:23 +02:00
Christoph Oelckers
ae14268989
Merge branch 'floatcvt' of https://github.com/rheit/zdoom into floatcvt
...
# Conflicts:
# src/r_utility.cpp
2016-03-29 10:09:03 +02:00
Christoph Oelckers
0a238e7e18
Merge branch 'master' into floatcvt
2016-03-28 22:53:26 +02:00
Christoph Oelckers
a92de84cf7
- this stuff should not have been saved...
2016-03-28 22:53:10 +02:00
Christoph Oelckers
d87f861e87
Merge branch 'master' into floatcvt
...
# Conflicts:
# src/p_spec.cpp
# src/p_spec.h
2016-03-28 22:23:41 +02:00
Christoph Oelckers
263051a77b
- removed a few unnecessary #includes.
2016-03-28 22:20:25 +02:00
Christoph Oelckers
a46a4c81b1
Merge branch 'master' into floatcvt
...
# Conflicts:
# src/p_lnspec.cpp
# src/p_spec.cpp
# src/p_spec.h
2016-03-28 17:46:19 +02:00
Christoph Oelckers
b5f333798e
- moved all scroller related code into its own file, including the DScroller class definition.
2016-03-28 17:27:55 +02:00
Christoph Oelckers
30b57fd7b0
- floatification of G_CheckSpot and a few other things.
2016-03-26 09:28:00 +01:00
Christoph Oelckers
48afdd7dcb
Merge branch 'floatcvt' of https://github.com/rheit/zdoom into floatcvt
...
# Conflicts:
# src/CMakeLists.txt
# src/actor.h
2016-03-21 01:34:39 +01:00
Christoph Oelckers
289cdfbefd
- made AActor::floorclip a double.
2016-03-20 23:42:27 +01:00
Christoph Oelckers
8362c6a856
- conversion of floorz to double.
2016-03-20 19:52:35 +01:00
Christoph Oelckers
51b05d331d
- replaced AActor::vel and player_t::Vel with a floating point version.
...
- Converted P_MovePlayer and all associated variables to floating point because this wasn't working well with a mixture between float and fixed.
Like the angle commit this has just been patched up to compile, the bulk of work is yet to be done.
2016-03-20 00:54:18 +01:00
Christoph Oelckers
671291227e
- first stage of converting actor angles to float complete
...
Patched up everything so that it compiles without errors again. This only addresses code related to some compile error. A large portion of the angle code still uses angle_t and converts back and forth.
2016-03-16 12:41:26 +01:00
Christoph Oelckers
f0192a2349
Merge branch 'master' of https://github.com/rheit/zdoom
2016-03-12 16:55:59 +01:00
Christoph Oelckers
651817fad7
- made AActor::velx/y/z and player_t::velx/y fixedvec's.
...
(This commit is 95% search & replace with only a few places where velz was used as a local variable changed.)
2016-03-12 14:11:43 +01:00
Christoph Oelckers
7de2139e9f
Merge branch 'master' of https://github.com/rheit/zdoom
2016-03-10 15:15:59 +01:00
Randy Heit
76489e7638
More gracefully handle travelling to a map without matching player starts
...
- First, don't crash when travelling to a map in a hub that doesn't have
any player starts that match the position given to Teleport_NewMap (or
equivalent).
- Seconed, move the player to the location they were at when the left the
level. At least that way, they shouldn't be in random geometry or off
the map entirely.
2016-03-08 21:51:12 -06:00
Christoph Oelckers
a96d6ab072
Merge remote-tracking branch 'remotes/zdoom/master'
...
# Conflicts:
# src/g_level.cpp
# src/p_3dfloors.cpp
# src/p_lnspec.cpp
# src/p_saveg.cpp
# src/p_spec.cpp
# src/r_bsp.cpp
# src/r_data/r_interpolate.cpp
# src/r_data/r_translate.cpp
# src/r_data/sprites.cpp
# src/r_defs.h
# src/r_sky.h
# src/stats.h
# src/textures/texturemanager.cpp
# src/textures/textures.h
# src/version.h
# src/win32/fb_d3d9.cpp
# src/win32/hardware.cpp
# src/win32/i_system.cpp
# wadsrc/static/actors/doom/doomarmor.txt
# wadsrc/static/compatibility.txt
# wadsrc/static/language.enu
# wadsrc/static/mapinfo/common.txt
# wadsrc/static/menudef.txt
# wadsrc/static/xlat/eternity.txt
2016-03-01 18:50:45 +01:00
Randy Heit
55142078d8
Normalize line endings
2016-03-01 09:47:10 -06:00
Christoph Oelckers
954f03e531
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# src/actor.h
2016-02-25 01:40:36 +01:00
Christoph Oelckers
e11da06e69
- some preparations for actor interpolation through wall portals.
2016-02-25 00:41:31 +01:00
Christoph Oelckers
8362a4516f
Merge branch 'master' of https://github.com/rheit/zdoom
2016-02-24 11:26:35 +01:00
Christoph Oelckers
51da78ba29
- added a compatibility option to allow multiple exits to be triggered.
...
This is required by Daedalus's travel tubes which contain a faulty script with some leftover debug code.
2016-02-24 10:35:29 +01:00
Christoph Oelckers
56202c49f1
Merge branch 'master' of c:\programming\doom-dev\zdoom
...
# Conflicts:
# .gitignore
2016-02-16 21:02:13 +01:00
Christoph Oelckers
6adb069506
- rewrote p_local.h so that it doesn't pull in the entire bunch of headers.
...
This was to resolve some circular dependencies with the portal code.
The most notable changees:
* FTextureID was moved from textures.h to doomtype.h because it is frequently needed in files that don't want to do anything with actual textures.
* split off the parts from p_maputl into a separate header.
* consolidated all blockmap related data into p_blockmap.h
* split off the polyobject parts into po_man.h
2016-02-15 02:14:34 +01:00
Christoph Oelckers
8bc7a0a24e
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-30 23:01:36 +01:00
Christoph Oelckers
0a0a2c4a41
- removed a warning.
2016-01-30 12:59:15 +01:00
Edward Richardson
40d90ba325
Game still needs to abort if no starts exist at all
2016-01-30 22:26:47 +13:00
Edward Richardson
c1e362ee83
Added level transition spawning for missing starts
...
- Additional player bodies are spawned for any absent starts in co-op.
- Removed now-redundant bot start limitation
2016-01-30 22:02:27 +13:00
Christoph Oelckers
6ae09334a3
Merge branch 'master' of https://github.com/rheit/zdoom
...
Conflicts:
src/r_defs.h
2016-01-19 10:51:42 +01:00
Christoph Oelckers
57ab1387f2
- yet more refactoring.
...
Note about A_SkelMissile: The direct change of the missile's position was changed to use SetOrigin. If this is later supposed to be portal-aware, such direct coordinate changes are a no-go to ensure that everything is properly maintained.
2016-01-18 18:52:24 +01:00
Christoph Oelckers
f391216ab9
Merge branch 'master' of https://github.com/rheit/zdoom
2016-01-09 19:48:01 +01:00
Christoph Oelckers
71c7f2b42c
- added 'floorterrain' and 'ceilingterrain' sector properties for UDMF. These will take precedence over texture based terrain if used.
...
'ceilingterrain' is needed because the top of 3D-floors refers to the model sector's ceiling, so in order to give a 3D floor a terrain it must be assignable to the sector's ceiling.
Note that although it is basically the same property, its actual function bears no relevance to its use in Eternity.
2016-01-09 12:10:36 +01:00
Christoph Oelckers
4ed78d78cc
Merge branch 'master' of https://github.com/rheit/zdoom
2015-11-25 11:51:11 +01:00
alexey.lysiuk
20bf4d6c8e
Fixed crash on finishgame CCMD in non-game modes
...
http://forum.zdoom.org/viewtopic.php?t=49943
2015-11-21 17:43:49 +02:00
Christoph Oelckers
61e09da1be
Merge branch 'master' of https://github.com/rheit/zdoom
2015-09-06 08:41:27 +02:00
Edward Richardson
9aabc85281
Fixed loading default map saves
...
- Just like normal maps, default map stores an FString as a map name.
2015-09-05 17:13:54 +12:00
Christoph Oelckers
02c3828e8d
Merge branch 'master' of https://github.com/rheit/zdoom
2015-07-15 13:03:12 +02:00
Christoph Oelckers
19d15d7fc8
- fixed: Levels could be exited multiple times, triggering special exit actions for each one.
2015-07-15 09:25:04 +02:00
Christoph Oelckers
ab1d90038c
Merge branch 'master' of https://github.com/rheit/zdoom
...
Conflicts:
src/p_3dfloors.cpp
2015-04-25 19:45:27 +02:00
Randy Heit
8d501fdb9f
Fix some issues with changing player viewheight at runtime
...
- Viewheight change was delayed: Viewheight must be copied to player
structure as well as the PlayerPawn. Not sure if should actually use
deltaviewheight to spread the change out over a few tics instead of
being instant.
- Viewheight not preserved when travelling: player->viewheight must be
restored from pawn->ViewHeight, because the temporary player set it back
to the default viewheight.
2015-04-22 23:22:27 -05:00
Christoph Oelckers
6eb4e2a224
Merge branch 'master' of https://github.com/rheit/zdoom
2015-03-31 18:25:31 +02:00
Randy Heit
3463b87876
Fixed: MUSINFO was not multiplayer-aware
...
- Move MUSINFO change request out of FLevelLocals and into player_t. This
allows the MusicChanger actors to change music for each player
independantly. This is similar to PrBoom+, which switches depending on
the displayplayer. The difference being, we don't actually track the
music other players are listening to. (Which might not be a bad idea to
implement at some point.)
- Moved a few fields in player_t for better packing.
2015-03-26 23:19:05 -05:00
Christoph Oelckers
97947f9e10
Merge branch 'master' of https://github.com/rheit/zdoom
...
Conflicts:
dumb/vc6/dumb_static/dumb_static.vcproj
wadsrc/static/compatibility.txt
2015-03-15 11:42:59 +01:00
Randy Heit
c7842a8de8
Fix not-Windows
2015-02-24 20:13:03 -06:00
Randy Heit
e4a041cb4c
When changing maps, print map name in console in lower case
2015-02-24 20:12:08 -06:00
Christoph Oelckers
714a9aa2c9
Merge branch 'master' of https://github.com/rheit/zdoom
2015-02-11 09:56:58 +01:00
Christoph Oelckers
337682934c
- fixed: CF_FLY cannot be part of the player_t structure and be tracked properly. It needs to be part of the actor itself that has MF2_FLY set so it got moved to flags7.
...
- removed some fudging code that tried to work around the shortcomings of CF_FLY but was ultimately causing more problems than it solved.
2015-02-10 23:40:53 +01:00
Christoph Oelckers
20036a907a
Merge remote-tracking branch 'remotes/zdoom/master'
2015-02-08 10:58:59 +01:00
ZzZombo
322742d4b1
- Fixed various instances of unused variables, accessing arrays out of bounds, initialization of non-primitive members in constructor's body, dead code, passing parameters by value instead of reference, usage of uninitialized variables, as reported by cppcheck.
2015-02-07 23:35:23 +08:00
Christoph Oelckers
aac1ce4eb7
Merge branch 'master' of https://github.com/rheit/zdoom
2014-12-27 11:52:32 +01:00
Christoph Oelckers
4f383e5aa7
- Nash's force fake contrast submission.
2014-12-26 13:43:49 +01:00
Christoph Oelckers
a7a2d55695
Merge branch 'master' of https://github.com/rheit/zdoom
...
Conflicts:
src/sdl/iwadpicker_cocoa.mm
2014-11-25 16:39:56 +01:00
Christoph Oelckers
a7f4185981
- now that we don't have to care anymore about SVN-related merging problems, let's save the 3 global variables of the GL renderer unconditionally, even if the software renderer is running.
2014-11-16 09:08:47 +01:00
ChillyDoom
ee977f94d7
- Moved bot thinking logic into DBot.
2014-11-14 16:54:56 +00:00
Edward Richardson
eceb37aa64
Added recordmap for recording demos from console
...
recordmap <filename> <map name>
Starts a new game from the specified map recording to the specified
filename
2014-11-01 17:47:29 +13:00
Edward Richardson
82ac6c999e
Destroy old player mobjs when starting new games
2014-10-26 04:14:52 +13:00
Christoph Oelckers
aa338a4dc6
- fixed: G_FinishTravel must synchronize the CF_FLY flag with MF2_FLY.
2014-10-25 01:00:40 +02:00
Christoph Oelckers
2ada3fe00e
- remove debug stuff.
2014-09-13 11:40:06 +02:00
Christoph Oelckers
50a8297201
- fixed: G_ChangeLevel must resolve warptrans map links before getting the next level's levelinfo.
2014-09-13 11:00:25 +02:00
Christoph Oelckers
1e82d72349
- fixed: G_FinishTravel must clear the MF2_BLASTED flag off the player pawn because this flag will result in damage from contact with other objects in the map.
2014-09-13 09:56:21 +02:00
Christoph Oelckers
a21f01bc5f
- added jpalomo's submission to make freelook a 3-state setting, like crouch and jump. This required moving around the flags a bit so demo compatibility had to be bumped. It may also require adjustment for launchers that can set the dmflags.
2014-07-26 10:15:07 +02:00
Christoph Oelckers
8ec95dc58e
- fixed a few places in the savegame code where map names were still truncated to 8 characters.
2014-05-20 10:14:44 +02:00
Christoph Oelckers
ff7913ace8
- fixed: When a level gets loaded the renderer's sky variables need to be set.
2014-05-17 09:46:58 +02:00
Christoph Oelckers
a375454474
- removed 8 character limit for map names.
2014-05-14 00:52:16 +02:00
Christoph Oelckers
24886b6734
- removed the last static character arrays from FLevelLocals.
2014-05-13 23:16:13 +02:00
Christoph Oelckers
ebd6c18bef
- missed one texture name field in level_info_t.
2014-05-13 15:32:54 +02:00
Christoph Oelckers
e718a72b4d
fixed: skies should be loaded into the FLevelLocals struct not into the global variables of the renderer.
2014-05-13 11:53:08 +02:00
Christoph Oelckers
65e8563cf4
replaced all character arrays for lump/texture names in the level_info_t and FLevelLocals structures with FStrings as first preparation for allowing long texture names.
2014-05-13 11:33:59 +02:00
Edward Richardson
6183f8125f
Don't change RNG in demos incase they are static
2014-05-03 03:01:49 +12:00
Edward Richardson
d6af8dc352
Added static RNGseed control
2014-05-03 03:01:40 +12:00
Edward Richardson
9dad8bdbbe
Clear old camera from previous level
...
The sound code could accidentally reference an old invalid camera during
level spawn
2014-03-13 18:27:39 +13:00
Edoardo Prezioso
1fb757f6f1
- Fixed useless 'array != NULL' check.
...
- 'notranslate != NULL' is completely useless, because 'notranslate' is an array, hence removed.
- I interpreted 'SbarInfoScript != NULL' as a typo, since 1)in the next expression inside the condition there's a dereference to 'SBarInfoScript[SCRIPT_CUSTOM]' and 2)'SBarInfoScript[SCRIPT_CUSTOM]' is checked against 'NULL', in line 352, and then dereferenced when introducing 'cstype'.
2014-03-01 22:27:40 +01:00
Randy Heit
b0371e1804
Don't abort when merely checking if a non-map is a map
...
- When P_OpenMapData() is called by P_CheckMapData(), we don't actually
care if any required lumps are missing. This just means it isn't a valid
map, so don't abort with I_Error().
2013-08-30 22:38:57 -05:00
Braden Obrzut
bb494292c6
- Fixed P_CheckMapData allowed non-map lump names to pass resulting in a crash when actually trying to load the map.
2013-08-08 23:47:58 -04:00