diff --git a/src/TEdit/Properties/Language.Designer.cs b/src/TEdit/Properties/Language.Designer.cs index a9738e27..03b6f488 100644 --- a/src/TEdit/Properties/Language.Designer.cs +++ b/src/TEdit/Properties/Language.Designer.cs @@ -1942,6 +1942,15 @@ public static string tool_wp_adamantite { } } + /// + /// Looks up a localized string similar to After Party of Doom. + /// + public static string tool_wp_afterpartyofdoom { + get { + return ResourceManager.GetString("tool_wp_afterpartyofdoom", resourceCulture); + } + } + /// /// Looks up a localized string similar to Altars Smashed. /// @@ -2617,6 +2626,51 @@ public static string tool_wp_journeysend { } } + /// + /// Looks up a localized string similar to Lantern Night. + /// + public static string tool_wp_lanternnight { + get { + return ResourceManager.GetString("tool_wp_lanternnight", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Lantern Night Cooldown. + /// + public static string tool_wp_lanternnight_cooldown { + get { + return ResourceManager.GetString("tool_wp_lanternnight_cooldown", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Lantern Night Genuine. + /// + public static string tool_wp_lanternnight_genuine { + get { + return ResourceManager.GetString("tool_wp_lanternnight_genuine", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Lantern Night Manual. + /// + public static string tool_wp_lanternnight_manual { + get { + return ResourceManager.GetString("tool_wp_lanternnight_manual", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Lantern Night Next Is Genuine. + /// + public static string tool_wp_lanternnight_nextgenuine { + get { + return ResourceManager.GetString("tool_wp_lanternnight_nextgenuine", resourceCulture); + } + } + /// /// Looks up a localized string similar to Meteor. /// diff --git a/src/TEdit/Properties/Language.ar-BH.resx b/src/TEdit/Properties/Language.ar-BH.resx index 5a1a7e20..47d98bc3 100644 --- a/src/TEdit/Properties/Language.ar-BH.resx +++ b/src/TEdit/Properties/Language.ar-BH.resx @@ -1251,4 +1251,22 @@ لا الفخاخ + + بعد حفلة الموت + + + فانوس ليلة التبريد + + + ليلة الفانوس + + + ليلة فانوس حقيقية + + + دليل ليلة الفانوس + + + ليلة الفانوس التالية حقيقية + \ No newline at end of file diff --git a/src/TEdit/Properties/Language.de-DE.resx b/src/TEdit/Properties/Language.de-DE.resx index 8d986ab7..f42c2fab 100644 --- a/src/TEdit/Properties/Language.de-DE.resx +++ b/src/TEdit/Properties/Language.de-DE.resx @@ -1251,4 +1251,22 @@ Klicke auf „Wiederholen“, um einen neuen Ordner auszuwählen, oder auf „Ab Keine Fallen + + Nach Party of Doom + + + Laternennacht Cooldown + + + Laternennacht + + + Laternennacht echt + + + Lantern Night Handbuch + + + Lantern Night Next ist echt + \ No newline at end of file diff --git a/src/TEdit/Properties/Language.en.resx b/src/TEdit/Properties/Language.en.resx index 784d46e7..1b0e7576 100644 --- a/src/TEdit/Properties/Language.en.resx +++ b/src/TEdit/Properties/Language.en.resx @@ -1251,4 +1251,22 @@ Press retry to pick a new folder or cancel to use {0} as your terraria path. No Traps + + After Party of Doom + + + Lantern Night Cooldown + + + Lantern Night + + + Lantern Night Genuine + + + Lantern Night Manual + + + Lantern Night Next Is Genuine + \ No newline at end of file diff --git a/src/TEdit/Properties/Language.pl-PL.resx b/src/TEdit/Properties/Language.pl-PL.resx index caa28c72..2d3c9423 100644 --- a/src/TEdit/Properties/Language.pl-PL.resx +++ b/src/TEdit/Properties/Language.pl-PL.resx @@ -1251,4 +1251,22 @@ Naciśnij spróbuj ponownie aby wybrać nowy folder lub anuluj aby użyć {0} ja Bez pułapek + + After Party of Doom + + + Nocny czas odnowienia latarni + + + Noc Latarni + + + Latarnia Noc Autentyczna + + + Podręcznik Lantern Night + + + Noc Latarni Next jest autentyczna + \ No newline at end of file diff --git a/src/TEdit/Properties/Language.pt-BR.resx b/src/TEdit/Properties/Language.pt-BR.resx index dfe9475c..32d65ca1 100644 --- a/src/TEdit/Properties/Language.pt-BR.resx +++ b/src/TEdit/Properties/Language.pt-BR.resx @@ -1251,4 +1251,22 @@ Clique em tentar novamente para escolher uma nova pasta ou cancelar para usar {0 Sem armadilhas + + Depois do Partido da Perdição + + + Resfriamento noturno da lanterna + + + Noite das Lanternas + + + Noite de Lanterna Genuína + + + Manual noturno da lanterna + + + Noite de Lanterna Em seguida é genuína + \ No newline at end of file diff --git a/src/TEdit/Properties/Language.resx b/src/TEdit/Properties/Language.resx index 8a92922d..5b0ccb11 100644 --- a/src/TEdit/Properties/Language.resx +++ b/src/TEdit/Properties/Language.resx @@ -1251,4 +1251,22 @@ Press retry to pick a new folder or cancel to use {0} as your terraria path. No Traps + + After Party of Doom + + + Lantern Night Cooldown + + + Lantern Night + + + Lantern Night Genuine + + + Lantern Night Manual + + + Lantern Night Next Is Genuine + \ No newline at end of file diff --git a/src/TEdit/Properties/Language.ru-RU.resx b/src/TEdit/Properties/Language.ru-RU.resx index 6699dad3..54ccf2a5 100644 --- a/src/TEdit/Properties/Language.ru-RU.resx +++ b/src/TEdit/Properties/Language.ru-RU.resx @@ -1251,4 +1251,22 @@ Без ловушек + + После Вечеринки Судьбы + + + Фонарь Ночное охлаждение + + + Ночь фонарей + + + Фонарь Ночной Подлинный + + + Ночное руководство по фонарю + + + Ночь фонаря следующая подлинная + \ No newline at end of file diff --git a/src/TEdit/Properties/Language.zh-CN.resx b/src/TEdit/Properties/Language.zh-CN.resx index 04b2f5e7..e4190140 100644 --- a/src/TEdit/Properties/Language.zh-CN.resx +++ b/src/TEdit/Properties/Language.zh-CN.resx @@ -1251,4 +1251,22 @@ 无陷阱 + + 末日派对之后 + + + 灯笼之夜冷却时间 + + + 灯笼之夜 + + + 灯笼之夜正版 + + + 灯笼之夜手册 + + + 灯笼之夜接下来是真的 + \ No newline at end of file diff --git a/src/TEdit/Terraria/World.FileV2.cs b/src/TEdit/Terraria/World.FileV2.cs index f1c4cfaf..543499d5 100644 --- a/src/TEdit/Terraria/World.FileV2.cs +++ b/src/TEdit/Terraria/World.FileV2.cs @@ -960,6 +960,13 @@ public static int SaveHeaderFlags(World world, BinaryWriter bw, int version, Tex debugger?.WriteLine("\"AltarCount\": {0},", world.AltarCount); bw.Write(world.HardMode); debugger?.WriteLine("\"HardMode\": {0},", world.HardMode); + + if (world.Version >= 257) + { + bw.Write(world.AfterPartyOfDoom); + debugger?.WriteLine("\"AfterPartyOfDoom\": {0},", world.AfterPartyOfDoom); + } + bw.Write(world.InvasionDelay); debugger?.WriteLine("\"InvasionDelay\": {0},", world.InvasionDelay); bw.Write(world.InvasionSize); @@ -1268,14 +1275,14 @@ public static int SaveHeaderFlags(World world, BinaryWriter bw, int version, Tex if (world.Version >= 207) { - bw.Write(world.TempLanternNightCooldown); - debugger?.WriteLine("\"TempLanternNightCooldown\": {0},", world.TempLanternNightCooldown); - bw.Write(world.TempLanternNightGenuine); - debugger?.WriteLine("\"TempLanternNightGenuine\": {0},", world.TempLanternNightGenuine); - bw.Write(world.TempLanternNightManual); - debugger?.WriteLine("\"TempLanternNightManual\": {0},", world.TempLanternNightManual); - bw.Write(world.TempLanternNightNextNightIsGenuine); - debugger?.WriteLine("\"TempLanternNightNextNightIsGenuine\": {0},", world.TempLanternNightNextNightIsGenuine); + bw.Write(world.LanternNightCooldown); + debugger?.WriteLine("\"TempLanternNightCooldown\": {0},", world.LanternNightCooldown); + bw.Write(world.LanternNightGenuine); + debugger?.WriteLine("\"TempLanternNightGenuine\": {0},", world.LanternNightGenuine); + bw.Write(world.LanternNightManual); + debugger?.WriteLine("\"TempLanternNightManual\": {0},", world.LanternNightManual); + bw.Write(world.LanternNightNextNightIsGenuine); + debugger?.WriteLine("\"TempLanternNightNextNightIsGenuine\": {0},", world.LanternNightNextNightIsGenuine); } if (world.Version >= 211) @@ -1686,7 +1693,7 @@ public static Tile DeserializeTileData(BinaryReader r, bool[] tileFrameImportant tile.LiquidAmount = r.ReadByte(); tile.LiquidType = (LiquidType)liquidType; - + if (version >= 269 && (header3 & 0b_1000_0000) == 0b_1000_0000) { tile.LiquidType = LiquidType.Shimmer; @@ -2137,6 +2144,7 @@ public static void LoadHeaderFlags(BinaryReader r, World w, int expectedPosition w.ShadowOrbCount = (int)r.ReadByte(); w.AltarCount = r.ReadInt32(); w.HardMode = r.ReadBoolean(); + if (w.Version >= 257) { w.AfterPartyOfDoom = r.ReadBoolean(); } w.InvasionDelay = r.ReadInt32(); w.InvasionSize = r.ReadInt32(); w.InvasionType = r.ReadInt32(); @@ -2309,10 +2317,10 @@ public static void LoadHeaderFlags(BinaryReader r, World w, int expectedPosition if (w.Version >= 207) { - w.TempLanternNightCooldown = r.ReadInt32(); - w.TempLanternNightGenuine = r.ReadBoolean(); - w.TempLanternNightManual = r.ReadBoolean(); - w.TempLanternNightNextNightIsGenuine = r.ReadBoolean(); + w.LanternNightCooldown = r.ReadInt32(); + w.LanternNightGenuine = r.ReadBoolean(); + w.LanternNightManual = r.ReadBoolean(); + w.LanternNightNextNightIsGenuine = r.ReadBoolean(); } // tree tops @@ -2438,7 +2446,7 @@ public static bool LoadSectionHeader(BinaryReader r, out bool[] tileFrameImporta sectionPointers = null; int versionNumber = r.ReadInt32(); - if (versionNumber >= 140) + if (versionNumber >= 140) // 135 { // check for android diff --git a/src/TEdit/Terraria/World.Properties.cs b/src/TEdit/Terraria/World.Properties.cs index 42e78b43..b0b2f1ba 100644 --- a/src/TEdit/Terraria/World.Properties.cs +++ b/src/TEdit/Terraria/World.Properties.cs @@ -204,10 +204,10 @@ public partial class World : ObservableObject, ITileData private byte _underworldBg; private byte _mushroomBg; private bool _combatBookUsed; - private int _tempLanternNightCooldown; - private bool _tempLanternNightGenuine; - private bool _tempLanternNightManual; - private bool _tempLanternNightNextNightIsGenuine; + private int _LanternNightCooldown; + private bool _LanternNightGenuine; + private bool _LanternNightManual; + private bool _LanternNightNextNightIsGenuine; private bool _forceHalloweenForToday; private bool _forceXMasForToday; private int _savedOreTiersCopper; @@ -801,28 +801,28 @@ public bool CombatBookUsed set { Set(nameof(CombatBookUsed), ref _combatBookUsed, value); } } - public int TempLanternNightCooldown + public int LanternNightCooldown { - get { return _tempLanternNightCooldown; } - set { Set(nameof(TempLanternNightCooldown), ref _tempLanternNightCooldown, value); } + get { return _LanternNightCooldown; } + set { Set(nameof(LanternNightCooldown), ref _LanternNightCooldown, value); } } - public bool TempLanternNightGenuine + public bool LanternNightGenuine { - get { return _tempLanternNightGenuine; } - set { Set(nameof(TempLanternNightGenuine), ref _tempLanternNightGenuine, value); } + get { return _LanternNightGenuine; } + set { Set(nameof(LanternNightGenuine), ref _LanternNightGenuine, value); } } - public bool TempLanternNightManual + public bool LanternNightManual { - get { return _tempLanternNightManual; } - set { Set(nameof(TempLanternNightManual), ref _tempLanternNightManual, value); } + get { return _LanternNightManual; } + set { Set(nameof(LanternNightManual), ref _LanternNightManual, value); } } - public bool TempLanternNightNextNightIsGenuine + public bool LanternNightNextNightIsGenuine { - get { return _tempLanternNightNextNightIsGenuine; } - set { Set(nameof(TempLanternNightNextNightIsGenuine), ref _tempLanternNightNextNightIsGenuine, value); } + get { return _LanternNightNextNightIsGenuine; } + set { Set(nameof(LanternNightNextNightIsGenuine), ref _LanternNightNextNightIsGenuine, value); } } public float TempMaxRain @@ -1595,6 +1595,13 @@ private static NpcName GetNewNpc(int id) private byte _MoondialCooldown = 0; + private bool _AfterPartyOfDoom = false; + + public bool AfterPartyOfDoom + { + get { return _AfterPartyOfDoom; } + set { Set(nameof(AfterPartyOfDoom), ref _AfterPartyOfDoom, value); } + } public byte MoondialCooldown { get { return _MoondialCooldown; } diff --git a/src/TEdit/View/WorldPropertiesView.xaml b/src/TEdit/View/WorldPropertiesView.xaml index b591c0a4..7a3be6e5 100644 --- a/src/TEdit/View/WorldPropertiesView.xaml +++ b/src/TEdit/View/WorldPropertiesView.xaml @@ -503,6 +503,20 @@ + + + + + + + + + + + + + +