4
Fork 0

Unregister dialog exit listener on normal menu closing

master
Eddoursul 2 years ago
parent 33345cc860
commit ff965bc21d
  1. BIN
      Enderal - Forgotten Stories.esm
  2. 5
      Enderal SE v2.0.12.4 Changelog.txt
  3. 2
      SKSE/Plugins/EnderalVersion.ini
  4. BIN
      scripts/_00e_playersetupscript.pex
  5. BIN
      scripts/_00e_questfunctions.pex
  6. 2
      source/scripts/_00e_playersetupscript.psc
  7. 29
      source/scripts/_00e_questfunctions.psc

Binary file not shown.

@ -6,6 +6,11 @@ See https://en.wiki.sureai.net/Enderal:Patch for the list of official patches up
Beware, spoilers ahead!
2.0.12.4 (TBD)
- Skyrim SE 1.6.640 support.
- Fixed the dialog quit popup appearing in non-locked conversations.
2.0.12.3 (2022-09-16)
- Excluded a few distant cells from testing, fixes compatibility with SkyVRaan.
- Reverted dialoguemenu.swf to the pre-2.0.12 version and replaced quest journal in locked dialogs with a quit prompt. Discarded solution caused decreased input delay in menu mode and was making scrolling unusable.

@ -1 +1 @@
version = 2.0.12.3
version = 2.0.12.4

Binary file not shown.

@ -1,7 +1,7 @@
Scriptname _00E_PlayerSetUpScript extends ObjectReference
{Initializes all the necessary Quests, maintains the player, contains various OnPlayerLoadGame() failsafes. This script is important for proper updating, do not overwrite it.}
Float Property CURRENT_PATCH_VERSION = 2.123 AutoReadOnly
Float Property CURRENT_PATCH_VERSION = 2.124 AutoReadOnly
;=====================================================================================

@ -134,13 +134,16 @@ endFunction
Function DisableDialogueQuitting() Global
{Disables the TAB Key during dialogue. Resets automatically upon dialogue exit via Goodbye.}
if UI.IsMenuOpen("Dialogue Menu")
if ! UI.IsMenuOpen("Dialogue Menu")
UnregisterDialogQuitKey()
return
endif
if UI.GetBool("Dialogue Menu", "_root.DialogueMenu_mc.bEnableTab") != true
; Suspected non-Enderal dialoguemenu.swf replacer, rechecking value in order to be sure.
UI.InvokeBool("Dialogue Menu", "_root.DialogueMenu_mc.SetVariable", True)
if UI.GetBool("Dialogue Menu", "_root.DialogueMenu_mc.bEnableTab") != true
; Suspected non-Enderal dialoguemenu.swf replacer, rechecking value in order to be sure.
UI.InvokeBool("Dialogue Menu", "_root.DialogueMenu_mc.SetVariable", True)
if UI.GetBool("Dialogue Menu", "_root.DialogueMenu_mc.bEnableTab") != true
Debug.Notification("Detected incompatible dialoguemenu.swf!")
endif
Debug.Notification("Detected incompatible dialoguemenu.swf!")
endif
endif
@ -154,6 +157,8 @@ Function DisableDialogueQuitting() Global
Levelsystem.RegisterForKey(iControllerKey) ; Controller
endif
Levelsystem.RegisterForMenu("Dialogue Menu")
EndFunction
Function EnableDialogueQuitting() Global
@ -166,17 +171,13 @@ EndFunction
function UnregisterDialogQuitKey() Global
Quest Levelsystem = Game.GetForm(0x10AA2) as Quest
Levelsystem.UnregisterForKey(1)
Levelsystem.UnregisterForKey(15)
int iControllerKey = Input.GetMappedKey("Tween Menu", 0x02)
if iControllerKey > -1
Levelsystem.UnregisterForKey(iControllerKey)
endif
Levelsystem.UnregisterForAllKeys()
Levelsystem.UnregisterForMenu("Dialogue Menu")
endfunction
Event OnKeyDown(Int KeyCode)
if UI.IsMenuOpen("Dialogue Menu")
if ! UI.IsMenuOpen("MessageBoxMenu")
if ! UI.IsMenuOpen("MessageBoxMenu") && ! UI.GetBool("Dialogue Menu", "_root.DialogueMenu_mc.bEnableTab")
if (Game.GetFormFromFile(0x163D, "Update.esm") as Message).Show() == 1
Game.QuitToMainMenu()
endif
@ -968,6 +969,8 @@ Event OnMenuClose(String MenuName)
If MenuName == "Book Menu"
MTToRemove.Remove()
UnregisterForMenu("Book Menu")
elseif MenuName == "Dialogue Menu"
UnregisterDialogQuitKey()
EndIf
EndEvent

Loading…
Cancel
Save