Commit Graph

171 Commits

Author SHA1 Message Date
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 4d2a52418f - added an errorlog option.
This cuts down on as much message noise as possible, outputs everything to a file specified as a parameter and then quits immediately, allowing this to run from a batch that's supposed to check a larger list of files for errors.
Multiple outputs get appended if the file already exists.
2016-02-09 14:20:49 +01:00
Christoph Oelckers 0b7a06c714 Merge branch 'NewEESpecials'
# Conflicts:
#	src/fragglescript/t_fs.h
2016-02-05 01:01:39 +01:00
Randy Heit b3b0886b64 Merge branch 'scripting'
Conflicts:
	src/actor.h
	src/g_doom/a_doomweaps.cpp
	src/g_hexen/a_blastradius.cpp
	src/p_enemy.cpp
	src/p_enemy.h
	src/thingdef/thingdef.h
	src/thingdef/thingdef_codeptr.cpp
	wadsrc/static/actors/constants.txt
2016-02-04 15:17:22 -06:00
Randy Heit 2d40874cfa Make finishgame CCMD net-aware 2016-01-27 13:19:15 -06:00
Christoph Oelckers 7b5a77a8d8 - added various action specials and parameter extensions defined by Eternity Engine.
The reason for defining them is to be able to fill out the Eternity translation table for GZDoom's Extradata parser.
Most of the new specials are mere specializations of ZDoom's Generic_* functions and occupy positions above 255 to avoid filling up the last remaining free slots available for Hexen format maps.
Allowing action specials greater than 255 required a few changes:
 * all access to action specials is now through a small set of access functions.
 * Two new PCodes were added to ACC to handle these new specials from scripts.
 * a minor change to the network protocol, so netgame  and demo version numbers were bumped.
 * FS_Execute is now properly defined in p_lnspec.cpp.
Two of the newly added specials - generalizations of the special 'close Door in 30 seconds' and 'raise door in 5 minutes' sector types, will also be available to Hexen format maps. The rest are limited to use in ACS, UDMF and DECORATE.
This also adds 'change' and 'crush' parameters to most Floor_* and Ceiling_* specials, again to match Eternity's feature set.
2016-01-25 18:49:56 +01:00
Christoph Oelckers bc63b70d88 Merge branch 'master' into scripting
Conflicts:
	src/actor.h
	src/fragglescript/t_func.cpp
	src/g_doom/a_bossbrain.cpp
	src/g_doom/a_revenant.cpp
	src/g_heretic/a_hereticartifacts.cpp
	src/g_heretic/a_hereticweaps.cpp
	src/g_heretic/a_knight.cpp
	src/g_hexen/a_bishop.cpp
	src/g_hexen/a_clericholy.cpp
	src/g_hexen/a_dragon.cpp
	src/g_hexen/a_firedemon.cpp
	src/g_hexen/a_flechette.cpp
	src/g_hexen/a_heresiarch.cpp
	src/g_hexen/a_hexenspecialdecs.cpp
	src/g_hexen/a_iceguy.cpp
	src/g_hexen/a_korax.cpp
	src/g_hexen/a_magelightning.cpp
	src/g_hexen/a_serpent.cpp
	src/g_hexen/a_spike.cpp
	src/g_hexen/a_wraith.cpp
	src/g_raven/a_minotaur.cpp
	src/g_shared/a_bridge.cpp
	src/g_shared/a_pickups.cpp
	src/g_shared/a_randomspawner.cpp
	src/g_strife/a_alienspectres.cpp
	src/g_strife/a_crusader.cpp
	src/g_strife/a_entityboss.cpp
	src/g_strife/a_inquisitor.cpp
	src/g_strife/a_loremaster.cpp
	src/g_strife/a_programmer.cpp
	src/g_strife/a_sentinel.cpp
	src/g_strife/a_spectral.cpp
	src/g_strife/a_strifestuff.cpp
	src/g_strife/a_strifeweapons.cpp
	src/g_strife/a_thingstoblowup.cpp
	src/p_local.h
	src/r_utility.cpp
2016-01-19 13:43:11 +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 43314f0c0d - started refactoring p_map.cpp
- added AActor::Top function to replace the frequent occurences of actor->z + actor->height.
2016-01-18 00:59:16 +01:00
Christoph Oelckers bf747075e8 Merge branch 'master' into scripting
Conflicts:
	src/actor.h
	src/g_hexen/a_clericstaff.cpp
	src/p_enemy.cpp
	src/p_interaction.cpp
	src/p_local.h
	src/p_mobj.cpp
	src/thingdef/thingdef_codeptr.cpp
2016-01-17 20:57:55 +01:00
Christoph Oelckers cfcd2668cc Merge commit '772a5724313f2ad0bd6828fcc28545a9ee5e6068' into scripting
Conflicts:
	src/p_pspr.cpp
	src/thingdef/thingdef_codeptr.cpp
2016-01-17 20:00:45 +01:00
Christoph Oelckers 5207aa6cc0 Merge commit '125afcf3defb901e23bd44d32fa86681ef1748f6' into scripting
Conflicts:
	src/p_local.h
	src/p_mobj.cpp
	src/thingdef/thingdef_codeptr.cpp
	wadsrc/static/actors/shared/inventory.txt
2016-01-17 19:09:05 +01:00
Christoph Oelckers c611456397 - more refactoring of AActor coordinate access. 2016-01-17 18:36:14 +01:00
Christoph Oelckers 3e446ea04d - replaced access to AActor's coordinate members with access functions
(first 200 compile errors down...)
2016-01-17 13:48:16 +01:00
Edward Richardson f90ce1308e Fix lost focus loosing network data
- Prevented focus loss from dropping network data during level
transitions
- Fixed delay counter underflows
2015-12-03 16:40:47 +13:00
MajorCooke 9c24e9ac71 - Removed the check for APlayerPawn and just went with player checking alone.
- Updated the savever, demogameversion, and mindemoversion.
2015-08-11 06:53:28 -05:00
MajorCooke cac600733f - Added Remove <classname> console command. 2015-08-10 20:45:18 -05:00
Christoph Oelckers 792cad89b3 Merge commit '3849cb86231ce24131a86e9c29795a8cf3706a3d' into scripting
Conflicts:
	src/g_hexen/a_clericstaff.cpp
	src/g_hexen/a_hexenspecialdecs.cpp
	src/p_acs.cpp
	src/p_enemy.cpp
	src/p_interaction.cpp
	src/thingdef/thingdef_codeptr.cpp
	src/thingdef/thingdef_expression.cpp

(Scripting branch update part 4)
2015-04-28 11:59:33 +02:00
Christoph Oelckers d6e3fc0567 Merge commit 'fb9231a38db2025eb77bfd246f36d985cbbccd2e' into scripting
Conflicts:
	src/info.cpp
	src/thingdef/thingdef_expression.cpp
	wadsrc/static/actors/constants.txt

(Scripting branch update part 2)
2015-04-28 09:57:01 +02:00
Christoph Oelckers 56989d3422 Merge commit 'ec5817869592660af6837b9f4e20ed140972a2b2' into scripting
Conflicts:
	src/p_enemy.cpp
	src/p_enemy.h
	wadsrc/static/actors/constants.txt

(Scripting branch update part 1)
2015-04-28 09:34:51 +02:00
Randy Heit d84c85d40f Remove warnings warned by Clang 2015-03-08 17:21:15 -05:00
ChillyDoom 3d7934f1a1 - Fixed: Part of Net_CheckLastReceived treated Net_Arbitrator as a node number rather than a player number. 2015-02-09 20:16:57 +00:00
Christoph Oelckers e047902d56 - resanitation of FDynamicBuffer::SetData. 2015-02-08 17:58:24 +01:00
Christoph Oelckers ae78aeaacb - if this buffer is freed, the pointer referring to it must also be deleted. 2015-02-08 11:48:41 +01:00
Christoph Oelckers 45117b2603 Merge branch 'codesanity' of https://github.com/ZzZombo/zdoom
Conflicts:
	src/info.h
2015-02-08 11:47:49 +01:00
Christoph Oelckers 4959932df7 Merge branch 'changemap2-fix' of https://github.com/Edward850/zdoom 2015-02-08 09:07:12 +01:00
ZzZombo 2c06987f67 - Fixed the sanity commit. 2015-02-08 14:35:45 +08:00
Christoph Oelckers 7789975b6c - reverted a few of Zzombo's changes. 2015-02-07 17:02:46 +01:00
Christoph Oelckers 4e2763e5fa Merge branch 'master' of https://github.com/ZzZombo/zdoom-modified 2015-02-07 16:45:44 +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 6801d0faec Merge branch 'pause' of https://github.com/Edward850/zdoom 2015-02-07 13:03:33 +01:00
Edward Richardson cbb066f1fb Keep gameticker running to let the thread sleep 2015-02-05 22:43:42 +13:00
Randy Heit 775e33ede7 Merge branch 'master' into scripting
Conflicts:
	src/actor.h
	src/g_doom/a_archvile.cpp
	src/g_shared/a_morph.cpp
	src/p_enemy.h
	src/p_local.h
	src/p_mobj.cpp
	src/sc_man_tokens.h
	src/thingdef/thingdef_codeptr.cpp
	src/thingdef/thingdef_exp.h
	src/thingdef/thingdef_expression.cpp
	src/thingdef/thingdef_states.cpp
	wadsrc/static/actors/actor.txt
2015-01-29 20:53:08 -06:00
Edward Richardson b2fbeb24c4 DEM_CHANGEMAP2 wasn't properly skipped 2015-01-24 16:09:15 +13:00
Randy Heit 86986446a5 Fixed: TicSpecial could run out of space when writing data
- Fixed: TicSpecial::CheckSpace() never thought it ran out of space due to
  unsigned math.
- Fixed: TicSpecial::GetMoreSpace() assumed only relatively small amounts
  of data would be written at a time so made no effort to ensure it
  actually got enough space. This assumption could be violated by writing
  a very long string, which can happen when replicating a string cvar.
2015-01-01 17:57:09 -06:00
Christoph Oelckers 4384811745 Merge branch 'NetFix' of https://github.com/ChillyDoom/zdoom 2014-12-24 10:45:38 +01:00
Edward Richardson b24f173d03 Allow players to be popped in packet-server 2014-12-23 22:20:39 +13:00
ChillyDoom f7405a1d24 - Changed two loops from using doomcom.numnodes back to MAXPLAYERS as nodeingame[i] is not necessarily the same as playeringame[playerfornode[i]]. 2014-12-22 20:48:27 +00:00
Randy Heit b5e4153c78 Merge branch 'master' into gonesolong
Conflicts:
	src/CMakeLists.txt
	src/b_think.cpp
	src/g_doom/a_doomweaps.cpp
	src/g_hexen/a_clericstaff.cpp
	src/g_hexen/a_fighterplayer.cpp
	src/namedef.h
	src/p_enemy.cpp
	src/p_local.h
	src/p_mobj.cpp
	src/p_teleport.cpp
	src/sc_man_tokens.h
	src/thingdef/thingdef_codeptr.cpp
	src/thingdef/thingdef_function.cpp
	src/thingdef/thingdef_parse.cpp
	wadsrc/static/actors/actor.txt
	wadsrc/static/actors/constants.txt
	wadsrc/static/actors/shared/inventory.txt

- Added register reuse to VMFunctionBuilder for FxPick's code emitter.
- Note to self: Need to reimplement IsPointerEqual and CheckClass, which
  were added to thingdef_function.cpp over the past year, as this file no
  longer exists in this branch.
2014-12-21 21:15:11 -06:00
Randy Heit 2d87eb0ba2 Merge branch 'master' into gonesolong
Conflicts:
	src/CMakeLists.txt
	src/actor.h
	src/g_heretic/a_hereticmisc.cpp
	src/g_heretic/a_hereticweaps.cpp
	src/g_heretic/a_ironlich.cpp
	src/info.h
	src/namedef.h
	src/p_buildmap.cpp
	src/p_enemy.cpp
	src/p_map.cpp
	src/p_mobj.cpp
	src/thingdef/thingdef_codeptr.cpp
	zdoom.vcproj
2014-12-20 19:13:14 -06:00
Edward Richardson 16e0f79fd7 Fix alt-tabbed desync with demos
- Fixed: Stop the game timer if the window looses focus
2014-11-11 02:18:52 +13:00
ChillyDoom 8532b52ffb - Bots are no longer removed when the net arbitrator disconnects. 2014-11-08 17:38:56 +00:00
ChillyDoom a613da43dd - Bot movement is now calculated locally. 2014-11-08 17:38:09 +00:00
ChillyDoom 1b7c07df65 - Fixed: Bots added by different setting controllers could be assigned the same player number. 2014-10-25 14:58:10 +01:00
Christoph Oelckers 20b740d5fc Merge branch 'DBot' of https://github.com/ChillyDoom/zdoom 2014-10-21 14:20:01 +02:00
ChillyDoom db323643f8 - Renamed FBot to DBot and made it inherit from DThinker.
- Fixed: Bots added by players other than the net arbitrator did not have their skill set.
2014-10-14 19:57:11 +01:00
Edward Richardson 29cf6b0daa Fixed PredictionActor size and typo 2014-10-14 12:54:03 +13:00
ChillyDoom 83d84eaae9 - Moved bot related variables from player_t into a new FBot class. 2014-10-13 18:40:25 +01:00
Edward Richardson c9d603d1c3 Unreliable isn't exactly the problem 2014-10-05 18:52:56 +13:00
Edward Richardson 0c1fde81ad Remove PacketServer auto select
PacketServer has the tendency to amplify netgame latency times, so it
really shouldn't be auto selected.
Added a notice in case it's used.
2014-10-05 18:32:32 +13:00