Commit graph

495 commits

Author SHA1 Message Date
Christoph Oelckers
fc125f7eaf - reworked the obituary system to use scripted virtual overrides. Let's hope this solves the problems with the original code, now that any actor needing special treatment can override it. 2017-02-28 14:30:14 +01:00
Christoph Oelckers
851984efe0 - made GetDeathHeight a virtual scripted function.
- made GetGibHealth a virtual scripted function.
- removed a few more native meta properties.
2017-02-28 13:40:46 +01:00
Christoph Oelckers
d5250d6b9f - made WoundHealth modifiable to allow more control over the wound state. 2017-02-28 12:56:35 +01:00
Christoph Oelckers
2a4a5e7a70 - refactored a few more native meta properties. 2017-02-28 12:47:44 +01:00
Christoph Oelckers
1311f08f47 - scriptified Actor.GetBloodType as a virtual function to allow mods more flexibility here.
- made CameraHeight a modifiable actor property - it was readonly before.
- allow accessing the type constants from ZScript, this required quite a bit of explicit coding because the type system has no capabilities to search for basic types by name.
2017-02-28 12:11:25 +01:00
Christoph Oelckers
b6a1fe7fc6 - scriptified the basic attack functions, its properties and the explosion properties to test the new metadata system. 2017-02-28 10:51:32 +01:00
Christoph Oelckers
a93a7e1cac - handle player meta properties.
Only two really make sense, the rest is never used from scripts and may just remain where it was.
2017-02-28 01:23:12 +01:00
Christoph Oelckers
78a66e001a - properly handle all meta properties for inventory items. 2017-02-28 00:45:16 +01:00
Christoph Oelckers
f343d36ea9 - implemented the basics of a working metadata system.
This will store class meta properties in a separate memory block so that it won't have to muck around with PClass - which made the implementation from the scripting branch relatively useless because extending the data wasn't particularly easy and also not well implemented. This can now be handled just like the defaults.
2017-02-27 23:28:19 +01:00
Christoph Oelckers
321c846d01 - added StealthAlpha actor property for defining a minimum visibility value of a stealth monster. 2017-02-27 19:46:27 +01:00
Christoph Oelckers
f9f9f2d5fc - added selfdamagefactor actor property. 2017-02-27 11:22:51 +01:00
Christoph Oelckers
f918a9d9a7 - added a BOUNCE_NotOnShootables flag that hopefully helps addressing the biggest glitch in the bouncing code. 2017-02-26 22:31:43 +01:00
Christoph Oelckers
7a1f36bfb0 - added RF_DONTINTERPOLATE flag. 2017-02-26 20:01:39 +01:00
Christoph Oelckers
0cc46a2aaf - added a FORCEINFIGHTING flag. 2017-02-26 19:05:20 +01:00
alexey.lysiuk
6ae91ac9ea Fixed scripting type of demoplayback global variable
https://mantis.zdoom.org/view.php?id=334
2017-02-26 10:36:03 +02:00
Christoph Oelckers
35033891ac - added MF7_NOINFIGHTSPECIES flag. 2017-02-25 20:12:30 +01:00
Christoph Oelckers
10c6b7a80b - added a NULL check to the VM's entry point, in case some bad but non-fatal DECORATE results in a function not having generated any code. 2017-02-25 10:57:12 +01:00
Christoph Oelckers
5bc26763cb - fixed: String CVARs get stored as a const char *, not an FString, so the ls opcode cannot be used to read their content. 2017-02-23 22:01:46 +01:00
Christoph Oelckers
fc101049c6 - exported gamestate variable and forced it to 32 bit internally.
- forced gameaction_t to 32 bit to avoid problems with undefined size issues.
2017-02-23 19:29:43 +01:00
alexey.lysiuk
eb40e8bcf0 Removed DYNLIGHT preprocessor definition
https://mantis.zdoom.org/view.php?id=318
2017-02-22 23:02:58 +02:00
Christoph Oelckers
bb6e667f33 - removed some unneeded version.h #includes. 2017-02-20 01:42:53 +01:00
Christoph Oelckers
26144340b8 - fixed: Hexen's poison cloud needs to call P_DamageMobj, even with a damage value of 0. Added a new flag to handle this case because normally this is not desirable. 2017-02-19 23:20:09 +01:00
Christoph Oelckers
68b47d81de - fixed WP_NOCHANGE changes with a restart, so this must be taken into account for the script variable holding it. 2017-02-19 17:58:54 +01:00
Christoph Oelckers
9089beb110 - scriptified most of the remaining parts of DMenu. Only the engine interface remains native now. 2017-02-19 15:23:33 +01:00
Christoph Oelckers
e05242e44d - scriptified the remaining parts of the conversationmenu.
- do not resolve the backdrop texture to a texture ID at load time. This will allow custom menu classes to use this info differently.
- added a new ZSDF userstring property to dialog pages to give mods more means for customization.
- allow overriding the conversation menu class both globally through MAPINFO and per conversation in ZSDF.
2017-02-19 14:21:49 +01:00
Christoph Oelckers
d85b9cdd71 - scriptified the input methods of DConversationMenu.
- fixed handling of DimAllowed.
2017-02-19 13:07:49 +01:00
Christoph Oelckers
2440951811 -scriptified the ReadThis screen. 2017-02-19 00:08:30 +01:00
Christoph Oelckers
aabcc1f92e - scriptified the input functions of DMessageBoxMenu. 2017-02-18 23:05:01 +01:00
Christoph Oelckers
f5a0f6b3bf - almost done with TextEnterMenu. 2017-02-18 21:18:23 +01:00
Christoph Oelckers
5f1241a55c - scriptified the rest of the player menu. This compiles and runs but doesn't work yet, it will be fixed in the next commit. 2017-02-18 01:20:07 +01:00
Christoph Oelckers
50d2846e40 - scriptified UpdateColorsets. 2017-02-17 23:16:07 +01:00
Christoph Oelckers
97eed1e6df - scriptified UpdateSkins. 2017-02-17 22:12:56 +01:00
Christoph Oelckers
498da825a5 - made the Skins array scripting friendly and exported it. 2017-02-17 21:51:23 +01:00
Christoph Oelckers
b523aa13c8 - fixed crash with bad state labels. 2017-02-16 21:51:32 +01:00
Christoph Oelckers
c01289e999 - added ZScript property handling for names, sounds and colors. 2017-02-14 23:28:49 +01:00
Christoph Oelckers
2234d36c7a Merge branch 'thereisnospoon' of https://github.com/jewalky/gzdoom
# Conflicts:
#	src/dobject.h
2017-02-14 19:10:02 +01:00
Christoph Oelckers
1a63450fe2 - fixed a few issues with actor bouncing logic. 2017-02-13 22:00:27 +01:00
Christoph Oelckers
89ef30166d - fixed assembly output for SO instruction. 2017-02-13 00:25:39 +01:00
Christoph Oelckers
7d96f85fe8 Merge remote-tracking branch 'remotes/origin/master' 2017-02-12 21:57:46 +01:00
Christoph Oelckers
b6ad14a614 - made adjustments to text input menu to work with scripts. 2017-02-12 21:45:37 +01:00
Christoph Oelckers
f0e925c5a7 - scripted color picker fully working. 2017-02-12 20:20:47 +01:00
Christoph Oelckers
dbf3530696 - the keybinding control works again, this time fully scripted. 2017-02-12 18:38:23 +01:00
Christoph Oelckers
03283de4e8 - fixed issues with option menu items.
- fixed the octal parser in strbin.
- remove 'new' token because it gets in the way.
2017-02-12 16:02:55 +01:00
Christoph Oelckers
bb6def820f - everything compiles and mostly works again. 2017-02-12 14:04:48 +01:00
Christoph Oelckers
947b625c50 - all menu items scriptified, but not yet active. 2017-02-11 16:11:48 +01:00
Christoph Oelckers
f91d91d6e8 - all optionmenu items scriptified, but not integrated yet. 2017-02-11 00:36:53 +01:00
alexey.lysiuk
d2affc7c0c Fixed crash on attempt to get string value of null
https://mantis.zdoom.org/view.php?id=231
2017-02-10 16:19:33 +02:00
Christoph Oelckers
be9b2b38fc - ColorpickerMenu.MouseEvent exported. 2017-02-10 11:44:46 +01:00
Christoph Oelckers
4f0747c59e - fixed: Class pointers were accepted for objects of the base type 'Object'. 2017-02-09 11:11:54 +01:00
Christoph Oelckers
36a07b8e6e - remove all type table entries from garbage collection.
Like the symbols and the VM functions this is data that is static from startup until shutdown and has no need to be subjected to garbage collection. All things combined this reduces the amount of GC-sensitive objects at startup from 9600 to 600.
2017-02-08 22:43:20 +01:00