Added fallback to vanilla signpost menu

This commit is contained in:
Eddoursul 2024-02-09 20:54:07 +01:00
parent c8a0403bb9
commit 030a7b3050
8 changed files with 88 additions and 22 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -44,29 +44,23 @@ Function ModSympathyNG(Actor akSympathyActor, int iSympathyMod, bool bIsFlirt =
EndIf
EndIf
String sActorName = sympathyBase.GetName()
If !bStringOverride
If (iSympathyMod > 0) && (iSympathyMod <= 5)
_00E_Levelsystem_sApproves.Show()
; Debug.Notification(sActorName + sLevelsystemAppreciate + ".")
ElseIf (iSympathyMod > 5) && (iSympathyMod <= 10)
_00E_Levelsystem_sAppreciates.Show()
; Debug.Notification(sActorName + sLevelsystemAppreciateALot + ".")
ElseIf (iSympathyMod > 10) && (iSympathyMod <= 20)
_00E_Levelsystem_sAppreciatesALot.Show()
; Debug.Notification(sActorName + sLevelsystemApproves + ".")
ElseIf (iSympathyMod < 0) && (iSympathyMod >= -5)
_00E_Levelsystem_sDislikes.Show()
; Debug.Notification(sActorName + sLevelsystemDislikes + ".")
ElseIf (iSympathyMod < -5) && (iSympathyMod >= -10)
_00E_Levelsystem_sHurt.Show()
; Debug.Notification(sActorName + sLevelsystemOffended + ".")
ElseIf (iSympathyMod < -10) && (iSympathyMod >= -20)
_00E_Levelsystem_sVeryHurt.Show()
; Debug.Notification(sActorName + sLevelsystemVeryOffended + ".")
EndIf
Else
; TODO: Use a vanilla message
String sActorName = sympathyBase.GetName()
Debug.Notification(sActorName + sOverride)
EndIf

View File

@ -3,25 +3,29 @@ Scriptname _00e_Ark_TravelCrossroadsSC extends ObjectReference
import UIExtensions
;=====================================================================================
; EVENTS
; EVENTS
;=====================================================================================
Event OnActivate(ObjectReference akActionRef)
if akActionRef == PlayerREF
if MQ14.GetCurrentStageID() < 20 && MQ03.GetCurrentStageID() > 0 && !(MQ12b.GetCurrentStageID() >= 15 && MQ12c.GetCurrentStageID() < 5) && (_00E_TeleportGlobal.GetValueInt() == 0)
Game.RequestAutoSave()
ShowTravelMenu()
Elseif MQ12b.GetCurrentStageID() == 10
ShowMQ12bTravelMenu()
Else
_00E_FastTravel_Ark_CantTravelRightNow.Show()
EndIf
EndIf
if akActionRef == PlayerREF
if MQ14.GetCurrentStageID() < 20 && MQ03.GetCurrentStageID() > 0 && !(MQ12b.GetCurrentStageID() >= 15 && MQ12c.GetCurrentStageID() < 5) && (_00E_TeleportGlobal.GetValueInt() == 0)
if SKSE.GetVersion()
ShowTravelMenu()
else
ShowTravelMenuVanilla()
endif
Elseif MQ12b.GetCurrentStageID() == 10 && SKSE.GetVersion()
ShowMQ12bTravelMenu()
Else
_00E_FastTravel_Ark_CantTravelRightNow.Show()
EndIf
EndIf
EndEvent
;=====================================================================================
; FUNCTIONS
; FUNCTIONS
;=====================================================================================
Function ShowTravelMenu()
@ -124,8 +128,75 @@ Function ShowMQ12bTravelMenu()
EndFunction
function ShowTravelMenuVanilla()
int iListButton = _00E_FastTravel_Ark_SelectionMenu_01.Show()
if iListButton == 0
PlayerREF.MoveTo(_00E_FastTravel_Ark_Marker_CapitalCity_Entrance)
ElseIf iListButton == 1
PlayerREF.MoveTo(_00E_FastTravel_Ark_Marker_CapitalCity_StrangerQuarter)
ElseIf iListButton == 2
PlayerREF.MoveTo(_00E_FastTravel_Ark_Marker_CapitalCity_Marketplace)
Elseif iListButton == 3
PlayerREF.MoveTo(_00E_FastTravel_Ark_Marker_CapitalCity_SouthQuarter)
Elseif iListButton == 4
PlayerREF.MoveTo(_00E_FastTravel_Ark_Marker_CapitalCity_NoblesQuarter)
elseif iListButton == 6 ; Exit
return
elseif iListButton == 5 ; More
int iListButton2 = _00E_FastTravel_Ark_SelectionMenu_02.Show()
if iListButton2 == 0
PlayerREF.MoveTo(_00E_FastTravel_Ark_Marker_CapitalCity_Harbour)
ElseIf iListButton2 == 1
PlayerREF.MoveTo(_00E_FastTravel_Ark_Marker_CapitalCity_Graveyard)
Elseif iListButton2 == 2
If MQ03.IsCompleted()
PlayerREF.MoveTo(_00E_FastTravel_Ark_Marker_CapitalCity_Suntemple)
Else
_00E_FastTravel_Ark_NoTemple.Show()
EndIf
elseif iListButton2 == 3
PlayerREF.MoveTo(_00E_FastTravel_Ark_Marker_CapitalCity_UndercityEntrance)
elseif iListButton2 == 5 ; Exit
return
elseif iListButton2 == 4 ; More
int iListButton3 = _00E_FastTravel_Ark_SelectionMenu_03.Show()
if iListButton3 == 0
PlayerREF.MoveTo(_00E_FastTravel_Ark_Marker_CapitalCity_UndercityBarracks)
ElseIf iListButton3 == 1
PlayerREF.MoveTo(_00E_FastTravel_Ark_Marker_CapitalCity_UndercityMarketplace)
ElseIf iListButton3 == 2
PlayerREF.MoveTo(_00E_FastTravel_Ark_Marker_CapitalCity_UndercityTarpit)
Elseif iListButton3 == 3
PlayerREF.MoveTo(_00E_FastTravel_Ark_Marker_CapitalCity_UndercityArena)
elseif iListButton3 == 5 ; Exit
return
elseif iListButton3 == 4 ; Return
ShowTravelMenuVanilla()
return
endif
endif
endif
If iListButton == 0 || iListButton == 1 || iListButton == 3
If MQ04.GetCurrentStageID() > 5 && !(MQ04.IsCompleted()) && !(MQ04.IsObjectiveCompleted(25))
_00E_EPHandler.GiveEP(100)
MQ04.SetObjectiveCompleted(25)
EndIf
EndIf
endfunction
;=====================================================================================
; PROPERTIES
; PROPERTIES
;=====================================================================================
Actor Property PlayerREF Auto
@ -140,6 +211,7 @@ Message Property _00E_FastTravel_Ark_CantTravelRightNow Auto
Message Property _00E_FastTravel_Ark_NoTemple Auto
Message Property _00E_FastTravel_Ark_SelectionMenu_01 Auto
Message Property _00E_FastTravel_Ark_SelectionMenu_02 Auto
Message Property _00E_FastTravel_Ark_SelectionMenu_03 Auto
Message Property _00E_FastTravel_Ark_SelectionMenu_Restricted1 Auto
GlobalVariable Property _00E_TeleportGlobal Auto

Binary file not shown.

Binary file not shown.