diff --git a/Source/GrasscutterTools/FormGachaBannerEditor.cs b/Source/GrasscutterTools/FormGachaBannerEditor.cs
index 5c75ec6..36db7c2 100644
--- a/Source/GrasscutterTools/FormGachaBannerEditor.cs
+++ b/Source/GrasscutterTools/FormGachaBannerEditor.cs
@@ -105,7 +105,7 @@ namespace GrasscutterTools
}
catch (Exception ex)
{
- MessageBox.Show("UI更新失败:" + ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
+ MessageBox.Show("UI更新失败:" + ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
@@ -113,13 +113,13 @@ namespace GrasscutterTools
{
if (CmbBannerType.SelectedIndex < 0)
{
- MessageBox.Show("请选择奖池类型", "输入错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
+ MessageBox.Show("请选择奖池类型", Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
return null;
}
if (CmbPrefab.SelectedIndex < 0)
{
- MessageBox.Show("请选择奖池预制", "输入错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
+ MessageBox.Show("请选择奖池预制", Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
return null;
}
@@ -223,7 +223,7 @@ namespace GrasscutterTools
}
catch (Exception ex)
{
- MessageBox.Show("Json解析失败,错误消息:" + ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
+ MessageBox.Show("Json解析失败,错误消息:" + ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
diff --git a/Source/GrasscutterTools/FormMain.cs b/Source/GrasscutterTools/FormMain.cs
index 4684921..b2cdd73 100644
--- a/Source/GrasscutterTools/FormMain.cs
+++ b/Source/GrasscutterTools/FormMain.cs
@@ -73,7 +73,7 @@ namespace GrasscutterTools
}
catch (Exception ex)
{
- MessageBox.Show("加载设置时异常:" + ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
+ MessageBox.Show(Resources.SettingLoadError + ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
@@ -91,7 +91,7 @@ namespace GrasscutterTools
}
catch (Exception ex)
{
- MessageBox.Show("保存设置时异常:" + ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
+ MessageBox.Show(Resources.SettingSaveError + ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
@@ -189,12 +189,12 @@ namespace GrasscutterTools
{
if (string.IsNullOrWhiteSpace(TxtCustomName.Text))
{
- MessageBox.Show("命令标签不能为空", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
+ MessageBox.Show(Resources.CommandTagCannotBeEmpty, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
if (string.IsNullOrWhiteSpace(TxtCommand.Text))
{
- MessageBox.Show("命令内容不能为空", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
+ MessageBox.Show(Resources.CommandContentCannotBeEmpty, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
var name = TxtCustomName.Text.Trim();
@@ -232,14 +232,14 @@ namespace GrasscutterTools
{
if (string.IsNullOrWhiteSpace(TxtCustomName.Text))
{
- MessageBox.Show("命令标签不能为空", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
+ MessageBox.Show(Resources.CommandTagCannotBeEmpty, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
var name = TxtCustomName.Text.Trim();
foreach (LinkLabel lnk in FLPCustomCommands.Controls)
{
- if (lnk.Text == name && MessageBox.Show("确认删除?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
+ if (lnk.Text == name && MessageBox.Show(Resources.AskConfirmDeletion, Resources.Tips, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
{
FLPCustomCommands.Controls.Remove(lnk);
CustomCommandsChanged = true;
@@ -250,7 +250,7 @@ namespace GrasscutterTools
}
}
- MessageBox.Show("未找到该命令", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
+ MessageBox.Show(Resources.CommandNotFound, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
}
private void BtnImport_Click(object sender, EventArgs e)
@@ -799,7 +799,7 @@ namespace GrasscutterTools
var perm = CmbPerm.Text.Trim();
if (string.IsNullOrEmpty(perm))
{
- MessageBox.Show("权限不能为空!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
+ MessageBox.Show(Resources.PermissionCannotBeEmpty, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
SetCommand($"/permission {(sender as Button).Tag} @{uid} {perm}");
@@ -810,7 +810,7 @@ namespace GrasscutterTools
var username = TxtAccountUserName.Text.Trim();
if (string.IsNullOrEmpty(username))
{
- MessageBox.Show("用户名不能为空!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
+ MessageBox.Show(Resources.UsernameCannotBeEmpty, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
SetCommand($"/account {(sender as Button).Tag} {username} {(ChkAccountSetUid.Checked ? NUDAccountUid.Value.ToString() : "")}");
@@ -828,9 +828,9 @@ namespace GrasscutterTools
}
catch (Exception)
{
- MessageBox.Show("浏览器打开失败,你可以通过以下链接手动访问:\n"
- + "https://github.com/jie65535/GrasscutterCommandGenerator",
- "错误", MessageBoxButtons.OK, MessageBoxIcon.Warning);
+ MessageBox.Show(Resources.BrowserOpenFailedTip
+ + "\n https://github.com/jie65535/GrasscutterCommandGenerator",
+ Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
@@ -962,7 +962,7 @@ namespace GrasscutterTools
}
catch (Exception ex)
{
- MessageBox.Show(ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
+ MessageBox.Show(ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
}
finally
{
@@ -979,20 +979,20 @@ namespace GrasscutterTools
NUDRemotePlayerId.Enabled = false;
try
{
- btn.Text = "发送中...";
+ btn.Text = Resources.CodeSending;
await OC.SendCode((int)NUDRemotePlayerId.Value);
BtnConnectOpenCommand.Enabled = true;
NUDVerificationCode.Enabled = true;
NUDVerificationCode.Focus();
for (int i = 60; i > 0 && !OC.CanInvoke; i--)
{
- btn.Text = $"{i} 秒后可重发";
+ btn.Text = string.Format(Resources.CodeResendTip, i);
await Task.Delay(1000);
}
}
catch (Exception ex)
{
- MessageBox.Show(ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
+ MessageBox.Show(ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
}
finally
{
@@ -1011,11 +1011,11 @@ namespace GrasscutterTools
await OC.Verify((int)NUDVerificationCode.Value);
GrpRemoteCommand.Enabled = false;
BtnInvokeOpenCommand.Focus();
- ShowTip("现在你可以远程执行命令了哦!", BtnInvokeOpenCommand);
+ ShowTip(Resources.ConnectedTip, BtnInvokeOpenCommand);
}
catch (Exception ex)
{
- MessageBox.Show(ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
+ MessageBox.Show(ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
}
finally
{
@@ -1033,13 +1033,13 @@ namespace GrasscutterTools
{
if (OC == null || !OC.CanInvoke)
{
- ShowTip("请先连接到支持[OpenCommand]的服务器", BtnInvokeOpenCommand);
+ ShowTip(Resources.RequireOpenCommandTip, BtnInvokeOpenCommand);
TCMain.SelectedTab = TPRemoteCall;
return;
}
if (TxtCommand.Text.Length < 2)
{
- ShowTip("命令不能为空", TxtCommand);
+ ShowTip(Resources.CommandContentCannotBeEmpty, TxtCommand);
return;
}
var cmd = TxtCommand.Text.Substring(1);
@@ -1052,7 +1052,7 @@ namespace GrasscutterTools
}
catch (Exception ex)
{
- MessageBox.Show(ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
+ MessageBox.Show(ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
}
finally
{
@@ -1069,15 +1069,15 @@ namespace GrasscutterTools
}
catch (Exception)
{
- MessageBox.Show("浏览器打开失败,你可以通过以下链接手动访问:\n"
- + "https://github.com/jie65535/gc-opencommand-plugin",
- "错误", MessageBoxButtons.OK, MessageBoxIcon.Warning);
+ MessageBox.Show(Resources.BrowserOpenFailedTip
+ + "\n https://github.com/jie65535/gc-opencommand-plugin",
+ Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
private void LnkRCHelp_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
- MessageBox.Show("1. 填写正确的UID\n2. 向玩家发送验证码\n3. 输入正确的验证码\n4. 连接\n5. 享受", "帮助", MessageBoxButtons.OK, MessageBoxIcon.Information);
+ MessageBox.Show(Resources.OpenCommandHelp, Resources.Help, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
#endregion
diff --git a/Source/GrasscutterTools/FormTextMapBrowser.cs b/Source/GrasscutterTools/FormTextMapBrowser.cs
index 4339516..9bda9a0 100644
--- a/Source/GrasscutterTools/FormTextMapBrowser.cs
+++ b/Source/GrasscutterTools/FormTextMapBrowser.cs
@@ -55,7 +55,7 @@ namespace GrasscutterTools
}
catch (Exception ex)
{
- MessageBox.Show(ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
+ MessageBox.Show(ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
}
finally
{
@@ -92,7 +92,7 @@ namespace GrasscutterTools
}
catch (Exception ex)
{
- MessageBox.Show(ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
+ MessageBox.Show(ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
}
finally
{
@@ -137,7 +137,7 @@ namespace GrasscutterTools
}
catch (Exception ex)
{
- MessageBox.Show(ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
+ MessageBox.Show(ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
diff --git a/Source/GrasscutterTools/Properties/Resources.Designer.cs b/Source/GrasscutterTools/Properties/Resources.Designer.cs
index 6290686..dadf83d 100644
--- a/Source/GrasscutterTools/Properties/Resources.Designer.cs
+++ b/Source/GrasscutterTools/Properties/Resources.Designer.cs
@@ -283,6 +283,15 @@ namespace GrasscutterTools.Properties {
}
}
+ ///
+ /// 查找类似 确认删除? 的本地化字符串。
+ ///
+ internal static string AskConfirmDeletion {
+ get {
+ return ResourceManager.GetString("AskConfirmDeletion", resourceCulture);
+ }
+ }
+
///
/// 查找类似 10000001: 凯特
///10000002: 神里绫华
@@ -385,6 +394,15 @@ namespace GrasscutterTools.Properties {
}
}
+ ///
+ /// 查找类似 浏览器打开失败,你可以通过以下链接手动访问: 的本地化字符串。
+ ///
+ internal static string BrowserOpenFailedTip {
+ get {
+ return ResourceManager.GetString("BrowserOpenFailedTip", resourceCulture);
+ }
+ }
+
///
/// 查找类似 无,晴天,多云,雨天,雷暴,雪天,雾天 的本地化字符串。
///
@@ -394,6 +412,60 @@ namespace GrasscutterTools.Properties {
}
}
+ ///
+ /// 查找类似 {0} 秒后可重发 的本地化字符串。
+ ///
+ internal static string CodeResendTip {
+ get {
+ return ResourceManager.GetString("CodeResendTip", resourceCulture);
+ }
+ }
+
+ ///
+ /// 查找类似 发送中... 的本地化字符串。
+ ///
+ internal static string CodeSending {
+ get {
+ return ResourceManager.GetString("CodeSending", resourceCulture);
+ }
+ }
+
+ ///
+ /// 查找类似 命令内容不能为空 的本地化字符串。
+ ///
+ internal static string CommandContentCannotBeEmpty {
+ get {
+ return ResourceManager.GetString("CommandContentCannotBeEmpty", resourceCulture);
+ }
+ }
+
+ ///
+ /// 查找类似 未找到该命令 的本地化字符串。
+ ///
+ internal static string CommandNotFound {
+ get {
+ return ResourceManager.GetString("CommandNotFound", resourceCulture);
+ }
+ }
+
+ ///
+ /// 查找类似 命令标签不能为空 的本地化字符串。
+ ///
+ internal static string CommandTagCannotBeEmpty {
+ get {
+ return ResourceManager.GetString("CommandTagCannotBeEmpty", resourceCulture);
+ }
+ }
+
+ ///
+ /// 查找类似 现在你可以远程执行命令了哦! 的本地化字符串。
+ ///
+ internal static string ConnectedTip {
+ get {
+ return ResourceManager.GetString("ConnectedTip", resourceCulture);
+ }
+ }
+
///
/// 查找类似 无敌
////godmode
@@ -450,6 +522,15 @@ namespace GrasscutterTools.Properties {
}
}
+ ///
+ /// 查找类似 错误 的本地化字符串。
+ ///
+ internal static string Error {
+ get {
+ return ResourceManager.GetString("Error", resourceCulture);
+ }
+ }
+
///
/// 查找类似 007: 初行者推荐祈愿
///008: 奔行世间
@@ -493,6 +574,15 @@ namespace GrasscutterTools.Properties {
}
}
+ ///
+ /// 查找类似 帮助 的本地化字符串。
+ ///
+ internal static string Help {
+ get {
+ return ResourceManager.GetString("Help", resourceCulture);
+ }
+ }
+
///
/// 查找类似于 (图标) 的 System.Drawing.Icon 类型的本地化资源。
///
@@ -654,6 +744,15 @@ namespace GrasscutterTools.Properties {
}
}
+ ///
+ /// 查找类似 1. 填写正确的UID\n2. 向玩家发送验证码\n3. 输入正确的验证码\n4. 连接\n5. 享受 的本地化字符串。
+ ///
+ internal static string OpenCommandHelp {
+ get {
+ return ResourceManager.GetString("OpenCommandHelp", resourceCulture);
+ }
+ }
+
///
/// 查找类似 369101: 翠目猫
///369102: 北地犬
@@ -704,6 +803,15 @@ namespace GrasscutterTools.Properties {
}
}
+ ///
+ /// 查找类似 要设置的权限不能为空! 的本地化字符串。
+ ///
+ internal static string PermissionCannotBeEmpty {
+ get {
+ return ResourceManager.GetString("PermissionCannotBeEmpty", resourceCulture);
+ }
+ }
+
///
/// 查找类似 *
///player.*
@@ -744,6 +852,15 @@ namespace GrasscutterTools.Properties {
}
}
+ ///
+ /// 查找类似 请先连接到支持[OpenCommand]的服务器 的本地化字符串。
+ ///
+ internal static string RequireOpenCommandTip {
+ get {
+ return ResourceManager.GetString("RequireOpenCommandTip", resourceCulture);
+ }
+ }
+
///
/// 查找类似 1 : BigWorld_LevelStreaming
///2 : BigWorld_LevelStreaming
@@ -775,6 +892,42 @@ namespace GrasscutterTools.Properties {
}
}
+ ///
+ /// 查找类似 加载设置时异常: 的本地化字符串。
+ ///
+ internal static string SettingLoadError {
+ get {
+ return ResourceManager.GetString("SettingLoadError", resourceCulture);
+ }
+ }
+
+ ///
+ /// 查找类似 保存设置时异常: 的本地化字符串。
+ ///
+ internal static string SettingSaveError {
+ get {
+ return ResourceManager.GetString("SettingSaveError", resourceCulture);
+ }
+ }
+
+ ///
+ /// 查找类似 提示 的本地化字符串。
+ ///
+ internal static string Tips {
+ get {
+ return ResourceManager.GetString("Tips", resourceCulture);
+ }
+ }
+
+ ///
+ /// 查找类似 用户名不能为空! 的本地化字符串。
+ ///
+ internal static string UsernameCannotBeEmpty {
+ get {
+ return ResourceManager.GetString("UsernameCannotBeEmpty", resourceCulture);
+ }
+ }
+
///
/// 查找类似 11101: 无锋剑
///11201: 银剑
diff --git a/Source/GrasscutterTools/Properties/Resources.en-us.resx b/Source/GrasscutterTools/Properties/Resources.en-us.resx
index 006873f..62049eb 100644
--- a/Source/GrasscutterTools/Properties/Resources.en-us.resx
+++ b/Source/GrasscutterTools/Properties/Resources.en-us.resx
@@ -133,6 +133,9 @@
..\Resources\en-us\ArtifactSubAttribution.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8
+
+ Are you sure you want to delete this command?
+
..\Resources\en-us\Avatar.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8
@@ -142,15 +145,42 @@
..\Resources\en-us\AvatarStats.json;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ The browser failed to open. You can manually access the following address:
+
None,Sunny,Partly cloudy,Rain,Thunderstorm,Snow,Fog
+
+ Resend in {0} seconds
+
+
+ sending...
+
+
+ Command cannot be empty
+
+
+ Command not found
+
+
+ Command tag cannot be empty
+
+
+ Now you can execute commands remotely!
+
..\Resources\en-us\CustomCommands.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8
+
+ Error
+
..\Resources\en-us\GachaBennerPrefab.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8
+
+ Help
+
..\Resources\IconGrasscutter.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
@@ -169,15 +199,36 @@
..\Resources\en-us\NPC.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8
+
+ 1. Fill in the correct uid\n2. Send verification code to player\n3. Enter the correct verification code\n4. Connection\n5. Enjoy
+
..\Resources\en-us\Ornament.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8
+
+ Permission cannot be empty!
+
..\Resources\Permissions.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8
+
+ Please connect to a server that supports [opencommand] first
+
..\Resources\en-us\Scene.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8
+
+ Settings load failed:
+
+
+ Settings save failed:
+
+
+ Tips
+
+
+ Username cannot be empty!
+
..\Resources\en-us\Weapon.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8
diff --git a/Source/GrasscutterTools/Properties/Resources.resx b/Source/GrasscutterTools/Properties/Resources.resx
index f356705..d9d801d 100644
--- a/Source/GrasscutterTools/Properties/Resources.resx
+++ b/Source/GrasscutterTools/Properties/Resources.resx
@@ -133,6 +133,9 @@
..\Resources\zh-cn\ArtifactSubAttribution.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8
+
+ 确认删除?
+
..\Resources\zh-cn\Avatar.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8
@@ -142,15 +145,42 @@
..\Resources\zh-cn\AvatarStats.json;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 浏览器打开失败,你可以通过以下链接手动访问:
+
无,晴天,多云,雨天,雷暴,雪天,雾天
+
+ {0} 秒后可重发
+
+
+ 发送中...
+
+
+ 命令内容不能为空
+
+
+ 未找到该命令
+
+
+ 命令标签不能为空
+
+
+ 现在你可以远程执行命令了哦!
+
..\Resources\zh-cn\CustomCommands.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8
+
+ 错误
+
..\Resources\zh-cn\GachaBennerPrefab.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8
+
+ 帮助
+
..\Resources\IconGrasscutter.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
@@ -172,15 +202,36 @@
..\Resources\zh-cn\NPC.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8
+
+ 1. 填写正确的UID\n2. 向玩家发送验证码\n3. 输入正确的验证码\n4. 连接\n5. 享受
+
..\Resources\zh-cn\Ornament.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8
+
+ 要设置的权限不能为空!
+
..\Resources\Permissions.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8
+
+ 请先连接到支持[OpenCommand]的服务器
+
..\Resources\zh-cn\Scene.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8
+
+ 加载设置时异常:
+
+
+ 保存设置时异常:
+
+
+ 提示
+
+
+ 用户名不能为空!
+
..\Resources\zh-cn\Weapon.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8