ZZYZX
01561eb768
Added: UiTick in EventHandlers, a callback that executes at 35fps on every handler in ui scope;
...
Removed: RenderOverlay, RenderFrame (commented out), Create, CreateOnce, Register, Unregister (completely)
2017-03-09 15:38:49 +01:00
Rachael Alexanderson
527a172fcd
Merge https://github.com/coelckers/gzdoom
2017-03-07 22:03:56 -05:00
Christoph Oelckers
2f29b075b2
- made CountInv clearscope and const.
2017-03-07 22:55:15 +01:00
Christoph Oelckers
7ce8009576
- made several read-only actor functions accessible to UI code.
2017-03-07 18:59:48 +01:00
Rachael Alexanderson
bd50b5d05a
Merge https://github.com/coelckers/gzdoom
2017-03-06 19:40:55 -05:00
Christoph Oelckers
9d6b5f7015
- switched the menu code over to the data types of the event system.
...
Note that this will require adjustment of all menu code which overrides the Responder method!
2017-03-06 22:27:51 +01:00
Rachael Alexanderson
134c2f3f38
Merge https://github.com/coelckers/gzdoom
2017-03-06 12:36:34 -05:00
ZZYZX
21ecd714ec
Added a way to tell apart console-executed events from code-executed SendNetworkEvent
2017-03-06 11:23:36 +01:00
ZZYZX
f28bdf12a0
StaticEventHandler.InputProcess should not alter playsim directly
2017-03-06 09:34:53 +01:00
Rachael Alexanderson
7ef8ed5867
Merge https://github.com/coelckers/gzdoom
2017-03-05 18:40:44 -05:00
Christoph Oelckers
2b5fea4ea8
- added version checks for function calls and virtual overrides.
...
- restricted the UI functions in inventory.
2017-03-05 21:44:10 +01:00
Christoph Oelckers
7df698dad8
- implemented the parser basics of a ZScript versioning system.
...
Note that this completely disables the newly added keywords 'play' and 'ui' for unversioned code to allow using them as identifiers as I have found at least one mod that uses a variable named 'play' that would have been rendered broken otherwise.
This also disables many ZScript only keywords for other parsing jobs.
2017-03-05 14:13:00 +01:00
ZZYZX
9d4179ca06
Protected on methods of StaticEventHandler is completely useless
2017-03-05 09:49:31 +01:00
ZZYZX
a43bc279a3
Gave static methods in EventHandler/StaticEventHandler clearscope
2017-03-05 09:49:31 +01:00
Rachael Alexanderson
b8b5360de1
Merge https://github.com/coelckers/gzdoom
2017-03-04 07:28:02 -05:00
Christoph Oelckers
7dbc6939c4
- declared most native getters in Actor as const.
...
- made the self pointer of const functions readonly.
This seems to work fine. Both calling a non-const function and trying to assign a value to a member fail with an error message.
2017-03-04 12:43:07 +01:00
Christoph Oelckers
4c5794b6d5
- made GetObituary non-constant.
...
This gets only called from within the play code and making it const would block potential use cases that involve changing some internal variables like counters.
2017-03-04 12:11:56 +01:00
Christoph Oelckers
b3ba5bfe2c
- allow 'const' on class functions. This is preferable to 'clearscope' so that the UI code can call getter functions without having to declare things as 'clearscope'.
...
Clearscope is a dangerous context and should be limited to the minimum extent possible and preferably be blocked in user code.
This may still need some work on const functions but better have it in now.
2017-03-04 12:07:45 +01:00
Christoph Oelckers
5551f3a8c5
- declared the sectorplanes in Sector as read only and marked all relevant functions in the planes themselves const.
...
This is to block modification of the planes directly. For future-proofness with renderer changes everything that alters these values should go through he function interface.
2017-03-04 11:48:36 +01:00
ZZYZX
3338fb7f33
Added SendNetworkEvent static method to EventHandler; Fixed qualified static method call from own class (previously was 'shadowed' by qualified virtual method call)
2017-03-04 00:57:41 +02:00
ZZYZX
c9a994a885
Fixed: clearscope should also clear the inherited scope (through struct member access chain); Fixed: struct member access chain should ONLY work for structs (forgot that FxClassMember inherits FxStructMember)
2017-03-04 00:04:19 +02:00
ZZYZX
723f9770a4
Merge remote-tracking branch 'gz/master' into gz_master2
2017-03-03 23:33:02 +02:00
ZZYZX
1433b78301
Assigned all map data to play
2017-03-03 23:26:06 +02:00
ZZYZX
a924564bf3
Implemented hard separation between playsim ConsoleEvent and networked ConsoleEvent (ConsoleProcess, NetworkProcess)
2017-03-03 23:21:12 +02:00
ZZYZX
43d3e3e5c3
Assigned barrier sides to Event structures, added clearscope to ConsoleProcess because it handles both sides
2017-03-03 23:17:21 +02:00
ZZYZX
f4a546aee6
Moved menus to ui side, moved AlterWeaponSprite to ui side, moved StaticEventHandler to play side (except ui virtuals)
2017-03-03 23:15:18 +02:00
Rachael Alexanderson
b3a69e1df8
Merge https://github.com/coelckers/gzdoom
2017-03-02 18:13:33 -05:00
Christoph Oelckers
e64f1e645d
- exported constants for SetGlobalFogParameter to ZScript.
2017-03-02 13:14:55 +01:00
Christoph Oelckers
62dd810a4e
- fixed: A_ProgrammerMelee damaged the caller, not the target.
2017-03-02 13:14:54 +01:00
Christoph Oelckers
cfda1a49d4
- forgot to save the last fix for the previous commit.
...
- let the script compiler also output the size of the allocated data for the script functions in addition to the actual code size.
2017-03-02 11:58:30 +01:00
Christoph Oelckers
b194ba205a
- backported Zandronum's MaxHealth base class for the MaxHealthBonus item.
2017-03-02 11:39:52 +01:00
Christoph Oelckers
00dc59ebdc
- separated the blood translation index from the BloodColor variable to allow more than 255 blood translations and as a prerequisite for allowing to change the blood color.
2017-03-02 10:26:23 +01:00
Rachael Alexanderson
d84ba4b953
Merge https://github.com/coelckers/gzdoom
2017-03-02 04:22:32 -05:00
Christoph Oelckers
0de79042d4
- fixed: 'Bloodtype' cannot use the generic property definition because it needs special handling for optional arguments. This reinstates the native handler.
2017-03-01 20:20:46 +01:00
Rachael Alexanderson
d6169ea75e
Merge https://github.com/coelckers/gzdoom
2017-02-28 18:55:17 -05:00
Christoph Oelckers
cb295e0441
- added parameter to PLayerPawn::GetMaxHealth to return the real maximum health, including stamina upgrades.
2017-03-01 00:04:17 +01:00
Christoph Oelckers
12915b5f6e
- use an inventory flag to decide what items are slipped by DF_NO_HEALTH and DF_NO_ARMOR. With all the changes over the last 10 years this had become too spotty.
...
- use an enum type for ItemFlags, just like it was done for actor flags. Since the flag word is almost full it may soon be necessary to add a second one and then this kind of security check may become necessary.
2017-02-28 21:45:47 +01:00
Christoph Oelckers
314a642527
Merge branch 'meta'
2017-02-28 14:47:00 +01:00
nashmuhandes
bb1709228c
Changed FOV from a CCMD to a CVar, allowing players' FOV settings to persist. Also exported SetFOV to PlayerInfo for ZScript.
2017-02-28 14:46:30 +01:00
Christoph Oelckers
bc0ffc4185
- removed access to the PlayerPawn's DisplayName variable. This one has implicit semantics, so wherever a displayable name is needed GetPrintableDisplayName should be called instead to allow later refactoring of the internal handling.
2017-02-28 14:33:46 +01:00
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
Rachael Alexanderson
2a847ca570
Merge https://github.com/coelckers/gzdoom
2017-02-27 01:06:00 -05:00
Christoph Oelckers
51b5b327ef
- fixed constant names.
2017-02-26 21:38:08 +01:00
Christoph Oelckers
f6dd99d3aa
- added A_Morph function.
2017-02-26 21:20:47 +01:00
Christoph Oelckers
24a505ed36
- fixed: The internal and scripted morph flags did not match.
2017-02-26 21:10:53 +01:00
Rachael Alexanderson
7a5df2bc28
Merge commit 'b0eb19b'
2017-02-26 13:41:02 -05:00
Christoph Oelckers
fb3d4bd42a
- added A_SetMugshotState.
2017-02-26 18:46:06 +01:00
Christoph Oelckers
5fe04dfd20
- added A_SprayDecal function.
2017-02-26 18:37:12 +01:00
Christoph Oelckers
c4b546404a
- added a 'nocheck' parameter to A_Raise* and Thing_Raise.
2017-02-26 17:50:48 +01:00
Christoph Oelckers
e6b31dde27
- added some flexibility to some Skulltag powerups.
...
- handle these powerups by actual item checks instead of cheat flags. (The same should also be done for the Frightener and Buddha but those are a bit more complex because they are also real cheats.)
2017-02-26 16:23:22 +01:00
Christoph Oelckers
c7668952d9
- set sensible defaults for PowerReflection.
2017-02-26 15:50:03 +01:00
Christoph Oelckers
8b2a5c75a1
- added an old submission for PowerReflection, although it had to be seriously reworked and improved.
2017-02-26 15:47:37 +01:00
Christoph Oelckers
6210a67f85
- fixed messagebox correctly.
2017-02-26 12:50:11 +01:00
Rachael Alexanderson
404b326812
Merge https://github.com/coelckers/gzdoom
2017-02-25 18:32:06 -05:00
Christoph Oelckers
35552ce0cb
- added a Death.Sky state for missiles that gets used when they hit a sky plane.
...
- fixed: The Alt HUD did not draw the crosshair in HUD off mode.
2017-02-25 20:45:28 +01:00
Christoph Oelckers
5ea8ad54a4
- added tags to all ammo types.
2017-02-25 19:56:22 +01:00
Christoph Oelckers
b2a1e03d7e
- fprgot to commit the script-side definition of STAT_STATIC.
2017-02-25 17:14:03 +01:00
Rachael Alexanderson
5c5b6a55d5
Merge https://github.com/coelckers/gzdoom
2017-02-24 13:24:44 -05:00
alexey.lysiuk
202c192e11
Added default value for amount argument of A_DropInventory()
...
https://mantis.zdoom.org/view.php?id=330
2017-02-24 10:15:46 +02:00
Rachael Alexanderson
e35be9c0a3
Merge https://github.com/coelckers/gzdoom
2017-02-23 22:07:40 -05:00
Christoph Oelckers
58be506a73
- made intermission screen more scripting friendly.
2017-02-24 00:28:33 +01:00
Rachael Alexanderson
80d3fd58ff
Merge https://github.com/coelckers/gzdoom
2017-02-23 15:00:09 -05:00
Christoph Oelckers
73cceea994
- also added the 'amount' parameter to DropInventroy and A_DropInventory script functions.
2017-02-23 20:55:12 +01:00
Christoph Oelckers
e2d5a708f8
- added an amount parameter to the 'drop' CCMD.
2017-02-23 20:18:02 +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
Rachael Alexanderson
271c75ab9b
Merge https://github.com/coelckers/gzdoom
2017-02-22 22:39:34 -05:00
Christoph Oelckers
47ff6ec33f
- converted the intermission stat screen into a class so that its contents can be better exposed to ZScript.
2017-02-22 23:52:25 +01:00
Rachael Alexanderson
7825c7b244
Merge https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/version.h
2017-02-19 17:42:00 -05:00
Rachael Alexanderson
84ca9fd63c
Merge remote-tracking branch 'origin/versionstr-change' into versionstr-change
2017-02-19 17:40:44 -05: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
165a980065
- fixed: The base MouseEvent method must return true, not false.
...
- fixed: It is a bad idea to start a save within an MKEY_Input event. At this time the window chain is not stable because the text input screen is in the middle of being taken down, so the save should be deferred until the next Ticker call of the SaveMenu.
2017-02-19 22:08:22 +01:00
Rachael Alexanderson
11d6f46e2d
Merge https://github.com/coelckers/gzdoom
2017-02-19 13:05:32 -05:00
Christoph Oelckers
65f2433ac7
- fixed: The text enter screen must be activated if it should be displayed.
2017-02-19 18:27:29 +01:00
Christoph Oelckers
fa0be4d4a9
- fixed keycodes for confirmation menu.
2017-02-19 17:30:02 +01:00
Christoph Oelckers
f3b6343e53
- use floats for menu item coordinates. This only has an effect in the ListMenu because the OptionMenu uses fixed offsets which work differently.
2017-02-19 17:24:30 +01:00
Christoph Oelckers
fb52b034b0
- added a GenericMenu class, so that all menus can be given a virtual Init method.
...
Doing this to Menu itself would not work because the different menus require different parameters.
This also means that all menus that are routed through menu items must inherit from either ListMenu, OptionMenu or GenericMenu.
All other types can only be used internally.
This should complete the menu scriptification.
2017-02-19 15:35:28 +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
3c8a5fdbe7
- scriptified the drawer functions of the conversation menu.
2017-02-19 12:28:05 +01:00
Rachael Alexanderson
75b81381f6
Merge https://github.com/coelckers/gzdoom
2017-02-19 05:26:51 -05:00
Christoph Oelckers
8db1646056
- fixed: Strife dialogues remembered the last menu's selection index, but with the possibility of changing sets of replies between calls of the same dialogue it should be the reply's index in the list of replies that gets remembered.
2017-02-19 10:34:47 +01:00
Magnus Norddahl
42a7dbe33a
Merge remote-tracking branch 'gzdoom/master' into qzdoom
...
# Conflicts:
# src/v_video.cpp
2017-02-19 03:49:13 +01:00
Christoph Oelckers
2440951811
-scriptified the ReadThis screen.
2017-02-19 00:08:30 +01:00
Christoph Oelckers
e46571c192
- DMessageBoxMenu is fully scriptified.
2017-02-18 23:39:02 +01:00
Christoph Oelckers
62b594a499
- DMessageBoxMenu::Drawer scriptified.
2017-02-18 23:18:55 +01:00
Christoph Oelckers
aabcc1f92e
- scriptified the input functions of DMessageBoxMenu.
2017-02-18 23:05:01 +01:00
Christoph Oelckers
de1e7661eb
- removed all native remnants of TextEnterMenu.
2017-02-18 21:25:19 +01:00
Christoph Oelckers
f5a0f6b3bf
- almost done with TextEnterMenu.
2017-02-18 21:18:23 +01:00
Christoph Oelckers
0c41a9dee7
- scriptified DTextEnterMenu::Drawer.
2017-02-18 20:12:06 +01:00
Christoph Oelckers
1b4c9e13b8
- cleaned out some cruft from the menu code, now that ListMenu is fully scripted.
2017-02-18 19:11:53 +01:00
Christoph Oelckers
b7a5437af6
- scriptified parts of ListMenu.
2017-02-18 18:35:44 +01:00
Christoph Oelckers
6a65f02257
- completed scriptification of LoadSaveMenu.
2017-02-18 18:01:24 +01:00