Commit Graph

2121 Commits

Author SHA1 Message Date
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
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
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
Christoph Oelckers e46d378fb2 - sciptified DLoadSaveMenu::Drawer. 2017-02-18 17:51:40 +01:00
Christoph Oelckers 4a6d0f1fa5 - scriptified DLoadSaveMenu::MenuEvent. 2017-02-18 17:35:01 +01:00
Christoph Oelckers ee6a90deec - scriptified DLoadSaveMenu::Responder.
- scriptified DSaveMenu.
2017-02-18 16:40:32 +01:00
Christoph Oelckers 872969eb14 - scriptified the LoadMenu class and exported the entire interface to handle the LoadSaveMenu. 2017-02-18 14:08:16 +01:00
Christoph Oelckers 128dfdeee6 - made some of the load/save menu's data a bit more scripting friendly, this mostly means removal of static string buffers. 2017-02-18 12:36:31 +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 49a07180c0 - scriptified ClassChanged. 2017-02-17 23:56:22 +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 6a2525b737 - scriptified PickPlayerClass. 2017-02-17 20:58:11 +01:00
Christoph Oelckers b375657509 - scriptified DPlayerMenu::SkinChanged. 2017-02-17 20:49:04 +01:00
Christoph Oelckers 51493cde8c - scriptified DPlayerMenu::MenuEvent. 2017-02-17 20:02:26 +01:00
Christoph Oelckers f4e9cd0009 - scriptified DPlayerMenu::MouseEvent. 2017-02-17 18:21:59 +01:00
Christoph Oelckers 416911587e - scriptified PlayerMenu.Drawer 2017-02-17 16:53:36 +01:00
Christoph Oelckers 74c4748593 - fixed the message switch for the controls menu. 2017-02-17 12:10:10 +01:00
Christoph Oelckers ccb083ed25 - fixed initialization of joystick menu with bogus MENUDEFS 2017-02-16 18:55:36 +01:00
Christoph Oelckers 4df2a221a8 - fixed: The special called by the InterpolationSpecial actor must have no activator.
This required splitting A_CallSpecial into a direct wrapper around P_ExecuteSpecial and implementing itself as a script function calling ExecuteSpecial so that this special case can use a version of the function that can be used without an activator.
2017-02-15 22:49:13 +01:00
Christoph Oelckers b3d7980b90 - fixed: PowerProtection clamped its damage minimum to 1, but should do it to 0. 2017-02-15 21:20:11 +01:00
Christoph Oelckers 6fef653aa1 - exported GetUDMF methods to scripting. 2017-02-15 01:03:47 +01:00
Christoph Oelckers 8d7a64bd17 - added a virtual 'used' method that gets called when the player presses use on an actor. This method will only be called if the actor does not have the USESPECIAL flag - that one will be handled as before. 2017-02-15 00:43:30 +01:00
Christoph Oelckers c5204f34ca - fixed: The code to play the mage lightning's attack sound was converted wrong, because it used the same structure as looping sounds normally so, but doesn't actually loop. 2017-02-14 22:51:53 +01:00
Christoph Oelckers 3170591e32 - restated some weird number manipulation in SBARINFO for powerup time. This appears to be needed to distinguish between non-expiring items and non-present items. 2017-02-14 22:04:52 +01:00
Christoph Oelckers 6e2b0bc961 - renamed the internal InpuEvent to deconflict from the version in the event system. 2017-02-14 19:32:44 +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 9caf5c641b - don't let menu number widgets not lock up the menu if their associated CVAR does not exist. 2017-02-14 19:06:45 +01:00
Christoph Oelckers 7b1645d239 - fixed the item check in OptionMenuItemCommand.
This was calling the wrong GetItem function.
2017-02-14 16:50:10 +01:00
Christoph Oelckers ad178e16c5 - working again. 2017-02-13 20:03:29 +01:00
Christoph Oelckers 7b2ec1f737 - removed obsolete include for zscript. 2017-02-13 20:01:56 +01:00
Christoph Oelckers 6525e04118 - added restrictions to CVAR and CCMD access functions for the menus. CVAR changes are only allowed when the menu is open or for mod-CVARs. The CCMD execution function is now private to the control requiring it and heavily guarded against improper access from the outside so that abuse is mostly impossible.
This also means that the remaining scriptification of the menu is on hold. The player menu would require even more access to critical game data, which is a no-go, and the other remaining menus offer little benefit from getting scriptified.
2017-02-13 19:18:45 +01:00
Christoph Oelckers c403fc5635 - renamed a file. 2017-02-13 18:30:03 +01:00
Christoph Oelckers 7877bcbdcb - exported more parts of the joystick menus and also exported all strings for them to the string table.
- exported the skeleton definition for list menus.
2017-02-13 17:45:03 +01:00