diff --git a/TShockAPI/Properties/AssemblyInfo.cs b/TShockAPI/Properties/AssemblyInfo.cs index 138251a1..f4db4939 100644 --- a/TShockAPI/Properties/AssemblyInfo.cs +++ b/TShockAPI/Properties/AssemblyInfo.cs @@ -48,5 +48,5 @@ using System.Runtime.InteropServices; // Build Number // MMdd of the build -[assembly: AssemblyVersion("3.4.5.0118")] -[assembly: AssemblyFileVersion("3.4.5.0118")] +[assembly: AssemblyVersion("3.4.5.0119")] +[assembly: AssemblyFileVersion("3.4.5.0119")] diff --git a/TShockAPI/Utils.cs b/TShockAPI/Utils.cs index c93ebb11..bd3b201a 100644 --- a/TShockAPI/Utils.cs +++ b/TShockAPI/Utils.cs @@ -233,7 +233,7 @@ namespace TShockAPI { return new List {GetItemById(type)}; } - return GetItemByName(idOrName); + return GetItemByMultiLingualName(idOrName); } public Item GetItemById(int id) @@ -273,6 +273,33 @@ namespace TShockAPI return found; } + public List GetItemByName(string name, int language) + { + var orilang = Lang.lang; + Lang.lang = language; + var list = new List(); + try + { + list = GetItemByName(name); + } + catch (Exception) + { + } + finally + { + Lang.lang = orilang; + } + return list; + } + + public List GetItemByMultiLingualName(string name) + { + var list = new List(); + for (var i = 1; i < 6; i++) + list.AddRange(GetItemByName(name, i)); + return list; + } + public List GetNPCByIdOrName(string idOrName) { int type = -1; @@ -280,7 +307,7 @@ namespace TShockAPI { return new List {GetNPCById(type)}; } - return GetNPCByName(idOrName); + return GetNPCByMultiLingualName(idOrName); } public NPC GetNPCById(int id) @@ -314,6 +341,33 @@ namespace TShockAPI return found; } + public List GetNPCByName(string name, int language) + { + var orilang = Lang.lang; + Lang.lang = language; + var list = new List(); + try + { + list = GetNPCByName(name); + } + catch (Exception) + { + } + finally + { + Lang.lang = orilang; + } + return list; + } + + public List GetNPCByMultiLingualName(string name) + { + var list = new List(); + for (var i = 1; i < 6; i++) + list.AddRange(GetNPCByName(name, i)); + return list; + } + public string GetBuffName(int id) { return (id > 0 && id < Main.maxBuffs) ? Main.buffName[id] : "null"; @@ -377,6 +431,33 @@ namespace TShockAPI return found; } + public List GetPrefixByName(string name, int language) + { + var orilang = Lang.lang; + Lang.lang = language; + var list = new List(); + try + { + list = GetPrefixByName(name); + } + catch (Exception) + { + } + finally + { + Lang.lang = orilang; + } + return list; + } + + public List GetPrefixByMultiLingualName(string name) + { + var list = new List(); + for (var i = 1; i < 6; i++) + list.AddRange(GetPrefixByName(name, i)); + return list; + } + public List GetPrefixByIdOrName(string idOrName) { int type = -1; @@ -384,7 +465,7 @@ namespace TShockAPI { return new List {type}; } - return GetPrefixByName(idOrName); + return GetPrefixByMultiLingualName(idOrName); } /// diff --git a/TerrariaServerBins/TerrariaServer.exe b/TerrariaServerBins/TerrariaServer.exe index 8bfe06ce..b211ebbc 100644 Binary files a/TerrariaServerBins/TerrariaServer.exe and b/TerrariaServerBins/TerrariaServer.exe differ