public static void InitStart(InitParams initParams) { mod = initParams.Mod; gameobjectDistantTerrain = new GameObject("DistantTerrain"); componentDistantTerrain = gameobjectDistantTerrain.AddComponent <DistantTerrain>(); ModSettings settings = mod.GetSettings(); shaderDistantTerrainTilemap = mod.GetAsset <Shader>("Shaders/DistantTerrainTilemap.shader"); shaderBillboardBatchFaded = mod.GetAsset <Shader>("Shaders/DaggerfallBillboardBatchFaded.shader"); shaderTransitionRingTilemap = mod.GetAsset <Shader>("Shaders/TransitionRingTilemap.shader"); shaderTransitionRingTilemapTextureArray = mod.GetAsset <Shader>("Shaders/TransitionRingTilemapTextureArray.shader"); enableTerrainTransition = settings.GetValue <bool>("GeneralSettings", "TerrainTransition"); enableFadeIntoSkybox = settings.GetValue <bool>("GeneralSettings", "FadeIntoSkybox"); enableSeaReflections = settings.GetValue <bool>("GeneralSettings", "SeaReflections"); enableImprovedTerrain = settings.GetValue <bool>("ImprovedTerrainSettings", "EnableImprovedTerrain"); indicateLocations = settings.GetValue <bool>("ImprovedTerrainSettings", "IndicateLocations"); componentDistantTerrain.EnableTerrainTransition = enableTerrainTransition; componentDistantTerrain.EnableFadeIntoSkybox = enableFadeIntoSkybox; componentDistantTerrain.EnableSeaReflections = enableSeaReflections; componentDistantTerrain.EnableImprovedTerrain = enableImprovedTerrain; componentDistantTerrain.IndicateLocations = indicateLocations; componentDistantTerrain.ShaderDistantTerrainTilemap = shaderDistantTerrainTilemap; componentDistantTerrain.ShaderBillboardBatchFaded = shaderBillboardBatchFaded; componentDistantTerrain.ShaderTransitionRingTilemap = shaderTransitionRingTilemap; componentDistantTerrain.ShaderTransitionRingTilemapTextureArray = shaderTransitionRingTilemapTextureArray; }
private void Start() { ModSettings settings = mod.GetSettings(); encounterAvoidanceSystem = settings.GetValue <bool>("AvoidRandomEncounters", "AvoidRandomEncounters"); maxSuccessChance = settings.GetValue <int>("AvoidRandomEncounters", "MaxChanceToAvoidEncounter"); hudVitals = DaggerfallUI.Instance.DaggerfallHUD.HUDVitals; playerEntity = GameManager.Instance.PlayerEntity; TediousData.Instance.LoadPortTowns(); baseFixedDeltaTime = Time.fixedDeltaTime; DaggerfallUI.UIManager.OnWindowChange += travelMapInterceptor; travelMap = new TediousTravelMap(DaggerfallUI.UIManager, this); travelUi = new TediousTravelControllMenu(DaggerfallUI.UIManager, travelMap); travelUi.OnCancel += (sender) => { destinationName = ""; }; travelUi.OnClose += () => { InterruptFastTravel(); }; travelUi.OnTimeCompressionChanged += (newTimeCompression) => { SetTimeScale(newTimeCompression); }; ridingAudioSource = GameManager.Instance.TransportManager.GetComponent <AudioSource>(); Debug.Log("riding audio source: " + ridingAudioSource); // Clear destination for new or loaded games. SaveLoadManager.OnLoad += (saveData) => { destinationName = ""; }; StartGameBehaviour.OnNewGame += () => { destinationName = ""; }; }
public static void InitStart(InitParams initParams) { // check if debug gameobject is present, if so do not initalize mod if (GameObject.Find("debug_RealtimeReflections")) { return; } // Get this mod mod = initParams.Mod; // Load settings. Pass this mod as paramater ModSettings settings = mod.GetSettings(); // settings floorReflectionTextureWidth = settings.GetValue <int>("FloorReflectionTexture", "width"); floorReflectionTextureHeight = settings.GetValue <int>("FloorReflectionTexture", "height"); lowerLevelReflectionTextureWidth = settings.GetValue <int>("LowerLevelReflectionTexture", "width"); lowerLevelReflectionTextureHeight = settings.GetValue <int>("LowerLevelReflectionTexture", "height"); roughnessMultiplier = settings.GetValue <float>("ReflectionParameters", "roughnessMultiplier"); shaderTilemapWithReflections = mod.GetAsset <Shader>("Shaders/DaggerfallTilemapWithReflections.shader"); shaderTilemapTextureArrayWithReflections = mod.GetAsset <Shader>("Shaders/DaggerfallTilemapTextureArrayWithReflections.shader"); shaderCreateLookupReflectionTextureCoordinates = mod.GetAsset <Shader>("Shaders/CreateLookupReflectionTextureCoordinates.shader"); shaderCreateLookupReflectionTextureIndex = mod.GetAsset <Shader>("Shaders/CreateLookupReflectionTextureIndex.shader"); shaderDeferredPlanarReflections = mod.GetAsset <Shader>("Shaders/DeferredPlanarReflections.shader"); textureTileatlasReflective = mod.GetAsset <Texture2D>("Resources/tileatlas_reflective"); textureTileatlasReflectiveRaining = mod.GetAsset <Texture2D>("Resources/tileatlas_reflective_raining"); initMod(); //after finishing, set the mod's IsReady flag to true. ModManager.Instance.GetMod(initParams.ModTitle).IsReady = true; }
public static void InitStart(InitParams initParams) { // check if debug gameobject is present, if so do not initalize mod if (GameObject.Find("debug_DistantTerrain")) { return; } // Get this mod mod = initParams.Mod; // Load settings. ModSettings settings = mod.GetSettings(); // settings enableTerrainTransition = settings.GetValue <bool>("GeneralSettings", "TerrainTransition"); enableFadeIntoSkybox = settings.GetValue <bool>("GeneralSettings", "FadeIntoSkybox"); enableSeaReflections = settings.GetValue <bool>("GeneralSettings", "SeaReflections"); enableImprovedTerrain = settings.GetValue <bool>("ImprovedTerrainSettings", "EnableImprovedTerrain"); indicateLocations = settings.GetValue <bool>("ImprovedTerrainSettings", "IndicateLocations"); shaderDistantTerrainTilemap = mod.GetAsset <Shader>("Shaders/DistantTerrainTilemap.shader"); shaderBillboardBatchFaded = mod.GetAsset <Shader>("Shaders/DaggerfallBillboardBatchFaded.shader"); shaderTransitionRingTilemap = mod.GetAsset <Shader>("Shaders/TransitionRingTilemap.shader"); shaderTransitionRingTilemapTextureArray = mod.GetAsset <Shader>("Shaders/TransitionRingTilemapTextureArray.shader"); initMod(); //after finishing, set the mod's IsReady flag to true. ModManager.Instance.GetMod(initParams.ModTitle).IsReady = true; }
void Awake() { ModSettings settings = mod.GetSettings(); apMax = settings.GetValue <int>("AttributePoints", "MaximumAttributePoints"); apMin = settings.GetValue <int>("AttributePoints", "MinimumAttributePoints"); curvedAP = settings.GetValue <bool>("AttributePoints", "ActivateCurvedLeveling"); startAttribute = settings.GetValue <int>("StartingAttributes", "AdjustStartingAttributesBy"); maxAttribute = settings.GetValue <int>("AttributeMaximum", "MaximumAttributePoints"); hpMaxSetting = settings.GetValue <int>("HitPoints", "MaximumHitPoints"); hpMinSetting = settings.GetValue <int>("HitPoints", "MinimumHitPoints"); medianHP = settings.GetValue <bool>("HitPoints", "MedianHitPoints"); retroEnd = settings.GetValue <bool>("HitPoints", "RetroactiveEnduranceBonus"); if (apMax != 6 || apMin != 4) { editAP = true; } if (startAttribute != 0) { editStartAP = true; } if (maxAttribute != 100) { editMaxAP = true; } if (hpMaxSetting != 1 || hpMinSetting != 1 || medianHP || retroEnd) { editHP = true; } }
void Start() { ModSettings settings = mod.GetSettings(); volume = settings.GetValue <float>("Settings", "Volume"); minDist = settings.GetValue <float>("Settings", "MinVolumeDistance"); maxDist = settings.GetValue <float>("Settings", "MaxVolumeDistance"); pitch = settings.GetValue <float>("Settings", "Pitch"); PlayerEnterExit.OnTransitionDungeonInterior += PlayerEnterExit_OnTransitionDungeonInterior; }
private void Start() { ModSettings settings = mod.GetSettings(); volume = settings.GetValue <float>("Settings", "Volume"); minDist = settings.GetValue <float>("Settings", "MinVolumeDistance"); maxDist = settings.GetValue <float>("Settings", "MaxVolumeDistance"); playerEnterExit = GameManager.Instance.PlayerEnterExit; SaveLoadManager.OnLoad += (saveData) => { currentLocationName = null; }; StartGameBehaviour.OnNewGame += () => { currentLocationName = null; }; }
static void LoadSettings(ModSettings modSettings, ModSettingsChange change) { SettingMenuUnlock = modSettings.GetValue <int>("Gameplay", "MenuUnlock"); SettingEntries = modSettings.GetValue <int>("Gameplay", "Entries"); SettingSpawnItem = modSettings.GetBool("Gameplay", "ItemSpawning"); SettingDefaultRotation = modSettings.GetValue <int>("UserInterface", "DefaultMobOrientation"); SettingAnimationUpdateDelay = modSettings.GetValue <int>("UserInterface", "DelayBetweenAnimationFrames"); SettingAnimate = modSettings.GetBool("UserInterface", "EnableAnimations"); SettingEnableAllDirectionRotation = modSettings.GetBool("UserInterface", "EnableEightDirectionRotation"); openMenuKeyCode = SetKeyFromText(modSettings.GetValue <string>("Controls", "Keybind")); InitializeUI(); }
private void LoadSettings(ModSettings settings) { enableFog = settings.GetValue <bool>("Dungeon Fog", "enableFog"); maxFogDistance = settings.GetValue <float>("Dungeon Fog", "maxFogDistance"); minFogDistance = settings.GetValue <float>("Dungeon Fog", "minFogDistance"); maxFogStart = settings.GetValue <float>("Dungeon Fog", "maxFogStart"); minFogStart = settings.GetValue <float>("Dungeon Fog", "minFogStart"); enableAmbientLighting = settings.GetValue <bool>("Dungeon Lighting", "enableFogAmbientEffect"); dungeonDarkness = settings.GetValue <float>("Dungeon Lighting", "dungeonDarkness"); ambientLerp = settings.GetValue <float>("Dungeon Lighting", "fogAmbientEffect"); enableAO = settings.GetValue <bool>("Effects", "enableAO"); enableVignette = settings.GetValue <bool>("Effects", "enableVignette"); }
private void LoadSettings(ModSettings settings) { enableCustomFootsteps = settings.GetValue <bool>("Better Footsteps", "enable"); armorSoundVolume = settings.GetValue <float>("Better Footsteps", "armorVolume"); footstepSoundVolume = settings.GetValue <float>("Better Footsteps", "footstepVolume"); footstepsComponent.FootstepsArmor.SetVolume(0.4f * armorSoundVolume); footstepsComponent.FootstepSoundDungeon.SetVolume(0.3f * footstepSoundVolume); footstepsComponent.FootstepSoundBuilding.SetVolume(0.4f * footstepSoundVolume); footstepsComponent.FootstepSoundShallow.SetVolume(0.4f * footstepSoundVolume); footstepsComponent.FootstepSoundOutside.SetVolume(0.15f * footstepSoundVolume); footstepsComponent.FootstepSoundSubmerged.SetVolume(footstepSoundVolume); footstepsComponent.FootstepSoundSnow.SetVolume(footstepSoundVolume); }
void GetModSettings() { ModSettings settings = DecoratorModLoader.Mod.GetSettings(); hotKeyOption = settings.GetValue <int>("Options", "HotKeyOptions"); hotKey = settings.GetValue <string>("Options", "HotKey"); placeObjectCost = settings.GetValue <string>("Options", "PlaceObjectCost"); GuildRestriction = settings.GetValue <bool>("Options", "GuildRestriction"); if (hotKeyOption == 0) { hotKeyKeyCode = KeyCode.Slash; } else if (hotKeyOption == 1) { try { hotKeyKeyCode = (KeyCode)Enum.Parse(typeof(KeyCode), hotKey, true); } catch (ArgumentException) { hotKeyKeyCode = KeyCode.Slash; } } try { PlaceObjectCost = int.Parse(placeObjectCost); if (PlaceObjectCost < 0) { PlaceObjectCost = 100; } } catch (FormatException) { PlaceObjectCost = 100; } catch (OverflowException) { PlaceObjectCost = 100; } }
private void Start() { ModSettings settings = mod.GetSettings(); UseNativeDfShipCalculations = settings.GetValue <bool>(SHIP_TRAVEL_OPTIONS_SETTINGS_SECTION, "EnableDaggerfallNativeShipTravel"); UseInnsWhenTravelingByShip = settings.GetValue <bool>(SHIP_TRAVEL_OPTIONS_SETTINGS_SECTION, "UseInnsWhenTravelingByShip"); int avoidEncounterInt = settings.GetValue <int>(RANDOM_ENCOUNTERS_SETTINGS_SECTION, "AvoidRandomEncounters"); avoidEncounters = (AvoidEncounterChoice)Enum.ToObject(typeof(AvoidEncounterChoice), avoidEncounterInt); maxSuccessChance = settings.GetValue <int>(RANDOM_ENCOUNTERS_SETTINGS_SECTION, "MaxChanceToAvoidEncounter"); hudVitals = DaggerfallUI.Instance.DaggerfallHUD.HUDVitals; playerEntity = GameManager.Instance.PlayerEntity; TediousData.Instance.LoadPortTowns(mod.PersistentDataDirectory); baseFixedDeltaTime = Time.fixedDeltaTime; DaggerfallUI.UIManager.OnWindowChange += travelMapInterceptor; travelMap = new TediousTravelMap(DaggerfallUI.UIManager, this); travelUi = new TediousTravelControllMenu(DaggerfallUI.UIManager, travelMap); travelUi.OnCancel += (sender) => { destinationName = null; }; travelUi.OnClose += () => { InterruptFastTravel(); }; travelUi.OnTimeCompressionChanged += (newTimeCompression) => { SetTimeScale(newTimeCompression); }; ridingAudioSource = GameManager.Instance.TransportManager.GetComponent <AudioSource>(); Debug.Log("riding audio source: " + ridingAudioSource); // Clear destination for new or loaded games. SaveLoadManager.OnLoad += (saveData) => { destinationName = null; }; StartGameBehaviour.OnNewGame += () => { destinationName = null; }; GameManager.OnEncounter += GameManager_OnEncounter; rain = GameManager.Instance.WeatherManager.PlayerWeather.RainParticles; snow = GameManager.Instance.WeatherManager.PlayerWeather.SnowParticles; }
public static void Init(InitParams initParams) { mod = initParams.Mod; gameobjectRealtimeReflections = new GameObject("RealtimeReflections"); componentUpdateReflectionTextures = gameobjectRealtimeReflections.AddComponent <UpdateReflectionTextures>(); ModSettings settings = mod.GetSettings(); shaderTilemapWithReflections = mod.GetAsset <Shader>("Shaders/DaggerfallTilemapWithReflections.shader"); shaderTilemapTextureArrayWithReflections = mod.GetAsset <Shader>("Shaders/DaggerfallTilemapTextureArrayWithReflections.shader"); shaderCreateLookupReflectionTextureCoordinates = mod.GetAsset <Shader>("Shaders/CreateLookupReflectionTextureCoordinates.shader"); shaderCreateLookupReflectionTextureIndex = mod.GetAsset <Shader>("Shaders/CreateLookupReflectionTextureIndex.shader"); shaderDeferredPlanarReflections = mod.GetAsset <Shader>("Shaders/DeferredPlanarReflections.shader"); shaderDungeonWaterWithReflections = mod.GetAsset <Shader>("Shaders/DungeonWaterWithReflections.shader"); shaderInvisible = mod.GetAsset <Shader>("Shaders/Invisible.shader"); textureTileatlasReflective = mod.GetAsset <Texture2D>("Resources/tileatlas_reflective"); textureTileatlasReflectiveRaining = mod.GetAsset <Texture2D>("Resources/tileatlas_reflective_raining"); componentUpdateReflectionTextures.IsEnabledOutdoorGroundReflections = settings.GetValue <bool>("GeneralSettings", "OutdoorGroundReflections"); componentUpdateReflectionTextures.IsEnabledOutdoorSeaReflections = settings.GetValue <bool>("GeneralSettings", "OutdoorSeaReflections"); componentUpdateReflectionTextures.IsEnabledIndoorBuildingFloorReflections = settings.GetValue <bool>("GeneralSettings", "IndoorBuildingFloorReflections"); componentUpdateReflectionTextures.IsEnabledIndoorBuildingLowerLevelReflection = settings.GetValue <bool>("GeneralSettings", "IndoorBuildingLowerLevelReflection"); componentUpdateReflectionTextures.IsEnabledDungeonGroundReflections = settings.GetValue <bool>("GeneralSettings", "DungeonGroundReflections"); componentUpdateReflectionTextures.IsEnabledDungeonWaterReflections = settings.GetValue <bool>("GeneralSettings", "DungeonWaterReflections"); componentUpdateReflectionTextures.IsFeatureEnabledFakeParallaxReflections = settings.GetValue <bool>("Features", "FakeParallaxReflections"); componentUpdateReflectionTextures.FloorReflectionTextureWidth = settings.GetValue <int>("FloorReflectionTexture", "width"); componentUpdateReflectionTextures.FloorReflectionTextureHeight = settings.GetValue <int>("FloorReflectionTexture", "height"); componentUpdateReflectionTextures.LowerLevelReflectionTextureWidth = settings.GetValue <int>("LowerLevelReflectionTexture", "width"); componentUpdateReflectionTextures.LowerLevelReflectionTextureHeight = settings.GetValue <int>("LowerLevelReflectionTexture", "height"); componentUpdateReflectionTextures.RoughnessMultiplier = settings.GetValue <float>("ReflectionParameters", "roughnessMultiplier"); componentUpdateReflectionTextures.ShaderTilemapWithReflections = shaderTilemapWithReflections; componentUpdateReflectionTextures.ShaderTilemapTextureArrayWithReflections = shaderTilemapTextureArrayWithReflections; componentUpdateReflectionTextures.ShaderCreateLookupReflectionTextureCoordinates = shaderCreateLookupReflectionTextureCoordinates; componentUpdateReflectionTextures.ShaderCreateLookupReflectionTextureIndex = shaderCreateLookupReflectionTextureIndex; componentUpdateReflectionTextures.ShaderDeferredPlanarReflections = shaderDeferredPlanarReflections; componentUpdateReflectionTextures.ShaderDungeonWaterWithReflections = shaderDungeonWaterWithReflections; componentUpdateReflectionTextures.ShaderInvisible = shaderInvisible; componentUpdateReflectionTextures.TextureTileatlasReflective = textureTileatlasReflective; componentUpdateReflectionTextures.TextureTileatlasReflectiveRaining = textureTileatlasReflectiveRaining; }
public static void InitStart(InitParams initParams) { // check if debug gameobject is present, if so do not initalize mod if (GameObject.Find("debug_EnhancedSky")) { return; } // Get this mod mod = initParams.Mod; // Load settings. Pass this mod as paramater ModSettings settings = mod.GetSettings(); // settings //enableSunFlare = settings.GetBool("GeneralSettings", "UseSunFlare"); //cloudQuality = settings.GetInt("GeneralSettings", "CloudQuality"); sunSize = settings.GetValue <float>("GeneralSettings", "SunSize"); enableSunFlare = settings.GetValue <bool>("GeneralSettings", "UseSunFlare"); cloudQuality = settings.GetValue <int>("GeneralSettings", "CloudQuality"); shaderDepthMask = mod.GetAsset <Shader>("Materials/Resources/DepthMask.shader") as Shader; shaderUnlitAlphaWithFade = mod.GetAsset <Shader>("Materials/Resources/UnlitAlphaWithFade.shader") as Shader; starsMat = mod.GetAsset <Material>("Materials/Resources/Stars") as Material; skyMat = mod.GetAsset <Material>("Materials/Resources/Sky") as Material; sunFlare = mod.GetAsset <Flare>("LightFlares/Sun.flare") as Flare; //cloudMesh = mod.GetAsset<Mesh>("Model Imports/Hemisphere_01_smooth.fbx") as Mesh; containerPrefab = mod.GetAsset <Object>("Prefabs/Resources/NewEnhancedSkyContainer.prefab") as Object; initMod(); //after finishing, set the mod's IsReady flag to true. ModManager.Instance.GetMod(initParams.ModTitle).IsReady = true; }
void Start() { //Sets up object instances for GameManager, so said scripts can be manipulated/accessed. Prints Message when done. playerMotor = GameManager.Instance.PlayerMotor; heightChanger = playerMotor.GetComponent <PlayerHeightChanger>(); mainCamera = GameObject.FindGameObjectWithTag("MainCamera"); playerController = playerMotor.GetComponent <CharacterController>(); //StartCoroutine(debug()); //pulls setting data and assigns it to script vars for dodge routine below. dodgeDistanceMult = settings.GetValue <float>("Settings", "DodgeDistanceMult"); dodgeTimeMult = settings.GetValue <float>("Settings", "DodgeTimeMult"); dodgeCostMult = settings.GetValue <float>("Settings", "DodgeCostMult"); dodgeDuckCamera = settings.GetValue <float>("Settings", "DodgeDuckCamera"); inputKey = settings.GetValue <string>("Settings", "Key"); DaggerfallUI.Instance.PopupMessage("Dodge Script Started:"); //converts string key setting into valid unity keycode. Ensures mouse and keyboard inputs work properly. dodgeKeyCode = (KeyCode)Enum.Parse(typeof(KeyCode), inputKey); }
void Awake() { ModSettings settings = mod.GetSettings(); int rules = settings.GetValue <int>("Features", "Rules"); classic = (rules == 0); modern = (rules == 1); mod.IsReady = true; StartGameBehaviour.OnStartGame += RacesRedone_OnStartGame; Debug.Log("[Races Redone] Classic Rules = " + classic.ToString()); Debug.Log("[Races Redone] Modern Rules = " + modern.ToString()); Debug.Log("[Races Redone] Ready"); Debug.Log("[Races Redone] Awake dumbPlayer = " + dumbPlayer.ToString()); }
private void LoadSettings(ModSettings settings) { damageShaker.fadeInTime = settings.GetValue <float>("Camera Shake", "fadeInTime"); damageShaker.fadeOutTime = settings.GetValue <float>("Camera Shake", "fadeOutTime"); damageShaker.maxShake = settings.GetValue <float>("Camera Shake", "maxShake"); damageShaker.roughness = settings.GetValue <float>("Camera Shake", "roughness"); damageShaker.shakeAmountAdd = settings.GetValue <float>("Camera Shake", "shakeAmountAdd"); damageShaker.shakeAmountMultiplier = settings.GetValue <float>("Camera Shake", "shakeAmountMultiplier"); }
private void Start() { //sets shield texture path, using the application base directory. shieldTexture_Path = Application.dataPath + "/Scripts/Game/shield.png"; // Get weapon scale shieldScaleX = (float)Screen.width / 320; shieldScaleY = (float)Screen.height / 200; StartCoroutine(debug()); //assigns loaded texture to shieldTex using loadPNG method. shieldTex = LoadPNG(shieldTexture_Path); blockKey = settings.GetValue <string>("Settings", "blockKey"); }
//binds key settings to script strings for input detection in update routine. void Start() { NextOutfitKey = settings.GetValue <string>("Settings", "NextOutfitKey"); PrevOutfitKey = settings.GetValue <string>("Settings", "PrevOutfitKey"); EquipOutfitKey = settings.GetValue <string>("Settings", "EquipOutfitKey"); ToggleGuiKey = settings.GetValue <string>("Settings", "ToggleGuiKey"); SaveOutfitKey = settings.GetValue <string>("Settings", "SaveOutfitKey"); DeleteOutfitKey = settings.GetValue <string>("Settings", "DeleteOutfitKey"); UIWindowFactory.RegisterCustomUIWindow(UIWindowType.Inventory, typeof(OutfitManagerInventoryWindow)); UIWindow = (OutfitManagerInventoryWindow)UIWindowFactory.GetInstance(UIWindowType.Inventory, uiManager, null); dfAudioSource = GameManager.Instance.PlayerObject.AddComponent <DaggerfallAudioSource>(); console = GameObject.Find("Console"); consoleController = console.GetComponent <ConsoleController>(); }
/// <summary> /// Load settings and init window. /// </summary> private void LoadSettings(ModSettings settings, ModSettingsChange change) { guiDepth = settings.GetValue <int>("UiSettings", "GuiDepth"); // General const string generalSection = "General"; dungeons = settings.GetBool(generalSection, "Dungeons"); buildings = settings.GetBool(generalSection, "Buildings"); minimumWait = settings.GetInt(generalSection, "ShowForMinimum"); pressAnyKey = settings.GetBool(generalSection, "PressAnyKey"); // Death Screen const string deathScreenSection = "DeathScreen"; deathScreen = settings.GetBool(deathScreenSection, "Enable"); disableVideo = settings.GetBool(deathScreenSection, "DisableVideo"); window = new LoadingScreenWindow(settings); Toggle(true); }
private void UpdateReverbZone() { isInsideDungeon = GameManager.Instance.PlayerEnterExit.IsPlayerInsideDungeon; reverbZone.enabled = isInsideDungeon; reverbZone.minDistance = 1000; reverbZone.maxDistance = 1000; int level = settings.GetValue <int>("Dungeon Reverb", "level"); if (level == 0) // Low { reverbZone.reverbPreset = AudioReverbPreset.Cave; } if (level == 1) // Medium { reverbZone.reverbPreset = AudioReverbPreset.Stoneroom; } if (level == 2) // High { reverbZone.reverbPreset = AudioReverbPreset.Quarry; } }
void Awake() { Debug.Log("Begin mod init: TravelOptions"); Mod roadsMod = ModManager.Instance.GetMod(ROADS_MODNAME); bool roadsModEnabled = roadsMod != null && roadsMod.Enabled; ModSettings settings = mod.GetSettings(); RoadsIntegration = settings.GetValue <bool>("RoadsIntegration", "Enable") && roadsModEnabled; if (RoadsIntegration) { VariableSizeDots = settings.GetValue <bool>("RoadsIntegration", "VariableSizeDots"); followKeyCode = followKeys[settings.GetValue <int>("RoadsIntegration", "FollowPathsKey")]; } enableWeather = settings.GetValue <bool>("GeneralOptions", "AllowWeather"); enableSounds = settings.GetValue <bool>("GeneralOptions", "AllowAnnoyingSounds"); enableRealGrass = settings.GetValue <bool>("GeneralOptions", "AllowRealGrass"); locationPause = settings.GetValue <int>("GeneralOptions", "LocationPause"); CautiousTravel = settings.GetValue <bool>("CautiousTravel", "PlayerControlledCautiousTravel"); int speedPenalty = settings.GetValue <int>("CautiousTravel", "SpeedPenalty"); CautiousTravelMultiplier = 1 - ((float)speedPenalty / 100); maxAvoidChance = settings.GetValue <int>("CautiousTravel", "MaxChanceToAvoidEncounter"); CautiousHealthMinPc = settings.GetValue <int>("CautiousTravel", "HealthMinimumPercentage"); CautiousFatigueMin = settings.GetValue <int>("CautiousTravel", "FatigueMinimumValue") + 1; StopAtInnsTravel = settings.GetValue <bool>("StopAtInnsTravel", "PlayerControlledInnsTravel"); ShipTravelPortsOnly = settings.GetValue <bool>("ShipTravel", "OnlyFromPorts"); ShipTravelDestinationPortsOnly = settings.GetValue <bool>("ShipTravel", "OnlyToPorts"); defaultStartingAccel = startAccelVals[settings.GetValue <int>("TimeAcceleration", "DefaultStartingAcceleration")]; alwaysUseStartingAccel = settings.GetValue <bool>("TimeAcceleration", "AlwaysUseStartingAcceleration"); accelerationLimit = settings.GetValue <int>("TimeAcceleration", "AccelerationLimit"); UIWindowFactory.RegisterCustomUIWindow(UIWindowType.TravelMap, typeof(TravelOptionsMapWindow)); UIWindowFactory.RegisterCustomUIWindow(UIWindowType.TravelPopUp, typeof(TravelOptionsPopUp)); baseFixedDeltaTime = Time.fixedDeltaTime; travelControlUI = new TravelControlUI(DaggerfallUI.UIManager, defaultStartingAccel, accelerationLimit); travelControlUI.OnCancel += (sender) => { ClearTravelDestination(); }; travelControlUI.OnClose += () => { InterruptTravel(); }; travelControlUI.OnTimeAccelerationChanged += (timeAcceleration) => { SetTimeScale(timeAcceleration); }; // Clear destination on new game or load game. SaveLoadManager.OnLoad += (saveData) => { ClearTravelDestination(); }; StartGameBehaviour.OnNewGame += () => { ClearTravelDestination(); }; GameManager.OnEncounter += GameManager_OnEncounter; PlayerGPS.OnEnterLocationRect += PlayerGPS_OnEnterLocationRect; PlayerGPS.OnMapPixelChanged += PlayerGPS_OnMapPixelChanged; StreamingWorld.OnUpdateLocationGameObject += StreamingWorld_OnUpdateLocationGameObject; mod.MessageReceiver = MessageReceiver; mod.IsReady = true; Debug.Log("Finished mod init: TravelOptions"); }
private void LoadSettings(ModSettings settings) { enableBetterRain = settings.GetValue <bool>("Better Rain", "enableBetterRain"); enableBetterSnow = settings.GetValue <bool>("Better Rain", "enableBetterSnow"); }
private void Start() { ModSettings settings = mod.GetSettings(); // General saveInterval = settings.GetValue <int>("Autosave", "AutosaveInterval"); enableAutosaveTimer = saveInterval != 0 ? true : false; saveInCombat = settings.GetValue <bool>("Autosave", "SaveInCombat"); onEnterExitSave = settings.GetValue <bool>("Autosave", "OnEnterExitSave"); onRestSave = settings.GetValue <bool>("Autosave", "OnRestSave"); autosaveLimit = settings.GetValue <int>("Autosave", "AutosaveLimit"); onFastTravel = settings.GetValue <bool>("Autosave", "OnFastTravel"); // Formatting calendarIndex = settings.GetValue <int>("Formatting", "Calendar"); switch (calendarIndex) { case 0: calendarFormat = ""; break; case 1: calendarFormat = "MM/dd/yyyy "; break; case 2: calendarFormat = "dd/MM/yyyy "; break; case 3: calendarFormat = "yyyy MMMM "; break; case 4: calendarFormat = "MMMM yyyy "; break; default: calendarFormat = ""; break; } use24HourClock = settings.GetValue <bool>("Formatting", "24hrClock"); timeFormat = use24HourClock ? "HH:mm" : "h:mm tt"; displayTime = calendarFormat + timeFormat; enableLocation = settings.GetValue <bool>("Formatting", "ShowLocationName"); if (enableAutosaveTimer) { // Check the watch every 45 seconds InvokeRepeating("CheckWatch", 45, 45); } if (onRestSave) { // Subscribe to sleep event DaggerfallRestWindow.OnSleepTick += Autosave; } if (onEnterExitSave) { // Subscribe to transition events, needs to be pre transition for now PlayerEnterExit.OnPreTransition += FireTransitionSave; } if (onFastTravel) { // Subscribe to fast travel event DaggerfallTravelPopUp.OnPostFastTravel += Autosave; } //Save game when starting new game StartGameBehaviour.OnNewGame += Autosave; }
private void LoadSettings(ModSettings settings, ModSettingsChange change) { const string style = "Style", waterPlantsSection = "WaterPlants", grassSection = "Grass", advancedSection = "Advanced"; options.WaterPlants = settings.GetBool(waterPlantsSection, "Enabled"); var properties = new PrototypesProperties() { GrassHeight = settings.GetTupleFloat(grassSection, "Height"), GrassWidth = settings.GetTupleFloat(grassSection, "Width"), NoiseSpread = settings.GetFloat(grassSection, "NoiseSpread"), GrassColors = new GrassColors() { SpringHealthy = settings.GetColor(grassSection, "SpringHealthy"), SpringDry = settings.GetColor(grassSection, "SpringDry"), SummerHealty = settings.GetColor(grassSection, "SummerHealty"), SummerDry = settings.GetColor(grassSection, "SummerDry"), FallHealty = settings.GetColor(grassSection, "FallHealty"), FallDry = settings.GetColor(grassSection, "FallDry"), SeasonInterpolation = settings.GetBool(grassSection, "SeasonInterpolation") }, UseGrassShader = !settings.GetBool(style, "Billboard"), TextureOverride = settings.GetBool(advancedSection, "TextureOverride") }; var density = new Density() { GrassThick = settings.GetTupleInt(grassSection, "ThickDensity"), GrassThin = settings.GetTupleInt(grassSection, "ThinDensity"), WaterPlants = settings.GetTupleInt(waterPlantsSection, "Density"), DesertPlants = settings.GetTupleInt(waterPlantsSection, "DesertDensity"), }; switch (settings.GetInt(style, "Stones")) { case 0: options.TerrainStones = false; break; case 1: options.TerrainStones = true; density.Rocks = 2; break; case 2: options.TerrainStones = true; density.Rocks = 4; break; } if (change.HasChanged(style, "Style")) { switch (settings.GetValue <int>(style, "Style")) { case 0: default: options.GrassStyle = GrassStyle.Classic; break; case 1: options.GrassStyle = GrassStyle.Mixed; break; case 2: options.GrassStyle = GrassStyle.Full; break; } } if (change.HasChanged(advancedSection)) { options.DetailObjectDistance = settings.GetValue <int>(advancedSection, "DetailDistance"); string detailDistanceOverride = settings.GetValue <string>(advancedSection, "DetailDistanceOverride"); if (!string.IsNullOrWhiteSpace(detailDistanceOverride) && int.TryParse(detailDistanceOverride, out int value)) { options.DetailObjectDistance = value; Debug.Log($"{this}: override detail distance with {value}", this); } options.DetailObjectDensity = settings.GetValue <float>(advancedSection, "DetailDensity"); options.FlyingInsects = settings.GetValue <bool>(advancedSection, "FlyingInsects"); } detailPrototypesManager = new DetailPrototypesManager(mod, transform, options, properties); densityManager = new DensityManager(mod, options, density); if (isEnabled) { RefreshTerrainDetailsAsync(); } }
void Start() { Debug.Log("Wilderness Overhaul: Initiating Mod"); settings = mod.GetSettings(); dynamicVegetationClearance = settings.GetValue <bool>("TerrainNature", "DynamicVegetationClearance"); vegetationInLocations = settings.GetValue <bool>("TerrainNature", "VegetationInsideJungleLocations"); fireflies = settings.GetValue <bool>("Nature", "Fireflies"); shootingStars = settings.GetValue <bool>("Nature", "ShootingStars"); fireflyActivationDistance = settings.GetValue <float>("Nature", "FireflyActivationDistance"); shootingStarsMin = settings.GetValue <float>("Nature", "ShootingStarsMinChance"); shootingStarsMax = settings.GetValue <float>("Nature", "ShootingStarsMaxChance"); generalNatureClearance = settings.GetValue <float>("TerrainNature", "GeneralNatureClearance"); natureClearance1 = settings.GetValue <float>("DynamicNatureClearance", "Cities"); natureClearance2 = settings.GetValue <float>("DynamicNatureClearance", "Hamlets"); natureClearance3 = settings.GetValue <float>("DynamicNatureClearance", "Villages,Homes(Wealthy),ReligiousCults"); natureClearance4 = settings.GetValue <float>("DynamicNatureClearance", "Farms,Taverns,Temples,Homes(Poor)"); natureClearance5 = settings.GetValue <float>("DynamicNatureClearance", "Dungeons(Laybinths,Keeps,Ruins,Graveyards,Covens)"); woNature = new WOTerrainNature( mod, DREAMModEnabled, InterestingErodedTerrainModEnabled, dynamicVegetationClearance, vegetationInLocations, fireflies, shootingStars, fireflyActivationDistance, shootingStarsMin, shootingStarsMax, generalNatureClearance, natureClearance1, natureClearance2, natureClearance3, natureClearance4, natureClearance5); woTexturing = new WOTerrainTexturing(InterestingErodedTerrainModEnabled, BasicRoadsModEnabled); woMatProvider = new WOTerrainMaterialProvider(mod); DaggerfallUnity.Instance.TerrainNature = woNature; DaggerfallUnity.Instance.TerrainTexturing = woTexturing; DaggerfallUnity.Instance.TerrainMaterialProvider = woMatProvider; mod.IsReady = true; Debug.Log("Wilderness Overhaul: Mod Initiated"); }
void Awake() { ModSettings settings = mod.GetSettings(); editAP = settings.GetValue<bool>("AttributePoints", "ChangeAttributePoints"); apMax = settings.GetValue<int>("AttributePoints", "MaximumAttributePoints"); apMin = settings.GetValue<int>("AttributePoints", "MinimumAttributePoints"); curvedAP = settings.GetValue<bool>("AttributePoints", "ActivateCurvedLeveling"); editMaxAP = settings.GetValue<bool>("AttributeMaximum", "ChangeAttributeMaximum"); maxAttribute = settings.GetValue<int>("AttributeMaximum", "MaximumAttributePoints"); editHP = settings.GetValue<bool>("HitPoints", "ChangeHitPoints"); hpMax = settings.GetValue<int>("HitPoints", "MaximumHitPoints"); hpMin = settings.GetValue<int>("HitPoints", "MinimumHitPoints"); retroEnd = settings.GetValue<bool>("HitPoints", "RetroactiveCalculation"); editLvlSpeed = settings.GetValue<bool>("LevelingSpeed", "ChangeLevelingSpeed"); lvlSpeed = settings.GetValue<int>("LevelingSpeed", "LevelSpeed"); }
private void LoadSettings(ModSettings settings, ModSettingsChange change) { const string waterPlantsSection = "WaterPlants", grassSection = "Grass", othersSection = "Others", advancedSection = "Advanced"; // Optional details int waterPlantsMode = settings.GetInt(waterPlantsSection, "Mode"); WaterPlants = waterPlantsMode != 0; WinterPlants = waterPlantsMode == 2; // Detail prototypes settings var properties = new PrototypesProperties() { GrassHeight = settings.GetTupleFloat(grassSection, "Height"), GrassWidth = settings.GetTupleFloat(grassSection, "Width"), NoiseSpread = settings.GetFloat(grassSection, "NoiseSpread"), GrassColors = new GrassColors() { SpringHealthy = settings.GetColor(grassSection, "SpringHealthy"), SpringDry = settings.GetColor(grassSection, "SpringDry"), SummerHealty = settings.GetColor(grassSection, "SummerHealty"), SummerDry = settings.GetColor(grassSection, "SummerDry"), FallHealty = settings.GetColor(grassSection, "FallHealty"), FallDry = settings.GetColor(grassSection, "FallDry"), }, UseGrassShader = settings.GetInt(grassSection, "Shader") == 1, NoiseSpreadPlants = settings.GetFloat(waterPlantsSection, "NoiseSpread"), TextureOverride = settings.GetBool(advancedSection, "TextureOverride") }; // Detail prototypes density var density = new Density() { GrassThick = settings.GetTupleInt(grassSection, "ThickDensity"), GrassThin = settings.GetTupleInt(grassSection, "ThinDensity"), WaterPlants = settings.GetTupleInt(waterPlantsSection, "Density"), DesertPlants = settings.GetTupleInt(waterPlantsSection, "DesertDensity"), }; switch (settings.GetInt(othersSection, "Flowers")) { case 0: Flowers = false; break; case 1: Flowers = true; density.Flowers = 5; break; case 2: Flowers = true; density.Flowers = 25; break; case 3: Flowers = true; density.Flowers = 50; break; } switch (settings.GetInt(othersSection, "Stones")) { case 0: TerrainStones = false; break; case 1: TerrainStones = true; density.Rocks = 2; break; case 2: TerrainStones = true; density.Rocks = 4; break; } if (change.HasChanged(grassSection, "Realistic")) { RealisticGrass = settings.GetValue <bool>(grassSection, "Realistic"); } if (change.HasChanged(othersSection, "FlyingInsects")) { FlyingInsects = settings.GetValue <bool>(othersSection, "FlyingInsects"); } if (change.HasChanged(advancedSection)) { DetailObjectDistance = settings.GetValue <int>(advancedSection, "DetailDistance"); DetailObjectDensity = settings.GetValue <float>(advancedSection, "DetailDensity"); } detailPrototypesManager = new DetailPrototypesManager(properties); densityManager = new DensityManager(density); if (isEnabled) { RefreshTerrainDetailsAsync(); } }