Merge branch 'jie65535:main' into main

This commit is contained in:
EgorBron 2022-08-28 14:30:11 +03:00 committed by GitHub
commit 27cd3761f8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
15 changed files with 2939 additions and 2176 deletions

View File

@ -17,7 +17,7 @@
<value>10001</value>
</setting>
<setting name="DefaultLanguage" serializeAs="String">
<value>zh-CN</value>
<value />
</setting>
<setting name="ResourcesDirPath" serializeAs="String">
<value />
@ -38,7 +38,7 @@
<value />
</setting>
<setting name="CommandVersion" serializeAs="String">
<value>1.2.2</value>
<value />
</setting>
<setting name="IsTopMost" serializeAs="String">
<value>False</value>

View File

@ -86,9 +86,12 @@ namespace GrasscutterTools.Forms
this.LblAccountUserName = new System.Windows.Forms.Label();
this.TxtAccountUserName = new System.Windows.Forms.TextBox();
this.GrpPermission = new System.Windows.Forms.GroupBox();
this.LblPermNewCommandTip = new System.Windows.Forms.Label();
this.CmbPerm = new System.Windows.Forms.ComboBox();
this.NUDPermUID = new System.Windows.Forms.NumericUpDown();
this.BtnPermClear = new System.Windows.Forms.Button();
this.BtmPermRemove = new System.Windows.Forms.Button();
this.BtnPermList = new System.Windows.Forms.Button();
this.BtnPermAdd = new System.Windows.Forms.Button();
this.LblPerm = new System.Windows.Forms.Label();
this.LblPermUID = new System.Windows.Forms.Label();
@ -218,8 +221,9 @@ namespace GrasscutterTools.Forms
this.BtnOpenGachaBannerEditor = new System.Windows.Forms.Button();
this.GrasscutterToolsIcon = new System.Windows.Forms.PictureBox();
this.GrpSettings = new System.Windows.Forms.GroupBox();
this.LblGCVersion = new System.Windows.Forms.Label();
this.CmbGcVersions = new System.Windows.Forms.ComboBox();
this.ChkTopMost = new System.Windows.Forms.CheckBox();
this.ChkNewCommand = new System.Windows.Forms.CheckBox();
this.CmbLanguage = new System.Windows.Forms.ComboBox();
this.LblLanguage = new System.Windows.Forms.Label();
this.NUDUid = new System.Windows.Forms.NumericUpDown();
@ -726,15 +730,24 @@ namespace GrasscutterTools.Forms
// GrpPermission
//
resources.ApplyResources(this.GrpPermission, "GrpPermission");
this.GrpPermission.Controls.Add(this.LblPermNewCommandTip);
this.GrpPermission.Controls.Add(this.CmbPerm);
this.GrpPermission.Controls.Add(this.NUDPermUID);
this.GrpPermission.Controls.Add(this.BtnPermClear);
this.GrpPermission.Controls.Add(this.BtmPermRemove);
this.GrpPermission.Controls.Add(this.BtnPermList);
this.GrpPermission.Controls.Add(this.BtnPermAdd);
this.GrpPermission.Controls.Add(this.LblPerm);
this.GrpPermission.Controls.Add(this.LblPermUID);
this.GrpPermission.Name = "GrpPermission";
this.GrpPermission.TabStop = false;
//
// LblPermNewCommandTip
//
resources.ApplyResources(this.LblPermNewCommandTip, "LblPermNewCommandTip");
this.LblPermNewCommandTip.ForeColor = System.Drawing.SystemColors.GrayText;
this.LblPermNewCommandTip.Name = "LblPermNewCommandTip";
//
// CmbPerm
//
resources.ApplyResources(this.CmbPerm, "CmbPerm");
@ -758,6 +771,14 @@ namespace GrasscutterTools.Forms
0,
0});
//
// BtnPermClear
//
resources.ApplyResources(this.BtnPermClear, "BtnPermClear");
this.BtnPermClear.Name = "BtnPermClear";
this.BtnPermClear.Tag = "clear";
this.BtnPermClear.UseVisualStyleBackColor = true;
this.BtnPermClear.Click += new System.EventHandler(this.BtnPermClick);
//
// BtmPermRemove
//
resources.ApplyResources(this.BtmPermRemove, "BtmPermRemove");
@ -766,6 +787,14 @@ namespace GrasscutterTools.Forms
this.BtmPermRemove.UseVisualStyleBackColor = true;
this.BtmPermRemove.Click += new System.EventHandler(this.BtnPermClick);
//
// BtnPermList
//
resources.ApplyResources(this.BtnPermList, "BtnPermList");
this.BtnPermList.Name = "BtnPermList";
this.BtnPermList.Tag = "list";
this.BtnPermList.UseVisualStyleBackColor = true;
this.BtnPermList.Click += new System.EventHandler(this.BtnPermClick);
//
// BtnPermAdd
//
resources.ApplyResources(this.BtnPermAdd, "BtnPermAdd");
@ -1916,8 +1945,9 @@ namespace GrasscutterTools.Forms
// GrpSettings
//
resources.ApplyResources(this.GrpSettings, "GrpSettings");
this.GrpSettings.Controls.Add(this.LblGCVersion);
this.GrpSettings.Controls.Add(this.CmbGcVersions);
this.GrpSettings.Controls.Add(this.ChkTopMost);
this.GrpSettings.Controls.Add(this.ChkNewCommand);
this.GrpSettings.Controls.Add(this.CmbLanguage);
this.GrpSettings.Controls.Add(this.LblLanguage);
this.GrpSettings.Controls.Add(this.NUDUid);
@ -1926,19 +1956,23 @@ namespace GrasscutterTools.Forms
this.GrpSettings.Name = "GrpSettings";
this.GrpSettings.TabStop = false;
//
// LblGCVersion
//
resources.ApplyResources(this.LblGCVersion, "LblGCVersion");
this.LblGCVersion.Name = "LblGCVersion";
//
// CmbGcVersions
//
resources.ApplyResources(this.CmbGcVersions, "CmbGcVersions");
this.CmbGcVersions.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.CmbGcVersions.FormattingEnabled = true;
this.CmbGcVersions.Name = "CmbGcVersions";
//
// ChkTopMost
//
resources.ApplyResources(this.ChkTopMost, "ChkTopMost");
this.ChkTopMost.Name = "ChkTopMost";
this.ChkTopMost.UseVisualStyleBackColor = true;
this.ChkTopMost.CheckedChanged += new System.EventHandler(this.ChkTopMost_CheckedChanged);
//
// ChkNewCommand
//
resources.ApplyResources(this.ChkNewCommand, "ChkNewCommand");
this.ChkNewCommand.Name = "ChkNewCommand";
this.ChkNewCommand.UseVisualStyleBackColor = true;
this.ChkNewCommand.CheckedChanged += new System.EventHandler(this.ChkNewCommand_CheckedChanged);
//
// CmbLanguage
//
@ -1946,7 +1980,6 @@ namespace GrasscutterTools.Forms
this.CmbLanguage.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.CmbLanguage.FormattingEnabled = true;
this.CmbLanguage.Name = "CmbLanguage";
this.CmbLanguage.SelectedIndexChanged += new System.EventHandler(this.CmbLanguage_SelectedIndexChanged);
//
// LblLanguage
//
@ -2272,7 +2305,6 @@ namespace GrasscutterTools.Forms
private System.Windows.Forms.PictureBox GrasscutterToolsIcon;
private System.Windows.Forms.GroupBox GrpSettings;
private System.Windows.Forms.CheckBox ChkTopMost;
private System.Windows.Forms.CheckBox ChkNewCommand;
private System.Windows.Forms.ComboBox CmbLanguage;
private System.Windows.Forms.Label LblLanguage;
private System.Windows.Forms.NumericUpDown NUDUid;
@ -2294,5 +2326,10 @@ namespace GrasscutterTools.Forms
private System.Windows.Forms.LinkLabel LnkLinks;
private System.Windows.Forms.Button BtnUnlockStat;
private System.Windows.Forms.Button BtnLockStat;
private System.Windows.Forms.Label LblGCVersion;
private System.Windows.Forms.ComboBox CmbGcVersions;
private System.Windows.Forms.Label LblPermNewCommandTip;
private System.Windows.Forms.Button BtnPermClear;
private System.Windows.Forms.Button BtnPermList;
}
}

File diff suppressed because it is too large Load Diff

View File

@ -127,14 +127,11 @@
<data name="ChkAutoCopy.Text" xml:space="preserve">
<value>Auto</value>
</data>
<data name="GrpCommand.Text" xml:space="preserve">
<value>Command (Press and hold Ctrl to run automatically)</value>
</data>
<data name="BtnInvokeOpenCommand.Text" xml:space="preserve">
<value>Run(F5)</value>
</data>
<data name="TPRemoteCall.Text" xml:space="preserve">
<value>Remote</value>
<data name="GrpCommand.Text" xml:space="preserve">
<value>Command (Press and hold Ctrl to run automatically)</value>
</data>
<data name="LnkInventoryKamera.Text" xml:space="preserve">
<value>InventoryKamera</value>
@ -154,9 +151,6 @@
<data name="LblHostTip.Text" xml:space="preserve">
<value>Please be sure https:// or http:// is included with the IP address</value>
</data>
<data name="GrpServerStatus.Text" xml:space="preserve">
<value>Server status</value>
</data>
<data name="LnkOpenCommandLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>13, 63</value>
</data>
@ -193,11 +187,8 @@
<data name="LblPlayerCountLabel.Text" xml:space="preserve">
<value>Player count</value>
</data>
<data name="GrpRemoteCommand.Text" xml:space="preserve">
<value>Remote Cell</value>
</data>
<data name="TPPlayerCheck.Text" xml:space="preserve">
<value>Player</value>
<data name="GrpServerStatus.Text" xml:space="preserve">
<value>Server status</value>
</data>
<data name="LnkRCHelp.Size" type="System.Drawing.Size, System.Drawing">
<value>35, 17</value>
@ -217,11 +208,8 @@
<data name="BtnSendVerificationCode.Text" xml:space="preserve">
<value>Send Code</value>
</data>
<data name="TPConsoleCheck.Size" type="System.Drawing.Size, System.Drawing">
<value>296, 111</value>
</data>
<data name="TPConsoleCheck.Text" xml:space="preserve">
<value>Console</value>
<data name="TPPlayerCheck.Text" xml:space="preserve">
<value>Player</value>
</data>
<data name="BtnConsoleConnect.Text" xml:space="preserve">
<value>Connect</value>
@ -229,6 +217,12 @@
<data name="LblConsoleTip.Text" xml:space="preserve">
<value>Note that normal commands in the console state must specify the target (set include UID)</value>
</data>
<data name="TPConsoleCheck.Text" xml:space="preserve">
<value>Console</value>
</data>
<data name="GrpRemoteCommand.Text" xml:space="preserve">
<value>Remote Cell</value>
</data>
<data name="TxtHost.Location" type="System.Drawing.Point, System.Drawing">
<value>111, 36</value>
</data>
@ -250,20 +244,22 @@
<data name="LblHost.Text" xml:space="preserve">
<value>Server IP</value>
</data>
<data name="TPAbout.Text" xml:space="preserve">
<value>About</value>
<data name="TPRemoteCall.Text" xml:space="preserve">
<value>Remote</value>
</data>
<data name="LblSupportDescription.Size" type="System.Drawing.Size, System.Drawing">
<value>110, 17</value>
<value>387, 102</value>
</data>
<data name="LblSupportDescription.Text" xml:space="preserve">
<value>Grasscutter Tools</value>
<value>Grasscutter Tools
This is a free and open source project.
If you think this is helpful to you, you can give me a free Star.
If there is a problem with the command generation,
or there is a new feature request, you can file an issue on Github.</value>
</data>
<data name="TPManage.Text" xml:space="preserve">
<value>Manage</value>
</data>
<data name="GrpBanPlayer.Text" xml:space="preserve">
<value>Ban</value>
<data name="TPAbout.Text" xml:space="preserve">
<value>About</value>
</data>
<data name="BtnUnban.Text" xml:space="preserve">
<value>Unban</value>
@ -283,8 +279,8 @@
<data name="LblBanUID.Text" xml:space="preserve">
<value>UID</value>
</data>
<data name="GrpAccount.Text" xml:space="preserve">
<value>Account</value>
<data name="GrpBanPlayer.Text" xml:space="preserve">
<value>Ban</value>
</data>
<data name="ChkAccountSetUid.Size" type="System.Drawing.Size, System.Drawing">
<value>49, 21</value>
@ -319,8 +315,8 @@
<data name="TxtAccountUserName.Size" type="System.Drawing.Size, System.Drawing">
<value>127, 23</value>
</data>
<data name="GrpPermission.Text" xml:space="preserve">
<value>Permissions</value>
<data name="GrpAccount.Text" xml:space="preserve">
<value>Account</value>
</data>
<data name="CmbPerm.Location" type="System.Drawing.Point, System.Drawing">
<value>262, 21</value>
@ -328,9 +324,15 @@
<data name="CmbPerm.Size" type="System.Drawing.Size, System.Drawing">
<value>138, 25</value>
</data>
<data name="BtnPermClear.Text" xml:space="preserve">
<value>Clear</value>
</data>
<data name="BtmPermRemove.Text" xml:space="preserve">
<value>Delete</value>
</data>
<data name="BtnPermList.Text" xml:space="preserve">
<value>List</value>
</data>
<data name="BtnPermAdd.Text" xml:space="preserve">
<value>Add</value>
</data>
@ -349,8 +351,11 @@
<data name="LblPermUID.Text" xml:space="preserve">
<value>UID</value>
</data>
<data name="TPScene.Text" xml:space="preserve">
<value>Scene</value>
<data name="GrpPermission.Text" xml:space="preserve">
<value>Permissions</value>
</data>
<data name="TPManage.Text" xml:space="preserve">
<value>Manage</value>
</data>
<data name="ChkIncludeSceneId.Location" type="System.Drawing.Point, System.Drawing">
<value>91, 213</value>
@ -422,8 +427,8 @@ In the command, you can use ~ to indicate the current position, and ~100 to indi
<value>Scene control
Tip: Most of the scenes have no effect and cannot be entered.</value>
</data>
<data name="TPItem.Text" xml:space="preserve">
<value>Items</value>
<data name="TPScene.Text" xml:space="preserve">
<value>Scene</value>
</data>
<data name="LblClearGiveItemLogs.Size" type="System.Drawing.Size, System.Drawing">
<value>50, 17</value>
@ -476,8 +481,8 @@ Tip: Most of the scenes have no effect and cannot be entered.</value>
<data name="LblGiveCommandDescription.Text" xml:space="preserve">
<value>Give item to player</value>
</data>
<data name="TPWeapon.Text" xml:space="preserve">
<value>Weapons</value>
<data name="TPItem.Text" xml:space="preserve">
<value>Items</value>
</data>
<data name="LblWeaponDescription.Size" type="System.Drawing.Size, System.Drawing">
<value>86, 17</value>
@ -518,11 +523,8 @@ Tip: Most of the scenes have no effect and cannot be entered.</value>
<data name="NUDWeaponLevel.Location" type="System.Drawing.Point, System.Drawing">
<value>147, 216</value>
</data>
<data name="TPStats.Text" xml:space="preserve">
<value>Stats</value>
</data>
<data name="GrpSetStats.Text" xml:space="preserve">
<value>Stats</value>
<data name="TPWeapon.Text" xml:space="preserve">
<value>Weapons</value>
</data>
<data name="BtnUnlockStat.Text" xml:space="preserve">
<value>Unlock</value>
@ -533,8 +535,8 @@ Tip: Most of the scenes have no effect and cannot be entered.</value>
<data name="LblStatTip.Text" xml:space="preserve">
<value>Tip</value>
</data>
<data name="GrpTalentLevel.Text" xml:space="preserve">
<value>Talent Level</value>
<data name="GrpSetStats.Text" xml:space="preserve">
<value>Stats</value>
</data>
<data name="LnkTalentE.Location" type="System.Drawing.Point, System.Drawing">
<value>283, 24</value>
@ -566,14 +568,17 @@ Tip: Most of the scenes have no effect and cannot be entered.</value>
<data name="NUDTalentLevel.Size" type="System.Drawing.Size, System.Drawing">
<value>128, 23</value>
</data>
<data name="GrpTalentLevel.Text" xml:space="preserve">
<value>Talent Level</value>
</data>
<data name="LblStatsDescription.Size" type="System.Drawing.Size, System.Drawing">
<value>179, 17</value>
</data>
<data name="LblStatsDescription.Text" xml:space="preserve">
<value>Set current active Avatar data</value>
</data>
<data name="TPAvatar.Text" xml:space="preserve">
<value>Avatar</value>
<data name="TPStats.Text" xml:space="preserve">
<value>Stats</value>
</data>
<data name="BtnGiveAllChar.Text" xml:space="preserve">
<value>Give All Char</value>
@ -605,8 +610,8 @@ Tip: Most of the scenes have no effect and cannot be entered.</value>
<data name="LblAvatarLevel.Text" xml:space="preserve">
<value>Level</value>
</data>
<data name="TPSpawn.Text" xml:space="preserve">
<value>Spawn</value>
<data name="TPAvatar.Text" xml:space="preserve">
<value>Avatar</value>
</data>
<data name="LblClearSpawnLogs.Size" type="System.Drawing.Size, System.Drawing">
<value>50, 17</value>
@ -623,9 +628,6 @@ Tip: Most of the scenes have no effect and cannot be entered.</value>
<data name="GrpSpawnRecord.Text" xml:space="preserve">
<value>Records</value>
</data>
<data name="GrpEntityType.Text" xml:space="preserve">
<value>Class</value>
</data>
<data name="RbEntityAnimal.Size" type="System.Drawing.Size, System.Drawing">
<value>65, 21</value>
</data>
@ -638,6 +640,9 @@ Tip: Most of the scenes have no effect and cannot be entered.</value>
<data name="RbEntityMonster.Text" xml:space="preserve">
<value>Monster</value>
</data>
<data name="GrpEntityType.Text" xml:space="preserve">
<value>Class</value>
</data>
<data name="LblSpawnDescription.Size" type="System.Drawing.Size, System.Drawing">
<value>81, 17</value>
</data>
@ -665,11 +670,8 @@ Tip: Most of the scenes have no effect and cannot be entered.</value>
<data name="NUDEntityLevel.Location" type="System.Drawing.Point, System.Drawing">
<value>146, 216</value>
</data>
<data name="TPQuest.Text" xml:space="preserve">
<value>Quest</value>
</data>
<data name="GrpQuestFilters.Text" xml:space="preserve">
<value>List Filter</value>
<data name="TPSpawn.Text" xml:space="preserve">
<value>Spawn</value>
</data>
<data name="ChkQuestFilterTEST.Size" type="System.Drawing.Size, System.Drawing">
<value>51, 21</value>
@ -689,6 +691,9 @@ Tip: Most of the scenes have no effect and cannot be entered.</value>
<data name="ChkQuestFilterHIDDEN.Text" xml:space="preserve">
<value>Hidden</value>
</data>
<data name="GrpQuestFilters.Text" xml:space="preserve">
<value>List Filter</value>
</data>
<data name="BtnFinishQuest.Text" xml:space="preserve">
<value>Finish</value>
</data>
@ -700,8 +705,8 @@ Tip: Most of the scenes have no effect and cannot be entered.</value>
Tip: Many quest require server-side scripting support
Therefore, the quest can be added and finished, but not necessarily work.</value>
</data>
<data name="TPArtifact.Text" xml:space="preserve">
<value>Artifacts</value>
<data name="TPQuest.Text" xml:space="preserve">
<value>Quest</value>
</data>
<data name="BtnAddSubAttr.Text" xml:space="preserve">
<value>+ Add</value>
@ -760,8 +765,8 @@ Therefore, the quest can be added and finished, but not necessarily work.</value
<data name="LblArtifactStars.Text" xml:space="preserve">
<value>Stars</value>
</data>
<data name="TPCustom.Text" xml:space="preserve">
<value>Custom</value>
<data name="TPArtifact.Text" xml:space="preserve">
<value>Artifacts</value>
</data>
<data name="BtnExportCustomCommands.Location" type="System.Drawing.Point, System.Drawing">
<value>533, 216</value>
@ -787,9 +792,6 @@ Therefore, the quest can be added and finished, but not necessarily work.</value
<data name="LblCustomName.Text" xml:space="preserve">
<value>Tag</value>
</data>
<data name="groupBox1.Text" xml:space="preserve">
<value>List</value>
</data>
<data name="LnkResetCustomCommands.Location" type="System.Drawing.Point, System.Drawing">
<value>531, -1</value>
</data>
@ -799,6 +801,9 @@ Therefore, the quest can be added and finished, but not necessarily work.</value
<data name="LnkResetCustomCommands.Text" xml:space="preserve">
<value>Restore</value>
</data>
<data name="groupBox1.Text" xml:space="preserve">
<value>List</value>
</data>
<data name="BtnRemoveCustomCommand.Location" type="System.Drawing.Point, System.Drawing">
<value>393, 216</value>
</data>
@ -820,8 +825,8 @@ Therefore, the quest can be added and finished, but not necessarily work.</value
<data name="TxtCustomName.Size" type="System.Drawing.Size, System.Drawing">
<value>267, 23</value>
</data>
<data name="TPHome.Text" xml:space="preserve">
<value>Home</value>
<data name="TPCustom.Text" xml:space="preserve">
<value>Custom</value>
</data>
<data name="LblAbout.Location" type="System.Drawing.Point, System.Drawing">
<value>74, 38</value>
@ -841,9 +846,6 @@ Therefore, the quest can be added and finished, but not necessarily work.</value
<data name="BtnOpenGachaBannerEditor.Text" xml:space="preserve">
<value>Banner Editor</value>
</data>
<data name="GrpSettings.Text" xml:space="preserve">
<value>Settings</value>
</data>
<data name="ChkTopMost.Size" type="System.Drawing.Size, System.Drawing">
<value>109, 21</value>
</data>
@ -856,8 +858,10 @@ Therefore, the quest can be added and finished, but not necessarily work.</value
<data name="ChkIncludeUID.Text" xml:space="preserve">
<value>Include UID</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="$this.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>Inherit</value>
<data name="GrpSettings.Text" xml:space="preserve">
<value>Settings</value>
</data>
<data name="TPHome.Text" xml:space="preserve">
<value>Home</value>
</data>
</root>

File diff suppressed because it is too large Load Diff

View File

@ -220,9 +220,6 @@
<data name="BtnSendVerificationCode.Text" xml:space="preserve">
<value>Отправить код</value>
</data>
<data name="TPConsoleCheck.Size" type="System.Drawing.Size, System.Drawing">
<value>296, 111</value>
</data>
<data name="TPConsoleCheck.Text" xml:space="preserve">
<value>консоль</value>
</data>
@ -267,13 +264,20 @@
<value>Справка</value>
</data>
<data name="LblSupportDescription.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 68</value>
<value>355, 170</value>
</data>
<data name="LblSupportDescription.Text" xml:space="preserve">
<value>Grasscutter Tools - основной перевод Юрий Дворецкий
Это бесплатный проект с открытым исходным кодом.
Если вы считаете, что это полезно для вас,
вы можете дать мне бесплатную звезду.
Если возникла проблема с генерацией команды или
есть запрос на новую функцию,
вы можете написать о проблеме на Github.
Спасибо:Dhar_Jinxed
</value>
</value>
</data>
<data name="TPManage.Text" xml:space="preserve">
<value>Управлять</value>
@ -350,6 +354,9 @@
<data name="GrpPermission.Text" xml:space="preserve">
<value>Управление правами</value>
</data>
<data name="LblPermNewCommandTip.Location" type="System.Drawing.Point, System.Drawing">
<value>244, 54</value>
</data>
<data name="CmbPerm.Location" type="System.Drawing.Point, System.Drawing">
<value>240, 21</value>
</data>
@ -359,6 +366,15 @@
<data name="NUDPermUID.Location" type="System.Drawing.Point, System.Drawing">
<value>42, 23</value>
</data>
<data name="BtnPermClear.Location" type="System.Drawing.Point, System.Drawing">
<value>463, 51</value>
</data>
<data name="BtnPermClear.Size" type="System.Drawing.Size, System.Drawing">
<value>70, 23</value>
</data>
<data name="BtnPermClear.Text" xml:space="preserve">
<value>очистить</value>
</data>
<data name="BtmPermRemove.Location" type="System.Drawing.Point, System.Drawing">
<value>463, 22</value>
</data>
@ -368,6 +384,15 @@
<data name="BtmPermRemove.Text" xml:space="preserve">
<value>Удалить</value>
</data>
<data name="BtnPermList.Location" type="System.Drawing.Point, System.Drawing">
<value>387, 51</value>
</data>
<data name="BtnPermList.Size" type="System.Drawing.Size, System.Drawing">
<value>70, 23</value>
</data>
<data name="BtnPermList.Text" xml:space="preserve">
<value>Список</value>
</data>
<data name="BtnPermAdd.Location" type="System.Drawing.Point, System.Drawing">
<value>387, 22</value>
</data>
@ -977,10 +1002,6 @@
<data name="ChkIncludeUID.Text" xml:space="preserve">
<value>Включить UID</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="$this.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>Inherit</value>
</data>
<data name="$this.Text" xml:space="preserve">
<value>GrasscutterTools - перевод Юрий Дворецкий</value>
</data>

View File

@ -123,14 +123,11 @@
<data name="ChkAutoCopy.Text" xml:space="preserve">
<value>自動</value>
</data>
<data name="GrpCommand.Text" xml:space="preserve">
<value>命令(按住 Ctrl 自動執行)</value>
</data>
<data name="BtnInvokeOpenCommand.Text" xml:space="preserve">
<value>執行(F5)</value>
</data>
<data name="TPRemoteCall.Text" xml:space="preserve">
<value>遠程</value>
<data name="GrpCommand.Text" xml:space="preserve">
<value>命令(按住 Ctrl 自動執行)</value>
</data>
<data name="LnkInventoryKamera.Text" xml:space="preserve">
<value>存檔掃描開源工具</value>
@ -148,9 +145,6 @@
<data name="LblHostTip.Text" xml:space="preserve">
<value>請確保地址中包含 http:// 或 https://</value>
</data>
<data name="GrpServerStatus.Text" xml:space="preserve">
<value>伺服器狀態</value>
</data>
<data name="LnkOpenCommandLabel.Text" xml:space="preserve">
<value>遠程執行插件</value>
</data>
@ -160,11 +154,8 @@
<data name="LblPlayerCountLabel.Text" xml:space="preserve">
<value>當前玩家數</value>
</data>
<data name="GrpRemoteCommand.Text" xml:space="preserve">
<value>遠程執行</value>
</data>
<data name="TPPlayerCheck.Text" xml:space="preserve">
<value>玩家驗證</value>
<data name="GrpServerStatus.Text" xml:space="preserve">
<value>伺服器狀態</value>
</data>
<data name="LnkRCHelp.Text" xml:space="preserve">
<value>幫助</value>
@ -178,8 +169,8 @@
<data name="BtnSendVerificationCode.Text" xml:space="preserve">
<value>發送驗證碼</value>
</data>
<data name="TPConsoleCheck.Size" type="System.Drawing.Size, System.Drawing">
<value>296, 111</value>
<data name="TPPlayerCheck.Text" xml:space="preserve">
<value>玩家驗證</value>
</data>
<data name="BtnConsoleConnect.Text" xml:space="preserve">
<value>連接</value>
@ -188,14 +179,17 @@
<value>請注意,控制台狀態下普通命令必須指定目標
即設置包含UID</value>
</data>
<data name="GrpRemoteCommand.Text" xml:space="preserve">
<value>遠程執行</value>
</data>
<data name="BtnQueryServerStatus.Text" xml:space="preserve">
<value>查詢</value>
</data>
<data name="LblHost.Text" xml:space="preserve">
<value>伺服器地址</value>
</data>
<data name="TPAbout.Text" xml:space="preserve">
<value>關於</value>
<data name="TPRemoteCall.Text" xml:space="preserve">
<value>遠程</value>
</data>
<data name="LblSupportDescription.Text" xml:space="preserve">
<value>割草機工具箱
@ -205,15 +199,15 @@
如果願意請我喝一杯奶茶,那就更好了 : )
指令生成有問題或者有新的功能請求都可以來Github提出</value>
</data>
<data name="TPAbout.Text" xml:space="preserve">
<value>關於</value>
</data>
<data name="BtnBan.Text" xml:space="preserve">
<value>封號</value>
</data>
<data name="LblBanUID.Text" xml:space="preserve">
<value>目標UID</value>
</data>
<data name="GrpAccount.Text" xml:space="preserve">
<value>賬號管理</value>
</data>
<data name="BtnDeleteAccount.Text" xml:space="preserve">
<value>- 刪除</value>
</data>
@ -223,8 +217,8 @@
<data name="LblAccountUserName.Text" xml:space="preserve">
<value>用戶名</value>
</data>
<data name="GrpPermission.Text" xml:space="preserve">
<value>權限管理</value>
<data name="GrpAccount.Text" xml:space="preserve">
<value>賬號管理</value>
</data>
<data name="LblPerm.Text" xml:space="preserve">
<value>權限</value>
@ -232,8 +226,8 @@
<data name="LblPermUID.Text" xml:space="preserve">
<value>目標UID</value>
</data>
<data name="TPScene.Text" xml:space="preserve">
<value>場景</value>
<data name="GrpPermission.Text" xml:space="preserve">
<value>權限管理</value>
</data>
<data name="ChkIncludeSceneId.Text" xml:space="preserve">
<value>含場景ID</value>
@ -254,6 +248,9 @@
提示:大部分場景沒有作用,無法進入。</value>
</data>
<data name="TPScene.Text" xml:space="preserve">
<value>場景</value>
</data>
<data name="BtnSaveGiveItemLog.Text" xml:space="preserve">
<value>√ 記錄</value>
</data>
@ -293,27 +290,27 @@
<data name="LblWeaponLevel.Text" xml:space="preserve">
<value>等級</value>
</data>
<data name="TPStats.Text" xml:space="preserve">
<value>數據</value>
</data>
<data name="GrpSetStats.Text" xml:space="preserve">
<value>角色屬性</value>
</data>
<data name="BtnUnlockStat.Text" xml:space="preserve">
<value>解鎖</value>
</data>
<data name="BtnLockStat.Text" xml:space="preserve">
<value>鎖定</value>
</data>
<data name="GrpTalentLevel.Text" xml:space="preserve">
<value>技能等級</value>
<data name="GrpSetStats.Text" xml:space="preserve">
<value>角色屬性</value>
</data>
<data name="LnkTalentNormalATK.Text" xml:space="preserve">
<value>普通攻擊</value>
</data>
<data name="GrpTalentLevel.Text" xml:space="preserve">
<value>技能等級</value>
</data>
<data name="LblStatsDescription.Text" xml:space="preserve">
<value>設置當前活躍角色數據</value>
</data>
<data name="TPStats.Text" xml:space="preserve">
<value>數據</value>
</data>
<data name="BtnGiveAllChar.Text" xml:space="preserve">
<value>一鍵獲得所有角色</value>
</data>
@ -329,15 +326,15 @@
<data name="GrpSpawnRecord.Text" xml:space="preserve">
<value>生成記錄本</value>
</data>
<data name="GrpEntityType.Text" xml:space="preserve">
<value>列表分類</value>
</data>
<data name="RbEntityAnimal.Text" xml:space="preserve">
<value>生物誌</value>
</data>
<data name="RbEntityMonster.Text" xml:space="preserve">
<value>討伐對象</value>
</data>
<data name="GrpEntityType.Text" xml:space="preserve">
<value>列表分類</value>
</data>
<data name="LblSpawnDescription.Text" xml:space="preserve">
<value>在玩家附近召喚生物</value>
</data>
@ -347,12 +344,6 @@
<data name="LblEntityLevel.Text" xml:space="preserve">
<value>等級</value>
</data>
<data name="TPQuest.Text" xml:space="preserve">
<value>任務</value>
</data>
<data name="GrpQuestFilters.Text" xml:space="preserve">
<value>列表過濾</value>
</data>
<data name="ChkQuestFilterTEST.Text" xml:space="preserve">
<value>測試任務</value>
</data>
@ -362,6 +353,9 @@
<data name="ChkQuestFilterHIDDEN.Text" xml:space="preserve">
<value>隱藏的任務</value>
</data>
<data name="GrpQuestFilters.Text" xml:space="preserve">
<value>列表過濾</value>
</data>
<data name="BtnFinishQuest.Text" xml:space="preserve">
<value>完成任務</value>
</data>
@ -373,8 +367,8 @@
提示:許多任務需要服務端腳本支持
囙此任務可以接,可以完成,但是不一定可以做</value>
</data>
<data name="TPArtifact.Text" xml:space="preserve">
<value>聖遺物</value>
<data name="TPQuest.Text" xml:space="preserve">
<value>任務</value>
</data>
<data name="LblArtifactSet.Text" xml:space="preserve">
<value>套裝</value>
@ -391,8 +385,8 @@
<data name="LblArtifactStars.Text" xml:space="preserve">
<value>星級</value>
</data>
<data name="TPCustom.Text" xml:space="preserve">
<value>自定義</value>
<data name="TPArtifact.Text" xml:space="preserve">
<value>聖遺物</value>
</data>
<data name="BtnExportCustomCommands.Text" xml:space="preserve">
<value>導出</value>
@ -406,8 +400,8 @@
<data name="BtnRemoveCustomCommand.Text" xml:space="preserve">
<value>× 刪除</value>
</data>
<data name="TPHome.Text" xml:space="preserve">
<value>主頁</value>
<data name="TPCustom.Text" xml:space="preserve">
<value>自定義</value>
</data>
<data name="BtnOpenTextMap.Text" xml:space="preserve">
<value>文本瀏覽器</value>
@ -418,8 +412,7 @@
<data name="ChkTopMost.Text" xml:space="preserve">
<value>置頂</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="$this.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>Inherit</value>
<data name="TPHome.Text" xml:space="preserve">
<value>主頁</value>
</data>
</root>

View File

@ -0,0 +1,112 @@
/**
* Grasscutter Tools
* Copyright (C) 2022 jie65535
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as published
* by the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
**/
using System;
namespace GrasscutterTools.Game
{
/// <summary>
/// 命令版本
///
/// 用法:
/// ver = Version.TryParse(input, out Version current) ? new CommandVersion(current) : CommandVersion.Latest();
///
/// </summary>
internal class CommandVersion
{
/// <summary>
/// 初始化当前版本
/// </summary>
/// <param name="current"></param>
public CommandVersion(Version current)
{
this.current = current ?? throw new ArgumentNullException(nameof(current));
}
private Version current;
/// <summary>
/// 当前命令版本
/// </summary>
public Version Current
{
get => current;
set
{
if (current != value)
{
current = value;
OnVersionChanged();
}
}
}
/// <summary>
/// 选中版本改变事件
/// </summary>
public event EventHandler VersionChanged;
/// <summary>
/// 触发版本更改事件
/// </summary>
private void OnVersionChanged() => VersionChanged?.Invoke(this, EventArgs.Empty);
/// <summary>
/// 当前支持的最新版本 - 当未选择版本时,默认为最新版本
/// </summary>
public static CommandVersion Latest() => new CommandVersion(List[List.Length - 1]);
#region - Version List -
// 忽略更早以前的版本
/// <summary>
/// v1.2.1 2022/6/18
/// git 30c7bb94439a123417a6a1e0116acd3c40f2d115
/// </summary>
public static readonly Version V1_2_1 = new Version(1, 2, 1);
/// <summary>
/// v1.2.1 -> v1.2.2 2022/6/22
/// git aa43943025fefcda9739c9fcf242e67f1a7b83b4
/// </summary>
public static readonly Version V1_2_2 = new Version(1, 2, 2);
/// <summary>
/// v1.2.2 -> v1.2.3 2022/7/21
/// git a07b3f21e6fbeb9abfad8862d6fa0dc4a1c3c1a3
/// </summary>
public static readonly Version V1_2_3 = new Version(1, 2, 3);
// More...
/// <summary>
/// v1.2.3 -> v1.2.4 2022/7/21
/// git hash
/// </summary>
//public static readonly Version V1_2_4 = new Version(1, 2, 4);
public static Version[] List { get; } = new Version[] {
V1_2_1,
V1_2_2,
V1_2_3,
//V1_2_4,
};
#endregion - Version List -
}
}

View File

@ -81,6 +81,7 @@
<Compile Include="Forms\FormTextMapBrowser.Designer.cs">
<DependentUpon>FormTextMapBrowser.cs</DependentUpon>
</Compile>
<Compile Include="Game\CommandVersion.cs" />
<Compile Include="Game\Gacha\GachaBanner2.cs" />
<Compile Include="Game\GameCommand.cs" />
<Compile Include="Game\Gacha\BannerType.cs" />
@ -103,6 +104,7 @@
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
</Compile>
<Compile Include="Settings.cs" />
<Compile Include="Utils\ArtifactUtils.cs" />
<Compile Include="Utils\HttpHelper.cs" />
<Compile Include="Utils\ReleaseAPI.cs" />

View File

@ -23,14 +23,20 @@ namespace GrasscutterTools
{
internal static class MultiLanguage
{
public static string DefaultLanguage = "zh-CN";
/// <summary>
/// 语言名称列表
/// </summary>
public static readonly string[] LanguageNames = new string[] { "简体中文", "繁體中文", "English", "Русский" };
/// <summary>
/// 语言代码列表
/// </summary>
public static readonly string[] Languages = new string[] { "zh-CN", "zh-TW", "en-US", "ru-RU" };
public static void SetDefaultLanguage(string lang)
{
System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo(lang);
DefaultLanguage = lang;
Properties.Settings.Default.DefaultLanguage = lang;
Properties.Settings.Default.Save();
}
/// <summary>

View File

@ -72,6 +72,10 @@ namespace GrasscutterTools
//处理非UI线程异常
AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException;
// 初始化语言环境
if (!string.IsNullOrEmpty(Settings.Default.DefaultLanguage))
MultiLanguage.SetDefaultLanguage(Settings.Default.DefaultLanguage);
Application.Run(new Forms.FormMain());
}

View File

@ -31,5 +31,5 @@ using System.Runtime.InteropServices;
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值
//通过使用 "*",如下所示:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.6.2")]
[assembly: AssemblyFileVersion("1.6.2")]
[assembly: AssemblyVersion("1.6.3")]
[assembly: AssemblyFileVersion("1.6.3")]

View File

@ -12,7 +12,7 @@ namespace GrasscutterTools.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.2.0.0")]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.3.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
@ -49,7 +49,7 @@ namespace GrasscutterTools.Properties {
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("zh-CN")]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string DefaultLanguage {
get {
return ((string)(this["DefaultLanguage"]));
@ -133,7 +133,7 @@ namespace GrasscutterTools.Properties {
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("1.2.2")]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string CommandVersion {
get {
return ((string)(this["CommandVersion"]));

View File

@ -9,7 +9,7 @@
<Value Profile="(Default)">10001</Value>
</Setting>
<Setting Name="DefaultLanguage" Type="System.String" Scope="User">
<Value Profile="(Default)">zh-CN</Value>
<Value Profile="(Default)" />
</Setting>
<Setting Name="ResourcesDirPath" Type="System.String" Scope="User">
<Value Profile="(Default)" />
@ -30,7 +30,7 @@
<Value Profile="(Default)" />
</Setting>
<Setting Name="CommandVersion" Type="System.String" Scope="User">
<Value Profile="(Default)">1.2.2</Value>
<Value Profile="(Default)" />
</Setting>
<Setting Name="IsTopMost" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>

View File

@ -0,0 +1,28 @@
namespace GrasscutterTools.Properties {
// 通过此类可以处理设置类的特定事件:
// 在更改某个设置的值之前将引发 SettingChanging 事件。
// 在更改某个设置的值之后将引发 PropertyChanged 事件。
// 在加载设置值之后将引发 SettingsLoaded 事件。
// 在保存设置值之前将引发 SettingsSaving 事件。
internal sealed partial class Settings {
public Settings() {
// // 若要为保存和更改设置添加事件处理程序,请取消注释下列行:
//
// this.SettingChanging += this.SettingChangingEventHandler;
//
// this.SettingsSaving += this.SettingsSavingEventHandler;
//
}
private void SettingChangingEventHandler(object sender, System.Configuration.SettingChangingEventArgs e) {
// 在此处添加用于处理 SettingChangingEvent 事件的代码。
}
private void SettingsSavingEventHandler(object sender, System.ComponentModel.CancelEventArgs e) {
// 在此处添加用于处理 SettingsSaving 事件的代码。
}
}
}