diff --git a/GeneralMods/AutoSpeed/AutoSpeed-Source/AutoSpeed/bin/Debug/AutoSpeed.dll b/GeneralMods/AutoSpeed/AutoSpeed-Source/AutoSpeed/bin/Debug/AutoSpeed.dll index 4d0592ba..4a08bdcc 100644 Binary files a/GeneralMods/AutoSpeed/AutoSpeed-Source/AutoSpeed/bin/Debug/AutoSpeed.dll and b/GeneralMods/AutoSpeed/AutoSpeed-Source/AutoSpeed/bin/Debug/AutoSpeed.dll differ diff --git a/GeneralMods/AutoSpeed/AutoSpeed-Source/AutoSpeed/obj/Debug/AutoSpeed.dll b/GeneralMods/AutoSpeed/AutoSpeed-Source/AutoSpeed/obj/Debug/AutoSpeed.dll index 4d0592ba..4a08bdcc 100644 Binary files a/GeneralMods/AutoSpeed/AutoSpeed-Source/AutoSpeed/obj/Debug/AutoSpeed.dll and b/GeneralMods/AutoSpeed/AutoSpeed-Source/AutoSpeed/obj/Debug/AutoSpeed.dll differ diff --git a/GeneralMods/Billboard_Anywhere/Billboard_Anywhere-Source/Billboard_Anywhere/bin/Debug/Billboard_Anywhere.dll b/GeneralMods/Billboard_Anywhere/Billboard_Anywhere-Source/Billboard_Anywhere/bin/Debug/Billboard_Anywhere.dll index d9799d49..d87d94ee 100644 Binary files a/GeneralMods/Billboard_Anywhere/Billboard_Anywhere-Source/Billboard_Anywhere/bin/Debug/Billboard_Anywhere.dll and b/GeneralMods/Billboard_Anywhere/Billboard_Anywhere-Source/Billboard_Anywhere/bin/Debug/Billboard_Anywhere.dll differ diff --git a/GeneralMods/Billboard_Anywhere/Billboard_Anywhere-Source/Billboard_Anywhere/obj/Debug/Billboard_Anywhere.dll b/GeneralMods/Billboard_Anywhere/Billboard_Anywhere-Source/Billboard_Anywhere/obj/Debug/Billboard_Anywhere.dll index d9799d49..d87d94ee 100644 Binary files a/GeneralMods/Billboard_Anywhere/Billboard_Anywhere-Source/Billboard_Anywhere/obj/Debug/Billboard_Anywhere.dll and b/GeneralMods/Billboard_Anywhere/Billboard_Anywhere-Source/Billboard_Anywhere/obj/Debug/Billboard_Anywhere.dll differ diff --git a/GeneralMods/BuildEndurance/SMAPI_BuildEndurance-Source/SMAPI_BuildEndurance/bin/Debug/SMAPI_BuildEndurance.dll b/GeneralMods/BuildEndurance/SMAPI_BuildEndurance-Source/SMAPI_BuildEndurance/bin/Debug/SMAPI_BuildEndurance.dll index a2593981..84191a1f 100644 Binary files a/GeneralMods/BuildEndurance/SMAPI_BuildEndurance-Source/SMAPI_BuildEndurance/bin/Debug/SMAPI_BuildEndurance.dll and b/GeneralMods/BuildEndurance/SMAPI_BuildEndurance-Source/SMAPI_BuildEndurance/bin/Debug/SMAPI_BuildEndurance.dll differ diff --git a/GeneralMods/BuildEndurance/SMAPI_BuildEndurance-Source/SMAPI_BuildEndurance/obj/Debug/SMAPI_BuildEndurance.dll b/GeneralMods/BuildEndurance/SMAPI_BuildEndurance-Source/SMAPI_BuildEndurance/obj/Debug/SMAPI_BuildEndurance.dll index a2593981..84191a1f 100644 Binary files a/GeneralMods/BuildEndurance/SMAPI_BuildEndurance-Source/SMAPI_BuildEndurance/obj/Debug/SMAPI_BuildEndurance.dll and b/GeneralMods/BuildEndurance/SMAPI_BuildEndurance-Source/SMAPI_BuildEndurance/obj/Debug/SMAPI_BuildEndurance.dll differ diff --git a/GeneralMods/BuildHealth/BuildHealth-Source/SMAPI_BuildHealth/bin/Debug/SMAPI_BuildHealth.dll b/GeneralMods/BuildHealth/BuildHealth-Source/SMAPI_BuildHealth/bin/Debug/SMAPI_BuildHealth.dll index 7f2bc315..a64dcb3b 100644 Binary files a/GeneralMods/BuildHealth/BuildHealth-Source/SMAPI_BuildHealth/bin/Debug/SMAPI_BuildHealth.dll and b/GeneralMods/BuildHealth/BuildHealth-Source/SMAPI_BuildHealth/bin/Debug/SMAPI_BuildHealth.dll differ diff --git a/GeneralMods/BuildHealth/BuildHealth-Source/SMAPI_BuildHealth/obj/Debug/SMAPI_BuildHealth.dll b/GeneralMods/BuildHealth/BuildHealth-Source/SMAPI_BuildHealth/obj/Debug/SMAPI_BuildHealth.dll index 7f2bc315..a64dcb3b 100644 Binary files a/GeneralMods/BuildHealth/BuildHealth-Source/SMAPI_BuildHealth/obj/Debug/SMAPI_BuildHealth.dll and b/GeneralMods/BuildHealth/BuildHealth-Source/SMAPI_BuildHealth/obj/Debug/SMAPI_BuildHealth.dll differ diff --git a/GeneralMods/BuyBackCollectables/BuyBackCollectables-Source/bin/Debug/BuyBackCollectables.dll b/GeneralMods/BuyBackCollectables/BuyBackCollectables-Source/bin/Debug/BuyBackCollectables.dll index ce01646d..6c9d4442 100644 Binary files a/GeneralMods/BuyBackCollectables/BuyBackCollectables-Source/bin/Debug/BuyBackCollectables.dll and b/GeneralMods/BuyBackCollectables/BuyBackCollectables-Source/bin/Debug/BuyBackCollectables.dll differ diff --git a/GeneralMods/BuyBackCollectables/BuyBackCollectables-Source/obj/Debug/BuyBackCollectables.dll b/GeneralMods/BuyBackCollectables/BuyBackCollectables-Source/obj/Debug/BuyBackCollectables.dll index ce01646d..6c9d4442 100644 Binary files a/GeneralMods/BuyBackCollectables/BuyBackCollectables-Source/obj/Debug/BuyBackCollectables.dll and b/GeneralMods/BuyBackCollectables/BuyBackCollectables-Source/obj/Debug/BuyBackCollectables.dll differ diff --git a/GeneralMods/CurrentLocationPopUp/CurrentLocationPopUp/bin/Debug/CurrentLocationPopUp.dll b/GeneralMods/CurrentLocationPopUp/CurrentLocationPopUp/bin/Debug/CurrentLocationPopUp.dll index 792777e9..c01be744 100644 Binary files a/GeneralMods/CurrentLocationPopUp/CurrentLocationPopUp/bin/Debug/CurrentLocationPopUp.dll and b/GeneralMods/CurrentLocationPopUp/CurrentLocationPopUp/bin/Debug/CurrentLocationPopUp.dll differ diff --git a/GeneralMods/CurrentLocationPopUp/CurrentLocationPopUp/obj/Debug/CurrentLocationPopUp.dll b/GeneralMods/CurrentLocationPopUp/CurrentLocationPopUp/obj/Debug/CurrentLocationPopUp.dll index 792777e9..c01be744 100644 Binary files a/GeneralMods/CurrentLocationPopUp/CurrentLocationPopUp/obj/Debug/CurrentLocationPopUp.dll and b/GeneralMods/CurrentLocationPopUp/CurrentLocationPopUp/obj/Debug/CurrentLocationPopUp.dll differ diff --git a/GeneralMods/DailyQuest_Anywhere/DailyQuest Anywhere/bin/Debug/DailyQuest_Anywhere.dll b/GeneralMods/DailyQuest_Anywhere/DailyQuest Anywhere/bin/Debug/DailyQuest_Anywhere.dll index e6dc43fd..3883d3e9 100644 Binary files a/GeneralMods/DailyQuest_Anywhere/DailyQuest Anywhere/bin/Debug/DailyQuest_Anywhere.dll and b/GeneralMods/DailyQuest_Anywhere/DailyQuest Anywhere/bin/Debug/DailyQuest_Anywhere.dll differ diff --git a/GeneralMods/DailyQuest_Anywhere/DailyQuest Anywhere/obj/Debug/DailyQuest_Anywhere.dll b/GeneralMods/DailyQuest_Anywhere/DailyQuest Anywhere/obj/Debug/DailyQuest_Anywhere.dll index e6dc43fd..3883d3e9 100644 Binary files a/GeneralMods/DailyQuest_Anywhere/DailyQuest Anywhere/obj/Debug/DailyQuest_Anywhere.dll and b/GeneralMods/DailyQuest_Anywhere/DailyQuest Anywhere/obj/Debug/DailyQuest_Anywhere.dll differ diff --git a/GeneralMods/Fall_28_Snow_Day/Fall28 Snow Day-Project/Fall28 Snow Day/bin/Debug/Fall28 Snow Day.dll b/GeneralMods/Fall_28_Snow_Day/Fall28 Snow Day-Project/Fall28 Snow Day/bin/Debug/Fall28 Snow Day.dll index 815252f9..0c64c21f 100644 Binary files a/GeneralMods/Fall_28_Snow_Day/Fall28 Snow Day-Project/Fall28 Snow Day/bin/Debug/Fall28 Snow Day.dll and b/GeneralMods/Fall_28_Snow_Day/Fall28 Snow Day-Project/Fall28 Snow Day/bin/Debug/Fall28 Snow Day.dll differ diff --git a/GeneralMods/Fall_28_Snow_Day/Fall28 Snow Day-Project/Fall28 Snow Day/obj/Debug/Fall28 Snow Day.dll b/GeneralMods/Fall_28_Snow_Day/Fall28 Snow Day-Project/Fall28 Snow Day/obj/Debug/Fall28 Snow Day.dll index 815252f9..0c64c21f 100644 Binary files a/GeneralMods/Fall_28_Snow_Day/Fall28 Snow Day-Project/Fall28 Snow Day/obj/Debug/Fall28 Snow Day.dll and b/GeneralMods/Fall_28_Snow_Day/Fall28 Snow Day-Project/Fall28 Snow Day/obj/Debug/Fall28 Snow Day.dll differ diff --git a/GeneralMods/HappyBirthday/HappyBirthday/Class1.cs b/GeneralMods/HappyBirthday/HappyBirthday/Class1.cs index 804fbf62..bc885e43 100644 --- a/GeneralMods/HappyBirthday/HappyBirthday/Class1.cs +++ b/GeneralMods/HappyBirthday/HappyBirthday/Class1.cs @@ -19,6 +19,8 @@ namespace HappyBirthday bool once; bool has_input_birthday; + public static IMonitor thisMonitor; + Dictionary popedDialogue; bool seenEvent; @@ -34,7 +36,7 @@ namespace HappyBirthday StardewModdingAPI.Events.TimeEvents.DayOfMonthChanged += TimeEvents_DayOfMonthChanged; StardewModdingAPI.Events.GameEvents.UpdateTick += GameEvents_UpdateTick; StardewModdingAPI.Events.SaveEvents.AfterLoad += PlayerEvents_LoadedGame; - StardewModdingAPI.Events.PlayerEvents.LoadedGame += PlayerEvents_LoadedGame1; + StardewModdingAPI.Events.ControlEvents.KeyPressed += ControlEvents_KeyPressed; npc_name_list = new List(); possible_birthday_gifts = new List(); @@ -43,11 +45,7 @@ namespace HappyBirthday { Directory.CreateDirectory(birthdays_path); } - } - - private void PlayerEvents_LoadedGame1(object sender, StardewModdingAPI.Events.EventArgsLoadedGameChanged e) - { - + thisMonitor = Monitor; } public void TimeEvents_DayOfMonthChanged(object sender, StardewModdingAPI.Events.EventArgsIntChanged e) @@ -110,7 +108,7 @@ namespace HappyBirthday } catch(Exception eee) { - Log.AsyncR(eee); + thisMonitor.Log(eee.ToString(), LogLevel.Error); } foreach (var location in Game1.locations) { @@ -159,6 +157,7 @@ namespace HappyBirthday } catch (Exception err) { + thisMonitor.Log(err.ToString(), LogLevel.Error); popedDialogue.Add(npcName, npc.CurrentDialogue.ElementAt(0)); npc.loadSeasonalDialogue(); } @@ -198,7 +197,7 @@ namespace HappyBirthday } catch(Exception r) { - Log.AsyncR(r); + thisMonitor.Log(r.ToString(), LogLevel.Error); } } diff --git a/GeneralMods/HappyBirthday/HappyBirthday/bin/Debug/HappyBirthday.dll b/GeneralMods/HappyBirthday/HappyBirthday/bin/Debug/HappyBirthday.dll index fe2c2322..e4fcf896 100644 Binary files a/GeneralMods/HappyBirthday/HappyBirthday/bin/Debug/HappyBirthday.dll and b/GeneralMods/HappyBirthday/HappyBirthday/bin/Debug/HappyBirthday.dll differ diff --git a/GeneralMods/HappyBirthday/HappyBirthday/obj/Debug/HappyBirthday.dll b/GeneralMods/HappyBirthday/HappyBirthday/obj/Debug/HappyBirthday.dll index fe2c2322..e4fcf896 100644 Binary files a/GeneralMods/HappyBirthday/HappyBirthday/obj/Debug/HappyBirthday.dll and b/GeneralMods/HappyBirthday/HappyBirthday/obj/Debug/HappyBirthday.dll differ diff --git a/GeneralMods/MoreRain/Stardew_More_Rain/Stardew_More_Rain/Class1.cs b/GeneralMods/MoreRain/Stardew_More_Rain/Stardew_More_Rain/Class1.cs index 0c13c56c..c467ce63 100644 --- a/GeneralMods/MoreRain/Stardew_More_Rain/Stardew_More_Rain/Class1.cs +++ b/GeneralMods/MoreRain/Stardew_More_Rain/Stardew_More_Rain/Class1.cs @@ -281,7 +281,7 @@ namespace MoreRain fallRainInt = Convert.ToInt32(readtext[11]); fallThunderInt = Convert.ToInt32(readtext[13]); winterSnowInt = Convert.ToInt32(readtext[15]); - suppress_log = Convert.ToBoolean(readtext[7]); + suppress_log = Convert.ToBoolean(readtext[17]); } catch (Exception e) //something dun goofed { diff --git a/GeneralMods/MoreRain/Stardew_More_Rain/Stardew_More_Rain/bin/Debug/Stardew_More_Rain.dll b/GeneralMods/MoreRain/Stardew_More_Rain/Stardew_More_Rain/bin/Debug/Stardew_More_Rain.dll index ce1ced93..6f681731 100644 Binary files a/GeneralMods/MoreRain/Stardew_More_Rain/Stardew_More_Rain/bin/Debug/Stardew_More_Rain.dll and b/GeneralMods/MoreRain/Stardew_More_Rain/Stardew_More_Rain/bin/Debug/Stardew_More_Rain.dll differ diff --git a/GeneralMods/MoreRain/Stardew_More_Rain/Stardew_More_Rain/obj/Debug/Stardew_More_Rain.dll b/GeneralMods/MoreRain/Stardew_More_Rain/Stardew_More_Rain/obj/Debug/Stardew_More_Rain.dll index ce1ced93..6f681731 100644 Binary files a/GeneralMods/MoreRain/Stardew_More_Rain/Stardew_More_Rain/obj/Debug/Stardew_More_Rain.dll and b/GeneralMods/MoreRain/Stardew_More_Rain/Stardew_More_Rain/obj/Debug/Stardew_More_Rain.dll differ diff --git a/GeneralMods/Museum_Rearrange/Museum_Rearranger/Museum_Rearranger/bin/Debug/Museum_Rearranger.dll b/GeneralMods/Museum_Rearrange/Museum_Rearranger/Museum_Rearranger/bin/Debug/Museum_Rearranger.dll index 64e141fc..8dd15775 100644 Binary files a/GeneralMods/Museum_Rearrange/Museum_Rearranger/Museum_Rearranger/bin/Debug/Museum_Rearranger.dll and b/GeneralMods/Museum_Rearrange/Museum_Rearranger/Museum_Rearranger/bin/Debug/Museum_Rearranger.dll differ diff --git a/GeneralMods/Museum_Rearrange/Museum_Rearranger/Museum_Rearranger/obj/Debug/Museum_Rearranger.dll b/GeneralMods/Museum_Rearrange/Museum_Rearranger/Museum_Rearranger/obj/Debug/Museum_Rearranger.dll index 64e141fc..8dd15775 100644 Binary files a/GeneralMods/Museum_Rearrange/Museum_Rearranger/Museum_Rearranger/obj/Debug/Museum_Rearranger.dll and b/GeneralMods/Museum_Rearrange/Museum_Rearranger/Museum_Rearranger/obj/Debug/Museum_Rearranger.dll differ diff --git a/GeneralMods/NightOwl/Stardew_NightOwl/Stardew_NightOwl/Class1.cs b/GeneralMods/NightOwl/Stardew_NightOwl/Stardew_NightOwl/Class1.cs index 0c25a2ff..323043f7 100644 --- a/GeneralMods/NightOwl/Stardew_NightOwl/Stardew_NightOwl/Class1.cs +++ b/GeneralMods/NightOwl/Stardew_NightOwl/Stardew_NightOwl/Class1.cs @@ -13,7 +13,7 @@ using Newtonsoft.Json; Issues: -Mail can't be wiped without destroying all mail. -Lighting transition does not work if it is raining. - -set the weather to clear if you are stayig up late. + -set the weather to clear if you are stayig up late. -transition still doesnt work. However atleast it is dark now. -Known glitched @@ -66,13 +66,13 @@ namespace Stardew_NightOwl { StardewModdingAPI.Events.TimeEvents.TimeOfDayChanged += TimeEvents_TimeOfDayChanged; StardewModdingAPI.Events.TimeEvents.DayOfMonthChanged += TimeEvents_DayOfMonthChanged; - - StardewModdingAPI.Events.PlayerEvents.LoadedGame += PlayerEvents_LoadedGame; + StardewModdingAPI.Events.SaveEvents.AfterLoad += PlayerEvents_LoadedGame; StardewModdingAPI.Events.GameEvents.FourthUpdateTick += GameEvents_FourthUpdateTick; ModPath =Helper.DirectoryPath; Error_Path = Path.Combine(ModPath, "Error_Logs"); } + public void GameEvents_FourthUpdateTick(object sender, EventArgs e) { /* @@ -138,7 +138,7 @@ namespace Stardew_NightOwl } } - public void PlayerEvents_LoadedGame(object sender, StardewModdingAPI.Events.EventArgsLoadedGameChanged e) + public void PlayerEvents_LoadedGame(object sender, EventArgs e) { DataLoader(); MyWritter(); @@ -261,9 +261,9 @@ namespace Stardew_NightOwl if (lighting_transition == true) { - if (Game1.timeOfDay > 200 && Game1.timeOfDay < 1100) + if (Game1.timeOfDay > 400 && Game1.timeOfDay < 600) { - color_mod = (1100 - Game1.timeOfDay) / 1000f; //.7f + color_mod = (1300 - Game1.timeOfDay) / 1000f; //.7f Game1.outdoorLight = Game1.ambientLight * color_mod; } diff --git a/GeneralMods/NightOwl/Stardew_NightOwl/Stardew_NightOwl/bin/Debug/Stardew_NightOwl.dll b/GeneralMods/NightOwl/Stardew_NightOwl/Stardew_NightOwl/bin/Debug/Stardew_NightOwl.dll index 9e020acd..c3c09134 100644 Binary files a/GeneralMods/NightOwl/Stardew_NightOwl/Stardew_NightOwl/bin/Debug/Stardew_NightOwl.dll and b/GeneralMods/NightOwl/Stardew_NightOwl/Stardew_NightOwl/bin/Debug/Stardew_NightOwl.dll differ diff --git a/GeneralMods/NightOwl/Stardew_NightOwl/Stardew_NightOwl/manifest.json b/GeneralMods/NightOwl/Stardew_NightOwl/Stardew_NightOwl/manifest.json index ea15e886..4cb9dfad 100644 --- a/GeneralMods/NightOwl/Stardew_NightOwl/Stardew_NightOwl/manifest.json +++ b/GeneralMods/NightOwl/Stardew_NightOwl/Stardew_NightOwl/manifest.json @@ -2,7 +2,7 @@ "Name": "Stardew_NightOwl", "Authour": "Alpha_Omegasis", "Version": { - "MajorVersion": 1, + "MajorVersion": 2, "MinorVersion": 1, "PatchVersion": 0, "Build": "" diff --git a/GeneralMods/NightOwl/Stardew_NightOwl/Stardew_NightOwl/obj/Debug/Stardew_NightOwl.csproj.FileListAbsolute.txt b/GeneralMods/NightOwl/Stardew_NightOwl/Stardew_NightOwl/obj/Debug/Stardew_NightOwl.csproj.FileListAbsolute.txt index b77d976a..14a1d7a8 100644 --- a/GeneralMods/NightOwl/Stardew_NightOwl/Stardew_NightOwl/obj/Debug/Stardew_NightOwl.csproj.FileListAbsolute.txt +++ b/GeneralMods/NightOwl/Stardew_NightOwl/Stardew_NightOwl/obj/Debug/Stardew_NightOwl.csproj.FileListAbsolute.txt @@ -47,6 +47,6 @@ C:\Users\owner\Documents\Visual Studio 2015\Projects\github\Stardew_Valley_Mods\ C:\Users\owner\Documents\Visual Studio 2015\Projects\github\StardewValleyMods\GeneralMods\NightOwl\Stardew_NightOwl\Stardew_NightOwl\bin\Debug\Stardew_NightOwl.dll C:\Users\owner\Documents\Visual Studio 2015\Projects\github\StardewValleyMods\GeneralMods\NightOwl\Stardew_NightOwl\Stardew_NightOwl\bin\Debug\Stardew_NightOwl.pdb C:\Users\owner\Documents\Visual Studio 2015\Projects\github\StardewValleyMods\GeneralMods\NightOwl\Stardew_NightOwl\Stardew_NightOwl\bin\Debug\Newtonsoft.Json.dll -C:\Users\owner\Documents\Visual Studio 2015\Projects\github\StardewValleyMods\GeneralMods\NightOwl\Stardew_NightOwl\Stardew_NightOwl\obj\Debug\Stardew_NightOwl.csprojResolveAssemblyReference.cache C:\Users\owner\Documents\Visual Studio 2015\Projects\github\StardewValleyMods\GeneralMods\NightOwl\Stardew_NightOwl\Stardew_NightOwl\obj\Debug\Stardew_NightOwl.dll C:\Users\owner\Documents\Visual Studio 2015\Projects\github\StardewValleyMods\GeneralMods\NightOwl\Stardew_NightOwl\Stardew_NightOwl\obj\Debug\Stardew_NightOwl.pdb +C:\Users\owner\Documents\Visual Studio 2015\Projects\github\StardewValleyMods\GeneralMods\NightOwl\Stardew_NightOwl\Stardew_NightOwl\obj\Debug\Stardew_NightOwl.csprojResolveAssemblyReference.cache diff --git a/GeneralMods/NightOwl/Stardew_NightOwl/Stardew_NightOwl/obj/Debug/Stardew_NightOwl.dll b/GeneralMods/NightOwl/Stardew_NightOwl/Stardew_NightOwl/obj/Debug/Stardew_NightOwl.dll index 9e020acd..c3c09134 100644 Binary files a/GeneralMods/NightOwl/Stardew_NightOwl/Stardew_NightOwl/obj/Debug/Stardew_NightOwl.dll and b/GeneralMods/NightOwl/Stardew_NightOwl/Stardew_NightOwl/obj/Debug/Stardew_NightOwl.dll differ diff --git a/GeneralMods/NoMorePets/NoMorePets/NoMorePets/bin/Debug/NoMorePets.dll b/GeneralMods/NoMorePets/NoMorePets/NoMorePets/bin/Debug/NoMorePets.dll index 5b3d4afe..13f6c9f4 100644 Binary files a/GeneralMods/NoMorePets/NoMorePets/NoMorePets/bin/Debug/NoMorePets.dll and b/GeneralMods/NoMorePets/NoMorePets/NoMorePets/bin/Debug/NoMorePets.dll differ diff --git a/GeneralMods/NoMorePets/NoMorePets/NoMorePets/obj/Debug/NoMorePets.dll b/GeneralMods/NoMorePets/NoMorePets/NoMorePets/obj/Debug/NoMorePets.dll index 5b3d4afe..13f6c9f4 100644 Binary files a/GeneralMods/NoMorePets/NoMorePets/NoMorePets/obj/Debug/NoMorePets.dll and b/GeneralMods/NoMorePets/NoMorePets/NoMorePets/obj/Debug/NoMorePets.dll differ diff --git a/GeneralMods/Custom_NPC_Plus_Shop/Class1.cs b/GeneralMods/OutDatedMods/Custom_NPC_Plus_Shop/Class1.cs similarity index 100% rename from GeneralMods/Custom_NPC_Plus_Shop/Class1.cs rename to GeneralMods/OutDatedMods/Custom_NPC_Plus_Shop/Class1.cs diff --git a/GeneralMods/Custom_NPC_Plus_Shop/Custom_NPC_With_Custom_Shop_Redux.dll b/GeneralMods/OutDatedMods/Custom_NPC_Plus_Shop/Custom_NPC_With_Custom_Shop_Redux.dll similarity index 100% rename from GeneralMods/Custom_NPC_Plus_Shop/Custom_NPC_With_Custom_Shop_Redux.dll rename to GeneralMods/OutDatedMods/Custom_NPC_Plus_Shop/Custom_NPC_With_Custom_Shop_Redux.dll diff --git a/GeneralMods/CustomShopMod_Redux_GUI/Custom_Shops/My_Streaming_Shop.txt b/GeneralMods/OutDatedMods/Custom_NPC_Plus_Shop/My_Streaming_Shop.txt similarity index 100% rename from GeneralMods/CustomShopMod_Redux_GUI/Custom_Shops/My_Streaming_Shop.txt rename to GeneralMods/OutDatedMods/Custom_NPC_Plus_Shop/My_Streaming_Shop.txt diff --git a/GeneralMods/Custom_NPC_Plus_Shop/ReadMe.md b/GeneralMods/OutDatedMods/Custom_NPC_Plus_Shop/ReadMe.md similarity index 100% rename from GeneralMods/Custom_NPC_Plus_Shop/ReadMe.md rename to GeneralMods/OutDatedMods/Custom_NPC_Plus_Shop/ReadMe.md diff --git a/GeneralMods/Custom_NPC_Plus_Shop/manifest.json b/GeneralMods/OutDatedMods/Custom_NPC_Plus_Shop/manifest.json similarity index 100% rename from GeneralMods/Custom_NPC_Plus_Shop/manifest.json rename to GeneralMods/OutDatedMods/Custom_NPC_Plus_Shop/manifest.json diff --git a/GeneralMods/MenuControllerCompatability/MenuControllerCompatability/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/GeneralMods/OutDatedMods/MenuControllerCompatability/Abandoned Mod.txt similarity index 100% rename from GeneralMods/MenuControllerCompatability/MenuControllerCompatability/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs rename to GeneralMods/OutDatedMods/MenuControllerCompatability/Abandoned Mod.txt diff --git a/GeneralMods/MenuControllerCompatability/MenuControllerCompatability.sln b/GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability.sln similarity index 100% rename from GeneralMods/MenuControllerCompatability/MenuControllerCompatability.sln rename to GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability.sln diff --git a/GeneralMods/MenuControllerCompatability/MenuControllerCompatability/Class1.cs b/GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/Class1.cs similarity index 100% rename from GeneralMods/MenuControllerCompatability/MenuControllerCompatability/Class1.cs rename to GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/Class1.cs diff --git a/GeneralMods/MenuControllerCompatability/MenuControllerCompatability/MenuControllerCompatability.csproj b/GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/MenuControllerCompatability.csproj similarity index 100% rename from GeneralMods/MenuControllerCompatability/MenuControllerCompatability/MenuControllerCompatability.csproj rename to GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/MenuControllerCompatability.csproj diff --git a/GeneralMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/CompatInterface.cs b/GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/CompatInterface.cs similarity index 100% rename from GeneralMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/CompatInterface.cs rename to GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/CompatInterface.cs diff --git a/GeneralMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/CompatabilityManager.cs b/GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/CompatabilityManager.cs similarity index 100% rename from GeneralMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/CompatabilityManager.cs rename to GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/CompatabilityManager.cs diff --git a/GeneralMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/MenuCompatabilityBase.cs b/GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/MenuCompatabilityBase.cs similarity index 100% rename from GeneralMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/MenuCompatabilityBase.cs rename to GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/MenuCompatabilityBase.cs diff --git a/GeneralMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/SpriteKeyboard.cs b/GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/SpriteKeyboard.cs similarity index 100% rename from GeneralMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/SpriteKeyboard.cs rename to GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/SpriteKeyboard.cs diff --git a/GeneralMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/Vanilla/AboutMenu.cs b/GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/Vanilla/AboutMenu.cs similarity index 100% rename from GeneralMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/Vanilla/AboutMenu.cs rename to GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/Vanilla/AboutMenu.cs diff --git a/GeneralMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/Vanilla/LoadGameMenu.cs b/GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/Vanilla/LoadGameMenu.cs similarity index 100% rename from GeneralMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/Vanilla/LoadGameMenu.cs rename to GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/Vanilla/LoadGameMenu.cs diff --git a/GeneralMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/Vanilla/TitleMenu.cs b/GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/Vanilla/TitleMenu.cs similarity index 100% rename from GeneralMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/Vanilla/TitleMenu.cs rename to GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/Menus/Compatability/Vanilla/TitleMenu.cs diff --git a/GeneralMods/MenuControllerCompatability/MenuControllerCompatability/Properties/AssemblyInfo.cs b/GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/Properties/AssemblyInfo.cs similarity index 100% rename from GeneralMods/MenuControllerCompatability/MenuControllerCompatability/Properties/AssemblyInfo.cs rename to GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/Properties/AssemblyInfo.cs diff --git a/GeneralMods/MenuControllerCompatability/MenuControllerCompatability/bin/Debug/MenuControllerCompatability.dll b/GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/bin/Debug/MenuControllerCompatability.dll similarity index 100% rename from GeneralMods/MenuControllerCompatability/MenuControllerCompatability/bin/Debug/MenuControllerCompatability.dll rename to GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/bin/Debug/MenuControllerCompatability.dll diff --git a/GeneralMods/MenuControllerCompatability/MenuControllerCompatability/manifest.json b/GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/manifest.json similarity index 100% rename from GeneralMods/MenuControllerCompatability/MenuControllerCompatability/manifest.json rename to GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/manifest.json diff --git a/GeneralMods/MenuControllerCompatability/MenuControllerCompatability/obj/Debug/MenuControllerCompatability.csproj.FileListAbsolute.txt b/GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/obj/Debug/MenuControllerCompatability.csproj.FileListAbsolute.txt similarity index 100% rename from GeneralMods/MenuControllerCompatability/MenuControllerCompatability/obj/Debug/MenuControllerCompatability.csproj.FileListAbsolute.txt rename to GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/obj/Debug/MenuControllerCompatability.csproj.FileListAbsolute.txt diff --git a/GeneralMods/MenuControllerCompatability/MenuControllerCompatability/obj/Debug/MenuControllerCompatability.dll b/GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/obj/Debug/MenuControllerCompatability.dll similarity index 100% rename from GeneralMods/MenuControllerCompatability/MenuControllerCompatability/obj/Debug/MenuControllerCompatability.dll rename to GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/obj/Debug/MenuControllerCompatability.dll diff --git a/GeneralMods/SerializerUtilRedux/SerializerUtils/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs similarity index 100% rename from GeneralMods/SerializerUtilRedux/SerializerUtils/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs rename to GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs diff --git a/GeneralMods/MenuControllerCompatability/MenuControllerCompatability/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs b/GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs similarity index 100% rename from GeneralMods/MenuControllerCompatability/MenuControllerCompatability/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs rename to GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs diff --git a/GeneralMods/MenuControllerCompatability/MenuControllerCompatability/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs similarity index 100% rename from GeneralMods/MenuControllerCompatability/MenuControllerCompatability/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs rename to GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs diff --git a/GeneralMods/MenuControllerCompatability/MenuControllerCompatability/packages.config b/GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/packages.config similarity index 100% rename from GeneralMods/MenuControllerCompatability/MenuControllerCompatability/packages.config rename to GeneralMods/OutDatedMods/MenuControllerCompatability/MenuControllerCompatability/packages.config diff --git a/GeneralMods/MenuControllerCompatability/manifest.json b/GeneralMods/OutDatedMods/MenuControllerCompatability/manifest.json similarity index 100% rename from GeneralMods/MenuControllerCompatability/manifest.json rename to GeneralMods/OutDatedMods/MenuControllerCompatability/manifest.json diff --git a/GeneralMods/SerializerUtilRedux/SerializerUtils/AssemblyInfo.cs b/GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/AssemblyInfo.cs similarity index 100% rename from GeneralMods/SerializerUtilRedux/SerializerUtils/AssemblyInfo.cs rename to GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/AssemblyInfo.cs diff --git a/GeneralMods/SerializerUtilRedux/SerializerUtils/SerializerUtility.cs b/GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/SerializerUtility.cs similarity index 100% rename from GeneralMods/SerializerUtilRedux/SerializerUtils/SerializerUtility.cs rename to GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/SerializerUtility.cs diff --git a/GeneralMods/SerializerUtilRedux/SerializerUtils/SerializerUtils.csproj b/GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/SerializerUtils.csproj similarity index 100% rename from GeneralMods/SerializerUtilRedux/SerializerUtils/SerializerUtils.csproj rename to GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/SerializerUtils.csproj diff --git a/GeneralMods/SerializerUtilRedux/SerializerUtils/SerializerUtils.sln b/GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/SerializerUtils.sln similarity index 100% rename from GeneralMods/SerializerUtilRedux/SerializerUtils/SerializerUtils.sln rename to GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/SerializerUtils.sln diff --git a/GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Lidgren.Network.dll b/GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Lidgren.Network.dll similarity index 100% rename from GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Lidgren.Network.dll rename to GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Lidgren.Network.dll diff --git a/GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Game.dll b/GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Game.dll similarity index 100% rename from GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Game.dll rename to GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Game.dll diff --git a/GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Game.xml b/GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Game.xml similarity index 100% rename from GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Game.xml rename to GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Game.xml diff --git a/GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.GamerServices.dll b/GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.GamerServices.dll similarity index 100% rename from GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.GamerServices.dll rename to GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.GamerServices.dll diff --git a/GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.GamerServices.xml b/GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.GamerServices.xml similarity index 100% rename from GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.GamerServices.xml rename to GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.GamerServices.xml diff --git a/GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Graphics.dll b/GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Graphics.dll similarity index 100% rename from GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Graphics.dll rename to GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Graphics.dll diff --git a/GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Graphics.xml b/GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Graphics.xml similarity index 100% rename from GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Graphics.xml rename to GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Graphics.xml diff --git a/GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Input.Touch.dll b/GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Input.Touch.dll similarity index 100% rename from GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Input.Touch.dll rename to GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Input.Touch.dll diff --git a/GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Input.Touch.xml b/GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Input.Touch.xml similarity index 100% rename from GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Input.Touch.xml rename to GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Input.Touch.xml diff --git a/GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Xact.dll b/GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Xact.dll similarity index 100% rename from GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Xact.dll rename to GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Xact.dll diff --git a/GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Xact.xml b/GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Xact.xml similarity index 100% rename from GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Xact.xml rename to GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.Xact.xml diff --git a/GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.dll b/GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.dll similarity index 100% rename from GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.dll rename to GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Microsoft.Xna.Framework.dll diff --git a/GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/SerializerUtils.dll b/GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/SerializerUtils.dll similarity index 100% rename from GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/SerializerUtils.dll rename to GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/SerializerUtils.dll diff --git a/GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Steamworks.NET.dll b/GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Steamworks.NET.dll similarity index 100% rename from GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Steamworks.NET.dll rename to GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/Steamworks.NET.dll diff --git a/GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/xTile.dll b/GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/xTile.dll similarity index 100% rename from GeneralMods/SerializerUtilRedux/SerializerUtils/bin/Debug/xTile.dll rename to GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/bin/Debug/xTile.dll diff --git a/GeneralMods/SerializerUtilRedux/SerializerUtils/obj/Debug/SerializerUtils.csproj.FileListAbsolute.txt b/GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/obj/Debug/SerializerUtils.csproj.FileListAbsolute.txt similarity index 88% rename from GeneralMods/SerializerUtilRedux/SerializerUtils/obj/Debug/SerializerUtils.csproj.FileListAbsolute.txt rename to GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/obj/Debug/SerializerUtils.csproj.FileListAbsolute.txt index 43d895ea..5ca96095 100644 --- a/GeneralMods/SerializerUtilRedux/SerializerUtils/obj/Debug/SerializerUtils.csproj.FileListAbsolute.txt +++ b/GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/obj/Debug/SerializerUtils.csproj.FileListAbsolute.txt @@ -20,3 +20,6 @@ C:\Users\owner\Documents\Visual Studio 2015\Projects\github\Stardew_Valley_Mods\ C:\Users\owner\Documents\Visual Studio 2015\Projects\github\Stardew_Valley_Mods\Stardew_Valley_Mods\SerializerUtilRedux\SerializerUtils\obj\Debug\SerializerUtils.csprojResolveAssemblyReference.cache C:\Users\owner\Documents\Visual Studio 2015\Projects\github\Stardew_Valley_Mods\Stardew_Valley_Mods\SerializerUtilRedux\SerializerUtils\obj\Debug\SerializerUtils.dll C:\Users\owner\Documents\Visual Studio 2015\Projects\github\Stardew_Valley_Mods\Stardew_Valley_Mods\SerializerUtilRedux\SerializerUtils\obj\Debug\SerializerUtils.pdb +C:\Users\owner\Documents\Visual Studio 2015\Projects\github\StardewValleyMods\GeneralMods\SerializerUtilRedux\SerializerUtils\obj\Debug\SerializerUtils.csprojResolveAssemblyReference.cache +C:\Users\owner\Documents\Visual Studio 2015\Projects\github\StardewValleyMods\GeneralMods\SerializerUtilRedux\SerializerUtils\obj\Debug\SerializerUtils.dll +C:\Users\owner\Documents\Visual Studio 2015\Projects\github\StardewValleyMods\GeneralMods\SerializerUtilRedux\SerializerUtils\obj\Debug\SerializerUtils.pdb diff --git a/GeneralMods/SerializerUtilRedux/SerializerUtils/obj/Debug/SerializerUtils.dll b/GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/obj/Debug/SerializerUtils.dll similarity index 100% rename from GeneralMods/SerializerUtilRedux/SerializerUtils/obj/Debug/SerializerUtils.dll rename to GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/obj/Debug/SerializerUtils.dll diff --git a/GeneralMods/SerializerUtilRedux/SerializerUtils/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs b/GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs similarity index 100% rename from GeneralMods/SerializerUtilRedux/SerializerUtils/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs rename to GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs diff --git a/GeneralMods/SerializerUtilRedux/SerializerUtils/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs similarity index 100% rename from GeneralMods/SerializerUtilRedux/SerializerUtils/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs rename to GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs diff --git a/GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/GeneralMods/OutDatedMods/SerializerUtilRedux/SerializerUtils/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs new file mode 100644 index 00000000..e69de29b diff --git a/GeneralMods/SDVMusicNameSeeker/MusicNameSeeker/MusicNameSeeker/bin/Debug/MusicNameSeeker.dll b/GeneralMods/SDVMusicNameSeeker/MusicNameSeeker/MusicNameSeeker/bin/Debug/MusicNameSeeker.dll index 8275a180..befcf701 100644 Binary files a/GeneralMods/SDVMusicNameSeeker/MusicNameSeeker/MusicNameSeeker/bin/Debug/MusicNameSeeker.dll and b/GeneralMods/SDVMusicNameSeeker/MusicNameSeeker/MusicNameSeeker/bin/Debug/MusicNameSeeker.dll differ diff --git a/GeneralMods/SDVMusicNameSeeker/MusicNameSeeker/MusicNameSeeker/obj/Debug/MusicNameSeeker.dll b/GeneralMods/SDVMusicNameSeeker/MusicNameSeeker/MusicNameSeeker/obj/Debug/MusicNameSeeker.dll index 8275a180..befcf701 100644 Binary files a/GeneralMods/SDVMusicNameSeeker/MusicNameSeeker/MusicNameSeeker/obj/Debug/MusicNameSeeker.dll and b/GeneralMods/SDVMusicNameSeeker/MusicNameSeeker/MusicNameSeeker/obj/Debug/MusicNameSeeker.dll differ diff --git a/GeneralMods/CustomShopMod_Redux_GUI/Class1.cs b/GeneralMods/Save_Anywhere_V2/CustomShopMod_Redux_GUI/Class1.cs similarity index 100% rename from GeneralMods/CustomShopMod_Redux_GUI/Class1.cs rename to GeneralMods/Save_Anywhere_V2/CustomShopMod_Redux_GUI/Class1.cs diff --git a/GeneralMods/CustomShopMod_Redux_GUI/Custom_Shop_Mod_Redux_GUI.dll b/GeneralMods/Save_Anywhere_V2/CustomShopMod_Redux_GUI/Custom_Shop_Mod_Redux_GUI.dll similarity index 100% rename from GeneralMods/CustomShopMod_Redux_GUI/Custom_Shop_Mod_Redux_GUI.dll rename to GeneralMods/Save_Anywhere_V2/CustomShopMod_Redux_GUI/Custom_Shop_Mod_Redux_GUI.dll diff --git a/GeneralMods/CustomShopMod_Redux_GUI/Custom_Shop_Redux_Config.txt b/GeneralMods/Save_Anywhere_V2/CustomShopMod_Redux_GUI/Custom_Shop_Redux_Config.txt similarity index 100% rename from GeneralMods/CustomShopMod_Redux_GUI/Custom_Shop_Redux_Config.txt rename to GeneralMods/Save_Anywhere_V2/CustomShopMod_Redux_GUI/Custom_Shop_Redux_Config.txt diff --git a/GeneralMods/Custom_NPC_Plus_Shop/My_Streaming_Shop.txt b/GeneralMods/Save_Anywhere_V2/CustomShopMod_Redux_GUI/Custom_Shops/My_Streaming_Shop.txt similarity index 100% rename from GeneralMods/Custom_NPC_Plus_Shop/My_Streaming_Shop.txt rename to GeneralMods/Save_Anywhere_V2/CustomShopMod_Redux_GUI/Custom_Shops/My_Streaming_Shop.txt diff --git a/GeneralMods/CustomShopMod_Redux_GUI/Custom_Shops/Test_Shop_1.txt b/GeneralMods/Save_Anywhere_V2/CustomShopMod_Redux_GUI/Custom_Shops/Test_Shop_1.txt similarity index 100% rename from GeneralMods/CustomShopMod_Redux_GUI/Custom_Shops/Test_Shop_1.txt rename to GeneralMods/Save_Anywhere_V2/CustomShopMod_Redux_GUI/Custom_Shops/Test_Shop_1.txt diff --git a/GeneralMods/CustomShopMod_Redux_GUI/Custom_Shops/Test_Shop_2.txt b/GeneralMods/Save_Anywhere_V2/CustomShopMod_Redux_GUI/Custom_Shops/Test_Shop_2.txt similarity index 100% rename from GeneralMods/CustomShopMod_Redux_GUI/Custom_Shops/Test_Shop_2.txt rename to GeneralMods/Save_Anywhere_V2/CustomShopMod_Redux_GUI/Custom_Shops/Test_Shop_2.txt diff --git a/GeneralMods/CustomShopMod_Redux_GUI/Mod_readme.txt b/GeneralMods/Save_Anywhere_V2/CustomShopMod_Redux_GUI/Mod_readme.txt similarity index 100% rename from GeneralMods/CustomShopMod_Redux_GUI/Mod_readme.txt rename to GeneralMods/Save_Anywhere_V2/CustomShopMod_Redux_GUI/Mod_readme.txt diff --git a/GeneralMods/CustomShopMod_Redux_GUI/ReadMe.md b/GeneralMods/Save_Anywhere_V2/CustomShopMod_Redux_GUI/ReadMe.md similarity index 100% rename from GeneralMods/CustomShopMod_Redux_GUI/ReadMe.md rename to GeneralMods/Save_Anywhere_V2/CustomShopMod_Redux_GUI/ReadMe.md diff --git a/GeneralMods/CustomShopMod_Redux_GUI/manifest.json b/GeneralMods/Save_Anywhere_V2/CustomShopMod_Redux_GUI/manifest.json similarity index 100% rename from GeneralMods/CustomShopMod_Redux_GUI/manifest.json rename to GeneralMods/Save_Anywhere_V2/CustomShopMod_Redux_GUI/manifest.json diff --git a/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/GameUtilities.cs b/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/GameUtilities.cs index c191d529..148635b3 100644 --- a/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/GameUtilities.cs +++ b/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/GameUtilities.cs @@ -1,5 +1,6 @@ using StardewModdingAPI; using StardewValley; +using StardewValley.Menus; using System; using System.Collections.Generic; using System.Linq; @@ -10,6 +11,7 @@ namespace Save_Anywhere_V2.Save_Utilities { public class GameUtilities { + public static bool passiveSave; public static bool should_ship; public static void save_game() { @@ -34,12 +36,13 @@ namespace Save_Anywhere_V2.Save_Utilities try { - Game1.activeClickableMenu = new StardewValley.Menus.SaveGameMenu(); + shipping_check(); + // Game1.activeClickableMenu = new StardewValley.Menus.SaveGameMenu(); } catch(Exception rrr) { Game1.showRedMessage("Can't save here. See log for error."); - Log.AsyncR(rrr); + Mod_Core.thisMonitor.Log(rrr.ToString(), LogLevel.Error); } // Game1.activeClickableMenu = new StardewValley.Menus.SaveGameMenu(); //This command is what allows the player to save anywhere as it calls the saving function. @@ -78,6 +81,11 @@ namespace Save_Anywhere_V2.Save_Utilities should_ship = false; Game1.getFarm().shippingBin.Clear(); Game1.getFarm().lastItemShipped = null; + passiveSave = true; + } + else + { + Game1.activeClickableMenu = new StardewValley.Menus.SaveGameMenu(); } } } diff --git a/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/Horse_Utility.cs b/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/Horse_Utility.cs index 3b7e6cd1..30dd4881 100644 --- a/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/Horse_Utility.cs +++ b/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/Horse_Utility.cs @@ -24,7 +24,7 @@ namespace Save_Anywhere_V2.Save_Utilities.Animals if (horse == null) { //Game1.getFarm().characters.Add((NPC)new Horse(this.player_tile_x + 1, this.player_tile_Y + 1)); - Log.Info("NEIGH: No horse exists"); + Mod_Core.thisMonitor.Log("NEIGH: No horse exists", LogLevel.Debug); return; } // else @@ -42,8 +42,7 @@ namespace Save_Anywhere_V2.Save_Utilities.Animals if (!File.Exists(mylocation3)) { - - Log.Info("The horse save info doesn't exist. It will be created when the custom saving method is run. Which is now."); + Mod_Core.thisMonitor.Log("The horse save info doesn't exist. It will be created when the custom saving method is run. Which is now.", LogLevel.Debug); //write out the info to a text file at the end of a day. This will run if it doesnt exist. mystring3[0] = "Horse: Save_Anywhere Info. Editing this might break some things."; @@ -91,7 +90,7 @@ namespace Save_Anywhere_V2.Save_Utilities.Animals Horse horse = Utility.findHorse(); if (horse == null) { - Log.Info("NEIGH: No horse exists"); + Mod_Core.thisMonitor.Log("NEIGH: No horse exists", LogLevel.Debug); return; } // DataLoader_Settings(); diff --git a/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/Mod_Core.cs b/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/Mod_Core.cs index 1522f7fa..c923680a 100644 --- a/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/Mod_Core.cs +++ b/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/Mod_Core.cs @@ -12,6 +12,7 @@ using System.Globalization; using System.IO; using StardewValley.Characters; using Microsoft.Xna.Framework; +using Save_Anywhere_V2.Save_Utilities; namespace Save_Anywhere_V2 { @@ -27,25 +28,38 @@ namespace Save_Anywhere_V2 public static bool once; public static bool new_day; Dictionary npc_key_value_pair; + + public static IMonitor thisMonitor; + public override void Entry(IModHelper helper) { try { StardewModdingAPI.Events.ControlEvents.KeyPressed += KeyPressed_Save_Load_Menu; StardewModdingAPI.Events.SaveEvents.AfterLoad += PlayerEvents_LoadedGame; StardewModdingAPI.Events.GameEvents.UpdateTick += Warp_Check; - StardewModdingAPI.Events.GameEvents.UpdateTick += ShippingCheck; + StardewModdingAPI.Events.GameEvents.UpdateTick += PassiveSaveChecker; StardewModdingAPI.Events.TimeEvents.TimeOfDayChanged += NPC_scheduel_update; StardewModdingAPI.Events.TimeEvents.DayOfMonthChanged += TimeEvents_DayOfMonthChanged; StardewModdingAPI.Events.TimeEvents.DayOfMonthChanged += TimeEvents_OnNewDay; - Command.RegisterCommand("include_types", "Includes types to serialize").CommandFired += Command_IncludeTypes; mod_path = Helper.DirectoryPath; npc_key_value_pair = new Dictionary(); + thisMonitor = Monitor; } catch(Exception x) { Monitor.Log(x.ToString()); } } + + private void PassiveSaveChecker(object sender, EventArgs e) + { + if (GameUtilities.passiveSave == true && Game1.activeClickableMenu==null) + { + Game1.activeClickableMenu = new StardewValley.Menus.SaveGameMenu(); + GameUtilities.passiveSave = false; + } + } + //done private void TimeEvents_OnNewDay(object sender, EventArgsIntChanged e) { @@ -54,10 +68,7 @@ namespace Save_Anywhere_V2 new_day = true; string name = Game1.player.name; Save_Anywhere_V2.Mod_Core.player_path = Path.Combine(Save_Anywhere_V2.Mod_Core.mod_path, "Save_Data", name); - if (Directory.Exists(player_path)) - { - Directory.Delete(player_path, true); - } + } catch(Exception err) { @@ -168,6 +179,7 @@ namespace Save_Anywhere_V2 } catch (Exception ex) { + this.Monitor.Log(ex.ToString(), LogLevel.Error); // dictionary = new Dictionary();//(Dictionary)null; continue; } @@ -228,8 +240,9 @@ namespace Save_Anywhere_V2 } catch (Exception err) { - // Monitor.Log(npc.name); - foreach(var v in valueArray2) + this.Monitor.Log(err.ToString(), LogLevel.Error); + // Monitor.Log(npc.name); + foreach (var v in valueArray2) { //Monitor.Log(v); } @@ -462,6 +475,7 @@ namespace Save_Anywhere_V2 } catch (Exception ex) { + this.Monitor.Log(ex.ToString(), LogLevel.Error); dictionary = new Dictionary();//(Dictionary)null; } if (dictionary.ContainsKey(Game1.currentSeason + "_" + Convert.ToString(Game1.dayOfMonth))) @@ -683,10 +697,16 @@ namespace Save_Anywhere_V2 Save_Anywhere_V2.Mod_Core.player_path = Path.Combine(Save_Anywhere_V2.Mod_Core.mod_path, "Save_Data", name); if (!Directory.Exists(Save_Anywhere_V2.Mod_Core.player_path)) { + //Log.AsyncM(Save_Anywhere_V2.Mod_Core.player_path); + //Log.AsyncC("WOOPS"); return; } + + // Log.AsyncY(Player_Utilities.has_player_warped_yet); + if (Save_Anywhere_V2.Save_Utilities.Player_Utilities.has_player_warped_yet == false && Game1.player.isMoving() == true) { + //Log.AsyncM("Ok Good"); Save_Anywhere_V2.Save_Utilities.Player_Utilities.warp_player(); Save_Anywhere_V2.Save_Utilities.Animal_Utilities.load_animal_info(); Save_Anywhere_V2.Save_Utilities.NPC_Utilities.Load_NPC_Info(); @@ -696,6 +716,7 @@ namespace Save_Anywhere_V2 } catch (Exception err) { + //7Log.AsyncO("THIS DOESNT MAKE SENSE"); Monitor.Log(err.ToString()); } } @@ -713,12 +734,6 @@ namespace Save_Anywhere_V2 } } - //done - private static void Command_IncludeTypes(object sender, EventArgsCommand e) - { - - } - public void KeyPressed_Save_Load_Menu(object sender, StardewModdingAPI.Events.EventArgsKeyPressed e) { if (e.KeyPressed.ToString() == Save_Anywhere_V2.Save_Utilities.Config_Utilities.key_binding) //if the key is pressed, load my cusom save function @@ -728,8 +743,8 @@ namespace Save_Anywhere_V2 Save_Anywhere_V2.Save_Utilities.GameUtilities.save_game(); } catch(Exception exe) - { - + { + Mod_Core.thisMonitor.Log(exe.ToString(), LogLevel.Error); } } @@ -780,7 +795,7 @@ namespace Save_Anywhere_V2 string name = array2[2]; int num2 = Convert.ToInt32(array2[3]); bool flag = false; - using (List.Enumerator enumerator = Game1.getAllFarmers().GetEnumerator()) + using (List.Enumerator enumerator = Game1.getAllFarmers().GetEnumerator()) { while (enumerator.MoveNext()) { diff --git a/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/NPC_Utilities.cs b/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/NPC_Utilities.cs index 5f4ffbee..feeb3ee7 100644 --- a/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/NPC_Utilities.cs +++ b/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/NPC_Utilities.cs @@ -18,7 +18,7 @@ namespace Save_Anywhere_V2.Save_Utilities public static int npc_tile_x; public static int npc_tile_y; public static string npc_current_map_name; - public static System.Collections.Generic.List> routesFromLocationToLocation = new List>(); + public static System.Collections.Generic.List> routesFromLocationToLocation = new List>(); public static Microsoft.Xna.Framework.Point npc_point; public static void Save_NPC_Info() @@ -44,8 +44,7 @@ namespace Save_Anywhere_V2.Save_Utilities string[] mystring3 = new string[20]; if (!File.Exists(mylocation3)) { - - Log.Info("Save Anywhere: The NPC save info for " + npc_name + " doesn't exist. It will be created when the custom saving method is run. Which is now."); + Mod_Core.thisMonitor.Log("Save Anywhere: The NPC save info for " + npc_name + " doesn't exist. It will be created when the custom saving method is run. Which is now."); //write out the info to a text file at the end of a day. This will run if it doesnt exist. mystring3[0] = "NPC: Save_Anywhere Info. Editing this might break some things."; @@ -121,7 +120,7 @@ namespace Save_Anywhere_V2.Save_Utilities string[] mystring3 = new string[20]; if (!File.Exists(mylocation3)) { - Log.Info("Missing character file?!?"); + Mod_Core.thisMonitor.Log("Missing character file?!?", LogLevel.Error); continue; } diff --git a/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/New_Shipping_Menu.cs b/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/New_Shipping_Menu.cs index 37a02ba1..16eab51b 100644 --- a/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/New_Shipping_Menu.cs +++ b/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/New_Shipping_Menu.cs @@ -7,6 +7,7 @@ using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Graphics; using Microsoft.Xna.Framework.Input; +using Save_Anywhere_V2; using StardewModdingAPI; using StardewValley; using StardewValley.BellsAndWhistles; @@ -267,12 +268,12 @@ namespace StardewValley.Menus return; try { - Game1.activeClickableMenu = new StardewValley.Menus.SaveGameMenu(); + // Game1.activeClickableMenu = new StardewValley.Menus.SaveGameMenu(); } catch (Exception rrr) { Game1.showRedMessage("Can't save here. See log for error."); - Log.AsyncR(rrr); + Mod_Core.thisMonitor.Log(rrr.ToString(), LogLevel.Error); } return; } @@ -452,7 +453,10 @@ namespace StardewValley.Menus if (this.outro && !this.savedYet) { if (this.saveGameMenu != null) - ; + { + + } + } else { diff --git a/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/Pet_Utilities.cs b/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/Pet_Utilities.cs index 40c2c2b5..14e9f31b 100644 --- a/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/Pet_Utilities.cs +++ b/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/Pet_Utilities.cs @@ -17,7 +17,6 @@ namespace Save_Anywhere_V2.Save_Utilities.Animals public static int pet_tile_x; public static int pet_tile_y; public static bool is_pet_outside; - public static bool has_pet_warped_yet; public static Microsoft.Xna.Framework.Point pet_point; public static void save_pet_info() @@ -48,8 +47,7 @@ namespace Save_Anywhere_V2.Save_Utilities.Animals if (!File.Exists(mylocation3)) { - - Log.Info("Save Anywhere: The pet save info doesn't exist. It will be created when the custom saving method is run. Which is now."); + Mod_Core.thisMonitor.Log("Save Anywhere: The pet save info doesn't exist. It will be created when the custom saving method is run. Which is now.", LogLevel.Debug); //write out the info to a text file at the end of a day. This will run if it doesnt exist. mystring3[0] = "Pet: Save_Anywhere Info. Editing this might break some things."; diff --git a/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/Player_Utilities.cs b/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/Player_Utilities.cs index a4ff9dd2..bc40a5be 100644 --- a/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/Player_Utilities.cs +++ b/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/Player_Utilities.cs @@ -59,7 +59,7 @@ namespace Save_Anywhere_V2.Save_Utilities string[] mystring3 = new string[20]; if (!File.Exists(mylocation3)) { - Log.Info("Save Anywhere: The custom character save info doesn't exist. It will be created when the custom saving method is run. Which is now."); + Mod_Core.thisMonitor.Log("Save Anywhere: The custom character save info doesn't exist. It will be created when the custom saving method is run. Which is now.", LogLevel.Info); //write out the info to a text file at the end of a day. This will run if it doesnt exist. mystring3[0] = "Player: Save_Anywhere Info. Editing this might break some things."; @@ -155,8 +155,14 @@ namespace Save_Anywhere_V2.Save_Utilities Game1.facingDirectionAfterWarp = player_facing_direction; Game1.fadeScreenToBlack(); - // Game1.warpFarmer(players_current_map_name, player_x_tile, player_y_tile, false); - // Game1.player.faceDirection(player_facing_direction); + Game1.warpFarmer(players_current_map_name, player_x_tile, player_y_tile, false); + Mod_Core.thisMonitor.Log("WARP THE PLAYER"); + Game1.player.faceDirection(player_facing_direction); + + if (Directory.Exists(Mod_Core.player_path)) + { + // Directory.Delete(player_path, true); + } } } diff --git a/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/bin/Debug/Save_Anywhere_V2.dll b/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/bin/Debug/Save_Anywhere_V2.dll index 94cb7f3a..02fb17db 100644 Binary files a/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/bin/Debug/Save_Anywhere_V2.dll and b/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/bin/Debug/Save_Anywhere_V2.dll differ diff --git a/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/obj/Debug/Save_Anywhere_V2.dll b/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/obj/Debug/Save_Anywhere_V2.dll index 94cb7f3a..02fb17db 100644 Binary files a/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/obj/Debug/Save_Anywhere_V2.dll and b/GeneralMods/Save_Anywhere_V2/Save_Anywhere_V2/obj/Debug/Save_Anywhere_V2.dll differ diff --git a/GeneralMods/StardewSymphony/StardewSymphony/MusicManager.txt b/GeneralMods/StardewSymphony/StardewSymphony/MusicManager.txt new file mode 100644 index 00000000..cf5c9046 --- /dev/null +++ b/GeneralMods/StardewSymphony/StardewSymphony/MusicManager.txt @@ -0,0 +1,781 @@ + + //also known as the music_pack + public class MusicManager + { + public string wave_bank_name; + public string sound_bank_name; + + public List spring_song_list; + public int num_of_spring_songs; + public List summer_song_list; + public int num_of_summer_songs; + public List fall_song_list; + public int num_of_fall_songs; + public List winter_song_list; + public int num_of_winter_songs; + + + public List spring_night_song_list; + public int num_of_spring_night_songs; + public List summer_night_song_list; + public int num_of_summer_night_songs; + public List fall_night_song_list; + public int num_of_fall_night_songs; + public List winter_night_song_list; + public int num_of_winter_night_songs; + + + public List spring_rain_song_list; + public int num_of_spring_rain_songs; + public List summer_rain_song_list; + public int num_of_summer_rain_songs; + public List fall_rain_song_list; + public int num_of_fall_rain_songs; + public List winter_snow_song_list; + public int num_of_winter_snow_songs; + + + public List spring_rain_night_song_list; + public int num_of_spring_rain_night_songs; + public List summer_rain_night_song_list; + public int num_of_summer_rain_night_songs; + public List fall_rain_night_song_list; + public int num_of_fall_rain_night_songs; + public List winter_snow_night_song_list; + public int num_of_winter_snow_night_songs; + + public List locational_cues; + public Dictionary> locational_songs; + + + public Dictionary> locational_rain_songs; + public Dictionary> locational_night_songs; + public Dictionary> locational_rain_night_songs; + + + public WaveBank newwave; + public SoundBank new_sound_bank; + public string path_loc; + + public Info_Class(string wb, string sb, string directory) + { + wave_bank_name = wb; + sound_bank_name = sb; + wave_bank_name += ".xwb"; + sound_bank_name += ".xsb"; + path_loc = directory; + + Console.WriteLine(Path.Combine(path_loc, wave_bank_name)); + Console.WriteLine(Path.Combine(path_loc, sound_bank_name)); + + + if (File.Exists(Path.Combine(path_loc, wave_bank_name))){ + newwave = new WaveBank(Game1.audioEngine, Path.Combine(path_loc, wave_bank_name)); //look for wave bank in sound_pack root directory. + } + if (File.Exists(Path.Combine(path_loc, sound_bank_name))) + { + new_sound_bank = new SoundBank(Game1.audioEngine, Path.Combine(path_loc, sound_bank_name)); //look for sound bank in sound_pack root directory. + } + + Game1.audioEngine.Update(); + + spring_song_list = new List(); + num_of_spring_songs = 0; + summer_song_list = new List(); + num_of_summer_songs = 0; + fall_song_list = new List(); + num_of_fall_songs = 0; + winter_song_list = new List(); + num_of_winter_songs = 0; + + spring_night_song_list = new List(); + num_of_spring_night_songs = 0; + summer_night_song_list = new List(); + num_of_summer_night_songs = 0; + fall_night_song_list = new List(); + num_of_fall_night_songs = 0; + winter_night_song_list = new List(); + num_of_winter_night_songs = 0; + + + //rainy initialization + spring_rain_song_list = new List(); + num_of_spring_rain_songs = 0; + summer_rain_song_list = new List(); + num_of_summer_rain_songs = 0; + fall_rain_song_list = new List(); + num_of_fall_rain_songs = 0; + winter_snow_song_list = new List(); + num_of_winter_snow_songs = 0; + + spring_rain_night_song_list = new List(); + num_of_spring_rain_night_songs = 0; + summer_rain_night_song_list = new List(); + num_of_summer_rain_night_songs = 0; + fall_rain_night_song_list = new List(); + num_of_fall_rain_night_songs = 0; + winter_snow_night_song_list = new List(); + num_of_winter_snow_night_songs = 0; + + locational_songs = new Dictionary>(); + locational_rain_songs = new Dictionary>(); + locational_night_songs = new Dictionary>(); + locational_rain_night_songs = new Dictionary>(); + } + + public void Music_Loader_Seasons(string conditional_name, Dictionary reference_dic) //reads in cue names from a text file and adds them to a specific list. Morphs with specific conditional name. Conditionals are hardcoded. + { + //loads the data to the variables upon loading the game. + var music_path = path_loc; + string mylocation = Path.Combine(music_path,"Music_Files","Seasons", conditional_name); + string mylocation2 = mylocation; + string mylocation3 = mylocation2 + ".txt"; + + + if (!File.Exists(mylocation3)) //check to make sure the file actually exists + { + + string error_message = "Stardew Symohony:The specified music file could not be found. That music file is " + conditional_name + " which should be located at " + mylocation3 +" but don't worry I'll create it for you right now. It's going to be blank though"; + Console.WriteLine(error_message); + + string[] mystring3 = new string[3];//seems legit. + mystring3[0] = conditional_name + " music file. This file holds all of the music that will play when there is no music for this game location, or simply put this is default music. Simply type the name of the song below the wall of equal signs."; + mystring3[1] = "========================================================================================"; + + File.WriteAllLines(mylocation3, mystring3); + } + + else + { + Console.WriteLine("Stardew Symphony:The music pack located at: " + path_loc + " is processing the song info for the game location: " + conditional_name); + //System.Threading.Thread.Sleep(1000); + // add in data here + + string[] readtext = File.ReadAllLines(mylocation3); + string cue_name; + int i = 2; + var lineCount = File.ReadLines(mylocation3).Count(); + + while (i < lineCount) //the ordering seems bad, but it works. + { + if (Convert.ToString(readtext[i]) == "") + { + // Monitor.Log("Blank space detected."); + break; + + } + if (Convert.ToString(readtext[i]) == "\n") + { + break; + + } + + + if (conditional_name == "spring") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + + if (!reference_dic.Keys.Contains(cue_name)) + { + spring_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_spring_songs++; + reference_dic.Add(cue_name, this); + + } + else { + spring_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_spring_songs++; + } + // Monitor.Log(cue_name); + } + if (conditional_name == "summer") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + if (!reference_dic.Keys.Contains(cue_name)) + { + summer_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_summer_songs++; + reference_dic.Add(cue_name, this); + + } + else { + summer_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_summer_songs++; + } + } + if (conditional_name == "fall") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + if (!reference_dic.Keys.Contains(cue_name)) + { + fall_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_fall_songs++; + reference_dic.Add(cue_name, this); + + } + else { + fall_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_fall_songs++; + } + } + if (conditional_name == "winter") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + if (!reference_dic.Keys.Contains(cue_name)) + { + winter_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_winter_songs++; + reference_dic.Add(cue_name, this); + + } + else { + winter_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_winter_songs++; + } + } + //add in other stuff here + //======================================================================================================================================================================================== + //NIGHTLY SEASONAL LOADERS + if (conditional_name == "spring_night") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + + if (!reference_dic.Keys.Contains(cue_name)) + { + spring_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_spring_night_songs++; + reference_dic.Add(cue_name, this); + + } + else { + spring_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_spring_night_songs++; + } + // Monitor.Log(cue_name); + } + if (conditional_name == "summer_night") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + if (!reference_dic.Keys.Contains(cue_name)) + { + summer_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_summer_night_songs++; + reference_dic.Add(cue_name, this); + + } + else { + summer_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_summer_night_songs++; + } + } + if (conditional_name == "fall_night") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + if (!reference_dic.Keys.Contains(cue_name)) + { + fall_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_fall_night_songs++; + reference_dic.Add(cue_name, this); + + } + else { + fall_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_fall_night_songs++; + } + } + if (conditional_name == "winter_night") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + if (!reference_dic.Keys.Contains(cue_name)) + { + winter_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_winter_night_songs++; + reference_dic.Add(cue_name, this); + + } + else { + winter_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_winter_night_songs++; + } + } + ////////NOW I"M ADDING THE PART THAT WILL READ IN RAINY SEASONAL SONGS FOR DAY AND NIGHT + if (conditional_name == "spring_rain") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + + if (!reference_dic.Keys.Contains(cue_name)) + { + spring_rain_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_spring_rain_songs++; + reference_dic.Add(cue_name, this); + + } + else { + spring_rain_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_spring_rain_songs++; + } + // Monitor.Log(cue_name); + } + if (conditional_name == "summer_rain") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + if (!reference_dic.Keys.Contains(cue_name)) + { + summer_rain_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_summer_rain_songs++; + reference_dic.Add(cue_name, this); + + } + else { + summer_rain_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_summer_rain_songs++; + } + } + if (conditional_name == "fall_rain") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + if (!reference_dic.Keys.Contains(cue_name)) + { + fall_rain_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_fall_rain_songs++; + reference_dic.Add(cue_name, this); + + } + else { + fall_rain_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_fall_rain_songs++; + } + } + if (conditional_name == "winter_snow") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + if (!reference_dic.Keys.Contains(cue_name)) + { + winter_snow_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_winter_snow_songs++; + reference_dic.Add(cue_name, this); + + } + else { + winter_snow_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_winter_snow_songs++; + } + } + //add in other stuff here + //======================================================================================================================================================================================== + //NIGHTLY SEASONAL RAIN LOADERS + if (conditional_name == "spring_rain_night") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + + if (!reference_dic.Keys.Contains(cue_name)) + { + spring_rain_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_spring_rain_night_songs++; + reference_dic.Add(cue_name, this); + + } + else { + spring_rain_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_spring_rain_night_songs++; + } + // Monitor.Log(cue_name); + } + if (conditional_name == "summer_rain_night") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + if (!reference_dic.Keys.Contains(cue_name)) + { + summer_rain_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_summer_rain_night_songs++; + reference_dic.Add(cue_name, this); + + } + else { + summer_rain_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_summer_rain_night_songs++; + } + } + if (conditional_name == "fall_rain_night") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + if (!reference_dic.Keys.Contains(cue_name)) + { + fall_rain_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_fall_rain_night_songs++; + reference_dic.Add(cue_name, this); + + } + else { + fall_rain_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_fall_rain_night_songs++; + } + } + if (conditional_name == "winter_snow_night") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + if (!reference_dic.Keys.Contains(cue_name)) + { + winter_snow_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_winter_snow_night_songs++; + reference_dic.Add(cue_name, this); + + } + else { + winter_snow_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_winter_snow_night_songs++; + } + } + } + if (i ==2) + { + // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 +" this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); + // System.Threading.Thread.Sleep(10); + return; + } + Console.WriteLine("StardewSymohony:The music pack located at: " + path_loc + " has successfully processed the song info for the game location: " + conditional_name); + } + } + public void Music_Loader_Locations(string conditional_name, Dictionary reference_dic) //reads in cue names from a text file and adds them to a specific list. Morphs with specific conditional name. Conditionals are hardcoded. + { + locational_cues = new List(); + //loads the data to the variables upon loading the game. + var music_path = path_loc; + string mylocation = Path.Combine(music_path, "Music_Files", "Locations", conditional_name); + string mylocation2 = mylocation; + string mylocation3 = mylocation2 + ".txt"; + if (!File.Exists(mylocation3)) //check to make sure the file actually exists + { + Console.WriteLine("StardewSymohony:A music list for the location " + conditional_name + " does not exist for the music pack located at " + mylocation3 + " which isn't a problem, I just thought I'd let you know since this may have been intentional. Also I'm creating it for you just incase. Cheers."); + + //Console.WriteLine("Creating the Config file"); + string[] mystring3 = new string[3];//seems legit. + mystring3[0] = conditional_name + " music file. This file holds all of the music that will play when at this game location. Simply type the name of the song below the wall of equal signs."; + mystring3[1] = "========================================================================================"; + + File.WriteAllLines(mylocation3, mystring3); + return; + } + + else + { + Console.WriteLine("Stardew Symphony:The music pack located at: " + path_loc + " is processing the song info for the game location: " + conditional_name); + //System.Threading.Thread.Sleep(1000); + string[] readtext = File.ReadAllLines(mylocation3); + string cue_name; + int i = 2; + var lineCount = File.ReadLines(mylocation3).Count(); + while (i < lineCount) //the ordering seems bad, but it works. + { + if (Convert.ToString(readtext[i]) == "") + { + break; + } + if (Convert.ToString(readtext[i]) == "\n") + { + break; + } + cue_name = Convert.ToString(readtext[i]); + i++; + if (!reference_dic.Keys.Contains(cue_name)) + { + locational_cues.Add(new_sound_bank.GetCue(cue_name)); + reference_dic.Add(cue_name, this); + } + else { + locational_cues.Add(new_sound_bank.GetCue(cue_name)); + } + } + if (i == 2) + { + // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 + " this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); + return; + } + if (locational_cues.Count > 0) { + locational_songs.Add(conditional_name, locational_cues); + Console.WriteLine("StardewSymhony:The music pack located at: " + path_loc + " has successfully processed the song info for the game location: " + conditional_name); + + return; + } + else + { + // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 + " this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); + return; + } + } + } + + public void Music_Loader_Locations_Rain(string conditional_name, Dictionary reference_dic) //reads in cue names from a text file and adds them to a specific list. Morphs with specific conditional name. Conditionals are hardcoded. + { + locational_cues = new List(); + var music_path = path_loc; + string mylocation = Path.Combine(music_path, "Music_Files", "Locations", conditional_name); + string mylocation2 = mylocation; + string mylocation3 = mylocation2 + ".txt"; + if (!File.Exists(mylocation3)) //check to make sure the file actually exists + { + Console.WriteLine("StardewSymphony:A music list for the location " + conditional_name + " does not exist for the music pack located at " + mylocation3 + " which isn't a problem, I just thought I'd let you know since this may have been intentional. Also I'm creating it for you just incase. Cheers."); + string[] mystring3 = new string[3];//seems legit. + mystring3[0] = conditional_name + " music file. This file holds all of the music that will play when at this game location. Simply type the name of the song below the wall of equal signs."; + mystring3[1] = "========================================================================================"; + File.WriteAllLines(mylocation3, mystring3); + return; + } + + else + { + // add in data here + string[] readtext = File.ReadAllLines(mylocation3); + string cue_name; + int i = 2; + var lineCount = File.ReadLines(mylocation3).Count(); + while (i < lineCount) //the ordering seems bad, but it works. + { + if (Convert.ToString(readtext[i]) == "") + { + // Monitor.Log("Blank space detected."); + break; + } + if (Convert.ToString(readtext[i]) == "\n") + { + // Monitor.Log("end line reached"); + break; + } + cue_name = Convert.ToString(readtext[i]); + i++; + if (!reference_dic.Keys.Contains(cue_name)) + { + locational_cues.Add(new_sound_bank.GetCue(cue_name)); + reference_dic.Add(cue_name, this); + } + else { + locational_cues.Add(new_sound_bank.GetCue(cue_name)); + } + } + if (i == 2) + { + // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 + " this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); + return; + } + if (locational_cues.Count > 0) + { + locational_rain_songs.Add(conditional_name, locational_cues); + Console.WriteLine("StardewSymohony:The music pack located at: " + path_loc + " has successfully processed the song info for the game location: " + conditional_name); + return; + } + else + { + // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 + " this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); + return; + } + } + } + public void Music_Loader_Locations_Night(string conditional_name, Dictionary reference_dic) //reads in cue names from a text file and adds them to a specific list. Morphs with specific conditional name. Conditionals are hardcoded. + { + locational_cues = new List(); + //loads the data to the variables upon loading the game. + var music_path = path_loc; + string mylocation = Path.Combine(music_path, "Music_Files", "Locations", conditional_name); + string mylocation2 = mylocation; + string mylocation3 = mylocation2 + ".txt"; + if (!File.Exists(mylocation3)) //check to make sure the file actually exists + { + Console.WriteLine("StardewSymphony:A music list for the location " + conditional_name + " does not exist for the music pack located at " + mylocation3 + " which isn't a problem, I just thought I'd let you know since this may have been intentional. Also I'm creating it for you just incase. Cheers."); + //Console.WriteLine("Creating the Config file"); + string[] mystring3 = new string[3];//seems legit. + mystring3[0] = conditional_name + " music file. This file holds all of the music that will play when at this game location. Simply type the name of the song below the wall of equal signs."; + mystring3[1] = "========================================================================================"; + File.WriteAllLines(mylocation3, mystring3); + return; + } + + else + { + // add in data here + string[] readtext = File.ReadAllLines(mylocation3); + string cue_name; + int i = 2; + var lineCount = File.ReadLines(mylocation3).Count(); + + while (i < lineCount) //the ordering seems bad, but it works. + { + if (Convert.ToString(readtext[i]) == "") + { + // Monitor.Log("Blank space detected."); + break; + + } + if (Convert.ToString(readtext[i]) == "\n") + { + //Monitor.Log("end line reached"); + break; + + } + cue_name = Convert.ToString(readtext[i]); + i++; + if (!reference_dic.Keys.Contains(cue_name)) + { + locational_cues.Add(new_sound_bank.GetCue(cue_name)); + reference_dic.Add(cue_name, this); + } + else { + locational_cues.Add(new_sound_bank.GetCue(cue_name)); + } + + } + if (i == 2) + { + // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 + " this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); + return; + } + if (locational_cues.Count > 0) + { + locational_night_songs.Add(conditional_name, locational_cues); + Console.WriteLine("StardewSymphonyLThe music pack located at: " + path_loc + " has successfully processed the song info for the game location: " + conditional_name); + return; + } + else + { + // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 + " this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); + return; + } + } + } + public void Music_Loader_Locations_Rain_Night(string conditional_name, Dictionary reference_dic) //reads in cue names from a text file and adds them to a specific list. Morphs with specific conditional name. Conditionals are hardcoded. + { + locational_cues = new List(); + var music_path = path_loc; + + string mylocation = Path.Combine(music_path, "Music_Files", "Locations", conditional_name); + string mylocation2 = mylocation; + string mylocation3 = mylocation2 + ".txt"; + if (!File.Exists(mylocation3)) //check to make sure the file actually exists + { + Console.WriteLine("StardewSymphony:A music list for the location " + conditional_name + " does not exist for the music pack located at " + mylocation3 + " which isn't a problem, I just thought I'd let you know since this may have been intentional. Also I'm creating it for you just incase. Cheers."); + string[] mystring3 = new string[3];//seems legit. + mystring3[0] = conditional_name + " music file. This file holds all of the music that will play when at this game location. Simply type the name of the song below the wall of equal signs."; + mystring3[1] = "========================================================================================"; + + File.WriteAllLines(mylocation3, mystring3); + + + return; + } + + else + { + //load in music stuff from the text files using the code below. + string[] readtext = File.ReadAllLines(mylocation3); + string cue_name; + int i = 2; + var lineCount = File.ReadLines(mylocation3).Count(); + + while (i < lineCount) //the ordering seems bad, but it works. + { + if (Convert.ToString(readtext[i]) == "") //if there is ever an empty line, stop processing the music file + { + break; + } + if (Convert.ToString(readtext[i]) == "\n") + { + break; + } + cue_name = Convert.ToString(readtext[i]); + i++; + if (!reference_dic.Keys.Contains(cue_name)) + { + locational_cues.Add(new_sound_bank.GetCue(cue_name)); + reference_dic.Add(cue_name, this); + } + else { + locational_cues.Add(new_sound_bank.GetCue(cue_name)); + } + } + if (i == 2) + { + // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 + " this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); + + return; + } + + if (locational_cues.Count > 0) + { + locational_rain_night_songs.Add(conditional_name, locational_cues); + + Console.WriteLine("StardewSymohony:The music pack located at: " + path_loc + " has successfully processed the song info for the game location: " + conditional_name); + return; + } + else + { + // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 + " this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); + return; + } + + } + } + + }; \ No newline at end of file diff --git a/GeneralMods/StardewSymphony/StardewSymphony/StardewSymphony.sln b/GeneralMods/StardewSymphony/StardewSymphony/StardewSymphony.sln index e0b78fd0..26c2ee06 100644 --- a/GeneralMods/StardewSymphony/StardewSymphony/StardewSymphony.sln +++ b/GeneralMods/StardewSymphony/StardewSymphony/StardewSymphony.sln @@ -1,10 +1,12 @@  Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio Express 14 for Windows Desktop -VisualStudioVersion = 14.0.24720.0 +VisualStudioVersion = 14.0.25420.1 MinimumVisualStudioVersion = 10.0.40219.1 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "StardewSymphony", "StardewSymphony\StardewSymphony.csproj", "{697F7EC8-02C6-4F39-A917-EE45955CFFF9}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{54B5989E-0103-48BD-9882-B29FEC8777FF}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU diff --git a/GeneralMods/StardewSymphony/StardewSymphony/StardewSymphony/Class1.cs b/GeneralMods/StardewSymphony/StardewSymphony/StardewSymphony/Class1.cs index a26dedc9..0361520a 100644 --- a/GeneralMods/StardewSymphony/StardewSymphony/StardewSymphony/Class1.cs +++ b/GeneralMods/StardewSymphony/StardewSymphony/StardewSymphony/Class1.cs @@ -17,786 +17,7 @@ TODO: */ namespace Stardew_Music_Expansion_API { - //also known as the music_pack - public class Info_Class - { - public string wave_bank_name; - public string sound_bank_name; - public List spring_song_list; - public int num_of_spring_songs; - public List summer_song_list; - public int num_of_summer_songs; - public List fall_song_list; - public int num_of_fall_songs; - public List winter_song_list; - public int num_of_winter_songs; - - - public List spring_night_song_list; - public int num_of_spring_night_songs; - public List summer_night_song_list; - public int num_of_summer_night_songs; - public List fall_night_song_list; - public int num_of_fall_night_songs; - public List winter_night_song_list; - public int num_of_winter_night_songs; - - - public List spring_rain_song_list; - public int num_of_spring_rain_songs; - public List summer_rain_song_list; - public int num_of_summer_rain_songs; - public List fall_rain_song_list; - public int num_of_fall_rain_songs; - public List winter_snow_song_list; - public int num_of_winter_snow_songs; - - - public List spring_rain_night_song_list; - public int num_of_spring_rain_night_songs; - public List summer_rain_night_song_list; - public int num_of_summer_rain_night_songs; - public List fall_rain_night_song_list; - public int num_of_fall_rain_night_songs; - public List winter_snow_night_song_list; - public int num_of_winter_snow_night_songs; - - public List locational_cues; - public Dictionary> locational_songs; - - - public Dictionary> locational_rain_songs; - public Dictionary> locational_night_songs; - public Dictionary> locational_rain_night_songs; - - - public WaveBank newwave; - public SoundBank new_sound_bank; - public string path_loc; - - public Info_Class(string wb, string sb, string directory) - { - wave_bank_name = wb; - sound_bank_name = sb; - wave_bank_name += ".xwb"; - sound_bank_name += ".xsb"; - path_loc = directory; - - Console.WriteLine(Path.Combine(path_loc, wave_bank_name)); - Console.WriteLine(Path.Combine(path_loc, sound_bank_name)); - - - if (File.Exists(Path.Combine(path_loc, wave_bank_name))){ - newwave = new WaveBank(Game1.audioEngine, Path.Combine(path_loc, wave_bank_name)); //look for wave bank in sound_pack root directory. - } - if (File.Exists(Path.Combine(path_loc, sound_bank_name))) - { - new_sound_bank = new SoundBank(Game1.audioEngine, Path.Combine(path_loc, sound_bank_name)); //look for sound bank in sound_pack root directory. - } - - Game1.audioEngine.Update(); - - spring_song_list = new List(); - num_of_spring_songs = 0; - summer_song_list = new List(); - num_of_summer_songs = 0; - fall_song_list = new List(); - num_of_fall_songs = 0; - winter_song_list = new List(); - num_of_winter_songs = 0; - - spring_night_song_list = new List(); - num_of_spring_night_songs = 0; - summer_night_song_list = new List(); - num_of_summer_night_songs = 0; - fall_night_song_list = new List(); - num_of_fall_night_songs = 0; - winter_night_song_list = new List(); - num_of_winter_night_songs = 0; - - - //rainy initialization - spring_rain_song_list = new List(); - num_of_spring_rain_songs = 0; - summer_rain_song_list = new List(); - num_of_summer_rain_songs = 0; - fall_rain_song_list = new List(); - num_of_fall_rain_songs = 0; - winter_snow_song_list = new List(); - num_of_winter_snow_songs = 0; - - spring_rain_night_song_list = new List(); - num_of_spring_rain_night_songs = 0; - summer_rain_night_song_list = new List(); - num_of_summer_rain_night_songs = 0; - fall_rain_night_song_list = new List(); - num_of_fall_rain_night_songs = 0; - winter_snow_night_song_list = new List(); - num_of_winter_snow_night_songs = 0; - - locational_songs = new Dictionary>(); - locational_rain_songs = new Dictionary>(); - locational_night_songs = new Dictionary>(); - locational_rain_night_songs = new Dictionary>(); - } - - public void Music_Loader_Seasons(string conditional_name, Dictionary reference_dic) //reads in cue names from a text file and adds them to a specific list. Morphs with specific conditional name. Conditionals are hardcoded. - { - //loads the data to the variables upon loading the game. - var music_path = path_loc; - string mylocation = Path.Combine(music_path,"Music_Files","Seasons", conditional_name); - string mylocation2 = mylocation; - string mylocation3 = mylocation2 + ".txt"; - - - if (!File.Exists(mylocation3)) //check to make sure the file actually exists - { - - string error_message = "Stardew Symohony:The specified music file could not be found. That music file is " + conditional_name + " which should be located at " + mylocation3 +" but don't worry I'll create it for you right now. It's going to be blank though"; - Console.WriteLine(error_message); - - string[] mystring3 = new string[3];//seems legit. - mystring3[0] = conditional_name + " music file. This file holds all of the music that will play when there is no music for this game location, or simply put this is default music. Simply type the name of the song below the wall of equal signs."; - mystring3[1] = "========================================================================================"; - - File.WriteAllLines(mylocation3, mystring3); - } - - else - { - Console.WriteLine("Stardew Symphony:The music pack located at: " + path_loc + " is processing the song info for the game location: " + conditional_name); - //System.Threading.Thread.Sleep(1000); - // add in data here - - string[] readtext = File.ReadAllLines(mylocation3); - string cue_name; - int i = 2; - var lineCount = File.ReadLines(mylocation3).Count(); - - while (i < lineCount) //the ordering seems bad, but it works. - { - if (Convert.ToString(readtext[i]) == "") - { - // Monitor.Log("Blank space detected."); - break; - - } - if (Convert.ToString(readtext[i]) == "\n") - { - break; - - } - - - if (conditional_name == "spring") - { - cue_name = Convert.ToString(readtext[i]); - i++; - - - if (!reference_dic.Keys.Contains(cue_name)) - { - spring_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_spring_songs++; - reference_dic.Add(cue_name, this); - - } - else { - spring_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_spring_songs++; - } - // Monitor.Log(cue_name); - } - if (conditional_name == "summer") - { - cue_name = Convert.ToString(readtext[i]); - i++; - - if (!reference_dic.Keys.Contains(cue_name)) - { - summer_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_summer_songs++; - reference_dic.Add(cue_name, this); - - } - else { - summer_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_summer_songs++; - } - } - if (conditional_name == "fall") - { - cue_name = Convert.ToString(readtext[i]); - i++; - - if (!reference_dic.Keys.Contains(cue_name)) - { - fall_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_fall_songs++; - reference_dic.Add(cue_name, this); - - } - else { - fall_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_fall_songs++; - } - } - if (conditional_name == "winter") - { - cue_name = Convert.ToString(readtext[i]); - i++; - - if (!reference_dic.Keys.Contains(cue_name)) - { - winter_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_winter_songs++; - reference_dic.Add(cue_name, this); - - } - else { - winter_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_winter_songs++; - } - } - //add in other stuff here - //======================================================================================================================================================================================== - //NIGHTLY SEASONAL LOADERS - if (conditional_name == "spring_night") - { - cue_name = Convert.ToString(readtext[i]); - i++; - - - if (!reference_dic.Keys.Contains(cue_name)) - { - spring_night_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_spring_night_songs++; - reference_dic.Add(cue_name, this); - - } - else { - spring_night_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_spring_night_songs++; - } - // Monitor.Log(cue_name); - } - if (conditional_name == "summer_night") - { - cue_name = Convert.ToString(readtext[i]); - i++; - - if (!reference_dic.Keys.Contains(cue_name)) - { - summer_night_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_summer_night_songs++; - reference_dic.Add(cue_name, this); - - } - else { - summer_night_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_summer_night_songs++; - } - } - if (conditional_name == "fall_night") - { - cue_name = Convert.ToString(readtext[i]); - i++; - - if (!reference_dic.Keys.Contains(cue_name)) - { - fall_night_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_fall_night_songs++; - reference_dic.Add(cue_name, this); - - } - else { - fall_night_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_fall_night_songs++; - } - } - if (conditional_name == "winter_night") - { - cue_name = Convert.ToString(readtext[i]); - i++; - - if (!reference_dic.Keys.Contains(cue_name)) - { - winter_night_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_winter_night_songs++; - reference_dic.Add(cue_name, this); - - } - else { - winter_night_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_winter_night_songs++; - } - } - ////////NOW I"M ADDING THE PART THAT WILL READ IN RAINY SEASONAL SONGS FOR DAY AND NIGHT - if (conditional_name == "spring_rain") - { - cue_name = Convert.ToString(readtext[i]); - i++; - - - if (!reference_dic.Keys.Contains(cue_name)) - { - spring_rain_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_spring_rain_songs++; - reference_dic.Add(cue_name, this); - - } - else { - spring_rain_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_spring_rain_songs++; - } - // Monitor.Log(cue_name); - } - if (conditional_name == "summer_rain") - { - cue_name = Convert.ToString(readtext[i]); - i++; - - if (!reference_dic.Keys.Contains(cue_name)) - { - summer_rain_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_summer_rain_songs++; - reference_dic.Add(cue_name, this); - - } - else { - summer_rain_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_summer_rain_songs++; - } - } - if (conditional_name == "fall_rain") - { - cue_name = Convert.ToString(readtext[i]); - i++; - - if (!reference_dic.Keys.Contains(cue_name)) - { - fall_rain_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_fall_rain_songs++; - reference_dic.Add(cue_name, this); - - } - else { - fall_rain_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_fall_rain_songs++; - } - } - if (conditional_name == "winter_snow") - { - cue_name = Convert.ToString(readtext[i]); - i++; - - if (!reference_dic.Keys.Contains(cue_name)) - { - winter_snow_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_winter_snow_songs++; - reference_dic.Add(cue_name, this); - - } - else { - winter_snow_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_winter_snow_songs++; - } - } - //add in other stuff here - //======================================================================================================================================================================================== - //NIGHTLY SEASONAL RAIN LOADERS - if (conditional_name == "spring_rain_night") - { - cue_name = Convert.ToString(readtext[i]); - i++; - - - if (!reference_dic.Keys.Contains(cue_name)) - { - spring_rain_night_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_spring_rain_night_songs++; - reference_dic.Add(cue_name, this); - - } - else { - spring_rain_night_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_spring_rain_night_songs++; - } - // Monitor.Log(cue_name); - } - if (conditional_name == "summer_rain_night") - { - cue_name = Convert.ToString(readtext[i]); - i++; - - if (!reference_dic.Keys.Contains(cue_name)) - { - summer_rain_night_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_summer_rain_night_songs++; - reference_dic.Add(cue_name, this); - - } - else { - summer_rain_night_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_summer_rain_night_songs++; - } - } - if (conditional_name == "fall_rain_night") - { - cue_name = Convert.ToString(readtext[i]); - i++; - - if (!reference_dic.Keys.Contains(cue_name)) - { - fall_rain_night_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_fall_rain_night_songs++; - reference_dic.Add(cue_name, this); - - } - else { - fall_rain_night_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_fall_rain_night_songs++; - } - } - if (conditional_name == "winter_snow_night") - { - cue_name = Convert.ToString(readtext[i]); - i++; - - if (!reference_dic.Keys.Contains(cue_name)) - { - winter_snow_night_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_winter_snow_night_songs++; - reference_dic.Add(cue_name, this); - - } - else { - winter_snow_night_song_list.Add(new_sound_bank.GetCue(cue_name)); - - num_of_winter_snow_night_songs++; - } - } - } - if (i ==2) - { - // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 +" this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); - // System.Threading.Thread.Sleep(10); - return; - } - Console.WriteLine("StardewSymohony:The music pack located at: " + path_loc + " has successfully processed the song info for the game location: " + conditional_name); - } - } - public void Music_Loader_Locations(string conditional_name, Dictionary reference_dic) //reads in cue names from a text file and adds them to a specific list. Morphs with specific conditional name. Conditionals are hardcoded. - { - locational_cues = new List(); - //loads the data to the variables upon loading the game. - var music_path = path_loc; - string mylocation = Path.Combine(music_path, "Music_Files", "Locations", conditional_name); - string mylocation2 = mylocation; - string mylocation3 = mylocation2 + ".txt"; - if (!File.Exists(mylocation3)) //check to make sure the file actually exists - { - Console.WriteLine("StardewSymohony:A music list for the location " + conditional_name + " does not exist for the music pack located at " + mylocation3 + " which isn't a problem, I just thought I'd let you know since this may have been intentional. Also I'm creating it for you just incase. Cheers."); - - //Console.WriteLine("Creating the Config file"); - string[] mystring3 = new string[3];//seems legit. - mystring3[0] = conditional_name + " music file. This file holds all of the music that will play when at this game location. Simply type the name of the song below the wall of equal signs."; - mystring3[1] = "========================================================================================"; - - File.WriteAllLines(mylocation3, mystring3); - return; - } - - else - { - Console.WriteLine("Stardew Symphony:The music pack located at: " + path_loc + " is processing the song info for the game location: " + conditional_name); - //System.Threading.Thread.Sleep(1000); - string[] readtext = File.ReadAllLines(mylocation3); - string cue_name; - int i = 2; - var lineCount = File.ReadLines(mylocation3).Count(); - while (i < lineCount) //the ordering seems bad, but it works. - { - if (Convert.ToString(readtext[i]) == "") - { - break; - } - if (Convert.ToString(readtext[i]) == "\n") - { - break; - } - cue_name = Convert.ToString(readtext[i]); - i++; - if (!reference_dic.Keys.Contains(cue_name)) - { - locational_cues.Add(new_sound_bank.GetCue(cue_name)); - reference_dic.Add(cue_name, this); - } - else { - locational_cues.Add(new_sound_bank.GetCue(cue_name)); - } - } - if (i == 2) - { - // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 + " this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); - return; - } - if (locational_cues.Count > 0) { - locational_songs.Add(conditional_name, locational_cues); - Console.WriteLine("StardewSymhony:The music pack located at: " + path_loc + " has successfully processed the song info for the game location: " + conditional_name); - - return; - } - else - { - // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 + " this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); - return; - } - } - } - - public void Music_Loader_Locations_Rain(string conditional_name, Dictionary reference_dic) //reads in cue names from a text file and adds them to a specific list. Morphs with specific conditional name. Conditionals are hardcoded. - { - locational_cues = new List(); - var music_path = path_loc; - string mylocation = Path.Combine(music_path, "Music_Files", "Locations", conditional_name); - string mylocation2 = mylocation; - string mylocation3 = mylocation2 + ".txt"; - if (!File.Exists(mylocation3)) //check to make sure the file actually exists - { - Console.WriteLine("StardewSymphony:A music list for the location " + conditional_name + " does not exist for the music pack located at " + mylocation3 + " which isn't a problem, I just thought I'd let you know since this may have been intentional. Also I'm creating it for you just incase. Cheers."); - string[] mystring3 = new string[3];//seems legit. - mystring3[0] = conditional_name + " music file. This file holds all of the music that will play when at this game location. Simply type the name of the song below the wall of equal signs."; - mystring3[1] = "========================================================================================"; - File.WriteAllLines(mylocation3, mystring3); - return; - } - - else - { - // add in data here - string[] readtext = File.ReadAllLines(mylocation3); - string cue_name; - int i = 2; - var lineCount = File.ReadLines(mylocation3).Count(); - while (i < lineCount) //the ordering seems bad, but it works. - { - if (Convert.ToString(readtext[i]) == "") - { - // Monitor.Log("Blank space detected."); - break; - } - if (Convert.ToString(readtext[i]) == "\n") - { - // Monitor.Log("end line reached"); - break; - } - cue_name = Convert.ToString(readtext[i]); - i++; - if (!reference_dic.Keys.Contains(cue_name)) - { - locational_cues.Add(new_sound_bank.GetCue(cue_name)); - reference_dic.Add(cue_name, this); - } - else { - locational_cues.Add(new_sound_bank.GetCue(cue_name)); - } - } - if (i == 2) - { - // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 + " this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); - return; - } - if (locational_cues.Count > 0) - { - locational_rain_songs.Add(conditional_name, locational_cues); - Console.WriteLine("StardewSymohony:The music pack located at: " + path_loc + " has successfully processed the song info for the game location: " + conditional_name); - return; - } - else - { - // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 + " this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); - return; - } - } - } - public void Music_Loader_Locations_Night(string conditional_name, Dictionary reference_dic) //reads in cue names from a text file and adds them to a specific list. Morphs with specific conditional name. Conditionals are hardcoded. - { - locational_cues = new List(); - //loads the data to the variables upon loading the game. - var music_path = path_loc; - string mylocation = Path.Combine(music_path, "Music_Files", "Locations", conditional_name); - string mylocation2 = mylocation; - string mylocation3 = mylocation2 + ".txt"; - if (!File.Exists(mylocation3)) //check to make sure the file actually exists - { - Console.WriteLine("StardewSymphony:A music list for the location " + conditional_name + " does not exist for the music pack located at " + mylocation3 + " which isn't a problem, I just thought I'd let you know since this may have been intentional. Also I'm creating it for you just incase. Cheers."); - //Console.WriteLine("Creating the Config file"); - string[] mystring3 = new string[3];//seems legit. - mystring3[0] = conditional_name + " music file. This file holds all of the music that will play when at this game location. Simply type the name of the song below the wall of equal signs."; - mystring3[1] = "========================================================================================"; - File.WriteAllLines(mylocation3, mystring3); - return; - } - - else - { - // add in data here - string[] readtext = File.ReadAllLines(mylocation3); - string cue_name; - int i = 2; - var lineCount = File.ReadLines(mylocation3).Count(); - - while (i < lineCount) //the ordering seems bad, but it works. - { - if (Convert.ToString(readtext[i]) == "") - { - // Monitor.Log("Blank space detected."); - break; - - } - if (Convert.ToString(readtext[i]) == "\n") - { - //Monitor.Log("end line reached"); - break; - - } - cue_name = Convert.ToString(readtext[i]); - i++; - if (!reference_dic.Keys.Contains(cue_name)) - { - locational_cues.Add(new_sound_bank.GetCue(cue_name)); - reference_dic.Add(cue_name, this); - } - else { - locational_cues.Add(new_sound_bank.GetCue(cue_name)); - } - - } - if (i == 2) - { - // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 + " this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); - return; - } - if (locational_cues.Count > 0) - { - locational_night_songs.Add(conditional_name, locational_cues); - Console.WriteLine("StardewSymphonyLThe music pack located at: " + path_loc + " has successfully processed the song info for the game location: " + conditional_name); - return; - } - else - { - // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 + " this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); - return; - } - } - } - public void Music_Loader_Locations_Rain_Night(string conditional_name, Dictionary reference_dic) //reads in cue names from a text file and adds them to a specific list. Morphs with specific conditional name. Conditionals are hardcoded. - { - locational_cues = new List(); - var music_path = path_loc; - - string mylocation = Path.Combine(music_path, "Music_Files", "Locations", conditional_name); - string mylocation2 = mylocation; - string mylocation3 = mylocation2 + ".txt"; - if (!File.Exists(mylocation3)) //check to make sure the file actually exists - { - Console.WriteLine("StardewSymphony:A music list for the location " + conditional_name + " does not exist for the music pack located at " + mylocation3 + " which isn't a problem, I just thought I'd let you know since this may have been intentional. Also I'm creating it for you just incase. Cheers."); - string[] mystring3 = new string[3];//seems legit. - mystring3[0] = conditional_name + " music file. This file holds all of the music that will play when at this game location. Simply type the name of the song below the wall of equal signs."; - mystring3[1] = "========================================================================================"; - - File.WriteAllLines(mylocation3, mystring3); - - - return; - } - - else - { - //load in music stuff from the text files using the code below. - string[] readtext = File.ReadAllLines(mylocation3); - string cue_name; - int i = 2; - var lineCount = File.ReadLines(mylocation3).Count(); - - while (i < lineCount) //the ordering seems bad, but it works. - { - if (Convert.ToString(readtext[i]) == "") //if there is ever an empty line, stop processing the music file - { - break; - } - if (Convert.ToString(readtext[i]) == "\n") - { - break; - } - cue_name = Convert.ToString(readtext[i]); - i++; - if (!reference_dic.Keys.Contains(cue_name)) - { - locational_cues.Add(new_sound_bank.GetCue(cue_name)); - reference_dic.Add(cue_name, this); - } - else { - locational_cues.Add(new_sound_bank.GetCue(cue_name)); - } - } - if (i == 2) - { - // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 + " this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); - - return; - } - - if (locational_cues.Count > 0) - { - locational_rain_night_songs.Add(conditional_name, locational_cues); - - Console.WriteLine("StardewSymohony:The music pack located at: " + path_loc + " has successfully processed the song info for the game location: " + conditional_name); - return; - } - else - { - // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 + " this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); - return; - } - - } - } - - }; public class Class1 : Mod @@ -804,8 +25,8 @@ namespace Stardew_Music_Expansion_API public static string[] subdirectoryEntries = new string[9999999]; public static string[] fileEntries = new string[9999999]; - public static List master_list; //holds all of my WAVE banks and sound banks and their locations. - public static Dictionary song_wave_reference; //holds a list of all of the cue names that I ever add in. + public static List master_list; //holds all of my WAVE banks and sound banks and their locations. + public static Dictionary song_wave_reference; //holds a list of all of the cue names that I ever add in. public static List location_list; //holds all of the locations in SDV public static List temp_cue; //temporary list of songs from music pack @@ -834,7 +55,7 @@ namespace Stardew_Music_Expansion_API public bool once; - public static Info_Class current_info_class; + public static MusicManager current_info_class; public static bool farm_player; @@ -847,6 +68,9 @@ namespace Stardew_Music_Expansion_API StardewModdingAPI.Events.GameEvents.UpdateTick += GameEvents_UpdateTick; StardewModdingAPI.Events.LocationEvents.CurrentLocationChanged += LocationEvents_CurrentLocationChanged; once = true; + MusicHexProcessor.allsoundBanks = new List(); + MusicHexProcessor.allHexDumps = new List(); + MusicHexProcessor.allWaveBanks = new List(); } public void GameEvents_UpdateTick(object sender, EventArgs e) @@ -912,6 +136,8 @@ namespace Stardew_Music_Expansion_API if (game_loaded == false) return; night_time = Game1.getModeratelyDarkTime(); //not sure I even really use this... music_selector(); + + } public void PlayerEvents_LoadedGame(object sender, EventArgs e) { @@ -920,8 +146,8 @@ namespace Stardew_Music_Expansion_API music_packs = new Dictionary(); random = new Random(); - master_list = new List(); - song_wave_reference = new Dictionary(); + master_list = new List(); + song_wave_reference = new Dictionary(); location_list = new List(); temp_cue = new List(); no_music = true; @@ -929,10 +155,16 @@ namespace Stardew_Music_Expansion_API master_creator(); //creates the directory and files necessary to run the mod. Location_Grabber(); //grab all of the locations in the game and add them to a list; ProcessDirectory(master_path); - //master_list.Add(new Info_Class("Wave Bank2", "Sound Bank2", PathOnDisk)); Old static way that only alowed one external wave bank. Good thing I found a way around that. + //master_list.Add(new MusicManager("Wave Bank2", "Sound Bank2", PathOnDisk)); Old static way that only alowed one external wave bank. Good thing I found a way around that. aTimer.Enabled = false; night_time = Game1.getModeratelyDarkTime(); process_music_packs(); + + + MusicHexProcessor.processHex(); + + + Monitor.Log("READY TO GO"); game_loaded = true; music_selector(); @@ -1014,62 +246,6 @@ namespace Stardew_Music_Expansion_API } //works - /* - public static void Setup_Creator(string this_path) - { - - //write all of my info to a text file. - - string[] mystring3 = new string[10];//seems legit. - if (!File.Exists(this_path)) - { - Console.WriteLine("Creating the Config file"); - - mystring3[0] = "Config file. This file holds the wavebank info and soundbank info for your music pack."; - mystring3[1] = "========================================================================================"; - mystring3[2] = "Name of Wave Bank: This is the name of the Wave Bank where the songs are stored. EX) Wave Bank2.xwb"; - mystring3[3] = "your_wave_bank_here"; - mystring3[4] = "Name of Sound Bank: This is the name of the Wave Bank where the songs are stored. EX) Sound Bank2.xsb"; - mystring3[5] = "your_sound_bank_here"; - - - - File.WriteAllLines(this_path, mystring3); - - } - - else - { - - return; - } - } //works but not used - public static void Reference_Creator(string this_path) - { - - //Create the reference file incase it doesn't exist. - - string[] mystring3 = new string[10];//seems legit. - if (!File.Exists(this_path)) - { - Console.WriteLine("Creating the Config file"); - - mystring3[0] = "Reference Sheet: This holds the names of all of the songs in your music pack"; - mystring3[1] = "========================================================================================"; - - - - File.WriteAllLines(this_path, mystring3); - - } - - else - { - - return; - } - } //works but not used - */ public static void Info_Loader(string root_dir, string config_path) //reads in cue names from a text file and adds them to a specific list. Morphs with specific conditional name. { @@ -1086,7 +262,7 @@ namespace Stardew_Music_Expansion_API string[] readtext = File.ReadAllLines(config_path); string wave = Convert.ToString(readtext[3]); string sound = Convert.ToString(readtext[5]); - Info_Class lol = new Info_Class(wave,sound, root_dir); + MusicManager lol = new MusicManager(wave,sound, root_dir); lol.Music_Loader_Seasons("spring", song_wave_reference); //load all of the info files here. This is some deep magic I worked at 4 AM. I almost forgot how the heck this worked when I woke up. lol.Music_Loader_Seasons("summer", song_wave_reference); //load all of the info files here. This is some deep magic I worked at 4 AM. I almost forgot how the heck this worked when I woke up. lol.Music_Loader_Seasons("fall", song_wave_reference); //load all of the info files here. This is some deep magic I worked at 4 AM. I almost forgot how the heck this worked when I woke up. @@ -1123,12 +299,31 @@ namespace Stardew_Music_Expansion_API // Process the list of files found in the directory. fileEntries = Directory.GetFiles(targetDirectory); + foreach (var v in fileEntries) + { + string extension = Path.GetExtension(v); + // Log.AsyncC(extension); + if (extension == ".xsb") + { + Log.AsyncG(v); + MusicHexProcessor.allsoundBanks.Add(v); + } + if(extension == "xwb") + { + Log.AsyncC(v); + MusicHexProcessor.allWaveBanks.Add(v); + } + } + if (File.Exists(Path.Combine(targetDirectory, "Config.txt"))){ string temp = Path.Combine(targetDirectory, "Config.txt"); //Monitor.Log("YAY"); music_packs.Add(targetDirectory, temp); } + + + //do checking for spring, summer, night, etc. // Recurse into subdirectories of this directory. @@ -1232,7 +427,7 @@ namespace Stardew_Music_Expansion_API if (rainy == false && night_time == true) { music_player_night(); - if (no_music == true) + if (no_music == true) //if there is no music playing right now play some music. { music_player_location(); diff --git a/GeneralMods/StardewSymphony/StardewSymphony/StardewSymphony/MusicHexProcessor.cs b/GeneralMods/StardewSymphony/StardewSymphony/StardewSymphony/MusicHexProcessor.cs new file mode 100644 index 00000000..b10787ce --- /dev/null +++ b/GeneralMods/StardewSymphony/StardewSymphony/StardewSymphony/MusicHexProcessor.cs @@ -0,0 +1,201 @@ +using Microsoft.Xna.Framework.Audio; +using StardewModdingAPI; +using StardewValley; +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Stardew_Music_Expansion_API +{ + class MusicHexProcessor + { + public static List allsoundBanks; + public static List allHexDumps; + public static List allWaveBanks; + + public static void processHex() + { + int counter = 0; + string HexDumpContents = ""; + string rawName = ""; + string rawHexName = ""; + string cueName = ""; + List cleanCueNames = new List(); + foreach (var v in allsoundBanks) + { + cleanCueNames = new List(); + byte[] array = System.IO.File.ReadAllBytes(v); + // Log.AsyncC(HexDump(array)); + rawName=v.Substring(0,v.Length-4); + cueName = (rawName + "CueList.txt"); + if (File.Exists(cueName)) continue; + + HexDumpContents = HexDump(array); + + rawHexName = rawName + "HexDump.txt"; + File.WriteAllText(rawHexName, HexDumpContents); + // string fileName = (v.Remove(v.Length - 5, v.Length-1)); + //Log.AsyncM(fileName); + allHexDumps.Add(rawHexName); + + string[] readText = File.ReadAllLines(rawHexName); + string largeString=""; + foreach (var line in readText) + { + // Log.AsyncY(line); + try + { + string newString = ""; + for (int i = 62; i <= 77; i++) + { + newString += line[i]; + } + // Log.AsyncG(newString); + largeString += newString; + // Log.AsyncC(largeString); + //Log.AsyncG(line.Substring(63, 78)); + } + catch (Exception e) + { + // Log.AsyncY("WTF"); + // Log.AsyncO(line.Length); + } + } + string[] splits = largeString.Split('ÿ'); + string fix = ""; + foreach (string s in splits) + { + if (s == "") continue; + fix += s; + } + splits = fix.Split('.'); + + foreach (var split in splits) + { + if (split == "") continue; + // Log.AsyncM(split); + + try + { + + + + // Game1.playSound(split); + Game1.waveBank = Class1.master_list[counter].newwave; + Game1.soundBank = Class1.master_list[counter].new_sound_bank; + + + if (Game1.soundBank.GetCue(split) != null) + { + //Game1.playSound(split); + cleanCueNames.Add(split); + // Log.AsyncG("Sucessfully added " + split + " to the list of successful songs to play."); + } + + Class1.reset(); + + } + catch(Exception e) + { + // Log.AsyncR(e); + } + + } + + cueName = (rawName + "CueList.txt"); + // Log.AsyncM(cueName); + cleanCueNames.Sort(); + File.WriteAllLines(cueName, cleanCueNames); + counter++; + } + + } + + + + + + + + + public static string HexDump(byte[] bytes, int bytesPerLine = 16) + { + if (bytes == null) return ""; + int bytesLength = bytes.Length; + + char[] HexChars = "0123456789ABCDEF".ToCharArray(); + + int firstHexColumn = + 8 // 8 characters for the address + + 3; // 3 spaces + + int firstCharColumn = firstHexColumn + + bytesPerLine * 3 // - 2 digit for the hexadecimal value and 1 space + + (bytesPerLine - 1) / 8 // - 1 extra space every 8 characters from the 9th + + 2; // 2 spaces + + int lineLength = firstCharColumn + + bytesPerLine // - characters to show the ascii value + + Environment.NewLine.Length; // Carriage return and line feed (should normally be 2) + + char[] line = (new String(' ', lineLength - 2) + Environment.NewLine).ToCharArray(); + int expectedLines = (bytesLength + bytesPerLine - 1) / bytesPerLine; + StringBuilder result = new StringBuilder(expectedLines * lineLength); + + for (int i = 0; i < bytesLength; i += bytesPerLine) + { + line[0] = HexChars[(i >> 28) & 0xF]; + line[1] = HexChars[(i >> 24) & 0xF]; + line[2] = HexChars[(i >> 20) & 0xF]; + line[3] = HexChars[(i >> 16) & 0xF]; + line[4] = HexChars[(i >> 12) & 0xF]; + line[5] = HexChars[(i >> 8) & 0xF]; + line[6] = HexChars[(i >> 4) & 0xF]; + line[7] = HexChars[(i >> 0) & 0xF]; + + int hexColumn = firstHexColumn; + int charColumn = firstCharColumn; + + for (int j = 0; j < bytesPerLine; j++) + { + if (j > 0 && (j & 7) == 0) hexColumn++; + if (i + j >= bytesLength) + { + line[hexColumn] = ' '; + line[hexColumn + 1] = ' '; + line[charColumn] = ' '; + } + else + { + byte b = bytes[i + j]; + line[hexColumn] = HexChars[(b >> 4) & 0xF]; + line[hexColumn + 1] = HexChars[b & 0xF]; + line[charColumn] = asciiSymbol(b); + } + hexColumn += 3; + charColumn++; + } + result.Append(line); + } + return result.ToString(); + } + static char asciiSymbol(byte val) + { + if (val < 32) return '.'; // Non-printable ASCII + if (val < 127) return (char)val; // Normal ASCII + // Handle the hole in Latin-1 + if (val == 127) return '.'; + if (val < 0x90) return "€.‚ƒ„…†‡ˆ‰Š‹Œ.Ž."[val & 0xF]; + if (val < 0xA0) return ".‘’“”•–—˜™š›œ.žŸ"[val & 0xF]; + if (val == 0xAD) return '.'; // Soft hyphen: this symbol is zero-width even in monospace fonts + return (char)val; // Normal Latin-1 + } + + + + +} +} diff --git a/GeneralMods/StardewSymphony/StardewSymphony/StardewSymphony/MusicManager.cs b/GeneralMods/StardewSymphony/StardewSymphony/StardewSymphony/MusicManager.cs new file mode 100644 index 00000000..8d5b1b3f --- /dev/null +++ b/GeneralMods/StardewSymphony/StardewSymphony/StardewSymphony/MusicManager.cs @@ -0,0 +1,814 @@ +using Microsoft.Xna.Framework.Audio; +using StardewValley; +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Stardew_Music_Expansion_API +{ + //also known as the music_pack + public class MusicManager + { + public string wave_bank_name; + public string sound_bank_name; + + public List spring_song_list; + public int num_of_spring_songs; + public List summer_song_list; + public int num_of_summer_songs; + public List fall_song_list; + public int num_of_fall_songs; + public List winter_song_list; + public int num_of_winter_songs; + + + public List spring_night_song_list; + public int num_of_spring_night_songs; + public List summer_night_song_list; + public int num_of_summer_night_songs; + public List fall_night_song_list; + public int num_of_fall_night_songs; + public List winter_night_song_list; + public int num_of_winter_night_songs; + + + public List spring_rain_song_list; + public int num_of_spring_rain_songs; + public List summer_rain_song_list; + public int num_of_summer_rain_songs; + public List fall_rain_song_list; + public int num_of_fall_rain_songs; + public List winter_snow_song_list; + public int num_of_winter_snow_songs; + + + public List spring_rain_night_song_list; + public int num_of_spring_rain_night_songs; + public List summer_rain_night_song_list; + public int num_of_summer_rain_night_songs; + public List fall_rain_night_song_list; + public int num_of_fall_rain_night_songs; + public List winter_snow_night_song_list; + public int num_of_winter_snow_night_songs; + + public List locational_cues; + public Dictionary> locational_songs; + + + public Dictionary> locational_rain_songs; + public Dictionary> locational_night_songs; + public Dictionary> locational_rain_night_songs; + + + public WaveBank newwave; + public SoundBank new_sound_bank; + public string path_loc; + + public MusicManager(string wb, string sb, string directory) + { + wave_bank_name = wb; + sound_bank_name = sb; + wave_bank_name += ".xwb"; + sound_bank_name += ".xsb"; + path_loc = directory; + + Console.WriteLine(Path.Combine(path_loc, wave_bank_name)); + Console.WriteLine(Path.Combine(path_loc, sound_bank_name)); + + + if (File.Exists(Path.Combine(path_loc, wave_bank_name))) + { + newwave = new WaveBank(Game1.audioEngine, Path.Combine(path_loc, wave_bank_name)); //look for wave bank in sound_pack root directory. + } + if (File.Exists(Path.Combine(path_loc, sound_bank_name))) + { + new_sound_bank = new SoundBank(Game1.audioEngine, Path.Combine(path_loc, sound_bank_name)); //look for sound bank in sound_pack root directory. + } + + Game1.audioEngine.Update(); + + spring_song_list = new List(); + num_of_spring_songs = 0; + summer_song_list = new List(); + num_of_summer_songs = 0; + fall_song_list = new List(); + num_of_fall_songs = 0; + winter_song_list = new List(); + num_of_winter_songs = 0; + + spring_night_song_list = new List(); + num_of_spring_night_songs = 0; + summer_night_song_list = new List(); + num_of_summer_night_songs = 0; + fall_night_song_list = new List(); + num_of_fall_night_songs = 0; + winter_night_song_list = new List(); + num_of_winter_night_songs = 0; + + + //rainy initialization + spring_rain_song_list = new List(); + num_of_spring_rain_songs = 0; + summer_rain_song_list = new List(); + num_of_summer_rain_songs = 0; + fall_rain_song_list = new List(); + num_of_fall_rain_songs = 0; + winter_snow_song_list = new List(); + num_of_winter_snow_songs = 0; + + spring_rain_night_song_list = new List(); + num_of_spring_rain_night_songs = 0; + summer_rain_night_song_list = new List(); + num_of_summer_rain_night_songs = 0; + fall_rain_night_song_list = new List(); + num_of_fall_rain_night_songs = 0; + winter_snow_night_song_list = new List(); + num_of_winter_snow_night_songs = 0; + + locational_songs = new Dictionary>(); + locational_rain_songs = new Dictionary>(); + locational_night_songs = new Dictionary>(); + locational_rain_night_songs = new Dictionary>(); + } + + public void Music_Loader_Seasons(string conditional_name, Dictionary reference_dic) //reads in cue names from a text file and adds them to a specific list. Morphs with specific conditional name. Conditionals are hardcoded. + { + //loads the data to the variables upon loading the game. + var music_path = path_loc; + string mylocation = Path.Combine(music_path, "Music_Files", "Seasons", conditional_name); + string mylocation2 = mylocation; + string mylocation3 = mylocation2 + ".txt"; + + + if (!File.Exists(mylocation3)) //check to make sure the file actually exists + { + + string error_message = "Stardew Symohony:The specified music file could not be found. That music file is " + conditional_name + " which should be located at " + mylocation3 + " but don't worry I'll create it for you right now. It's going to be blank though"; + Console.WriteLine(error_message); + + string[] mystring3 = new string[3];//seems legit. + mystring3[0] = conditional_name + " music file. This file holds all of the music that will play when there is no music for this game location, or simply put this is default music. Simply type the name of the song below the wall of equal signs."; + mystring3[1] = "========================================================================================"; + + File.WriteAllLines(mylocation3, mystring3); + } + + else + { + Console.WriteLine("Stardew Symphony:The music pack located at: " + path_loc + " is processing the song info for the game location: " + conditional_name); + //System.Threading.Thread.Sleep(1000); + // add in data here + + string[] readtext = File.ReadAllLines(mylocation3); + string cue_name; + int i = 2; + var lineCount = File.ReadLines(mylocation3).Count(); + + while (i < lineCount) //the ordering seems bad, but it works. + { + if (Convert.ToString(readtext[i]) == "") + { + // Monitor.Log("Blank space detected."); + break; + + } + if (Convert.ToString(readtext[i]) == "\n") + { + break; + + } + + + if (conditional_name == "spring") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + + if (!reference_dic.Keys.Contains(cue_name)) + { + spring_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_spring_songs++; + reference_dic.Add(cue_name, this); + + } + else + { + spring_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_spring_songs++; + } + // Monitor.Log(cue_name); + } + if (conditional_name == "summer") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + if (!reference_dic.Keys.Contains(cue_name)) + { + summer_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_summer_songs++; + reference_dic.Add(cue_name, this); + + } + else + { + summer_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_summer_songs++; + } + } + if (conditional_name == "fall") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + if (!reference_dic.Keys.Contains(cue_name)) + { + fall_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_fall_songs++; + reference_dic.Add(cue_name, this); + + } + else + { + fall_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_fall_songs++; + } + } + if (conditional_name == "winter") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + if (!reference_dic.Keys.Contains(cue_name)) + { + winter_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_winter_songs++; + reference_dic.Add(cue_name, this); + + } + else + { + winter_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_winter_songs++; + } + } + //add in other stuff here + //======================================================================================================================================================================================== + //NIGHTLY SEASONAL LOADERS + if (conditional_name == "spring_night") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + + if (!reference_dic.Keys.Contains(cue_name)) + { + spring_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_spring_night_songs++; + reference_dic.Add(cue_name, this); + + } + else + { + spring_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_spring_night_songs++; + } + // Monitor.Log(cue_name); + } + if (conditional_name == "summer_night") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + if (!reference_dic.Keys.Contains(cue_name)) + { + summer_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_summer_night_songs++; + reference_dic.Add(cue_name, this); + + } + else + { + summer_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_summer_night_songs++; + } + } + if (conditional_name == "fall_night") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + if (!reference_dic.Keys.Contains(cue_name)) + { + fall_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_fall_night_songs++; + reference_dic.Add(cue_name, this); + + } + else + { + fall_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_fall_night_songs++; + } + } + if (conditional_name == "winter_night") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + if (!reference_dic.Keys.Contains(cue_name)) + { + winter_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_winter_night_songs++; + reference_dic.Add(cue_name, this); + + } + else + { + winter_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_winter_night_songs++; + } + } + ////////NOW I"M ADDING THE PART THAT WILL READ IN RAINY SEASONAL SONGS FOR DAY AND NIGHT + if (conditional_name == "spring_rain") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + + if (!reference_dic.Keys.Contains(cue_name)) + { + spring_rain_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_spring_rain_songs++; + reference_dic.Add(cue_name, this); + + } + else + { + spring_rain_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_spring_rain_songs++; + } + // Monitor.Log(cue_name); + } + if (conditional_name == "summer_rain") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + if (!reference_dic.Keys.Contains(cue_name)) + { + summer_rain_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_summer_rain_songs++; + reference_dic.Add(cue_name, this); + + } + else + { + summer_rain_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_summer_rain_songs++; + } + } + if (conditional_name == "fall_rain") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + if (!reference_dic.Keys.Contains(cue_name)) + { + fall_rain_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_fall_rain_songs++; + reference_dic.Add(cue_name, this); + + } + else + { + fall_rain_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_fall_rain_songs++; + } + } + if (conditional_name == "winter_snow") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + if (!reference_dic.Keys.Contains(cue_name)) + { + winter_snow_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_winter_snow_songs++; + reference_dic.Add(cue_name, this); + + } + else + { + winter_snow_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_winter_snow_songs++; + } + } + //add in other stuff here + //======================================================================================================================================================================================== + //NIGHTLY SEASONAL RAIN LOADERS + if (conditional_name == "spring_rain_night") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + + if (!reference_dic.Keys.Contains(cue_name)) + { + spring_rain_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_spring_rain_night_songs++; + reference_dic.Add(cue_name, this); + + } + else + { + spring_rain_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_spring_rain_night_songs++; + } + // Monitor.Log(cue_name); + } + if (conditional_name == "summer_rain_night") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + if (!reference_dic.Keys.Contains(cue_name)) + { + summer_rain_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_summer_rain_night_songs++; + reference_dic.Add(cue_name, this); + + } + else + { + summer_rain_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_summer_rain_night_songs++; + } + } + if (conditional_name == "fall_rain_night") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + if (!reference_dic.Keys.Contains(cue_name)) + { + fall_rain_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_fall_rain_night_songs++; + reference_dic.Add(cue_name, this); + + } + else + { + fall_rain_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_fall_rain_night_songs++; + } + } + if (conditional_name == "winter_snow_night") + { + cue_name = Convert.ToString(readtext[i]); + i++; + + if (!reference_dic.Keys.Contains(cue_name)) + { + winter_snow_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_winter_snow_night_songs++; + reference_dic.Add(cue_name, this); + + } + else + { + winter_snow_night_song_list.Add(new_sound_bank.GetCue(cue_name)); + + num_of_winter_snow_night_songs++; + } + } + } + if (i == 2) + { + // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 +" this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); + // System.Threading.Thread.Sleep(10); + return; + } + Console.WriteLine("StardewSymohony:The music pack located at: " + path_loc + " has successfully processed the song info for the game location: " + conditional_name); + } + } + public void Music_Loader_Locations(string conditional_name, Dictionary reference_dic) //reads in cue names from a text file and adds them to a specific list. Morphs with specific conditional name. Conditionals are hardcoded. + { + locational_cues = new List(); + //loads the data to the variables upon loading the game. + var music_path = path_loc; + string mylocation = Path.Combine(music_path, "Music_Files", "Locations", conditional_name); + string mylocation2 = mylocation; + string mylocation3 = mylocation2 + ".txt"; + if (!File.Exists(mylocation3)) //check to make sure the file actually exists + { + Console.WriteLine("StardewSymohony:A music list for the location " + conditional_name + " does not exist for the music pack located at " + mylocation3 + " which isn't a problem, I just thought I'd let you know since this may have been intentional. Also I'm creating it for you just incase. Cheers."); + + //Console.WriteLine("Creating the Config file"); + string[] mystring3 = new string[3];//seems legit. + mystring3[0] = conditional_name + " music file. This file holds all of the music that will play when at this game location. Simply type the name of the song below the wall of equal signs."; + mystring3[1] = "========================================================================================"; + + File.WriteAllLines(mylocation3, mystring3); + return; + } + + else + { + Console.WriteLine("Stardew Symphony:The music pack located at: " + path_loc + " is processing the song info for the game location: " + conditional_name); + //System.Threading.Thread.Sleep(1000); + string[] readtext = File.ReadAllLines(mylocation3); + string cue_name; + int i = 2; + var lineCount = File.ReadLines(mylocation3).Count(); + while (i < lineCount) //the ordering seems bad, but it works. + { + if (Convert.ToString(readtext[i]) == "") + { + break; + } + if (Convert.ToString(readtext[i]) == "\n") + { + break; + } + cue_name = Convert.ToString(readtext[i]); + i++; + if (!reference_dic.Keys.Contains(cue_name)) + { + locational_cues.Add(new_sound_bank.GetCue(cue_name)); + reference_dic.Add(cue_name, this); + } + else + { + locational_cues.Add(new_sound_bank.GetCue(cue_name)); + } + } + if (i == 2) + { + // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 + " this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); + return; + } + if (locational_cues.Count > 0) + { + locational_songs.Add(conditional_name, locational_cues); + Console.WriteLine("StardewSymhony:The music pack located at: " + path_loc + " has successfully processed the song info for the game location: " + conditional_name); + + return; + } + else + { + // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 + " this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); + return; + } + } + } + + public void Music_Loader_Locations_Rain(string conditional_name, Dictionary reference_dic) //reads in cue names from a text file and adds them to a specific list. Morphs with specific conditional name. Conditionals are hardcoded. + { + locational_cues = new List(); + var music_path = path_loc; + string mylocation = Path.Combine(music_path, "Music_Files", "Locations", conditional_name); + string mylocation2 = mylocation; + string mylocation3 = mylocation2 + ".txt"; + if (!File.Exists(mylocation3)) //check to make sure the file actually exists + { + Console.WriteLine("StardewSymphony:A music list for the location " + conditional_name + " does not exist for the music pack located at " + mylocation3 + " which isn't a problem, I just thought I'd let you know since this may have been intentional. Also I'm creating it for you just incase. Cheers."); + string[] mystring3 = new string[3];//seems legit. + mystring3[0] = conditional_name + " music file. This file holds all of the music that will play when at this game location. Simply type the name of the song below the wall of equal signs."; + mystring3[1] = "========================================================================================"; + File.WriteAllLines(mylocation3, mystring3); + return; + } + + else + { + // add in data here + string[] readtext = File.ReadAllLines(mylocation3); + string cue_name; + int i = 2; + var lineCount = File.ReadLines(mylocation3).Count(); + while (i < lineCount) //the ordering seems bad, but it works. + { + if (Convert.ToString(readtext[i]) == "") + { + // Monitor.Log("Blank space detected."); + break; + } + if (Convert.ToString(readtext[i]) == "\n") + { + // Monitor.Log("end line reached"); + break; + } + cue_name = Convert.ToString(readtext[i]); + i++; + if (!reference_dic.Keys.Contains(cue_name)) + { + locational_cues.Add(new_sound_bank.GetCue(cue_name)); + reference_dic.Add(cue_name, this); + } + else + { + locational_cues.Add(new_sound_bank.GetCue(cue_name)); + } + } + if (i == 2) + { + // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 + " this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); + return; + } + if (locational_cues.Count > 0) + { + locational_rain_songs.Add(conditional_name, locational_cues); + Console.WriteLine("StardewSymohony:The music pack located at: " + path_loc + " has successfully processed the song info for the game location: " + conditional_name); + return; + } + else + { + // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 + " this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); + return; + } + } + } + public void Music_Loader_Locations_Night(string conditional_name, Dictionary reference_dic) //reads in cue names from a text file and adds them to a specific list. Morphs with specific conditional name. Conditionals are hardcoded. + { + locational_cues = new List(); + //loads the data to the variables upon loading the game. + var music_path = path_loc; + string mylocation = Path.Combine(music_path, "Music_Files", "Locations", conditional_name); + string mylocation2 = mylocation; + string mylocation3 = mylocation2 + ".txt"; + if (!File.Exists(mylocation3)) //check to make sure the file actually exists + { + Console.WriteLine("StardewSymphony:A music list for the location " + conditional_name + " does not exist for the music pack located at " + mylocation3 + " which isn't a problem, I just thought I'd let you know since this may have been intentional. Also I'm creating it for you just incase. Cheers."); + //Console.WriteLine("Creating the Config file"); + string[] mystring3 = new string[3];//seems legit. + mystring3[0] = conditional_name + " music file. This file holds all of the music that will play when at this game location. Simply type the name of the song below the wall of equal signs."; + mystring3[1] = "========================================================================================"; + File.WriteAllLines(mylocation3, mystring3); + return; + } + + else + { + // add in data here + string[] readtext = File.ReadAllLines(mylocation3); + string cue_name; + int i = 2; + var lineCount = File.ReadLines(mylocation3).Count(); + + while (i < lineCount) //the ordering seems bad, but it works. + { + if (Convert.ToString(readtext[i]) == "") + { + // Monitor.Log("Blank space detected."); + break; + + } + if (Convert.ToString(readtext[i]) == "\n") + { + //Monitor.Log("end line reached"); + break; + + } + cue_name = Convert.ToString(readtext[i]); + i++; + if (!reference_dic.Keys.Contains(cue_name)) + { + locational_cues.Add(new_sound_bank.GetCue(cue_name)); + reference_dic.Add(cue_name, this); + } + else + { + locational_cues.Add(new_sound_bank.GetCue(cue_name)); + } + + } + if (i == 2) + { + // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 + " this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); + return; + } + if (locational_cues.Count > 0) + { + locational_night_songs.Add(conditional_name, locational_cues); + Console.WriteLine("StardewSymphonyLThe music pack located at: " + path_loc + " has successfully processed the song info for the game location: " + conditional_name); + return; + } + else + { + // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 + " this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); + return; + } + } + } + public void Music_Loader_Locations_Rain_Night(string conditional_name, Dictionary reference_dic) //reads in cue names from a text file and adds them to a specific list. Morphs with specific conditional name. Conditionals are hardcoded. + { + locational_cues = new List(); + var music_path = path_loc; + + string mylocation = Path.Combine(music_path, "Music_Files", "Locations", conditional_name); + string mylocation2 = mylocation; + string mylocation3 = mylocation2 + ".txt"; + if (!File.Exists(mylocation3)) //check to make sure the file actually exists + { + Console.WriteLine("StardewSymphony:A music list for the location " + conditional_name + " does not exist for the music pack located at " + mylocation3 + " which isn't a problem, I just thought I'd let you know since this may have been intentional. Also I'm creating it for you just incase. Cheers."); + string[] mystring3 = new string[3];//seems legit. + mystring3[0] = conditional_name + " music file. This file holds all of the music that will play when at this game location. Simply type the name of the song below the wall of equal signs."; + mystring3[1] = "========================================================================================"; + + File.WriteAllLines(mylocation3, mystring3); + + + return; + } + + else + { + //load in music stuff from the text files using the code below. + string[] readtext = File.ReadAllLines(mylocation3); + string cue_name; + int i = 2; + var lineCount = File.ReadLines(mylocation3).Count(); + + while (i < lineCount) //the ordering seems bad, but it works. + { + if (Convert.ToString(readtext[i]) == "") //if there is ever an empty line, stop processing the music file + { + break; + } + if (Convert.ToString(readtext[i]) == "\n") + { + break; + } + cue_name = Convert.ToString(readtext[i]); + i++; + if (!reference_dic.Keys.Contains(cue_name)) + { + locational_cues.Add(new_sound_bank.GetCue(cue_name)); + reference_dic.Add(cue_name, this); + } + else + { + locational_cues.Add(new_sound_bank.GetCue(cue_name)); + } + } + if (i == 2) + { + // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 + " this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); + + return; + } + + if (locational_cues.Count > 0) + { + locational_rain_night_songs.Add(conditional_name, locational_cues); + + Console.WriteLine("StardewSymohony:The music pack located at: " + path_loc + " has successfully processed the song info for the game location: " + conditional_name); + return; + } + else + { + // Monitor.Log("Just thought that I'd let you know that there are no songs associated with the music file located at " + mylocation3 + " this may be intentional, but just incase you were wanted music, now you knew which ones were blank."); + return; + } + + } + } + + }; +} diff --git a/GeneralMods/StardewSymphony/StardewSymphony/StardewSymphony/StardewSymphony.csproj b/GeneralMods/StardewSymphony/StardewSymphony/StardewSymphony/StardewSymphony.csproj index 1a8dfda6..8b15e46e 100644 --- a/GeneralMods/StardewSymphony/StardewSymphony/StardewSymphony/StardewSymphony.csproj +++ b/GeneralMods/StardewSymphony/StardewSymphony/StardewSymphony/StardewSymphony.csproj @@ -42,6 +42,8 @@ + + @@ -60,12 +62,12 @@ --> - - $(GamePath)\Mods\$(TargetName) - - - - - - + + $(GamePath)\Mods\$(TargetName) + + + + + + \ No newline at end of file diff --git a/GeneralMods/StardewSymphony/StardewSymphony/StardewSymphony/bin/Debug/Stardew_Symphony.dll b/GeneralMods/StardewSymphony/StardewSymphony/StardewSymphony/bin/Debug/Stardew_Symphony.dll index 58b7da90..91f2e338 100644 Binary files a/GeneralMods/StardewSymphony/StardewSymphony/StardewSymphony/bin/Debug/Stardew_Symphony.dll and b/GeneralMods/StardewSymphony/StardewSymphony/StardewSymphony/bin/Debug/Stardew_Symphony.dll differ diff --git a/GeneralMods/StardewSymphony/StardewSymphony/StardewSymphony/obj/Debug/Stardew_Symphony.dll b/GeneralMods/StardewSymphony/StardewSymphony/StardewSymphony/obj/Debug/Stardew_Symphony.dll index 58b7da90..91f2e338 100644 Binary files a/GeneralMods/StardewSymphony/StardewSymphony/StardewSymphony/obj/Debug/Stardew_Symphony.dll and b/GeneralMods/StardewSymphony/StardewSymphony/StardewSymphony/obj/Debug/Stardew_Symphony.dll differ diff --git a/GeneralMods/Stardew_Save_Backup/Stardew_Save_Backup/Stardew_Save_Backup/bin/Debug/Stardew_Save_Backup.dll b/GeneralMods/Stardew_Save_Backup/Stardew_Save_Backup/Stardew_Save_Backup/bin/Debug/Stardew_Save_Backup.dll index ded62f74..bdfb22e8 100644 Binary files a/GeneralMods/Stardew_Save_Backup/Stardew_Save_Backup/Stardew_Save_Backup/bin/Debug/Stardew_Save_Backup.dll and b/GeneralMods/Stardew_Save_Backup/Stardew_Save_Backup/Stardew_Save_Backup/bin/Debug/Stardew_Save_Backup.dll differ diff --git a/GeneralMods/Stardew_Save_Backup/Stardew_Save_Backup/Stardew_Save_Backup/obj/Debug/Stardew_Save_Backup.dll b/GeneralMods/Stardew_Save_Backup/Stardew_Save_Backup/Stardew_Save_Backup/obj/Debug/Stardew_Save_Backup.dll index ded62f74..bdfb22e8 100644 Binary files a/GeneralMods/Stardew_Save_Backup/Stardew_Save_Backup/Stardew_Save_Backup/obj/Debug/Stardew_Save_Backup.dll and b/GeneralMods/Stardew_Save_Backup/Stardew_Save_Backup/Stardew_Save_Backup/obj/Debug/Stardew_Save_Backup.dll differ diff --git a/GeneralMods/TimeFreeze/TimeFreeze/TimeFreeze/Class1.cs b/GeneralMods/TimeFreeze/TimeFreeze/TimeFreeze/Class1.cs index c1a7b66e..233f24b8 100644 --- a/GeneralMods/TimeFreeze/TimeFreeze/TimeFreeze/Class1.cs +++ b/GeneralMods/TimeFreeze/TimeFreeze/TimeFreeze/Class1.cs @@ -16,9 +16,14 @@ namespace TimeFreeze public override void Entry(IModHelper helper) { StardewModdingAPI.Events.GameEvents.UpdateTick += GameEvents_UpdateTick; + StardewModdingAPI.Events.LocationEvents.CurrentLocationChanged += LocationEvents_CurrentLocationChanged; DataLoader(); //used to load/write to the config. } + private void LocationEvents_CurrentLocationChanged(object sender, StardewModdingAPI.Events.EventArgsCurrentLocationChanged e) + { + // Game1.showGlobalMessage(Game1.player.currentLocation.name); + } private void GameEvents_UpdateTick(object sender, EventArgs e) { @@ -32,14 +37,20 @@ namespace TimeFreeze if ((Game1.player.swimming == false && (Game1.player.currentLocation) as StardewValley.Locations.BathHousePool == null) && Game1.player.currentLocation.isOutdoors == false) { - Game1.gameTimeInterval = 0; + if (!doesTimePassHere()) + { + Game1.gameTimeInterval = 0; + } } } else { if (Game1.player.swimming == false && Game1.player.currentLocation.isOutdoors == false) { - Game1.gameTimeInterval = 0; + if (!doesTimePassHere()) + { + Game1.gameTimeInterval = 0; + } } } } @@ -47,12 +58,21 @@ namespace TimeFreeze { if (Game1.player.currentLocation.isOutdoors == false) { - Game1.gameTimeInterval = 0; + if (!doesTimePassHere()) + { + Game1.gameTimeInterval = 0; + } } } } + public bool doesTimePassHere() + { + if (Game1.player.currentLocation.name == "Mine" || Game1.player.currentLocation.name == "SkullCave" || Game1.player.currentLocation.name=="UndergroundMine") return true; + return false; + } + void MyWritter() { string mylocation = Path.Combine(Helper.DirectoryPath, "ModConfig.txt"); diff --git a/GeneralMods/TimeFreeze/TimeFreeze/TimeFreeze/bin/Debug/TimeFreeze.dll b/GeneralMods/TimeFreeze/TimeFreeze/TimeFreeze/bin/Debug/TimeFreeze.dll index 8bc60710..1a2dc418 100644 Binary files a/GeneralMods/TimeFreeze/TimeFreeze/TimeFreeze/bin/Debug/TimeFreeze.dll and b/GeneralMods/TimeFreeze/TimeFreeze/TimeFreeze/bin/Debug/TimeFreeze.dll differ diff --git a/GeneralMods/TimeFreeze/TimeFreeze/TimeFreeze/obj/Debug/TimeFreeze.dll b/GeneralMods/TimeFreeze/TimeFreeze/TimeFreeze/obj/Debug/TimeFreeze.dll index 8bc60710..1a2dc418 100644 Binary files a/GeneralMods/TimeFreeze/TimeFreeze/TimeFreeze/obj/Debug/TimeFreeze.dll and b/GeneralMods/TimeFreeze/TimeFreeze/TimeFreeze/obj/Debug/TimeFreeze.dll differ