Compare commits

...

15 Commits

68 changed files with 42 additions and 32 deletions

Binary file not shown.

View File

@ -7,8 +7,8 @@ sLanguage=ENGLISH
bInvalidateOlderFiles=1
sArchiveToLoadInMemoryList=Skyrim - Animations.bsa, Skyrim - Interface.bsa, Skyrim - Sounds.bsa, E - Misc.bsa
sEsmToLoadInMemoryList=Skyrim.esm, Update.esm, Dawnguard.esm, HearthFires.esm, Dragonborn.esm, Enderal - Forgotten Stories.esm
sResourceArchiveList=Skyrim - Misc.bsa, Skyrim - Shaders.bsa, Skyrim - Interface.bsa, Skyrim - Animations.bsa, Skyrim - Meshes0.bsa, Skyrim - Meshes1.bsa, Skyrim - Sounds.bsa, Skyrim - Textures0.bsa, Skyrim - Textures1.bsa, Skyrim - Textures2.bsa, Skyrim - Textures3.bsa, Skyrim - Textures4.bsa, Skyrim - Textures5.bsa, Skyrim - Textures6.bsa, Skyrim - Textures7.bsa
sResourceArchiveList2=Skyrim - Textures8.bsa, Skyrim - Patch.bsa, Skyrim_VR - Main.bsa, E - Meshes.bsa, E - Textures1.bsa, E - Textures2.bsa, E - Sounds.bsa, L - Voices.bsa, E - Misc.bsa, E - Update.bsa, L - Textures.bsa
sResourceArchiveList=Skyrim - Shaders.bsa, Skyrim - Interface.bsa, Skyrim - Animations.bsa, Skyrim - Meshes0.bsa, Skyrim - Meshes1.bsa, Skyrim - Sounds.bsa, Skyrim - Textures0.bsa, Skyrim - Textures1.bsa, Skyrim - Textures2.bsa, Skyrim - Textures3.bsa, Skyrim - Textures4.bsa, Skyrim - Textures5.bsa, Skyrim - Textures6.bsa, Skyrim - Textures7.bsa
sResourceArchiveList2=Skyrim - Textures8.bsa, Skyrim - Patch.bsa, Skyrim_VR - Main.bsa, E - Misc.bsa, E - Meshes.bsa, E - Textures1.bsa, E - Textures2.bsa, E - Sounds.bsa, L - Voices.bsa, E - Update.bsa, L - Textures.bsa
[SaveGame]
iAutoSaveCount=5

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -110,7 +110,10 @@ inline void CheckScriptVersions()
};
std::map<std::string, short> scripts;
scripts["EnderalFunctions"] = 1;
scripts["_00E_PlayerFunctions"] = 1;
scripts["_00E_PlayerSetUpScript"] = 1;
scripts["_00E_EngineBugfixAlias"] = 1;
scripts["_00E_Phasmalist_NewApparitionAlias"] = 1;
scripts["_FS_Phasmalist_ControlQuest"] = 1;
scripts["_00E_Phasmalist_Workbench"] = 1;
@ -119,6 +122,7 @@ inline void CheckScriptVersions()
scripts["_00E_PlayerhousingMaster"] = 1;
scripts["_00E_ContainerBonusControl"] = 1;
scripts["_00E_AffinityControl"] = 1;
scripts["_00E_SympathyControl"] = 1;
scripts["_00E_EnderalMCM"] = 1;
scripts["_00E_SkillControl"] = 1;
scripts["_00E_VisionControl"] = 1;

View File

@ -1,4 +1,4 @@
Scriptname _00E_AffinityControl extends ReferenceAlias Hidden Conditional
Scriptname _00E_AffinityControl extends ReferenceAlias Conditional
; ATTENTION
; this script contains a new affinity system that requires FS. Therefore, many elements in this script are redundant, as
@ -192,7 +192,7 @@ Function UpdateClassIndices(Int[] PerkDistribution)
EndWhile
UpdateMajorSchool()
iMajorClassIndex = MajorClassIndex
_00E_MajorClassIndex.SetValue(MajorClassIndex)
; Update minor class/perk tree
If MinorClassIndex > 0 && (MinorClassIndex == MajorClassIndex || PerkDistribution[MinorClassIndex] == 0)
@ -207,7 +207,7 @@ Function UpdateClassIndices(Int[] PerkDistribution)
Index += 1
EndWhile
iMinorClassIndex = MinorClassIndex
_00E_MinorClassIndex.SetValue(MinorClassIndex)
EndFunction
@ -490,9 +490,6 @@ EndFunction
; PROPERTIES
;=====================================================================================
int Property iMajorClassIndex Auto Conditional Hidden
int Property iMinorClassIndex Auto Conditional Hidden
int Property MajorClassIndex Auto Hidden
int Property MinorClassIndex Auto Hidden
int Property MajorSchool Auto
@ -669,3 +666,6 @@ Int Affinity_ScourgeOfTheWildsIndex
Int Affinity_SoulcallerIndex
Bool BlockClassUpdates
GlobalVariable Property _00E_MajorClassIndex Auto
GlobalVariable Property _00E_MinorClassIndex Auto

View File

@ -5,19 +5,12 @@ int function _GetScriptVersion() Global
endFunction
Event OnInit()
Utility.Wait(0.1)
Utility.Wait(0.05)
_ClearStuckHelpMessages()
EndEvent
Event OnPlayerLoadGame()
; ResetHelpMessage crashes the game when called in menu mode, for instance, when loading a savegame fails due to missing mods
Utility.Wait(0.1)
; If a help message is visible during game reload, it gets stuck on screen
; This workaround shows an empty message to forcefully clear the queue
_ClearStuckHelpMessages()
Actor PlayerREF = GetReference() as Actor
; Perks modifying armor weights need some push on each game load to work.
@ -28,6 +21,13 @@ Event OnPlayerLoadGame()
_ResetPerk(PlayerREF, _00E_Class_Vagrant_P05_B_Lightweight)
EndIf
; ResetHelpMessage crashes the game when called in menu mode, for instance, when loading a savegame fails due to missing mods
Utility.Wait(0.05)
; If a help message is visible during game reload, it gets stuck on screen
; This workaround shows an empty message to forcefully clear the queue
_ClearStuckHelpMessages()
; Workaround for broken physics on loading saves, made on a mount
If PlayerREF.IsOnMount()
PlayerREF.Dismount()
@ -43,10 +43,10 @@ Function _ResetPerk(Actor PlayerREF, Perk p)
EndFunction
Event _ClearStuckHelpMessages()
if EnderalFunctions.GetNewGameCount() > 1
Message.ResetHelpMessage("Empty")
_00E_EmptyMessage.ShowAsHelpMessage("Empty", 0.1, 1, 1)
Utility.Wait(0.1)
Message.ResetHelpMessage("Empty")
_00E_EmptyMessage.ShowAsHelpMessage("Empty", 0.1, 10, 1)
endif
EndEvent
Perk Property _00E_Class_Keeper_P05_C_Conditioning Auto

View File

@ -9,31 +9,33 @@ Function ReduceMainSkills()
String sActorValueToReduce01
String sActorValueToReduce02
If AffinityControl.iMajorClassIndex == 1
int iClassIndex = _00E_MajorClassIndex.GetValueInt()
If iClassIndex == 1
sActorValueToReduce01 = "Block"
sActorValueToReduce02 = "HeavyArmor"
ElseIf AffinityControl.iMajorClassIndex == 2
ElseIf iClassIndex == 2
sActorValueToReduce01 = "OneHanded"
sActorValueToReduce02 = "LightArmor"
ElseIf AffinityControl.iMajorClassIndex == 3
ElseIf iClassIndex == 3
sActorValueToReduce01 = "Destruction"
sActorValueToReduce02 = "Restoration"
ElseIf AffinityControl.iMajorClassIndex == 4
ElseIf iClassIndex == 4
sActorValueToReduce01 = "Sneak"
sActorValueToReduce02 = "OneHanded"
ElseIf AffinityControl.iMajorClassIndex == 5
ElseIf iClassIndex == 5
sActorValueToReduce01 = "Conjuration"
sActorValueToReduce02 = "Illusion"
ElseIf AffinityControl.iMajorClassIndex == 6
ElseIf iClassIndex == 6
sActorValueToReduce01 = "Restoration"
sActorValueToReduce02 = "Alteration"
ElseIf AffinityControl.iMajorClassIndex == 7
ElseIf iClassIndex == 7
sActorValueToReduce01 = "TwoHanded"
sActorValueToReduce02 = "HeavyArmor"
ElseIf AffinityControl.iMajorClassIndex == 8
ElseIf iClassIndex == 8
sActorValueToReduce01 = "Marksman"
sActorValueToReduce02 = "LightArmor"
ElseIf AffinityControl.iMajorClassIndex == 9
ElseIf iClassIndex == 9
sActorValueToReduce01 = "LightArmor"
sActorValueToReduce02 = "Alchemy"
Else
@ -57,10 +59,10 @@ EndFunction
; PROPERTIES
;=====================================================================================
_00E_AffinityControl Property AffinityControl Auto
Actor Property PlayerREF Auto
GlobalVariable Property _00E_IsInJail Auto
Message Property _00E_CrimeQuest_ReduceSkillMessage Auto
GlobalVariable Property _00E_MajorClassIndex Auto

View File

@ -1,5 +1,9 @@
Scriptname EnderalFunctions Hidden
int function _GetScriptVersion() Global
return 1
endFunction
float function CalculateContentStrength(ObjectReference container) native global
Potion function CreatePotion(MagicEffect[] effects, float[] magnitudes, int[] areas, int[] durations, int arraySize) native global

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.