Christoph Oelckers
85a84b5e94
- scriptified FastProjectile.
2017-01-13 00:35:56 +01:00
Christoph Oelckers
cc58f13e4e
- scriptified the sector silencer.
2017-01-12 23:35:24 +01:00
Christoph Oelckers
3d73919092
- scriptified CustomBridge.OnDestroy.
2017-01-12 22:56:06 +01:00
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
0b94d4e0a3
- scriptified the bridge things, except the Destroy method which still requires work to allow virtually calling this.
2017-01-12 19:55:25 +01:00
Rachael Alexanderson
a3ad22a460
Merge https://github.com/coelckers/gzdoom
2017-01-11 18:54:43 -05:00
Christoph Oelckers
ea163f3898
- exported FCheckPosition to the VM and completed the parameter lists for Actor.CheckPosition and Actor.TryMove.
2017-01-12 00:26:16 +01:00
Christoph Oelckers
5ef9429ae4
- added the ability to attach a constructor or destructor to an internally defined struct.
...
There are a few which require explicit native construction or destruction that need to be exported to the VM, e.g. FCheckPosition.
The VM cannot handle this directly, it needs two special functions to be attached to handle such elements.
2017-01-11 23:46:03 +01:00
Rachael Alexanderson
799d0d1091
Merge remote-tracking branch 'remotes/gzdoom/master'
2017-01-10 19:39:12 -05:00
Rachael Alexanderson
0362deefc4
Merge commit '6552e5a7a18cb334dfa1000e0c52836df2edec95'
2017-01-10 19:38:15 -05:00
Christoph Oelckers
de4153ceaf
some groundwork for the implementation of dynamic arrays
...
- created script exports for all relevant functions with all integral types.
- created script side definitions for the underlying data types.
- added a void pointer type so that the prototype for the pointer array can use a generic type every pointer can be assigned to.
2017-01-11 00:57:31 +01:00
Christoph Oelckers
11d93cb030
- removed r_columnmethod 1 because the code was broken and already gone from QZDoom.
2017-01-10 22:28:15 +01:00
Christoph Oelckers
3e4f799bbc
- made Actor.DamageMobj virtual.
2017-01-10 21:31:52 +01:00
Christoph Oelckers
3f94a15cfe
- added a virtual PostSpawn method to RandomSpawner, this will get called when the actor has been spawned so that the spawner can do some special setup with it.
2017-01-10 20:14:48 +01:00
Christoph Oelckers
06c97d898b
- added a new parameter to A_CustomRailgun to customize the inaccuracy induced by a moving target.
2017-01-10 20:08:23 +01:00
Christoph Oelckers
3696d34806
- added IF_NOSCREENBLINK flag, see http://mantis.zdoom.org/view.php?id=9
2017-01-10 19:57:51 +01:00
Rachael Alexanderson
05662e5c4d
Merge https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/r_bsp.cpp
# src/r_plane.cpp
# src/r_things.cpp
2017-01-09 09:51:06 -05:00
Christoph Oelckers
f78927500e
- exported all meaningful parts of side_t to the VM.
2017-01-08 21:42:26 +01:00
Christoph Oelckers
7a5171a2e9
- fixed: The check for virtual function overrides was never done if the overriding function had no qualifier at all.
...
- fixed several occurences where an 'override' qualifier was missing.
2017-01-08 19:07:26 +01:00
Christoph Oelckers
abdfb8788b
- fixed bad variable assignment in Heresiarch.
2017-01-08 18:53:02 +01:00
Christoph Oelckers
1c74faea73
- exported line_t's functions to the VM.
2017-01-08 15:45:37 +01:00
Christoph Oelckers
cb89a1a81a
- fixed inconsistent use of line_t::portaltransferred.
...
Some parts used 0 as 'nothing' others used UINT_MAX. 0 should refer to the map's default sky, not to nothing.
2017-01-08 14:59:31 +01:00
Magnus Norddahl
d825ec334c
Merge remote-tracking branch 'gzdoom/master' into qzdoom
2017-01-08 04:48:49 +01:00
Christoph Oelckers
d2a51a57e1
- added new Stairs_BuildUpDoomCrush special from Eternity and used it to fix the bad implementation to make Doom's turbo stairs crush. This also removes the crushing from Generic_Stairs entirely, just like it was in Boom.
2017-01-08 01:15:45 +01:00
Christoph Oelckers
3beed216dd
- exported all relevant functions from sector_t.
...
Please note that currently most of these have little use, they are for future feature support.
2017-01-08 00:50:40 +01:00
Rachael Alexanderson
6e06adb795
Merge https://github.com/coelckers/gzdoom
2017-01-07 16:04:46 -05:00
Christoph Oelckers
82adc5bf1e
- exported secplane_t to scripting.
2017-01-07 21:29:43 +01:00
Rachael Alexanderson
de5f5a1221
Merge https://github.com/coelckers/gzdoom
2017-01-06 22:06:25 -05:00
Christoph Oelckers
b11c8fef57
- renamed a few variables for clarity.
2017-01-06 11:56:17 +01:00
Rachael Alexanderson
c2d01522f0
Merge https://github.com/coelckers/gzdoom
2017-01-04 21:55:01 -05:00
Christoph Oelckers
3b7eb849a7
- fixed: The default minimum and maximum distances for A_Teleport were swapped.
2017-01-04 23:56:41 +01:00
Rachael Alexanderson
b934f69303
Merge https://github.com/coelckers/gzdoom
2017-01-04 17:49:09 -05:00
Rachael Alexanderson
0a581754bf
- Made WadSmoosh detection a lot stricter.
2017-01-04 20:48:52 +01:00
Rachael Alexanderson
8651cbc75a
- Wildweasel pointed out that WadSmoosh generates a "SMOOSHED" lump. http://forum.zdoom.org/viewtopic.php?p=967226#p967226
2017-01-04 20:48:52 +01:00
Rachael Alexanderson
4fe3f7611c
- Made WadSmoosh detection more flexible (since it doesn't necessarily require MAP01 to be present).
2017-01-04 20:48:52 +01:00
Rachael Alexanderson
eb7f1b87e5
- Added Wadsmoosh detection.
2017-01-04 20:48:52 +01:00
Rachael Alexanderson
13972eed2b
Merge https://github.com/coelckers/gzdoom
2017-01-03 21:31:55 -05:00
Christoph Oelckers
b132782c49
- scriptified PowerBuddha and PowerFrightener.
2017-01-03 21:03:05 +01:00
Christoph Oelckers
15f30886cd
- scriptified the TimeFreezer powerup.
2017-01-03 20:06:20 +01:00
Rachael Alexanderson
fd9d92d708
Merge https://github.com/coelckers/gzdoom
2017-01-02 22:04:53 -05:00
Rachael Alexanderson
3e59ebb48d
- Removed multithreaded from the menu completely.
...
# Conflicts:
# wadsrc/static/menudef.txt
2017-01-02 18:26:45 -05:00
Rachael Alexanderson
338d338e27
- Moved multithreaded option from Truecolor menu to the Display menu since both the palette and truecolor drawer sets now use it.
2017-01-02 17:55:24 -05:00
Christoph Oelckers
bf09a89b5d
- fixed typo in A_BrainSpit.
2017-01-02 23:26:19 +01:00
Rachael Alexanderson
2591eb2e54
Merge https://github.com/coelckers/gzdoom
2017-01-02 16:52:02 -05:00
Christoph Oelckers
1a16f664e4
- added a TStaticArray class that allows safe access to resizable static data (like the sectors, linedefs, etc.) for the VM.
...
- used this to replace the line list in Sector because that gets already used and implemented proper bounds checks for this type of array.
2017-01-02 21:40:52 +01:00
Rachael Alexanderson
2d1a5e6b36
Merge https://github.com/coelckers/gzdoom
2017-01-01 21:44:56 -05:00
Christoph Oelckers
9948189193
- scriptified PowerProtection and PowerDamage.
...
- made ModifyDamage calls iterative instead of recursive. With going through the VM they'd be too costly otherwise.
- small optimization: Detect empty VM functions right when entering the VM and shortcut them. This is to reduce the overhead of virtual placeholders, which in a few cases (e.g. CanCollideWith and ModifyDamage) can be called quite frequently.
2017-01-01 23:11:48 +01:00
Christoph Oelckers
66cc68606f
- scriptified the methods of APowerMorph.
...
- made some changes to PowerMorph to better deal with recursive calls from UndoPlayerMorph. The flag hackery was only needed because the 'alternative' pointers were cleared far too late.
2017-01-01 19:23:43 +01:00
Rachael Alexanderson
c7dce79831
Merge https://github.com/coelckers/gzdoom
2017-01-01 10:54:19 -05:00
Christoph Oelckers
80effbb547
- fixed: A_M_Refire's 'ignoremissile' parameter lost its default value.
2017-01-01 15:41:40 +01:00
Christoph Oelckers
06900ff8be
- reviewd script code for spawn calls that did not check their results.
...
Nothing should ever assume that spawning an actor is unconditionally successful. There can always be some edge cases where this is not the case.
2016-12-31 10:27:12 -05:00
Christoph Oelckers
3d61d2c1f4
- reviewd script code for spawn calls that did not check their results.
...
Nothing should ever assume that spawning an actor is unconditionally successful. There can always be some edge cases where this is not the case.
2016-12-31 15:40:51 +01:00
Rachael Alexanderson
8954efd33c
Merge https://github.com/coelckers/gzdoom
2016-12-30 19:21:51 -05:00
Christoph Oelckers
267b1842b4
- scriptified a few more of the simpler powerups.
2016-12-31 01:08:09 +01:00
Christoph Oelckers
3b524cbed4
- scriptified PowerInfiniteAmmo to test the exported functions.
2016-12-31 00:20:02 +01:00
Christoph Oelckers
fe0f19e1e0
- exported Powerup.InitEffect and EndEffect to scripting.
2016-12-30 23:32:43 +01:00
Rachael Alexanderson
de896920b4
Merge https://github.com/coelckers/gzdoom
2016-12-28 17:38:00 -05:00
Christoph Oelckers
11bea8249a
. added SetMusicVolume script function.
2016-12-28 21:41:06 +01:00
Rachael Alexanderson
972bdc2001
Merge https://github.com/coelckers/gzdoom
2016-12-28 12:41:18 -05:00
Christoph Oelckers
c82189a3d1
fixed: A_JabDagger called S_Sound instead of A_PlaySound.
2016-12-28 18:20:41 +01:00
Rachael Alexanderson
92e4eef553
Merge https://github.com/coelckers/gzdoom
2016-12-27 19:37:53 -05:00
Christoph Oelckers
8708c69f83
- added GetClassName script function.
2016-12-27 19:25:55 +01:00
Magnus Norddahl
e91c5ac54d
Merge branch 'master' into OverlayExtension10
2016-12-27 04:32:13 +01:00
Rachael Alexanderson
d8df255438
Merge https://github.com/coelckers/gzdoom
2016-12-26 15:46:44 -05:00
Rachael Alexanderson
7ea4c9508f
Merge https://github.com/rheit/zdoom
2016-12-26 15:46:17 -05:00
Major Cooke
ff3487d389
Merge branch 'OverlayAlpha' into OverlayExtension9
...
# Conflicts:
# src/p_pspr.cpp
# src/r_draw.cpp
# wadsrc/static/actors/actor.txt
# wadsrc/static/actors/constants.txt
2016-12-26 14:37:22 -06:00
Christoph Oelckers
f5883d3f86
- fixed: DynamicLight needs a render radius of -1 so that it gets excluded from the touching_renderlist.
2016-12-26 12:04:03 +01:00
Christoph Oelckers
19856d6ccb
Merge branch 'master' of https://github.com/rheit/zdoom
2016-12-25 22:56:35 +01:00
Christoph Oelckers
89b7cf4262
- fixed: RenderRadius needs to be serialized.
...
- fixed: CustomBridge can be visible so it shouldn't be completely excluded from the render lists.
2016-12-25 14:35:35 +01:00
ZZYZX
38cb7aeaaa
Invisible and Custom bridges now have RenderRadius -1 to prevent excessive linking
2016-12-25 13:43:32 +02:00
ZZYZX
44c19b5ad9
Changed zero RenderRadius logic - negative values now used for 'no rendering', restored old logic with max(radius, renderradius)
2016-12-25 13:40:21 +02:00
ZZYZX
fcd8a0ce92
Reverted STYLE_None change to P_LinkRenderSectors, implemented zero RenderRadius that effectively disables rendering of an actor entirely
2016-12-25 13:35:03 +02:00
ZZYZX
87b23d160b
Ported RenderRadius and related code from gzdoom branch
2016-12-25 13:09:32 +02:00
Magnus Norddahl
b0febec986
Removed r_columnmethod as its performance gains are too insignificant to justify its complexity on the codebase
2016-12-25 05:05:53 +01:00
Rachael Alexanderson
564bfe482c
Merge branch 'zdoom-rgb666-take3' of https://github.com/raa-eruanna/qzdoom into qzdoom-rgb666
...
# Conflicts:
# src/r_draw.cpp
# src/r_plane.cpp
# src/r_things.h
# src/v_draw.cpp
# src/v_video.cpp
2016-12-24 19:00:28 -05:00
Rachael Alexanderson
6a550c89a9
Merge https://github.com/rheit/zdoom
2016-12-24 18:22:14 -05:00
Rachael Alexanderson
2fa13396f2
- Added r_blendmethod to the menu.
2016-12-24 12:50:17 -05:00
Christoph Oelckers
287974968a
- renamed A_FireCustomMissile and added a deprecated compatibility wrapper to deal with the inverted pitch this function used.
2016-12-24 16:34:45 +01:00
Christoph Oelckers
d4c0ee9e43
- address bad use of pitch in A_CustomMissile.
...
This function calculated everything correctly but ultimately set the vertical velocity wrong. Most importantly this meant that the actual velocity vector and actor pitch - if CMF_SAVEPITCH was used - did not match.
Since this bug has been present since the pitch parameter was added, this deprecates A_CustomMissile and replaces it with a properly implemented A_SpawnProjectile function and handling the compatibility case with a new flag and a scripted wrapper function.
All internal uses of A_CustomMissile have been replaced as well.
2016-12-24 14:46:34 +01:00
Rachael Alexanderson
4755d56bbe
Merge https://github.com/rheit/zdoom
2016-12-24 02:31:38 -05:00
Magnus Norddahl
2bb2395569
Add menu option to enable dynamic lights (independent of the OpenGL setting so that you can have it on in OpenGL and off in Software)
2016-12-23 23:44:52 +01:00
Christoph Oelckers
4fcf9933f0
- copy target to a local variable in A_VileAttack so that it remains accessible if A_Explode destroys the actor.
2016-12-23 16:34:02 +01:00
Christoph Oelckers
a825d1d92f
Merge branch 'ssao' of https://github.com/dpjudas/dpDoom
2016-12-22 12:40:57 +01:00
Rachael Alexanderson
fa66ca214e
Merge https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/win32/zdoom.rc
2016-12-22 06:24:47 -05:00
Christoph Oelckers
3b823fa3eb
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# wadsrc/static/compatibility.txt
2016-12-22 11:29:44 +01:00
Christoph Oelckers
36f87b7135
- removed gl_light_ambient.
...
This really serves no use anymore and is mostly a remnant of old times with dark CRT monitors. The default ambient level was set at 20, meaning a sector light level of 40. This is a value actual levels rarely get to, except when using some lighting effects - but it's for those that the ambient clamping did the most damage.
2016-12-22 11:14:13 +01:00
Rachael Alexanderson
978152f483
Merge https://github.com/rheit/zdoom
...
# Conflicts:
# wadsrc/static/compatibility.txt
2016-12-19 08:16:41 -05:00
alexey.lysiuk
f6b0f2648c
Cleared staircase to secret area in Ultimate Doom E4M3
...
Only the final room with goodies is marked as secret
2016-12-19 12:18:43 +01:00
alexey.lysiuk
28a23d4ff3
Removed unreachable secrets from Doom IWADs
...
See https://forum.zdoom.org/viewtopic.php?t=54632
2016-12-19 12:18:43 +01:00
Rachael Alexanderson
bedf4bccea
Merge commit '1fa37aaeb79d3ab1e5d4aa2b4376130e9f4826fb'
2016-12-18 20:55:45 -05:00
Major Cooke
1bcebb091a
Added option to check the location for resizing, changing the return into a bool.
2016-12-18 11:59:24 +01:00
Major Cooke
3023af8223
- Added A_SetSize(double newradius, double newheight = -1).
...
- Changes the calling actor's radius and height.
2016-12-18 11:59:24 +01:00
Christoph Oelckers
98e549246d
Merge branch 'master' of https://github.com/rheit/zdoom
2016-12-17 17:39:57 +01:00
Rachael Alexanderson
b50ff986a6
Merge https://github.com/rheit/zdoom
2016-12-12 08:26:19 -05:00
Christoph Oelckers
f3762934e3
- fixed: A_AlertMonsters lost one 'self.' during conversion.
2016-12-12 12:50:17 +01:00
Rachael Alexanderson
1a111f48bc
Merge https://github.com/rheit/zdoom
2016-12-11 16:46:08 -05:00
Christoph Oelckers
71fd949f26
Merge branch 'master' of https://github.com/rheit/zdoom
2016-12-11 14:45:42 +01:00
Christoph Oelckers
0f9758bb75
- fixed some conversion errors in A_StalkerLookInit.
2016-12-11 13:17:50 +01:00
Christoph Oelckers
40355f6298
- allow A_M_Refire to be called without state label because this seems to have been used in existing DECORATE mods. This way of calling it will revert to the old behavior of jumping one state forward instead of to a state label.
2016-12-11 13:07:25 +01:00
Christoph Oelckers
898e2900b3
- more fixes in blastradius.txt.
2016-12-11 12:42:55 +01:00
Christoph Oelckers
2b24fee53d
- fixed: A_BlastRadius accessed the player's ReadyWeapon before ensuring it got called from a player.
2016-12-11 12:37:12 +01:00
Christoph Oelckers
aa758159c9
- renamed Actor.NoiseAlert to Actor.SoundAlert to deconflict with the same-named action special.
2016-12-11 12:10:05 +01:00
Rachael Alexanderson
4eef1d99ee
Merge https://github.com/rheit/zdoom
2016-12-10 15:46:35 -05:00
Christoph Oelckers
952e47cfe4
- renamed internal MELEERANGE constant to deconflict with Actor's MeleeRange member.
2016-12-10 16:36:19 +01:00
Rachael Alexanderson
c109ebf7cb
Merge branch 'master' of https://github.com/coelckers/gzdoom
2016-12-09 03:00:02 -05:00
Christoph Oelckers
14400c41b6
Merge branch 'zmaster'
2016-12-08 17:53:41 +01:00
Christoph Oelckers
a4d2468d34
- disable weapon interpolation for offset changes.
...
This has been causing far too many problems so now it will only be done if a A_Weaponoffset is either used with WOF_ADD or WOF_INTERPOLATE.
2016-12-08 17:52:59 +01:00
Rachael Alexanderson
dc07c2075f
Merge branch 'master' of https://github.com/coelckers/gzdoom
2016-12-08 07:47:33 -05:00
alexey.lysiuk
3aac058022
Fixed loading of Hexen and Strife
...
Names in sprite offsets files for these IWADs contain '[' and '\' characters and such names need to be quoted
2016-12-08 12:07:12 +02:00
Rachael Alexanderson
40b68bfea0
Merge branch 'master' of https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/CMakeLists.txt
2016-12-07 23:12:42 -05:00
Christoph Oelckers
1e950d75bd
- made dynamic light attenuation completely opt-in. This can be done either by setting a MAPINFO option for lights that do not automatically specify it and with a light property. The light property will always take precedence, if set.
2016-12-07 23:17:18 +01:00
Rachael Alexanderson
a78b713f4b
Merge https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/v_video.cpp
2016-12-06 18:19:08 -05:00
Christoph Oelckers
e41e404143
Merge branch 'zscript' of https://github.com/rheit/zdoom into gz-zscript
2016-12-06 12:33:52 +01:00
Christoph Oelckers
b2d1b0d7a6
- fixed: FTranslatedLineTarget::angleFromSource returned the attack angle, not the angle between actors when returned from P_LineAttack.
...
For most attack functions this is wrong, it's only the Hexen fighter attack needing this particular value, so it has been split up into two return values now.
2016-12-06 11:04:54 +01:00
Christoph Oelckers
092461ed34
- make dynamic object casts a dedicated VM instruction instead of a builtin function.
...
This can see some heavy use in iterators where saving several hundreds of function calls can be achieved. In these cases, using a function to do the job will become a significant time waster.
2016-12-05 14:52:34 +01:00
Christoph Oelckers
ebdc672985
- fixed: A_Saw was using the wrong angle for adjusting the facing direction at the end.
2016-12-04 10:45:20 +01:00
Christoph Oelckers
94287518e0
- added a virtual CanCollideWith script method that can be overridden to do class specific collision checks.
...
This will get called for both actors taking part in a collision, if one of the two calls returns false it will immediately abort PIT_CheckThing with no collision taking place at all.
2016-12-04 10:13:36 +01:00
Christoph Oelckers
834802def3
- sanitized the old sprite offset adjustment feature and used it to redefine offsets for some sprites that have really bad ones.
2016-12-03 19:49:32 +01:00
Rachael Alexanderson
244eaa99b3
Merge branch 'master' of https://github.com/rheit/zdoom
2016-12-03 13:23:28 -05:00
Christoph Oelckers
fbc8d0e83c
Merge branch 'zscript' of https://github.com/rheit/zdoom into gz-zscript
...
# Conflicts:
# wadsrc/static/zscript.txt
2016-12-03 18:51:10 +01:00
Christoph Oelckers
6a4f867c91
Merge branch 'master' into zscript
2016-12-03 15:54:18 +01:00
Christoph Oelckers
5117b32431
- fixed: The math for emulating the old slop overflow was not correct and made the affected sectors in void.wad display incorrectly.
...
- set compat_polyobj for void.wad because its polyobjects glitch quite a bit with the normal setting.
2016-12-03 14:42:06 +01:00
Christoph Oelckers
0da233a664
changed ZScript include mechanism.
...
* It will now use #include, just like most other definition formats and can be mixed with regular definitions. However, due to how the Lemon-generated parser works this will not recursively pull in all files, but store them in a list and process them sequentially. Functionally this shouldn't make a difference, because ZScript is mostly order-independent - the only thing where order is important is native classes, but these are completely internal to zdoom.pk3 where proper order is observed.
2016-12-03 13:16:09 +01:00
Rachael Alexanderson
c95372052c
Merge branch 'master' of https://github.com/rheit/zdoom
2016-12-02 16:39:50 -05:00
Christoph Oelckers
211d9d92a1
Merge branch 'master' into zscript
2016-12-02 21:14:56 +01:00
Christoph Oelckers
87d2991256
- removed all cluster music definitions so that the default from the gameinfo section can be used to change it.
2016-12-02 20:13:30 +01:00
Christoph Oelckers
fbf8084999
- corrected the export signatures of several script exports to contain the correct classes, so that the fudging in FindFunction could be removed.
...
- fixed PARAM_ACTION_PROLOGUE to assign correct types to the implicit pointers. It gave the actual class to the wrong one, which until now did not matter because all functions were using 'Actor', regardless of actual class association.
- fixed the definition of IceChunk and removed some redundant code here. Since A_FreezeDeathChunks already calls SetState, which in turn calls the state's action function, there is no need to call it again explicitly.
2016-12-02 18:52:58 +01:00
Christoph Oelckers
82c2670617
- removed redundant DoDropItem function. A_DropItem already exists and can be used instead.
2016-12-02 11:42:33 +01:00
Christoph Oelckers
17d9a152e7
- added missing THINGSPEC constants
2016-12-02 00:31:52 +01:00
Christoph Oelckers
cbd61d963f
- removed test messages.
2016-12-02 00:29:32 +01:00
Christoph Oelckers
3f98ba9069
- fixed: The Raven ambient sounds lost their looping flag when they were rewritten to use A_PlaySound instead of A_PlaySoundEx.
2016-11-30 19:08:58 +01:00
Christoph Oelckers
a350275bdf
- re-added two lost parentheses in A_FireGoldWandPL1.
2016-11-30 19:03:46 +01:00
Christoph Oelckers
c927aca2a0
Merge branch 'zscript' of https://github.com/rheit/zdoom into gz-zscript
...
# Conflicts:
# wadsrc/static/zscript.txt
2016-11-30 18:46:23 +01:00
Christoph Oelckers
86544086df
- allow the VM to run on one global stack per thread.
...
It is utterly pointless to require every function that wants to make a VM call to allocate a new stack first. The allocation overhead doubles the time to set up the call.
With one stack, previously allocated memory can be reused. The only important thing is, if this ever gets used in a multithreaded environment to have the stack being declared as thread_local, although for ZDoom this is of no consequence.
- eliminated all cases where native code was calling other native code through the VM interface. After scriptifying the game code, only 5 places were left which were quickly eliminated. This was mostly to ensure that the native VM function parameters do not need to be propagated further than absolutely necessary.
2016-11-30 17:15:01 +01:00
Christoph Oelckers
47884f8a71
- fixed a few bad declarations.
2016-11-30 16:19:13 +01:00
Christoph Oelckers
8a50004f55
- cleanup of the virtual function definitions for inventory items. Let's better use 'virtual' and 'override' everywhere to make sure that nothing gets overlooked.
...
- added call wrappers and script hooks for all relevant virtuals in AInventory.
- made GetSpeedFactor and GetNoTeleportFreeze entirely scripted because they are too trivial - also do them iteratively, just like HandlePickup, because it's just a better way to do this stuff.
2016-11-30 15:54:01 +01:00
Christoph Oelckers
b0f3121bec
- split up zscript/shared/inventory.txt.
...
- moved health items to their own file.
- scriptified ScoreItem and MapRevealer whose entire functionality was a small TryPickup method.
- fixed: bit fields in global variables were not correctly written.
This should conclude the inventory cleanup. It is now possible again to find things in there.
2016-11-30 13:36:13 +01:00
Christoph Oelckers
0cd6cec531
- scriptified the SectorFlagSetter.
2016-11-30 01:49:36 +01:00
Christoph Oelckers
fb3bde0e0d
- cleaned up and grouped the virtual function declarations in AActor to ensure that everything has been properly exported.
...
- removed the native parts of SpecialBlastHandling. Since this is called from the script side and the only remaining native remnant was an empty function it's now 100% scripted.
2016-11-30 01:39:06 +01:00
Christoph Oelckers
bbf62132d8
- added a larger batch of function exports.
...
- cleaned up the virtual function interface of APlayerPawn which still had many virtual declarations from old times when class properties were handled through virtual overrides. None of this makes sense these days anymore.
2016-11-30 01:25:51 +01:00
Christoph Oelckers
9193466572
- scriptified ASecurityCamera and AAimingCamera.
...
This concludes this round of script converesions of internal classes.
2016-11-29 20:16:14 +01:00
Christoph Oelckers
a13e23dbe6
- scriptified some trivial stuff from g_shared.
2016-11-29 19:50:34 +01:00
Christoph Oelckers
0c969746d0
- scriptified Hexen's spike, which was the last remaining item in the game directories.
...
- added a BlockThingsIterator for scripts.
2016-11-29 18:42:48 +01:00
Christoph Oelckers
f17f6c30c2
- scriptified the Heresiarch.
2016-11-29 17:17:10 +01:00
Christoph Oelckers
f5b3429274
- partial scriptification of the Heresiarch
2016-11-29 15:24:38 +01:00
Christoph Oelckers
e01f680b72
- scriptified the Mauler, completing Strife.
2016-11-29 14:32:49 +01:00
Christoph Oelckers
b625156df6
- scriptified Strife's flamethrower and grenade launcher.
2016-11-29 14:12:39 +01:00
Christoph Oelckers
5beebb83b7
- scriptified Strife's assault gun and missile launcher.
2016-11-29 13:28:43 +01:00
Christoph Oelckers
be5ba70ed2
- scriptified Strife's dagger and crossbow.
2016-11-29 13:00:07 +01:00
Christoph Oelckers
3af9232fca
- scriptified a_strifeitems.cpp and a_debris.cpp.
...
- Changed the glass shards so that they do not have to override FloorBounceMissile. It was the only place where this was virtually overridden and provided little usefulness.
- made 'out' variables work.
- fixed virtual call handling for HandlePickup.
2016-11-29 12:17:05 +01:00