Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ScriptName _DA_Skyship_MCM_ConfigMenu_v1 Extends SKI_ConfigBase
- Import Game
- Import Input
- Import Form
- Import Utility
- Import Sound
- Import Debug
- Import Math
- ObjectReference Property rSkyship_Hatch_Full Auto
- ObjectReference Property rSkyship_Hatch_Alternate Auto
- ObjectReference Property rSkyship_Hatch_Original Auto
- ObjectReference Property rSkyship_Stopped_Armed Auto
- ObjectReference Property rSkyship_Static_Armed Auto
- ObjectReference Property rSKyship_Static_Dark Auto
- ObjectReference Property rSKyship_Static_Original Auto
- TextureSet Property _DA_Hull_TEX Auto
- TextureSet Property _DA_Frame_TEX Auto
- TextureSet Property _DA_Metal_TEX Auto
- TextureSet Property _DA_Sail_TEX Auto
- TextureSet Property _DA_Rope_TEX Auto
- TextureSet Property _DA_Rig_TEX Auto
- _DA_Skyship_v1 Property rSkyShip Auto
- Location Property DevAvezaLocation Auto
- WorldSpace Property DevAvezaWorld Auto
- Form DA_Loc_Form
- FormList BetterVampiresExceptionList
- int DA_Loc_FormID
- ;Form Property DA_Loc_Form Auto Hidden
- ; OIDs
- ; Flight Modes
- int aOID_f ; Attached to Ship
- int bOID_f ; Movable on Deck
- ; Key Maps
- int aOID_k ; Up
- int bOID_k ; Down
- int cOID_k ; Forward
- int dOID_k ; Backward
- int eOID_k ; Left
- int fOID_k ; Right
- int gOID_k ; Strafe Left
- int hOID_k ; Strafe Right
- int iOID_k ; Stop
- int jOID_k ; Exit
- int kOID_k ; Cruise
- ; Parameters
- int aOID_s ; Mass
- int bOID_s ; Upward Power
- int cOID_s ; Downward Power
- int dOID_s ; Forward Power
- int eOID_s ; Backward Power
- int fOID_s ; Turn Power
- int gOID_s ; Strafe Power
- ; Reset
- int aOID_t ; Reset ship functions
- int bOID_t ; Reset ship location
- ; Script Toggle
- int cOID_t ; Player Counterbalance
- int dOID_t ; Debug
- ; Interior Selection
- int eOID_t ; Full Interior
- int fOID_t ; Alternate Interior
- int gOID_t ; Original Interior
- ; Exterior Selection
- int hOID_t ; Armed
- int iOID_t ; Dark
- int jOID_t ; Original
- ; Patches
- int kOID_t ; Better Vampires
- int lOID_t ; Animated Clutter
- ; Flags to electively disable functions
- int flags ; Disable If Flying
- int flags2 ; Disable If Flying or Attcahed to Ship mode is set
- int flags3 ; Disable If in an interior or outside ship load proximity
- int flags4 ; Disable If Flying or in an interior
- int flags5 ; Disable If Flying, in an interior, or outside of load proximity of the ship
- int flags6 ; Disable If Flying or ship model change script is running
- ; Toggle States
- bool aVal = True ; Attached to ship
- bool bVal = False ; Movable on deck
- bool cVal = False ; Reset
- bool dVal = False ; Player counterbalance
- bool eVal = False ; Reset ship location
- bool fVAl = False ; Debug
- bool gVal = True ; Full Interior
- bool hVal = False ; Alternate Interior
- bool iVal = False ; Original Interior
- bool jVal = False ; Armed Exterior
- bool kVal = True ; Dark Exterior
- bool lVal = False ; Original Exterior
- bool mVal = False ; Flag check Model change
- bool nVal = False ; Better Vampires Patch
- bool oVal = False ; Animated Clutter Patch
- int CurrentVersion = 1
- ; INITIALIZATION
- Event OnConfigInit()
- Pages = new string[3]
- Pages[0] = "Main Configuration"
- Pages[1] = "Advanced"
- Pages[2] = "Compatibility"
- Endevent
- Event OnVersionUpdate(int a_version)
- ; a_version is the new version, CurrentVersion is the old version
- If (a_version >= 2 && CurrentVersion != 2)
- ;Debug.Notification("Dev Aveza MCM : Updating script to version 2")
- Pages = new string[3]
- Pages[0] = "Main Configuration"
- Pages[1] = "Advanced"
- Pages[2] = "Compatibility"
- Endif
- Endevent
- Event OnPageReset(String page)
- Pages = new string[3]
- Pages[0] = "Main Configuration"
- Pages[1] = "Advanced"
- Pages[2] = "Compatibility"
- If (page == "")
- cVal = False
- ;eVal = False
- LoadCustomContent("DA_Skyship/_da_title.dds", 20, 0)
- Elseif (page == "Main Configuration")
- UnloadCustomContent()
- SetCursorFillMode(TOP_TO_BOTTOM)
- AddHeaderOption("Flight Mode")
- If (rSkyship.Getstate() == "Flying")
- flags = OPTION_FLAG_DISABLED
- Else
- flags = OPTION_FLAG_NONE
- Endif
- aOID_f = AddToggleOption("Attached to Ship", aVal, flags) ;Attached to Ship
- bOID_f = AddToggleOption("Player Movable on Deck", bVal, flags) ;Movable on Deck
- AddHeaderOption("Interior")
- If (!rSkyship.rSkyship_Havok.Is3DLoaded() && !rSkyship.rSkyship_Stopped.Is3DLoaded())
- flags5 = OPTION_FLAG_DISABLED
- Elseif (GetPlayer().IsInInterior() || GetPlayer().IsInLocation(DevAvezaLocation) || rSkyship.Getstate() == "Flying")
- flags5 = OPTION_FLAG_DISABLED
- Else
- flags5 = OPTION_FLAG_NONE
- Endif
- eOID_t = AddToggleOption("Full Interior", gVal, flags5)
- gOID_t = AddToggleOption("Original Interior", iVal, flags5)
- fOID_t = AddToggleOption("Alternate Interior", hVal, flags5)
- AddHeaderOption("Exterior")
- If(rSkyship.Getstate() == "Flying" || mVal == True || GetPlayer().IsInInterior() || GetPlayer().IsInLocation(DevAvezaLocation))
- flags6 = OPTION_FLAG_DISABLED
- Elseif(!rSkyship.rSkyship_Havok.Is3DLoaded() && !rSkyship.rSkyship_Stopped.Is3DLoaded())
- flags6 = OPTION_FLAG_DISABLED
- Else
- flags6 = OPTION_FLAG_NONE
- Endif
- hOID_t = AddToggleOption("Armed", jVal, flags6)
- iOID_t = AddToggleOption("Dark", kVal, flags6)
- jOID_t = AddToggleOption("Original", lVal, flags6)
- SetCursorPosition(1)
- AddHeaderOption("Debug Functions")
- If (rSkyship.Getstate() == "Flying" || aVal == True)
- flags2 = OPTION_FLAG_DISABLED
- Else
- flags2 = OPTION_FLAG_NONE
- Endif
- cOID_t = AddToggleOption("Player Counterbalance", dVal, flags2)
- ;dOID_t = AddToggleOption("Debug", fVal)
- AddHeaderOption("Reset Functions")
- If (!rSkyship.rSkyship_Havok.Is3DLoaded() && !rSkyship.rSkyship_Stopped.Is3DLoaded())
- flags3 = OPTION_FLAG_DISABLED
- Elseif (GetPlayer().IsInLocation(DevAvezaLocation) || GetPlayer().IsInInterior())
- flags3 = OPTION_FLAG_DISABLED
- Else
- flags3 = OPTION_FLAG_NONE
- Endif
- aOID_t = AddToggleOption("Reset", cVal, flags3)
- If (GetPlayer().IsInLocation(DevAvezaLocation) || GetPlayer().IsInInterior() || rSkyship.Getstate() == "Flying")
- flags4 = OPTION_FLAG_DISABLED
- Else
- flags4 = OPTION_FLAG_NONE
- Endif
- ;bOID_t = AddToggleOption("Reset Ship Location", eVal, flags4)
- Elseif (page == "Advanced")
- UnloadCustomContent()
- SetCursorFillMode(TOP_TO_BOTTOM)
- AddHeaderOption("Directional Controls")
- If (rSkyship.Getstate() == "Flying")
- flags = OPTION_FLAG_DISABLED
- Else
- flags = OPTION_FLAG_NONE
- Endif
- aOID_k = AddKeyMapOption("Up", rSkyship.iUp, flags)
- bOID_k = AddKeyMapOption("Down", rSkyship.iDown, flags)
- cOID_k = AddKeyMapOption("Forward", rSkyship.iforward, flags)
- dOID_k = AddKeymapOption("Backward", rSKyship.iBackward, flags)
- eOID_k = AddKeyMapOption("Turn Left", rSkyship.iLeft, flags)
- fOID_k = AddKeyMapOption("Turn Right", rSkyship.iRight, flags)
- gOID_k = AddKeyMapOption("Strafe Left", rSkyship.iStrafeLeft, flags)
- hOID_k = AddKeyMapOption("Strafe Right", rSkyship.iStrafeRight, flags)
- iOID_k = AddKeyMapOption("Hand Brake", rSkyship.iStop, flags)
- jOID_k = AddKeyMapOption("Dismount", rSkyship.iExit, flags)
- kOID_k = AddKeyMapOption("Cruise Control", rSkyship.iCruise, flags)
- SetCursorPosition(1)
- AddHeaderOption("Ship Parameters")
- aOID_s = AddSliderOption("Ship Mass", rSkyship.fMass)
- bOID_s = AddSliderOption("Upward Power", rSkyship.fUpwardPower)
- cOID_s = AddSliderOption("Downward Power", rSkyship.fDownwardPower)
- dOID_s = AddSliderOption("Forward Power", rSkyship.fForwardPower)
- eOID_s = AddSliderOption("Backward Power", rSkyship.fBackwardPower)
- fOID_s = AddSliderOption("Turn Power", rSkyship.fTurnPower)
- gOID_s = AddSliderOption("Strafe Power", rSkyship.fStrafePower)
- Elseif (Page == "Compatibility")
- UnloadCustomContent()
- SetCursorFillMode(TOP_TO_BOTTOM)
- AddHeaderOption("Compatibility Patches")
- kOID_t = AddToggleOption("Better Vampires", nVal)
- lOID_t = AddToggleOption("Animated Clutter", oVal)
- Else
- UnloadCustomContent()
- Endif
- Endevent
- Event OnOptionSelect(int option)
- If (option == dOID_t) ; Debug Data
- fVal = !fVal
- SetToggleOptionValue(dOID_t, fVal)
- If(fVal==True)
- ; rSkyship.iDA_Debug = 1
- EnableFastTravel(false)
- Else
- EnableFastTravel(True)
- ; rSkyship.iDA_Debug = 0
- Endif
- Endif
- If (option == aOID_f) ; Attached to ship
- aVal = True
- bVal = False
- SetToggleOptionValue(aOID_f, aVal)
- SetToggleOptionValue(bOID_f, bVal)
- rSkyShip.iFlyMode = 0
- SetOptionflags(cOID_t, OPTION_FLAG_DISABLED)
- Elseif (option == bOID_f) ; Move on deck
- bVal = True
- aVal = False
- SetToggleOptionValue(bOID_f, bVal)
- SetToggleOptionValue(aOID_f, aVal)
- rSkyShip.iFlyMode = 1
- SetOptionflags(cOID_t, OPTION_FLAG_NONE)
- Endif
- If (option == eOID_t) ; Full Interior
- gVal = True
- hVal = False
- iVal = False
- SetToggleOptionValue(eOID_t, gVal)
- SetToggleOptionValue(fOID_t, hVal)
- SetToggleOptionValue(gOID_t, iVal)
- rSkyship.rSkyship_Hatch.Disable()
- rSkyship.rSkyship_Hatch = rSkyship_Hatch_Full
- If (rSkyship.iDA_Armed == 1)
- rSkyShip.rSkyShip_Hatch.MoveToNode(rSkyShip.rSkyShip_Stopped, "HatchNode")
- Elseif (rSkyship.iDA_Armed == 0)
- rSkyShip.rSkyShip_Hatch.MoveToNode(rSkyShip.rSkyShip_Havok, "HatchNode")
- Endif
- rSkyShip.rSkyShip_Hatch.Enable()
- Elseif (option == fOID_t) ; Alternate Interior
- gVal = False
- hVal = True
- iVal = False
- SetToggleOptionValue(eOID_t, gVal)
- SetToggleOptionValue(fOID_t, hVal)
- SetToggleOptionValue(gOID_t, iVal)
- rSkyship.rSkyship_Hatch.Disable()
- rSkyship.rSkyship_Hatch = rSkyship_Hatch_Alternate
- If (rSkyship.iDA_Armed == 1)
- rSkyShip.rSkyShip_Hatch.MoveToNode(rSkyShip.rSkyShip_Stopped, "HatchNode")
- Elseif (rSkyship.iDA_Armed == 0)
- rSkyShip.rSkyShip_Hatch.MoveToNode(rSkyShip.rSkyShip_Havok, "HatchNode")
- Endif
- rSkyShip.rSkyShip_Hatch.Enable()
- Elseif (option == gOID_t) ; Original Interior
- gVal = False
- hVal = False
- iVal = True
- SetToggleOptionValue(eOID_t, gVal)
- SetToggleOptionValue(fOID_t, hVal)
- SetToggleOptionValue(gOID_t, iVal)
- rSkyship.rSkyship_Hatch.Disable()
- rSkyship.rSkyship_Hatch = rSkyship_Hatch_Original
- If (rSkyship.iDA_Armed == 1)
- rSkyShip.rSkyShip_Hatch.MoveToNode(rSkyShip.rSkyShip_Stopped, "HatchNode")
- Elseif (rSkyship.iDA_Armed == 0)
- rSkyShip.rSkyShip_Hatch.MoveToNode(rSkyShip.rSkyShip_Havok, "HatchNode")
- Endif
- rSkyShip.rSkyShip_Hatch.Enable()
- Endif
- If (option == hOID_t) ; Armed
- If(jVal == False)
- jVal = True
- kVal = False
- lVal = False
- SetToggleOptionValue(hOID_t, jVal)
- SetToggleOptionValue(iOID_t, kVal)
- SetToggleOptionValue(jOID_t, lVal)
- mVal = True
- If(mVal == True)
- SetOptionFlags(hOID_t, OPTION_FLAG_DISABLED)
- SetOptionFlags(iOID_t, OPTION_FLAG_DISABLED)
- SetOptionFlags(jOID_t, OPTION_FLAG_DISABLED)
- Endif
- Debug.Notification("Changing Ship Model please wait...")
- rSkyship.rSkyship_Wheel.Disable()
- rSkyship.rSkyship_Hatch.Disable()
- rSkyship.iDA_Armed = 1
- _DA_Hull_TEX.SetNthTexturePath(0, "dungeons/ships/DA_skyship/Dark/as_wood.dds")
- _DA_Hull_TEX.SetNthTexturePath(1, "dungeons/ships/DA_skyship/Dark/as_wood_n.dds")
- _DA_Frame_TEX.SetNthTexturePath(0, "dungeons/ships/DA_skyship/Dark/as_frame.dds")
- _DA_Frame_TEX.SetNthTexturePath(1, "dungeons/ships/DA_skyship/Dark/as_frame_n.dds")
- _DA_Metal_TEX.SetNthTexturePath(0, "dungeons/ships/DA_skyship/Dark/as_metal.dds")
- _DA_Metal_TEX.SetNthTexturePath(1, "dungeons/ships/DA_skyship/Dark/as_metal_n.dds")
- _DA_Sail_TEX.SetNthTexturePath(0, "dungeons/ships/DA_skyship/Dark/as_skin.dds")
- _DA_Sail_TEX.SetNthTexturePath(1, "dungeons/ships/DA_skyship/Dark/as_skin_n.dds")
- _DA_Rope_TEX.SetNthTexturePath(0, "dungeons/ships/DA_skyship/Dark/as_rope.dds")
- _DA_Rope_TEX.SetNthTexturePath(1, "dungeons/ships/DA_skyship/Dark/as_rope_n.dds")
- _DA_Rig_TEX.SetNthTexturePath(0, "dungeons/ships/DA_skyship/Dark/as_rig.dds")
- _DA_Rig_TEX.SetNthTexturePath(1, "dungeons/ships/DA_skyship/Dark/as_rig_n.dds")
- rSkyship_Static_Armed.MoveTo(rSkyship.rSkyship)
- rSkyship_Static_Armed.Enable()
- rSkyship.rSkyship_Stopped.MoveTo(rSkyship.rSkyship)
- rSkyship.rSkyship_Stopped.Enable()
- Wait(2)
- While(rSkyship.rSkyship_Havok.Is3DLoaded())
- rSkyship.rSkyship_Havok.Disable()
- Endwhile
- rSkyship.rSkyship_Havok = rSkyship_Static_Armed
- Wait(1)
- rSkyship.rSkyShip_Stopped.Enable()
- rSkyship.StopShipReset()
- While(rSkyship.rSkyship_Havok.Is3DLoaded())
- rSkyship.rSkyship_Havok.Disable()
- Endwhile
- Wait(4)
- rSkyship.rSkyship_Wheel.Enable()
- rSkyship.rSkyship_Hatch.Enable()
- mVal = False
- Debug.Notification("Ship Model Change Complete.")
- Else
- Endif
- Endif
- If (option == iOID_t) ; Dark
- If(kVAL == False)
- kVal = True
- jVal = False
- lVal = False
- SetToggleOptionValue(iOID_t, kVal)
- SetToggleOptionValue(hOID_t, jVal)
- SetToggleOptionValue(jOID_t, lVal)
- mVal = True
- If(mVal == True)
- SetOptionFlags(hOID_t, OPTION_FLAG_DISABLED)
- SetOptionFlags(iOID_t, OPTION_FLAG_DISABLED)
- SetOptionFlags(jOID_t, OPTION_FLAG_DISABLED)
- Endif
- rSkyship.rSkyship_Wheel.Disable()
- rSkyship.rSkyship_Hatch.Disable()
- rSkyship.iDA_Armed = 0
- Debug.Notification("Changing Ship Model please wait...")
- _DA_Hull_TEX.SetNthTexturePath(0, "dungeons/ships/DA_skyship/Dark/as_wood.dds")
- _DA_Hull_TEX.SetNthTexturePath(1, "dungeons/ships/DA_skyship/Dark/as_wood_n.dds")
- _DA_Frame_TEX.SetNthTexturePath(0, "dungeons/ships/DA_skyship/Dark/as_frame.dds")
- _DA_Frame_TEX.SetNthTexturePath(1, "dungeons/ships/DA_skyship/Dark/as_frame_n.dds")
- _DA_Metal_TEX.SetNthTexturePath(0, "dungeons/ships/DA_skyship/Dark/as_metal.dds")
- _DA_Metal_TEX.SetNthTexturePath(1, "dungeons/ships/DA_skyship/Dark/as_metal_n.dds")
- _DA_Sail_TEX.SetNthTexturePath(0, "dungeons/ships/DA_skyship/Dark/as_skin.dds")
- _DA_Sail_TEX.SetNthTexturePath(1, "dungeons/ships/DA_skyship/Dark/as_skin_n.dds")
- _DA_Rope_TEX.SetNthTexturePath(0, "dungeons/ships/DA_skyship/Dark/as_rope.dds")
- _DA_Rope_TEX.SetNthTexturePath(1, "dungeons/ships/DA_skyship/Dark/as_rope_n.dds")
- _DA_Rig_TEX.SetNthTexturePath(0, "dungeons/ships/DA_skyship/Dark/as_rig.dds")
- _DA_Rig_TEX.SetNthTexturePath(1, "dungeons/ships/DA_skyship/Dark/as_rig_n.dds")
- rSkyship_Static_Dark.MoveTo(rSkyship.rSkyship)
- rSkyship_Static_Dark.Enable()
- Wait(2)
- While(rSkyship.rSkyship_Havok.Is3DLoaded())
- rSkyship.rSkyship_Havok.Disable()
- Endwhile
- While(rSkyship.rSkyship_Stopped.Is3DLoaded())
- rSkyship.rSkyship_Stopped.Disable()
- Endwhile
- Wait(1)
- rSkyship.rSkyship_Havok = rSkyship_Static_Dark
- Wait (4)
- rSkyship.rSkyship_Wheel.Enable()
- rSkyship.rSkyship_Hatch.Enable()
- mVal = False
- Debug.Notification("Ship Model Change Complete.")
- Else
- Endif
- Endif
- If (option == jOID_t) ; Original
- If(lVal == False)
- lVal = True
- jVal = False
- kVal = False
- SetToggleOptionValue(jOID_t, lVal)
- SetToggleOptionValue(hOID_t, jVal)
- SetToggleOptionValue(iOID_t, kVal)
- mVal = True
- If(mVal == True)
- SetOptionFlags(hOID_t, OPTION_FLAG_DISABLED)
- SetOptionFlags(iOID_t, OPTION_FLAG_DISABLED)
- SetOptionFlags(jOID_t, OPTION_FLAG_DISABLED)
- Endif
- rSkyship.rSkyship_Wheel.Disable()
- rSkyship.rSkyship_Hatch.Disable()
- rSkyship.iDA_Armed = 0
- Debug.Notification("Changing Ship Model please wait...")
- _DA_Hull_TEX.SetNthTexturePath(0, "dungeons/ships/DA_skyship/Original/as_wood.dds")
- _DA_Hull_TEX.SetNthTexturePath(1, "dungeons/ships/DA_skyship/Original/as_wood_n.dds")
- _DA_Frame_TEX.SetNthTexturePath(0, "dungeons/ships/DA_skyship/Original/as_frameint.dds")
- _DA_Frame_TEX.SetNthTexturePath(1, "dungeons/ships/DA_skyship/Original/as_frame_n.dds")
- _DA_Metal_TEX.SetNthTexturePath(0, "dungeons/ships/DA_skyship/Original/as_metal.dds")
- _DA_Metal_TEX.SetNthTexturePath(1, "dungeons/ships/DA_skyship/Original/as_metal_n.dds")
- _DA_Sail_TEX.SetNthTexturePath(0, "dungeons/ships/DA_skyship/Original/as_skin.dds")
- _DA_Sail_TEX.SetNthTexturePath(1, "dungeons/ships/DA_skyship/Original/as_skin_n.dds")
- _DA_Rope_TEX.SetNthTexturePath(0, "dungeons/ships/DA_skyship/Original/as_rope.dds")
- _DA_Rope_TEX.SetNthTexturePath(1, "dungeons/ships/DA_skyship/Original/as_rope_n.dds")
- _DA_Rig_TEX.SetNthTexturePath(0, "dungeons/ships/DA_skyship/Original/as_rig.dds")
- _DA_Rig_TEX.SetNthTexturePath(1, "dungeons/ships/DA_skyship/Original/as_rig_n.dds")
- rSkyship_Static_Original.MoveTo(rSkyship.rSkyship)
- rSkyship_Static_Original.Enable()
- Wait(2)
- While(rSkyship.rSkyship_Havok.Is3DLoaded())
- rSkyship.rSkyship_Havok.Disable()
- Endwhile
- While(rSkyship.rSkyship_Stopped.Is3DLoaded())
- rSkyship.rSkyship_Stopped.Disable()
- Endwhile
- Wait(1)
- rSkyship.rSkyship_Havok = rSkyship_Static_Original
- Wait (4)
- rSkyship.rSkyship_Wheel.Enable()
- rSkyship.rSkyship_Hatch.Enable()
- mVal = False
- Debug.Notification("Ship Model Change Complete.")
- Else
- Endif
- Endif
- If (option == aOID_t) ; Reset
- cVal = True
- SetToggleOptionValue(aOID_t, cVal)
- If(rSkyship.rSkyship.Getstate() == "Flying")
- rSkyship.rSkyShip.StopTranslation()
- rSkyship.rSkyShip_Havok.StopTranslation()
- Endif
- If(rSkyship.iFlyMode == 0)
- If (rSkyship.iDA_Armed == 1)
- rSkyship.rSkyship_Stopped.MoveTo(rSkyship.rSkyship)
- rSkyship.rSkyship_Havok.MoveTo(rSkyship.rSkyship)
- While(!rSkyship.rSkyShip_Stopped.Is3DLoaded())
- rSkyship.rSkyShip_Stopped.Enable()
- Endwhile
- rSkyship.StopShipReset()
- While(rSkyship.rSkyShip_Havok.Is3DLoaded())
- rSkyship.rSkyShip_Havok.Disable()
- Endwhile
- GetPlayer().SetVehicle(None)
- GetPlayer().SetAlpha(1)
- GetPlayer().MoveToNode(rSkyship.rSkyShip_Stopped, "PlayerNode")
- Elseif (rSkyship.iDA_Armed == 0)
- rSkyship.rSkyship_Havok.MoveTo(rSkyship.rSkyship)
- While(!rSkyship.rSkyShip_Havok.Is3DLoaded())
- rSkyship.rSkyShip_Havok.Enable()
- Endwhile
- GetPlayer().SetVehicle(None)
- GetPlayer().SetAlpha(1)
- GetPlayer().MoveToNode(rSkyship.rSkyShip_Havok, "PlayerNode")
- rSkyship.StopShipReset()
- Endif
- Elseif(rSkyship.iFlyMode == 1)
- If(rSkyship.iDASlideFix == 1)
- GetPlayer().StopTranslation()
- Endif
- If(rSkyship.fDAPCFallMult != 0)
- SetGameSettingFloat("fJumpFallHeightMult", rSkyship.fDAPCFallMult)
- Endif
- SetGodMode(True)
- If (rSkyship.iDA_Armed == 1)
- rSkyship.rSkyship_Stopped.MoveTo(rSkyship.rSkyship)
- rSkyship.StopShipReset()
- While(!rSkyship.rSkyShip_Stopped.Is3DLoaded())
- rSkyship.rSkyShip_Stopped.Enable()
- Endwhile
- GetPlayer().MoveToNode(rSkyship.rSkyShip_Stopped, "PlayerNode")
- Elseif (rSkyship.iDA_Armed == 0)
- rSkyship.rSkyship_Havok.MoveTo(rSkyship.rSkyship)
- rSkyship.StopShipReset()
- While(!rSkyship.rSkyShip_Havok.Is3DLoaded())
- rSkyship.rSkyShip_Havok.Enable()
- Endwhile
- GetPlayer().MoveToNode(rSkyship.rSkyShip_Havok, "PlayerNode")
- Endif
- Endif
- If (rSkyship.iDA_Debug == 1)
- Debug.Trace("Dev Aveza Debug Log: Player Moved to Ship via Reset Function")
- Endif
- SetGodMode(False)
- rSkyship.Gotostate("")
- rSkyship.iDA_Fly = 0
- Endif
- If (option == bOID_t) ; Reset Ship Location
- eVal = !eVal
- SetToggleOptionValue(bOID_t, eVal)
- If (eVal == True)
- rSkyShip.rSkyShip.MoveTo(GetPlayer(), 500, -1000, 1600)
- rSkyShip.rSkyShip.SetAngle (0, 0, rSkyShip.rSkyShip.GetAngleZ())
- If(rSkyship.fDAPCFallMult != 0)
- SetGameSettingFloat("fJumpFallHeightMult", rSkyship.fDAPCFallMult)
- Endif
- If (rSkyship.iDA_Armed == 1)
- rSkyship.rSkyship_Stopped.MoveTo(rSkyship.rSkyship)
- While(!rSkyship.rSkyShip_Stopped.Is3DLoaded())
- rSkyship.rSkyShip_Stopped.Enable()
- Endwhile
- rSkyship.StopShipReset()
- Elseif (rSkyship.iDA_Armed == 0)
- rSkyship.rSkyship_Havok.MoveTo(rSkyship.rSkyship)
- While(!rSkyship.rSkyShip_Havok.Is3DLoaded())
- rSkyship.rSkyShip_Havok.Enable()
- Endwhile
- rSkyship.StopShipReset()
- Endif
- Wait(2)
- rSkyship.rSkyship_Ladder_1.Enable()
- rSkyship.rSkyship_Ladder_2.Enable()
- rSkyship.rSkyship_Ladder_3.Enable()
- rSkyship.rSkyship_Ladder_4.Enable()
- rSkyship.rSkyship_Ladder_5.Enable()
- Endif
- Endif
- If (option == cOID_t) ; Player Counterbalance
- If (dVal == False)
- dVal = !dVal
- SetToggleOptionValue (cOID_t, dVal)
- Elseif (dVal == True)
- dVal = !dVal
- SetToggleOptionValue (cOID_t, dVal)
- Endif
- Endif
- If (option == kOID_t)
- DA_Loc_FormID = DevAvezaWorld.GetFormID()
- DA_Loc_Form = GetForm(DA_Loc_FormID)
- BetterVampiresExceptionList = GetFormFromFile(0x000969, "Update.esm") As FormList
- nVal = !nVal
- SetToggleOptionValue(kOID_t, nVal)
- If (nVal == True)
- If (!BetterVampiresExceptionList.HasForm(DA_Loc_Form))
- If (BetterVampiresExceptionList)
- BetterVampiresExceptionList.AddForm(DA_Loc_Form)
- Endif
- Endif
- Elseif (nVal == False)
- If (BetterVampiresExceptionList.HasForm(DA_Loc_Form))
- If (BetterVampiresExceptionList)
- BetterVampiresExceptionList.RemoveAddedForm(DA_Loc_Form)
- Endif
- Endif
- Endif
- Endif
- If (option == lOID_t)
- oVal = !oVal
- SetToggleOptionValue(lOID_t, oVal)
- If (oVal == True)
- rSkyship.iDA_Anim = 1
- Elseif (oVal == False)
- rSkyship.iDA_Anim = 0
- Endif
- Endif
- If (dVal == True && bVal == True)
- rSkyship.iDASlideFix = 1
- Else
- rSkyship.iDASlideFix = 0
- Endif
- Endevent
- Event OnOptionSliderOpen (int option)
- If (option == aOID_s);Mass
- SetSliderDialogStartValue (rSkyship.fMass)
- SetSliderDialogDefaultValue (8000)
- SetSliderDialogRange (4000, 16000)
- SetSliderDialogInterval (100)
- Elseif (option == bOID_s);Up
- SetSliderDialogStartValue (rSkyship.fUpwardpower)
- SetSliderDialogDefaultValue (4500)
- SetSliderDialogRange (2200, 9000)
- SetSliderDialogInterval (100)
- Elseif (option == cOID_s);Down
- SetSliderDialogStartValue (rSkyship.fDownwardpower)
- SetSliderDialogDefaultValue (4000)
- SetSliderDialogRange (2000, 8000)
- SetSliderDialogInterval (100)
- Elseif (option == dOID_s);Forward
- SetSliderDialogStartValue (rSkyship.fForwardpower)
- SetSliderDialogDefaultValue (15000)
- SetSliderDialogRange (7500, 30000)
- SetSliderDialogInterval (100)
- Elseif (option == eOID_s);Backward
- SetSliderDialogStartValue (rSkyship.fBackwardpower)
- SetSliderDialogDefaultValue (10000)
- SetSliderDialogRange (5000, 20000)
- SetSliderDialogInterval (100)
- Elseif (option == fOID_s);Turn
- SetSliderDialogStartValue (rSkyship.fTurnpower)
- SetSliderDialogDefaultValue (100000)
- SetSliderDialogRange (50000, 200000)
- SetSliderDialogInterval (100)
- Elseif (option == gOID_s);Strafe
- SetSliderDialogStartValue (rSkyship.fStrafepower)
- SetSliderDialogDefaultValue (2000)
- SetSliderDialogRange (1000, 4000)
- SetSliderDialogInterval (100)
- Endif
- Endevent
- Event OnOptionSliderAccept (int option, float value)
- If (rSkyship.Getstate() == "Flying")
- Else
- If (option == aOID_s)
- rSkyship.fMass = Value
- SetSliderOptionValue (aOID_s, rSkyship.fMass)
- Elseif (option == bOID_s)
- rSkyship.fUpwardpower = Value
- SetSliderOptionValue (bOID_s, rSkyship.fUpwardpower)
- Elseif (option == cOID_s)
- rSkyship.fDownwardpower = Value
- SetSliderOptionValue (cOID_s, rSkyship.fDownwardpower)
- Elseif (option == dOID_s)
- rSkyship.fForwardpower = Value
- SetSliderOptionValue (dOID_s, rSkyship.fForwardpower)
- Elseif (option == eOID_s)
- rSkyship.fBackwardpower = Value
- SetSliderOptionValue (eOID_s, rSkyship.fBackwardpower)
- Elseif (option == fOID_s)
- rSkyship.fTurnpower = Value
- SetSliderOptionValue (fOID_s, rSkyship.fTurnpower)
- Elseif (option == gOID_s)
- rSkyship.fStrafepower = Value
- SetSliderOptionValue (gOID_s, rSkyship.fStrafepower)
- Endif
- Endif
- Endevent
- Event OnOptionKeyMapChange (int option, int KeyCode, string conflictControl, string conflictName)
- If (option == aOID_k)
- rSkyship.iUp = KeyCode
- SetKeyMapOptionValue (aOID_k, rSkyship.iUp)
- Elseif (option == bOID_k)
- rSkyship.iDown = KeyCode
- SetKeyMapOptionValue (bOID_k, rSkyship.iDown)
- Elseif (option == cOID_k)
- rSkyship.iForward = KeyCode
- SetKeyMapOptionValue (cOID_k, rSkyship.iForward)
- Elseif (option == dOID_k)
- rSkyship.iBackward = KeyCode
- SetKeyMapOptionValue (dOID_k, rSkyship.iBackward)
- Elseif (option == eOID_k)
- rSkyship.iLeft = KeyCode
- SetKeyMapOptionValue (eOID_k, rSkyship.iLeft)
- Elseif (option == fOID_k)
- rSkyship.iRight = KeyCode
- SetKeyMapOptionValue (fOID_k, rSkyship.iRight)
- Elseif (option == gOID_k)
- rSkyship.iStrafeLeft = KeyCode
- SetKeyMapOptionValue (gOID_k, rSkyship.iStrafeLeft)
- Elseif (option == hOID_k)
- rSkyship.iStrafeRight = KeyCode
- SetKeyMapOptionValue (hOID_k, rSkyship.iStrafeRight)
- Elseif (option == iOID_k)
- rSkyship.iStop = KeyCode
- SetKeyMapOptionValue (iOID_k, rSkyship.iStop)
- Elseif (option == jOID_k)
- rSkyship.iExit = KeyCode
- SetKeyMapOptionValue (jOID_k, rSkyship.iExit)
- Elseif (option == kOID_k)
- rSkyship.iCruise = KeyCode
- SetKeyMapOptionValue (kOID_k, rSkyship.iCruise)
- Endif
- Endevent
- Event OnOptionHighlight(int option)
- If (option == aOID_f)
- SetInfoText ("This option attaches the player to the ship for direct control")
- Elseif (option == bOID_f)
- SetInfoText ("This option allows the player to control the ship While remaining movable on the deck of the ship")
- Elseif (option == aOID_k)
- SetInfoText ("Sets a custom key for Upward Movement")
- Elseif (option == bOID_k)
- SetInfoText ("Sets a custom key for Downward Movement")
- Elseif (option == cOID_k)
- SetInfoText ("Sets a custom key for Forward Movement")
- Elseif (option == dOID_k)
- SetInfoText ("Sets a custom key for Reverse Movement")
- Elseif (option == eOID_k)
- SetInfoText ("Sets a custom key for Left Turning")
- Elseif (option == fOID_k)
- SetInfoText ("Sets a custom key for Right Turning")
- Elseif (option == gOID_k)
- SetInfoText ("Sets a custom key for Left Strafing")
- Elseif (option == hOID_k)
- SetInfoText ("Sets a custom key for Right Strafing")
- Elseif (option == iOID_k)
- SetInfoText ("Sets a custom key for applying the Brake to Slow the Ship")
- Elseif (option == jOID_k)
- SetInfoText ("Sets a custom key for Ending the Flight Instance")
- Elseif (option == kOID_k)
- SetInfoText ("Sets a custom key for Cruise Control")
- Elseif (option == aOID_s)
- SetInfoText ("Adjusts the ship Mass which will effect acceleration and overall speed")
- Elseif (option == bOID_s)
- SetInfoText ("Adjusts the speed of Upward Movement")
- Elseif (option == cOID_s)
- SetInfoText ("Adjusts the speed of Downward Movement")
- Elseif (option == dOID_s)
- SetInfoText ("Adjusts the speed of Forward Movement")
- Elseif (option == eOID_s)
- SetInfoText ("Adjusts the speed of Reverse Movement")
- Elseif (option == fOID_s)
- SetInfoText ("Adjusts the speed of Turning")
- Elseif (option == gOID_s)
- SetInfoText ("Adjusts the speed of Strafing")
- Elseif (option == aOID_t)
- SetInfoText ("Rests the basic Ship functions and controls, close ESC menu after activating to affect change.")
- Elseif (option == bOID_t)
- SetInfoText ("Positions the ship above you with the ladder down, for use in emergencies, use in inappropriate places may have undesired results.")
- Elseif (option == cOID_t)
- SetInfoText ("Enables or Disables Player Counterbalance Scripts, Default: Disabled")
- Elseif (option == dOID_t)
- SetInfoText ("Script Debug Tool, Papyrus logging must be enabled")
- Elseif (option == eOID_t)
- SetInfoText ("Set Interior to Full Interior")
- Elseif (option == fOID_t)
- SetInfoText ("Set Interior to Alternate Interior")
- Elseif (option == gOID_t)
- SetInfoText ("Set Interior to Original Interior")
- Elseif (option == hOID_t)
- SetInfoText ("Set Hull Model to Armed : (Still in Alpha)")
- Elseif (option == iOID_t)
- SetInfoText ("Set Hull Model to Dark Version")
- Elseif (option == jOID_t)
- SetInfoText ("Set Hull Model to Original Version")
- Elseif (option == kOID_t)
- SetInfoText ("Adds Full cabin to Sun Damage Exception list on Update.esm")
- Elseif (option == lOID_t)
- SetInfoText ("Sets a delay on hatch transition for animated hatches")
- Endif
- Endevent
- Event OnOptionDefault (int option)
- If (option == aOID_f)
- aVal = !aVal
- bVal = !bVal
- SetToggleOptionValue (aOID_f, aVal)
- SetToggleOptionValue (bOID_f, bVal)
- rSkyShip.iFlyMode = 0
- Elseif (option == bOID_f)
- aVal = !aVal
- bVal = !bVal
- SetToggleOptionValue (aOID_f, aVal)
- SetToggleOptionValue (bOID_f, bVal)
- rSkyShip.iFlyMode = 0
- Elseif (option == aOID_k)
- rSkyship.iUp = 0x36
- SetKeyMapOptionValue (aOID_k, rSkyship.iUp)
- Elseif (option == bOID_k)
- rSkyship.iDown = 0x9D
- SetKeyMapOptionValue (bOID_k, rSkyship.iDown)
- Elseif (option == cOID_k)
- rSkyship.iForward = 0xC8
- SetKeyMapOptionValue (cOID_k, rSkyship.iForward)
- Elseif (option == dOID_k)
- rSkyship.iBackward = 0xD0
- SetKeyMapOptionValue (dOID_k, rSkyship.iBackward)
- Elseif (option == eOID_k)
- rSkyship.iLeft = 0xCB
- SetKeyMapOptionValue (eOID_k, rSkyship.iLeft)
- Elseif (option == fOID_k)
- rSkyship.iRight = 0xCD
- SetKeyMapOptionValue (fOID_k, rSkyship.iRight)
- Elseif (option == gOID_k)
- rSkyship.iStrafeLeft = 0xD3
- SetKeyMapOptionValue (gOID_k, rSkyship.iStrafeLeft)
- Elseif (option == hOID_k)
- rSkyship.iStrafeRight = 0xD1
- SetKeyMapOptionValue (hOID_k, rSkyship.iStrafeRight)
- Elseif (option == iOID_k)
- rSkyship.iStop = 0x52
- SetKeyMapOptionValue (iOID_k, rSkyship.iStop)
- Elseif (option == jOID_k)
- rSkyship.iExit = 0x1C
- SetKeyMapOptionValue (jOID_k, rSkyship.iExit)
- Elseif (option == kOID_k)
- rSkyship.iCruise = 0xC7
- SetKeyMapOptionValue (kOID_k, rSkyship.iCruise)
- Elseif (option == aOID_s || option == bOID_s || option == cOID_s || option == dOID_s || option == eOID_s || option == fOID_s || option == gOID_s)
- Debug.MessageBox("Reset sliders with the slider reset option")
- Elseif (option == aOID_t)
- ;Reset Function
- Elseif (option == bOID_t)
- ;Reset Function
- Elseif (option == cOID_t)
- If (dVal == True)
- dVal = !dVal
- SetToggleOptionValue (cOID_t, dVal)
- rSkyship.iDASlideFix = 0
- Endif
- Elseif (option == dOID_t)
- ;Debug Function
- Endif
- Endevent
- ;Event OnActivate(rSkyship.rSkyship)
- ;RegisterForMenu("MapMenu")
- ;Endevent
- ;Event OnMenuOpen(String MenuName)
- ; If (rSkyship.Getstate() == "Flying")
- ; If Game.IsFastTravelEnabled() == True && rSkyship.iDA_Fly == 1 && rSkyship.bFastTravel == True
- ; Game.EnableFastTravel(false)
- ; Else
- ; Endif
- ; Else
- ; Endif
- ;Endevent
- ;Event OnMenuClose(String MenuName)
- ; If (rSkyship.Getstate() == "Flying")
- ; If Game.IsFastTravelEnabled() == False && rSkyship.iDA_Fly == 0 && rSkyship.bFastTravel == True
- ; Game.EnableFastTravel()
- ; Else
- ; Endif
- ; Else
- ; Endif
- ;Endevent
- Int Function GetVersion()
- Return 2
- Endfunction
Add Comment
Please, Sign In to add comment