Commit graph

5420 commits

Author SHA1 Message Date
Christoph Oelckers
e42b688afa - finally found the reason why the garbage collector went haywire after a restart: PClass::StaticShutdown set the PClass::bShutdown variable which disables much of the garbage collector. This needs to be cleared after successful cleanup. Restart works now, except for some random CCMDs being executed right afterward.
- fixed incorrect variable init in A_Face* functions which was missed before.
2015-04-28 23:37:04 +02:00
Christoph Oelckers
646c135eff Merge branch 'master' into scripting
Conflicts:
	src/m_cheat.cpp
	src/p_acs.cpp
	src/thingdef/thingdef_codeptr.cpp
	src/thingdef/thingdef_properties.cpp
2015-04-28 23:04:10 +02:00
Christoph Oelckers
a2100410f2 - fix in GL nodes loader. 2015-04-28 22:13:50 +02:00
Christoph Oelckers
f087903fca - remove some redundancy from TeleportFog code. 2015-04-28 22:11:43 +02:00
coelckers
15fbf2510a Merge pull request #320 from edward-san/clang_3_5_crash_solved
- Clang 3.5.1+ fixed the compiler bug in ACS code.
2015-04-28 22:06:50 +02:00
coelckers
ce4adc48a7 Merge pull request #319 from edward-san/inventory
Little TakeInventory refactoring.
2015-04-28 22:06:31 +02:00
Christoph Oelckers
319671b54a - let cheats only give weapons in weapon slots.
This avoids problems which replace the entire arsenal and don't want the original weapons in there.
2015-04-28 22:05:43 +02:00
Christoph Oelckers
407d38f3d6 - add a bit more stuff that needs to be done before a restart to ensure that all obsolete data is taken down.
(There's still a problem with the garbage collector kicking in and deleting stuff it's not supposed to, so Restart still doesn't work)
2015-04-28 21:54:30 +02:00
Christoph Oelckers
0f8972c96b - don't delete any DObjects
FraggleScript's global_script was deleted instead of destroyed.
2015-04-28 21:30:12 +02:00
Edoardo Prezioso
92fe265abe - Clang 3.5.1+ fixed the compiler bug in ACS code.
Referring to commit 1c96039d7a .
2015-04-28 19:25:06 +02:00
Christoph Oelckers
afa022605a - some more fixes of 'Restart'. Still not working as intended. 2015-04-28 19:03:52 +02:00
Christoph Oelckers
91b05366d6 - tried to make 'restart' CCMD work again.
This requires quite a bit more thorough cleanup. I got it to the point where the titlepic appears after restarting, but it still crashes when starting the game so there's more data that needs to be cleaned up...
2015-04-28 16:39:20 +02:00
Edoardo Prezioso
b51fac344d Little TakeInventory refactoring.
Introduce AActor::TakeInventory, which unifies DoTakeInv from ACS and DoTakeInventory from Decorate, and AInventory::DepleteOrDestroy, which is extracted from the DoTakeInv core function, and use both where they're needed.
I don't know if the differences between DoTakeInv and DoTakeInventory were intentional, so I kept both behaviors.
2015-04-28 15:45:11 +02:00
Christoph Oelckers
450e5aec52 - this shouldn't have been committed. 2015-04-28 15:45:10 +02:00
Christoph Oelckers
2d0f6339f7 - fixed some memory leaks: The global symbol table and the argument list for DECORATE called action specials were never freed. 2015-04-28 15:34:48 +02:00
Christoph Oelckers
137e624b55 - needed one more fix in CMake project. 2015-04-28 15:12:21 +02:00
Christoph Oelckers
2e0f999fea Merge branch 'master' into scripting
Conflicts:
	src/p_effect.cpp
	src/p_effect.h
	src/p_local.h
	src/p_map.cpp
	src/thingdef/thingdef_codeptr.cpp
	wadsrc/static/actors/actor.txt
	wadsrc/static/actors/shared/inventory.txt
	zdoom.vcproj
2015-04-28 14:45:13 +02:00
Christoph Oelckers
8447990889 Merge commit '2719ce86dc07c9f7b1ad6d61a9a49c974896abf2' into scripting
Conflicts:
	src/info.h
	src/thingdef/thingdef_codeptr.cpp

(until right before the main work for multiple tags.)
2015-04-28 13:32:50 +02:00
Christoph Oelckers
f7834061df Merge commit 'b6a4511dd1e74440fad99bc673c1f2b3680dba48' into scripting
Conflicts:
	src/dobjtype.cpp
	src/p_conversation.cpp
	src/p_local.h
	src/p_things.cpp
	src/thingdef/thingdef_properties.cpp

(This is just the conversationID to MAPINFO stuff to keep the conflicts as small as possible)
2015-04-28 13:08:18 +02:00
Christoph Oelckers
ddced06be2 Merge commit '6e45c565a0bc8d05279b0b2458a3fb718ae0924c' into scripting
Conflicts:
	src/p_mobj.cpp

(This stops right before moving the conversation IDs into MAPINFO because that feature is quite conflict-heavy and will have to merged by itself.)
2015-04-28 12:59:20 +02:00
Christoph Oelckers
0474560ac6 Merge commit '2ec8e2c2ac61d30f7f1d666ec58ca0fd37e2e3b0' into scripting
Conflicts:
	src/d_main.cpp
	src/info.cpp
	src/p_local.h

(Had to merge this all by itself because it was creating too many merge conflicts when combined with other stuff.
2015-04-28 12:54:01 +02:00
Christoph Oelckers
065c0a79cd Merge commit '4f7ec3ad891d556c0d3f680e209a120ed38e9cdb' into scripting
Conflicts:
	src/d_main.cpp
	src/info.cpp
	src/info.h
	src/p_acs.cpp
	src/p_interaction.cpp
	src/p_mobj.cpp
	src/thingdef/thingdef_codeptr.cpp
	src/thingdef/thingdef_properties.cpp

(scripting branch update part 5)
2015-04-28 12:48:33 +02:00
Christoph Oelckers
2604905b0c - missed one compile error in last merge. 2015-04-28 12:03:06 +02: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
6ebdf7396c Merge commit '8e0151b4c1b88eaf295042ea2d545a83b4b99acc' into scripting
Conflicts:
	src/sc_man_tokens.h
	src/thingdef/thingdef_exp.h
	src/thingdef/thingdef_expression.cpp

(Scripting branch update part 3)
2015-04-28 10:59:50 +02:00
Christoph Oelckers
a13ada3b2d Revert "Merge commit '173dbd6bcee02a9e9c12a4a74d1fffe3e081d162' into scripting"
This reverts commit e9cbb0b223, reversing
changes made to d6e3fc0567.

The merge just copied the obsolete FxFloatCast from master without any conflict so it all had to be removed again.
2015-04-28 10:39:35 +02:00
Christoph Oelckers
e9cbb0b223 Merge commit '173dbd6bcee02a9e9c12a4a74d1fffe3e081d162' into scripting 2015-04-28 10:37:23 +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
7898e189df - fixed problems in CMake project files:
* thingdef_function.cpp no longer exists
* the build rule for zcc-parse.c was not correct.
2015-04-28 09:40:57 +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
Christoph Oelckers
a93c30238b Merge branch 'master' of https://github.com/rheit/zdoom 2015-04-27 20:38:09 +02:00
Christoph Oelckers
c6fe0835d3 - fixed: The check for unblocking overlapping actors was a bit too lax.
The code never checked the starting position of the move and could be erroneously triggered in rare situations where the distance increased between actors but the hit boxes started overlapping because x or y distance got below the radius.
Changed it so that the code only gets executed when there's already an overlap before the move.
2015-04-27 20:37:01 +02:00
Braden Obrzut
9ba5e30bed - Moved autoload initialization to a separate function so that the rest of the ini can be loaded as before. Some platforms do indeed place zdoom.pk3 elsewhere. 2015-04-27 14:15:03 -04:00
Christoph Oelckers
98029a12ec Merge branch 'master' of https://github.com/rheit/zdoom into zmaster 2015-04-27 18:19:44 +02:00
Christoph Oelckers
ae16e5d195 - Assigned editor number 5006 to SkyCamCompat class, to match Eternity's definition. 2015-04-27 18:18:46 +02:00
coelckers
f3105797f4 Merge pull request #318 from edward-san/c++11_fixes
- Fixed C++11 warnings from recent commits.
2015-04-27 17:38:50 +02:00
Edoardo Prezioso
346fcf584c - Fixed C++11 warnings from recent commits. 2015-04-27 15:22:09 +02:00
Christoph Oelckers
47e7a30cab - reshuffled some stuff to satisfy Linux compilers (hopefully) 2015-04-27 13:19:34 +02:00
Christoph Oelckers
d46ba7bfb7 - added pickup sprite for Chex Quest's Mini Zorcher (i.e. pistol replacement.) 2015-04-27 10:24:49 +02:00
Christoph Oelckers
aedd8f89cb Merge branch 'master' of https://github.com/rheit/zdoom 2015-04-27 08:58:06 +02:00
Christoph Oelckers
020808ff40 - updated pistol pickup sprite with one from original beta graphics. 2015-04-27 08:57:36 +02:00
Randy Heit
68e43fe65d You never want to blindly switch between widechar and ANSI functions 2015-04-26 20:53:16 -05:00
Randy Heit
0380ba642b Blur de hur 2015-04-26 20:43:01 -05:00
Christoph Oelckers
13fb76db21 - changed lump reader setup for music so that for uncompressed data it opens a new FILE instead of caching the lump.
This reinstates behavior of pre-OpenAL versions but still uses the FileReader interface to keep the simplified code of the OpenAL branch.
2015-04-26 23:28:05 +02:00
Christoph Oelckers
4294b94728 - since Wads.ReopenLumpNum already performs caching on the lump data it is not really necessary anymore to maintain a separate musiccache, so this code can be removed. 2015-04-26 22:09:19 +02:00
Christoph Oelckers
aecff68a4d - cleanup of sound system startup and menu handling:
* added global functions that check whether FMod and OpenAL are present, without initializing the sound backend.
* make sound init code more fault tolerant. It will now try to switch between FMod and OpenAL if the currently active one cannot be found but the other one can.
* added 'ifoption' checks for sound backend to menu code.
* only show sound backends which are present and hide the options for the ones which are not.
2015-04-26 12:13:21 +02:00
Christoph Oelckers
8e70a9b894 - added a NULL check to FMODStreamCapsule destructor, just to be safe. 2015-04-26 09:58:10 +02:00
Christoph Oelckers
a23afbd7ce Merge branch 'master' into openal 2015-04-26 09:37:49 +02:00
Christoph Oelckers
46e975418d - fixeed: Sound sequence overrides took the parameter from the wrong data structure. 2015-04-26 08:48:49 +02:00
Christoph Oelckers
6bb79be85c - got rid of std::auto_ptr, courtesy of Blzut3's patch. 2015-04-25 17:50:57 +02:00