Christoph Oelckers
7b7623d2c4
- split DObject::Destroy into the main method, a native OnDestroy and a scripted OnDestroy method and made the main method non-virtual
...
This was done to ensure it can be properly overridden in scripts without causing problems when called during engine shutdown for the type and symbol objects the VM needs to work and to have the scripted version always run first.
Since the scripted OnDestroy method never calls the native version - the native one is run after the scripted one - this can be simply skipped over during shutdown.
2017-01-12 22:49:18 +01:00
Christoph Oelckers
cd7986b1b1
- refactored global sides array to be more VM friendly.
...
- moved FLevelLocals to its own header to resolve some circular include conflicts.
2017-01-08 18:46:17 +01:00
Christoph Oelckers
66d28a24b8
- disabled the scripted virtual function module after finding out that it only works if each single class that may serve as a parent for scripting is explicitly declared.
...
Needless to say, this is simply too volatile and would require constant active maintenance, not to mention a huge amount of work up front to get going.
It also hid a nasty problem with the Destroy method. Due to the way the garbage collector works, Destroy cannot be exposed to scripts as-is. It may be called from scripts but it may not be overridden from scripts because the garbage collector can call this function after all data needed for calling a scripted override has already been destroyed because if that data is also being collected there is no guarantee that proper order of destruction is observed. So for now Destroy is just a normal native method to scripted classes
2016-11-25 00:25:26 +01:00
Leonard2
7dbc4710f1
Add the new argument to all uses of the implement macro
2016-11-09 17:45:55 +01:00
Leonard2
bb2d61de50
Replaced the many implement macros with a single one that takes arguments instead
2016-11-09 17:45:53 +01:00
Leonard2
0b3585c83f
Separate the pointer list from the implement macro
2016-11-09 17:45:52 +01:00
Christoph Oelckers
72a3257400
- fixed: DIntermissionScreen::Init did not handle non-existent strings in the string table and crashed on a NULL pointer.
2016-05-25 01:45:55 +02:00
Christoph Oelckers
4a79602325
- floatification of g_shared.
...
- rewrote FraggleScript's movecamera function because it was utterly incomprehensible.
2016-03-24 01:46:11 +01:00
Christoph Oelckers
4e60ea0252
- made AActor::alpha a floating point value
...
- replaced some uses of FRACUNIT with OPAQUE when it was about translucency.
- simplified some overly complicated translucency multiplications in the SBARINFO code.
2016-03-21 12:18:46 +01:00
Christoph Oelckers
ada5097e34
- converted scale variables in AActor, FMapThing and skin to float.
2016-03-20 12:13:00 +01:00
Randy Heit
55142078d8
Normalize line endings
2016-03-01 09:47:10 -06: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
Christoph Oelckers
b84207a089
- use scaling, render style and alpha when drawing the cast call.
2016-01-30 11:33:55 +01:00
Braden Obrzut
fd4440cfe4
- Fixed: Intermissions with no screens (such as EndTitle) would result in a double wipe.
2016-01-23 23:34:07 -05: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
alexey.lysiuk
73f4e013f1
Font kerning is no longer ignored in intermission screen
...
See http://forum.zdoom.org/viewtopic.php?t=50304
2016-01-06 13:26:05 +02: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
Christoph Oelckers
a05e62f3f7
- changed storage of lump and texture names in gameinfo to allow long names (with the exception of view border elements.)
2014-05-13 12:44:17 +02:00
Christoph Oelckers
3e4678765b
Merge branch 'master' into scripting
...
Conflicts:
src/actor.h
src/thingdef/thingdef_codeptr.cpp
2013-08-18 12:18:59 +02:00
Christoph Oelckers
072b66fb9f
- fixed: The music that's defined in the Gameinfo section of MAPINFO could not set the order for multitrack music lumps.
2013-08-12 21:11:53 +02:00
Randy Heit
459ad5abff
- Updated scripting branch to latest version in trunk.
...
SVN r4337 (scripting)
2013-06-07 03:31:30 +00:00
Randy Heit
17c7c32a58
- Fixed potential uninitialized access in FMapInfoParser::ParseEndGame().
...
SVN r4287 (trunk)
2013-05-26 02:56:25 +00:00
Randy Heit
2668988870
- Switched to a genericly extensible representation for userinfo.
...
- Fixed: The playerinfo CCMD did not range check the player number.
SVN r4253 (trunk)
2013-05-12 18:27:03 +00:00
Randy Heit
002aa807c5
- Fixed: Don't use the player skin in the cast call if the class being shown has been removed
...
from the PlayerClasses array (and therefore does not have a valid default skin).
SVN r4010 (trunk)
2013-01-02 03:44:42 +00:00
Randy Heit
26c702ada5
- Fixed: Intermission text could run off the bottom of the screen at some resolutions.
...
SVN r3971 (trunk)
2012-11-19 02:16:34 +00:00
Randy Heit
562cf04db2
- Update scripting branch to trunk.
...
SVN r3758 (scripting)
2012-07-14 03:04:41 +00:00
Randy Heit
5f23a972f3
- Fixed: Keys bound to "screenshot" did not work during the finale (aka intermission) sequences.
...
SVN r3470 (trunk)
2012-03-23 01:33:26 +00:00
Randy Heit
038d3cc820
- Initialize mSentAdvance to false.
...
SVN r3334 (trunk)
2011-12-25 22:45:12 +00:00
Randy Heit
8e8331d44c
- Fixed: Pressing a key to advance an intermission screen only worked on
...
the local computer.
SVN r3328 (trunk)
2011-12-06 02:51:32 +00:00
Christoph Oelckers
b5cd69fe4c
- fixed: Invalid intermission string references to the string table could cause a crash.
...
SVN r3301 (trunk)
2011-10-23 09:46:31 +00:00
Christoph Oelckers
fbff5ca932
- moved r_interpolate.cpp and r_translate.cpp to r_data.
...
- merged r_jpeg.h into jpegtexture.cpp because that's the only place where it's ever used.
SVN r3255 (trunk)
2011-07-06 08:50:15 +00:00
Christoph Oelckers
5e5ddd8cc8
- fixed: The help screens were stretched on 16:9 displays
...
- fixed: The bunny scroller did not advance its animation to the end when aborted.
SVN r3102 (trunk)
2011-01-14 09:22:09 +00:00
Christoph Oelckers
5ddd2ecffa
- fixed: Hexen's chess ending should never use the cluster's endtext.
...
SVN r3091 (trunk)
2011-01-05 22:45:25 +00:00
Christoph Oelckers
b42952b85c
- added a 'restart' CCMD that allows restarting the engine with different WADs being loaded without quitting first
...
SVN r3042 (trunk)
2010-12-15 11:45:39 +00:00
Christoph Oelckers
772d59dff4
- fixed handling of missing backgrounds for intermission text screens for real this time.
...
SVN r3041 (trunk)
2010-12-15 08:00:38 +00:00
Christoph Oelckers
d54ee47656
- fixed: The intermission screen did not initialize its texture variable when the texture was invalid.
...
SVN r3023 (trunk)
2010-12-07 16:16:31 +00:00
Christoph Oelckers
86516ecfac
- fixed: The code that set DIntermissionController::CurrentIntermission was missing a write barrier.
...
SVN r3015 (trunk)
2010-12-01 19:56:35 +00:00
Christoph Oelckers
48e17ccf1c
- fixed: The cast call could not handle actors with changing sprites
...
- fixed: The cast call was missing some NULL pointer checks for invalid actor classes.
- fixed: The cast call did not use a translation defined for an actor class.
SVN r2968 (trunk)
2010-10-30 07:21:16 +00:00
Christoph Oelckers
0497171bc0
- fixed: States jumping to themselves should only end an actor's cast call when it happens in the death sequence.
...
SVN r2957 (trunk)
2010-10-17 23:22:09 +00:00
Christoph Oelckers
f318653a11
- fixed: The intermission data was never freed.
...
SVN r2955 (trunk)
2010-10-17 13:25:21 +00:00
Christoph Oelckers
94fd56b6bd
- added option for the cast call to use a 'Death.Cast' sequence so that monsters with an unusable death sequence for the cast call can define an alternative.
...
SVN r2952 (trunk)
2010-10-17 08:02:04 +00:00
Christoph Oelckers
6538bc457b
- fixed: The cast call could time out on overlong death sequences and get stuck.
...
- fixed: The cast call code should treat a waiting state in the death sequence as its end.
SVN r2951 (trunk)
2010-10-17 07:56:49 +00:00
Christoph Oelckers
d969b141b8
- added option to set custom end sequences: Use 'next = endsequence, "sequencename" in MAPINFO.
...
SVN r2929 (trunk)
2010-10-10 06:21:23 +00:00
Christoph Oelckers
a84a015f0c
- fixed: The intermission actions for custom end sequences were never appened to the intermission descriptor.
...
SVN r2922 (trunk)
2010-10-07 22:57:09 +00:00
Christoph Oelckers
ec3e4bb7c7
- fixed: The Player played no sounds in the Doom2 cast.
...
- fixed: The player's melee state is not a proper melee state so it should not be entered when used in the cast.
- fixed: Sounds were played before changing states. That missed situations where the state was entered from anywhere else but the previous state.
SVN r2915 (trunk)
2010-10-06 17:57:56 +00:00
Christoph Oelckers
d9970ab9b6
- merged finale branch back into trunk.
...
SVN r2911 (trunk)
2010-10-06 10:44:03 +00:00