Compare commits

...

18 Commits

Author SHA1 Message Date
c6ade7e9ae Update version to v1.3.1
Support Cache Token
Support Console Command
Update Http Client Timeout to 10s
2022-05-16 22:59:31 +08:00
adb50c8b31 Fix Quests id error 2022-05-16 22:57:48 +08:00
01dc1b6f1c Update Artifact part labels support i18n
Update cn window title to GrasscutterTools
2022-05-15 18:45:32 +08:00
265b23f475 Merge pull request #29 from NekosakiSR/patch-3
Update to EN translation
2022-05-15 13:09:51 +08:00
NekosakiSR
1840c94861 Update to EN translation
Line 42 doesn't have an in-game translation so I just called it Lord of the Winds if that's ok.
2022-05-15 01:05:28 -04:00
19803fcf9c Merge pull request #28 from NekosakiSR/patch-2
Update to EN translation
2022-05-15 13:01:38 +08:00
NekosakiSR
853565cb25 Update to EN translation 2022-05-15 00:08:13 -04:00
c3b70f35f0 Merge pull request #27 from NekosakiSR/patch-1
Update to EN translation
2022-05-15 11:29:00 +08:00
NekosakiSR
03eed22830 Update to EN translation 2022-05-14 23:22:49 -04:00
85cdad1b98 Update README_en-US.md 2022-05-15 11:17:59 +08:00
ee660d0f00 Update README.md 2022-05-15 11:17:43 +08:00
28de142144 Update version to 1.3.0 2022-05-15 11:02:44 +08:00
61eb707ac0 Added Old tips for Banner Editor 2022-05-15 11:00:55 +08:00
92c92e0ccb Fix Update info error 2022-05-15 10:48:16 +08:00
f4ad46ae53 Add /nostamina 无限耐力 to Custom Commands 2022-05-15 10:37:41 +08:00
193cef5b2c Add New Version Check 2022-05-15 10:31:19 +08:00
daeb0d516e Update Add Sub Attr Button Style 2022-05-15 09:27:27 +08:00
9709cdc50f Update Screenshots 2022-05-14 21:52:16 +08:00
31 changed files with 24138 additions and 4196 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

View File

@@ -1,5 +1,9 @@
# Grasscutter Tools
[![GitHub license](https://img.shields.io/github/license/jie65535/GrasscutterCommandGenerator)](https://github.com/jie65535/GrasscutterCommandGenerator/blob/main/LICENSE)
[![GitHub stars](https://img.shields.io/github/stars/jie65535/GrasscutterCommandGenerator)](https://github.com/jie65535/GrasscutterCommandGenerator/stargazers)
[![Github All Releases](https://img.shields.io/github/downloads/jie65535/GrasscutterCommandGenerator/total.svg)](https://github.com/jie65535/GrasscutterCommandGenerator/releases)
中文 | [EN](README_en-US.md)
## Commands Generator
@@ -61,3 +65,7 @@
![GachaBannerEditor](Doc/Screenshots/10-GachaBannerEditor.png)
![Text Map Browser](Doc/Screenshots/11-TextMapBrowser.png)
![Remote Screenshort](Doc/Screenshots/12-Remote.png)
![Quest Screenshort](Doc/Screenshots/13-Quest.png)

View File

@@ -1,5 +1,9 @@
# Grasscutter Tools
[![GitHub license](https://img.shields.io/github/license/jie65535/GrasscutterCommandGenerator)](https://github.com/jie65535/GrasscutterCommandGenerator/blob/main/LICENSE)
[![GitHub stars](https://img.shields.io/github/stars/jie65535/GrasscutterCommandGenerator)](https://github.com/jie65535/GrasscutterCommandGenerator/stargazers)
[![Github All Releases](https://img.shields.io/github/downloads/jie65535/GrasscutterCommandGenerator/total.svg)](https://github.com/jie65535/GrasscutterCommandGenerator/releases)
[中文](README.md) | EN
## Commands Generator
@@ -61,3 +65,7 @@ The server require [gc-opencommand-plugin](https://github.com/jie65535/gc-openco
![GachaBannerEditor](Doc/Screenshots-en/10-GachaBannerEditor.png)
![Text Map Browser](Doc/Screenshots-en/11-TextMapBrowser.png)
![Remote Screenshort](Doc/Screenshots/12-Remote.png)
![Quest Screenshort](Doc/Screenshots/13-Quest.png)

View File

@@ -10,27 +10,33 @@
</startup>
<userSettings>
<GrasscutterTools.Properties.Settings>
<setting name="AutoCopy" serializeAs="String">
<value>False</value>
</setting>
<setting name="Uid" serializeAs="String">
<value>10001</value>
</setting>
<setting name="DefaultLanguage" serializeAs="String">
<value>zh-CN</value>
</setting>
<setting name="ResourcesDirPath" serializeAs="String">
<value />
</setting>
<setting name="TextMapFileName" serializeAs="String">
<value>TextMapCHS</value>
</setting>
<setting name="RemoteUid" serializeAs="String">
<value>10001</value>
</setting>
<setting name="Host" serializeAs="String">
<value>https://127.0.0.1</value>
</setting>
</GrasscutterTools.Properties.Settings>
<setting name="AutoCopy" serializeAs="String">
<value>False</value>
</setting>
<setting name="Uid" serializeAs="String">
<value>10001</value>
</setting>
<setting name="DefaultLanguage" serializeAs="String">
<value>zh-CN</value>
</setting>
<setting name="ResourcesDirPath" serializeAs="String">
<value />
</setting>
<setting name="TextMapFileName" serializeAs="String">
<value>TextMapCHS</value>
</setting>
<setting name="RemoteUid" serializeAs="String">
<value>10001</value>
</setting>
<setting name="Host" serializeAs="String">
<value>https://127.0.0.1</value>
</setting>
<setting name="CheckedLastVersion" serializeAs="String">
<value />
</setting>
<setting name="TokenCache" serializeAs="String">
<value />
</setting>
</GrasscutterTools.Properties.Settings>
</userSettings>
</configuration>

View File

@@ -31,6 +31,7 @@ namespace GrasscutterTools
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormGachaBannerEditor));
this.GrpBannerValues = new System.Windows.Forms.GroupBox();
this.LblBannerEditorOldTip = new System.Windows.Forms.Label();
this.CmbPrefab = new System.Windows.Forms.ComboBox();
this.LblEventChanceTip = new System.Windows.Forms.Label();
this.NUDEventChance = new System.Windows.Forms.NumericUpDown();
@@ -97,6 +98,7 @@ namespace GrasscutterTools
// GrpBannerValues
//
resources.ApplyResources(this.GrpBannerValues, "GrpBannerValues");
this.GrpBannerValues.Controls.Add(this.LblBannerEditorOldTip);
this.GrpBannerValues.Controls.Add(this.CmbPrefab);
this.GrpBannerValues.Controls.Add(this.LblEventChanceTip);
this.GrpBannerValues.Controls.Add(this.NUDEventChance);
@@ -139,6 +141,12 @@ namespace GrasscutterTools
this.GrpBannerValues.Name = "GrpBannerValues";
this.GrpBannerValues.TabStop = false;
//
// LblBannerEditorOldTip
//
resources.ApplyResources(this.LblBannerEditorOldTip, "LblBannerEditorOldTip");
this.LblBannerEditorOldTip.ForeColor = System.Drawing.Color.Red;
this.LblBannerEditorOldTip.Name = "LblBannerEditorOldTip";
//
// CmbPrefab
//
resources.ApplyResources(this.CmbPrefab, "CmbPrefab");
@@ -575,5 +583,6 @@ namespace GrasscutterTools
private System.Windows.Forms.Button BtnGen;
private System.Windows.Forms.Button BtnParse;
private System.Windows.Forms.ComboBox CmbPrefab;
private System.Windows.Forms.Label LblBannerEditorOldTip;
}
}

View File

@@ -117,7 +117,20 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="LblBannerEditorOldTip.AutoSize" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="LblBannerEditorOldTip.Location" type="System.Drawing.Point, System.Drawing">
<value>22, 415</value>
</data>
<data name="LblBannerEditorOldTip.Size" type="System.Drawing.Size, System.Drawing">
<value>390, 35</value>
</data>
<data name="LblBannerEditorOldTip.Text" xml:space="preserve">
<value>Tip: The latest version of the dev Banner is currently not supported, waiting for PR : )</value>
</data>
<data name="LblEventChanceTip.Location" type="System.Drawing.Point, System.Drawing">
<value>401, 262</value>
</data>

View File

@@ -127,8 +127,8 @@
<data name="&gt;&gt;LblRateUpItems1.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="LblBannerType.Location" type="System.Drawing.Point, System.Drawing">
<value>50, 87</value>
<data name="&gt;&gt;CmbPrefab.Name" xml:space="preserve">
<value>CmbPrefab</value>
</data>
<data name="&gt;&gt;RbCostItem223.Type" xml:space="preserve">
<value>System.Windows.Forms.RadioButton, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
@@ -138,7 +138,10 @@
<value>True</value>
</data>
<data name="&gt;&gt;LblGachaTypeTip.ZOrder" xml:space="preserve">
<value>13</value>
<value>14</value>
</data>
<data name="&gt;&gt;LblBeginTime.Name" xml:space="preserve">
<value>LblBeginTime</value>
</data>
<data name="ListYellowPool.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 19</value>
@@ -146,8 +149,8 @@
<data name="LblBasePurpleWeight.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 17</value>
</data>
<data name="LblSoftPity.Text" xml:space="preserve">
<value>软保底</value>
<data name="LblSortId.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="&gt;&gt;LblHardPityTip.Parent" xml:space="preserve">
<value>GrpBannerValues</value>
@@ -156,22 +159,22 @@
<value>34, 28</value>
</data>
<data name="&gt;&gt;LblSortIdTip.ZOrder" xml:space="preserve">
<value>30</value>
<value>31</value>
</data>
<data name="&gt;&gt;NUDBeginTime.Type" xml:space="preserve">
<value>System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;LblBeginTime.Name" xml:space="preserve">
<value>LblBeginTime</value>
<data name="&gt;&gt;LblEventChance.ZOrder" xml:space="preserve">
<value>5</value>
</data>
<data name="&gt;&gt;LblHardPity.ZOrder" xml:space="preserve">
<value>20</value>
<data name="&gt;&gt;ListYellowPool.Type" xml:space="preserve">
<value>System.Windows.Forms.CheckedListBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;LblSortIdTip.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="LblCostItem.Size" type="System.Drawing.Size, System.Drawing">
<value>56, 17</value>
<data name="LblRateUpItems2.TabIndex" type="System.Int32, mscorlib">
<value>87</value>
</data>
<data name="NUDHardPity.Location" type="System.Drawing.Point, System.Drawing">
<value>112, 318</value>
@@ -182,8 +185,11 @@
<data name="&gt;&gt;NUDGachaType.Type" xml:space="preserve">
<value>System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;LblBannerEditorOldTip.Parent" xml:space="preserve">
<value>GrpBannerValues</value>
</data>
<data name="&gt;&gt;TxtRateUpItems1.ZOrder" xml:space="preserve">
<value>19</value>
<value>20</value>
</data>
<data name="LblBaseYellowWeight.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
@@ -192,10 +198,7 @@
<value>71</value>
</data>
<data name="&gt;&gt;NUDEventChance.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="LblSoftPityTip.Text" xml:space="preserve">
<value>连续非的次数达到该值,增加抽中概率</value>
<value>3</value>
</data>
<data name="&gt;&gt;LblEndTime.Name" xml:space="preserve">
<value>LblEndTime</value>
@@ -203,6 +206,9 @@
<data name="&gt;&gt;NUDScheduleId.Type" xml:space="preserve">
<value>System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="LblEventChanceTip.TabIndex" type="System.Int32, mscorlib">
<value>89</value>
</data>
<data name="&gt;&gt;NUDEventChance.Type" xml:space="preserve">
<value>System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
@@ -228,8 +234,14 @@
<data name="LblCostItem.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="LblEventChance.Location" type="System.Drawing.Point, System.Drawing">
<value>243, 262</value>
</data>
<data name="&gt;&gt;LblBaseYellowWeightTip.ZOrder" xml:space="preserve">
<value>35</value>
<value>36</value>
</data>
<data name="LblSoftPity.Text" xml:space="preserve">
<value>软保底</value>
</data>
<data name="RbCostItem224.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
@@ -252,8 +264,8 @@
<data name="&gt;&gt;LblGachaType.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;LblPrefabPath.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<data name="&gt;&gt;LblBasePurpleWeightTip.ZOrder" xml:space="preserve">
<value>34</value>
</data>
<data name="&gt;&gt;LblScheduleIdTip.Parent" xml:space="preserve">
<value>GrpBannerValues</value>
@@ -267,9 +279,6 @@
<data name="LblGachaType.Size" type="System.Drawing.Size, System.Drawing">
<value>72, 17</value>
</data>
<data name="LblGachaTypeTip.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="NUDSoftPity.TabIndex" type="System.Int32, mscorlib">
<value>69</value>
</data>
@@ -279,23 +288,26 @@
<data name="RbCostItem223.Text" xml:space="preserve">
<value>纠缠之缘</value>
</data>
<data name="BtnGen.Text" xml:space="preserve">
<value>生成Json</value>
</data>
<data name="GrpPurplePool.Size" type="System.Drawing.Size, System.Drawing">
<value>160, 230</value>
</data>
<data name="LblRateUpItems1.Location" type="System.Drawing.Point, System.Drawing">
<value>31, 234</value>
</data>
<data name="LblGachaTypeTip.Text" xml:space="preserve">
<value>从400开始顺序递增</value>
</data>
<data name="LblRateUpItems2.Location" type="System.Drawing.Point, System.Drawing">
<value>31, 350</value>
</data>
<data name="LblCostItem.Text" xml:space="preserve">
<value>祈愿道具</value>
<data name="&gt;&gt;LblRateUpItems2.ZOrder" xml:space="preserve">
<value>12</value>
</data>
<data name="GrpJson.TabIndex" type="System.Int32, mscorlib">
<value>51</value>
</data>
<data name="&gt;&gt;LblBasePurpleWeight.ZOrder" xml:space="preserve">
<value>28</value>
<value>29</value>
</data>
<data name="&gt;&gt;LblSoftPityTip.Name" xml:space="preserve">
<value>LblSoftPityTip</value>
@@ -312,8 +324,8 @@
<data name="&gt;&gt;RbCostItem224.Parent" xml:space="preserve">
<value>GrpBannerValues</value>
</data>
<data name="&gt;&gt;ListYellowPool.Type" xml:space="preserve">
<value>System.Windows.Forms.CheckedListBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<data name="&gt;&gt;LblHardPityTip.ZOrder" xml:space="preserve">
<value>24</value>
</data>
<data name="&gt;&gt;NUDEventChance.Parent" xml:space="preserve">
<value>GrpBannerValues</value>
@@ -352,13 +364,19 @@
<value>70</value>
</data>
<data name="&gt;&gt;NUDGachaType.ZOrder" xml:space="preserve">
<value>9</value>
<value>10</value>
</data>
<data name="ListYellowPool.Size" type="System.Drawing.Size, System.Drawing">
<value>154, 208</value>
</data>
<data name="BtnParse.Text" xml:space="preserve">
<value>解析Json</value>
</data>
<data name="LblEventChance.Location" type="System.Drawing.Point, System.Drawing">
<value>243, 262</value>
<data name="LblPrefabPath.Text" xml:space="preserve">
<value>预制</value>
</data>
<data name="LblHardPity.Location" type="System.Drawing.Point, System.Drawing">
<value>62, 320</value>
</data>
<data name="&gt;&gt;GrpJson.ZOrder" xml:space="preserve">
<value>0</value>
@@ -375,15 +393,15 @@
<data name="&gt;&gt;LblBasePurpleWeight.Parent" xml:space="preserve">
<value>GrpBannerValues</value>
</data>
<data name="&gt;&gt;LblBasePurpleWeightTip.Parent" xml:space="preserve">
<value>GrpBannerValues</value>
</data>
<data name="&gt;&gt;GrpYellowPool.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="&gt;&gt;LblEventChanceTip.Name" xml:space="preserve">
<value>LblEventChanceTip</value>
</data>
<data name="LblBannerEditorOldTip.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="LblRateUpItems1.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
@@ -405,23 +423,23 @@
<data name="LblBasePurpleWeightTip.Text" xml:space="preserve">
<value>%</value>
</data>
<data name="&gt;&gt;ListPurplePool.Name" xml:space="preserve">
<value>ListPurplePool</value>
</data>
<data name="&gt;&gt;LblScheduleId.ZOrder" xml:space="preserve">
<value>17</value>
<value>18</value>
</data>
<data name="LblPrefabPath.TabIndex" type="System.Int32, mscorlib">
<value>61</value>
</data>
<data name="GrpJson.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Bottom, Right</value>
</data>
<data name="LblEndTime.Text" xml:space="preserve">
<value>结束时间</value>
</data>
<data name="NUDBasePurpleWeight.TabIndex" type="System.Int32, mscorlib">
<value>73</value>
</data>
<data name="GrpBannerValues.Size" type="System.Drawing.Size, System.Drawing">
<value>440, 466</value>
<data name="&gt;&gt;LblHardPity.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="CmbBannerType.Size" type="System.Drawing.Size, System.Drawing">
<value>300, 25</value>
@@ -433,7 +451,7 @@
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;LblBeginTime.ZOrder" xml:space="preserve">
<value>18</value>
<value>19</value>
</data>
<data name="&gt;&gt;NUDSortId.Name" xml:space="preserve">
<value>NUDSortId</value>
@@ -441,8 +459,8 @@
<data name="&gt;&gt;GrpPurplePool.Name" xml:space="preserve">
<value>GrpPurplePool</value>
</data>
<data name="LblBeginTime.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
<data name="LblEventChanceTip.Size" type="System.Drawing.Size, System.Drawing">
<value>19, 17</value>
</data>
<data name="LblBasePurpleWeightTip.TabIndex" type="System.Int32, mscorlib">
<value>81</value>
@@ -451,26 +469,26 @@
<value>GrpBannerValues</value>
</data>
<data name="&gt;&gt;NUDBasePurpleWeight.ZOrder" xml:space="preserve">
<value>31</value>
<value>32</value>
</data>
<data name="&gt;&gt;LblHardPity.Parent" xml:space="preserve">
<value>GrpBannerValues</value>
</data>
<data name="LblScheduleIdTip.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="&gt;&gt;RbCostItem224.ZOrder" xml:space="preserve">
<value>34</value>
<value>35</value>
</data>
<data name="&gt;&gt;LblGachaType.Parent" xml:space="preserve">
<value>GrpBannerValues</value>
</data>
<data name="&gt;&gt;LblScheduleIdTip.ZOrder" xml:space="preserve">
<value>25</value>
<value>26</value>
</data>
<data name="LblSoftPityTip.Size" type="System.Drawing.Size, System.Drawing">
<value>212, 17</value>
</data>
<data name="&gt;&gt;LblBasePurpleWeightTip.ZOrder" xml:space="preserve">
<value>33</value>
</data>
<data name="BtnGen.TabIndex" type="System.Int32, mscorlib">
<value>53</value>
</data>
@@ -478,7 +496,7 @@
<value>300, 23</value>
</data>
<data name="&gt;&gt;CmbPrefab.ZOrder" xml:space="preserve">
<value>0</value>
<value>1</value>
</data>
<data name="NUDBeginTime.Size" type="System.Drawing.Size, System.Drawing">
<value>100, 23</value>
@@ -504,8 +522,8 @@
<data name="&gt;&gt;LblEventChance.Parent" xml:space="preserve">
<value>GrpBannerValues</value>
</data>
<data name="LblBaseYellowWeight.TabIndex" type="System.Int32, mscorlib">
<value>76</value>
<data name="RbCostItem224.Text" xml:space="preserve">
<value>相遇之缘</value>
</data>
<data name="&gt;&gt;TxtRateUpItems1.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
@@ -516,12 +534,21 @@
<data name="LblSortIdTip.Text" xml:space="preserve">
<value>客户端中显示的顺序</value>
</data>
<data name="&gt;&gt;TxtJson.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="LblGachaTypeTip.Size" type="System.Drawing.Size, System.Drawing">
<value>125, 17</value>
</data>
<data name="ListPurplePool.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="LblHardPity.Text" xml:space="preserve">
<value>硬保底</value>
</data>
<data name="&gt;&gt;ListYellowPool.Parent" xml:space="preserve">
<value>GrpYellowPool</value>
</data>
<data name="CmbPrefab.TabIndex" type="System.Int32, mscorlib">
<value>90</value>
</data>
@@ -543,20 +570,20 @@
<data name="&gt;&gt;LblBasePurpleWeightTip.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="LblHardPity.Location" type="System.Drawing.Point, System.Drawing">
<value>62, 320</value>
</data>
<data name="LblGachaType.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="&gt;&gt;NUDEventChance.Name" xml:space="preserve">
<value>NUDEventChance</value>
</data>
<data name="&gt;&gt;NUDHardPity.Parent" xml:space="preserve">
<value>GrpBannerValues</value>
</data>
<data name="&gt;&gt;LblSortId.Parent" xml:space="preserve">
<value>GrpBannerValues</value>
</data>
<data name="&gt;&gt;LblPrefabPath.ZOrder" xml:space="preserve">
<value>37</value>
<data name="&gt;&gt;LblBasePurpleWeightTip.Parent" xml:space="preserve">
<value>GrpBannerValues</value>
</data>
<data name="&gt;&gt;LblSortIdTip.Name" xml:space="preserve">
<value>LblSortIdTip</value>
@@ -570,11 +597,14 @@
<data name="LblHardPityTip.Location" type="System.Drawing.Point, System.Drawing">
<value>218, 320</value>
</data>
<data name="LblSortId.TabIndex" type="System.Int32, mscorlib">
<value>75</value>
<data name="LblBannerEditorOldTip.Location" type="System.Drawing.Point, System.Drawing">
<value>31, 437</value>
</data>
<data name="GrpBannerValues.Size" type="System.Drawing.Size, System.Drawing">
<value>440, 466</value>
</data>
<data name="&gt;&gt;LblCostItem.ZOrder" xml:space="preserve">
<value>36</value>
<value>37</value>
</data>
<data name="&gt;&gt;LblEndTime.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
@@ -582,11 +612,8 @@
<data name="LblSoftPityTip.Location" type="System.Drawing.Point, System.Drawing">
<value>218, 291</value>
</data>
<data name="&gt;&gt;TxtJson.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;LblHardPity.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<data name="LblCostItem.Size" type="System.Drawing.Size, System.Drawing">
<value>56, 17</value>
</data>
<data name="&gt;&gt;LblSortId.Name" xml:space="preserve">
<value>LblSortId</value>
@@ -601,7 +628,7 @@
<value>GrpBannerValues</value>
</data>
<data name="&gt;&gt;NUDBaseYellowWeight.ZOrder" xml:space="preserve">
<value>5</value>
<value>6</value>
</data>
<data name="&gt;&gt;$this.Type" xml:space="preserve">
<value>System.Windows.Forms.Form, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
@@ -610,7 +637,7 @@
<value>GrpBannerValues</value>
</data>
<data name="&gt;&gt;LblBannerType.ZOrder" xml:space="preserve">
<value>32</value>
<value>33</value>
</data>
<data name="&gt;&gt;ListYellowPool.Name" xml:space="preserve">
<value>ListYellowPool</value>
@@ -618,6 +645,9 @@
<data name="TxtRateUpItems1.Size" type="System.Drawing.Size, System.Drawing">
<value>300, 23</value>
</data>
<data name="LblBannerEditorOldTip.Text" xml:space="preserve">
<value>提示当前不支持最新版dev奖池等一个有缘人PR</value>
</data>
<data name="&gt;&gt;GrpBannerValues.Parent" xml:space="preserve">
<value>$this</value>
</data>
@@ -625,7 +655,7 @@
<value>RbCostItem223</value>
</data>
<data name="&gt;&gt;LblEndTime.ZOrder" xml:space="preserve">
<value>14</value>
<value>15</value>
</data>
<data name="TxtJson.Multiline" type="System.Boolean, mscorlib">
<value>True</value>
@@ -639,18 +669,15 @@
<data name="&gt;&gt;LblBaseYellowWeight.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="LblRateUpItems2.TabIndex" type="System.Int32, mscorlib">
<value>87</value>
</data>
<data name="&gt;&gt;LblRateUpItems2.ZOrder" xml:space="preserve">
<value>11</value>
</data>
<data name="LblSortIdTip.TabIndex" type="System.Int32, mscorlib">
<value>83</value>
</data>
<data name="LblScheduleIdTip.TabIndex" type="System.Int32, mscorlib">
<value>56</value>
</data>
<data name="&gt;&gt;CmbBannerType.Name" xml:space="preserve">
<value>CmbBannerType</value>
</data>
<data name="&gt;&gt;LblCostItem.Name" xml:space="preserve">
<value>LblCostItem</value>
</data>
@@ -661,11 +688,14 @@
<value>6, 19</value>
</data>
<data name="&gt;&gt;NUDBeginTime.ZOrder" xml:space="preserve">
<value>26</value>
<value>27</value>
</data>
<data name="LblBasePurpleWeightTip.Size" type="System.Drawing.Size, System.Drawing">
<value>19, 17</value>
</data>
<data name="&gt;&gt;LblBannerEditorOldTip.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="ListYellowPool.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
@@ -675,6 +705,9 @@
<data name="LblSoftPity.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>FormGachaBannerEditor</value>
</data>
<data name="GrpPurplePool.Location" type="System.Drawing.Point, System.Drawing">
<value>458, 248</value>
</data>
@@ -691,7 +724,7 @@
<value>88</value>
</data>
<data name="&gt;&gt;NUDEndTime.ZOrder" xml:space="preserve">
<value>22</value>
<value>23</value>
</data>
<data name="&gt;&gt;NUDGachaType.Parent" xml:space="preserve">
<value>GrpBannerValues</value>
@@ -720,9 +753,6 @@
<data name="&gt;&gt;LblScheduleId.Name" xml:space="preserve">
<value>LblScheduleId</value>
</data>
<data name="&gt;&gt;GrpJson.Name" xml:space="preserve">
<value>GrpJson</value>
</data>
<data name="LblBeginTime.Size" type="System.Drawing.Size, System.Drawing">
<value>56, 17</value>
</data>
@@ -733,13 +763,13 @@
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;NUDSortId.ZOrder" xml:space="preserve">
<value>10</value>
<value>11</value>
</data>
<data name="LblRateUpItems1.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 17</value>
<data name="&gt;&gt;ListPurplePool.Name" xml:space="preserve">
<value>ListPurplePool</value>
</data>
<data name="&gt;&gt;ListYellowPool.ZOrder" xml:space="preserve">
<value>0</value>
<data name="CmbBannerType.TabIndex" type="System.Int32, mscorlib">
<value>50</value>
</data>
<data name="&gt;&gt;GrpPurplePool.ZOrder" xml:space="preserve">
<value>1</value>
@@ -753,8 +783,8 @@
<data name="&gt;&gt;NUDSortId.Type" xml:space="preserve">
<value>System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;LblHardPityTip.ZOrder" xml:space="preserve">
<value>23</value>
<data name="LblRateUpItems2.Location" type="System.Drawing.Point, System.Drawing">
<value>31, 350</value>
</data>
<data name="NUDSortId.Location" type="System.Drawing.Point, System.Drawing">
<value>112, 202</value>
@@ -762,6 +792,9 @@
<data name="LblScheduleId.Location" type="System.Drawing.Point, System.Drawing">
<value>34, 57</value>
</data>
<data name="&gt;&gt;LblPrefabPath.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;LblCostItem.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
@@ -769,7 +802,7 @@
<value>288, 412</value>
</data>
<data name="&gt;&gt;TxtRateUpItems2.ZOrder" xml:space="preserve">
<value>7</value>
<value>8</value>
</data>
<data name="LblBaseYellowWeightTip.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
@@ -789,8 +822,8 @@
<data name="TxtJson.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="BtnGen.Text" xml:space="preserve">
<value>生成Json</value>
<data name="LblBannerEditorOldTip.Size" type="System.Drawing.Size, System.Drawing">
<value>284, 17</value>
</data>
<data name="&gt;&gt;TxtJson.Name" xml:space="preserve">
<value>TxtJson</value>
@@ -801,11 +834,14 @@
<data name="&gt;&gt;LblPrefabPath.Parent" xml:space="preserve">
<value>GrpBannerValues</value>
</data>
<data name="&gt;&gt;LblPrefabPath.ZOrder" xml:space="preserve">
<value>38</value>
</data>
<data name="&gt;&gt;LblEventChance.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;NUDScheduleId.ZOrder" xml:space="preserve">
<value>21</value>
<value>22</value>
</data>
<data name="GrpYellowPool.Location" type="System.Drawing.Point, System.Drawing">
<value>458, 12</value>
@@ -813,14 +849,17 @@
<data name="NUDGachaType.TabIndex" type="System.Int32, mscorlib">
<value>47</value>
</data>
<data name="LblCostItem.Text" xml:space="preserve">
<value>祈愿道具</value>
</data>
<data name="LblRateUpItems2.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 17</value>
</data>
<data name="NUDScheduleId.Location" type="System.Drawing.Point, System.Drawing">
<value>112, 55</value>
</data>
<data name="ListYellowPool.Size" type="System.Drawing.Size, System.Drawing">
<value>154, 208</value>
<data name="LblBaseYellowWeightTip.Location" type="System.Drawing.Point, System.Drawing">
<value>218, 262</value>
</data>
<data name="&gt;&gt;LblScheduleIdTip.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
@@ -838,13 +877,10 @@
<value>True</value>
</data>
<data name="&gt;&gt;RbCostItem223.ZOrder" xml:space="preserve">
<value>38</value>
<value>39</value>
</data>
<data name="RbCostItem224.Text" xml:space="preserve">
<value>相遇之缘</value>
</data>
<data name="LblBeginTime.Text" xml:space="preserve">
<value>开始时间</value>
<data name="&gt;&gt;TxtJson.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="LblScheduleIdTip.Location" type="System.Drawing.Point, System.Drawing">
<value>218, 57</value>
@@ -862,29 +898,23 @@
<value>GrpBannerValues</value>
</data>
<data name="&gt;&gt;LblSortId.ZOrder" xml:space="preserve">
<value>6</value>
<value>7</value>
</data>
<data name="GrpJson.Location" type="System.Drawing.Point, System.Drawing">
<value>624, 12</value>
<data name="&gt;&gt;LblSoftPity.ZOrder" xml:space="preserve">
<value>13</value>
</data>
<data name="&gt;&gt;CmbPrefab.Parent" xml:space="preserve">
<value>GrpBannerValues</value>
</data>
<data name="&gt;&gt;TxtJson.ZOrder" xml:space="preserve">
<value>1</value>
<data name="LblGachaTypeTip.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="LblBasePurpleWeight.Text" xml:space="preserve">
<value>4星基础爆率</value>
</data>
<data name="LblEventChanceTip.Size" type="System.Drawing.Size, System.Drawing">
<value>19, 17</value>
</data>
<data name="&gt;&gt;LblPrefabPath.Name" xml:space="preserve">
<value>LblPrefabPath</value>
</data>
<data name="LblSortId.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="&gt;&gt;LblSortIdTip.Parent" xml:space="preserve">
<value>GrpBannerValues</value>
</data>
@@ -894,8 +924,8 @@
<data name="&gt;&gt;LblEventChance.Name" xml:space="preserve">
<value>LblEventChance</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>FormGachaBannerEditor</value>
<data name="&gt;&gt;GrpJson.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="NUDGachaType.Size" type="System.Drawing.Size, System.Drawing">
<value>100, 23</value>
@@ -927,14 +957,14 @@
<data name="TxtRateUpItems2.Location" type="System.Drawing.Point, System.Drawing">
<value>112, 347</value>
</data>
<data name="LblPrefabPath.Text" xml:space="preserve">
<value>预制</value>
<data name="LblGachaType.Text" xml:space="preserve">
<value>GachaType</value>
</data>
<data name="&gt;&gt;NUDEndTime.Parent" xml:space="preserve">
<value>GrpBannerValues</value>
</data>
<data name="&gt;&gt;NUDSoftPity.ZOrder" xml:space="preserve">
<value>16</value>
<value>17</value>
</data>
<data name="&gt;&gt;GrpYellowPool.Type" xml:space="preserve">
<value>System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
@@ -966,8 +996,8 @@
<data name="LblBannerType.Size" type="System.Drawing.Size, System.Drawing">
<value>56, 17</value>
</data>
<data name="GrpPurplePool.Size" type="System.Drawing.Size, System.Drawing">
<value>160, 230</value>
<data name="LblRateUpItems1.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 17</value>
</data>
<data name="LblSoftPity.Location" type="System.Drawing.Point, System.Drawing">
<value>62, 291</value>
@@ -975,6 +1005,9 @@
<data name="GrpPurplePool.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Bottom, Left, Right</value>
</data>
<data name="&gt;&gt;LblBannerEditorOldTip.Name" xml:space="preserve">
<value>LblBannerEditorOldTip</value>
</data>
<data name="&gt;&gt;NUDGachaType.Name" xml:space="preserve">
<value>NUDGachaType</value>
</data>
@@ -993,6 +1026,9 @@
<data name="&gt;&gt;CmbPrefab.Type" xml:space="preserve">
<value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;TxtRateUpItems1.Parent" xml:space="preserve">
<value>GrpBannerValues</value>
</data>
<data name="NUDEventChance.Size" type="System.Drawing.Size, System.Drawing">
<value>63, 23</value>
</data>
@@ -1008,11 +1044,8 @@
<data name="CmbBannerType.Location" type="System.Drawing.Point, System.Drawing">
<value>112, 84</value>
</data>
<data name="&gt;&gt;RbCostItem224.Type" xml:space="preserve">
<value>System.Windows.Forms.RadioButton, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="LblBaseYellowWeightTip.Location" type="System.Drawing.Point, System.Drawing">
<value>218, 262</value>
<data name="LblBannerType.Location" type="System.Drawing.Point, System.Drawing">
<value>50, 87</value>
</data>
<data name="&gt;&gt;TxtRateUpItems2.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
@@ -1020,14 +1053,17 @@
<data name="$this.Font" type="System.Drawing.Font, System.Drawing">
<value>微软雅黑, 9pt</value>
</data>
<data name="LblBannerEditorOldTip.TabIndex" type="System.Int32, mscorlib">
<value>91</value>
</data>
<data name="BtnParse.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 23</value>
</data>
<data name="NUDGachaType.Location" type="System.Drawing.Point, System.Drawing">
<value>112, 26</value>
</data>
<data name="&gt;&gt;ListYellowPool.Parent" xml:space="preserve">
<value>GrpYellowPool</value>
<data name="&gt;&gt;RbCostItem224.Type" xml:space="preserve">
<value>System.Windows.Forms.RadioButton, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="NUDBasePurpleWeight.Size" type="System.Drawing.Size, System.Drawing">
<value>100, 23</value>
@@ -1062,17 +1098,17 @@
<data name="&gt;&gt;BtnParse.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;CmbBannerType.ZOrder" xml:space="preserve">
<value>29</value>
<data name="&gt;&gt;GrpJson.Name" xml:space="preserve">
<value>GrpJson</value>
</data>
<data name="ListPurplePool.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
<data name="LblSoftPityTip.Text" xml:space="preserve">
<value>连续非的次数达到该值,增加抽中概率</value>
</data>
<data name="&gt;&gt;NUDHardPity.Parent" xml:space="preserve">
<value>GrpBannerValues</value>
<data name="&gt;&gt;LblGachaTypeTip.Name" xml:space="preserve">
<value>LblGachaTypeTip</value>
</data>
<data name="&gt;&gt;CmbBannerType.Name" xml:space="preserve">
<value>CmbBannerType</value>
<data name="LblEventChanceTip.Text" xml:space="preserve">
<value>%</value>
</data>
<data name="LblGachaTypeTip.Location" type="System.Drawing.Point, System.Drawing">
<value>218, 28</value>
@@ -1083,9 +1119,6 @@
<data name="BtnGen.Location" type="System.Drawing.Point, System.Drawing">
<value>6, 437</value>
</data>
<data name="&gt;&gt;GrpJson.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="LblScheduleIdTip.Size" type="System.Drawing.Size, System.Drawing">
<value>69, 17</value>
</data>
@@ -1093,7 +1126,7 @@
<value>116, 17</value>
</data>
<data name="&gt;&gt;NUDHardPity.ZOrder" xml:space="preserve">
<value>24</value>
<value>25</value>
</data>
<data name="RbCostItem223.Size" type="System.Drawing.Size, System.Drawing">
<value>74, 21</value>
@@ -1102,16 +1135,16 @@
<value>GrpJson</value>
</data>
<data name="&gt;&gt;LblGachaType.ZOrder" xml:space="preserve">
<value>3</value>
<value>4</value>
</data>
<data name="&gt;&gt;LblGachaTypeTip.Parent" xml:space="preserve">
<value>GrpBannerValues</value>
</data>
<data name="&gt;&gt;TxtRateUpItems1.Parent" xml:space="preserve">
<value>GrpBannerValues</value>
<data name="LblBaseYellowWeight.TabIndex" type="System.Int32, mscorlib">
<value>76</value>
</data>
<data name="LblGachaType.Text" xml:space="preserve">
<value>GachaType</value>
<data name="&gt;&gt;LblHardPity.ZOrder" xml:space="preserve">
<value>21</value>
</data>
<data name="TxtJson.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Bottom, Left, Right</value>
@@ -1123,7 +1156,7 @@
<value>5星基础爆率</value>
</data>
<data name="&gt;&gt;LblBaseYellowWeight.ZOrder" xml:space="preserve">
<value>8</value>
<value>9</value>
</data>
<data name="LblPrefabPath.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
@@ -1140,15 +1173,12 @@
<data name="CmbBannerType.Items2" xml:space="preserve">
<value>限时武器祈愿池</value>
</data>
<data name="CmbBannerType.TabIndex" type="System.Int32, mscorlib">
<value>50</value>
</data>
<data name="GrpJson.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Bottom, Right</value>
</data>
<data name="&gt;&gt;LblBasePurpleWeightTip.Name" xml:space="preserve">
<value>LblBasePurpleWeightTip</value>
</data>
<data name="&gt;&gt;LblBannerEditorOldTip.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;CmbBannerType.Type" xml:space="preserve">
<value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
@@ -1158,9 +1188,6 @@
<data name="&gt;&gt;GrpYellowPool.Name" xml:space="preserve">
<value>GrpYellowPool</value>
</data>
<data name="LblEventChanceTip.Text" xml:space="preserve">
<value>%</value>
</data>
<data name="LblBasePurpleWeight.TabIndex" type="System.Int32, mscorlib">
<value>79</value>
</data>
@@ -1189,7 +1216,7 @@
<value>72</value>
</data>
<data name="&gt;&gt;LblEventChanceTip.ZOrder" xml:space="preserve">
<value>1</value>
<value>2</value>
</data>
<data name="LblBaseYellowWeight.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 17</value>
@@ -1203,6 +1230,9 @@
<data name="&gt;&gt;LblRateUpItems1.Parent" xml:space="preserve">
<value>GrpBannerValues</value>
</data>
<data name="&gt;&gt;ListYellowPool.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="LblPrefabPath.Size" type="System.Drawing.Size, System.Drawing">
<value>32, 17</value>
</data>
@@ -1215,11 +1245,8 @@
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
<value>7, 17</value>
</data>
<data name="&gt;&gt;CmbPrefab.Name" xml:space="preserve">
<value>CmbPrefab</value>
</data>
<data name="&gt;&gt;LblRateUpItems1.ZOrder" xml:space="preserve">
<value>15</value>
<value>16</value>
</data>
<data name="ListPurplePool.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 19</value>
@@ -1230,21 +1257,24 @@
<data name="&gt;&gt;LblGachaTypeTip.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;LblSoftPity.ZOrder" xml:space="preserve">
<value>12</value>
</data>
<data name="NUDHardPity.Size" type="System.Drawing.Size, System.Drawing">
<value>100, 23</value>
</data>
<data name="NUDEndTime.TabIndex" type="System.Int32, mscorlib">
<value>62</value>
</data>
<data name="LblSortId.TabIndex" type="System.Int32, mscorlib">
<value>75</value>
</data>
<data name="&gt;&gt;LblSoftPityTip.ZOrder" xml:space="preserve">
<value>27</value>
<value>28</value>
</data>
<data name="TxtRateUpItems1.TabIndex" type="System.Int32, mscorlib">
<value>65</value>
</data>
<data name="GrpJson.Location" type="System.Drawing.Point, System.Drawing">
<value>624, 12</value>
</data>
<data name="&gt;&gt;ListPurplePool.ZOrder" xml:space="preserve">
<value>0</value>
</data>
@@ -1266,6 +1296,9 @@
<data name="GrpYellowPool.Text" xml:space="preserve">
<value>5星活动奖池</value>
</data>
<data name="LblBeginTime.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="&gt;&gt;NUDBaseYellowWeight.Name" xml:space="preserve">
<value>NUDBaseYellowWeight</value>
</data>
@@ -1293,11 +1326,8 @@
<data name="NUDScheduleId.Size" type="System.Drawing.Size, System.Drawing">
<value>100, 23</value>
</data>
<data name="&gt;&gt;LblEventChance.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<data name="LblEventChanceTip.TabIndex" type="System.Int32, mscorlib">
<value>89</value>
<data name="LblBeginTime.Text" xml:space="preserve">
<value>开始时间</value>
</data>
<data name="&gt;&gt;GrpJson.Type" xml:space="preserve">
<value>System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
@@ -1338,17 +1368,14 @@
<data name="GrpYellowPool.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Left, Right</value>
</data>
<data name="&gt;&gt;LblGachaTypeTip.Name" xml:space="preserve">
<value>LblGachaTypeTip</value>
</data>
<data name="LblScheduleId.TabIndex" type="System.Int32, mscorlib">
<value>53</value>
</data>
<data name="LblCostItem.TabIndex" type="System.Int32, mscorlib">
<value>80</value>
</data>
<data name="&gt;&gt;LblHardPity.Parent" xml:space="preserve">
<value>GrpBannerValues</value>
<data name="&gt;&gt;CmbBannerType.ZOrder" xml:space="preserve">
<value>30</value>
</data>
<data name="NUDBaseYellowWeight.TabIndex" type="System.Int32, mscorlib">
<value>66</value>

View File

@@ -58,6 +58,7 @@ namespace GrasscutterTools
this.BtnSaveCustomCommand = new System.Windows.Forms.Button();
this.TxtCustomName = new System.Windows.Forms.TextBox();
this.TPArtifact = new System.Windows.Forms.TabPage();
this.BtnAddSubAttr = new System.Windows.Forms.Button();
this.LblArtifactName = new System.Windows.Forms.Label();
this.NUDArtifactStars = new System.Windows.Forms.NumericUpDown();
this.LblArtifactStars = new System.Windows.Forms.Label();
@@ -66,7 +67,6 @@ namespace GrasscutterTools
this.CmbArtifactSet = new System.Windows.Forms.ComboBox();
this.LblArtifactSet = new System.Windows.Forms.Label();
this.LblArtifactLevelTip = new System.Windows.Forms.Label();
this.LblAddSubAttr = new System.Windows.Forms.Label();
this.NUDSubAttributionTimes = new System.Windows.Forms.NumericUpDown();
this.CmbSubAttributionValue = new System.Windows.Forms.ComboBox();
this.CmbSubAttribution = new System.Windows.Forms.ComboBox();
@@ -188,13 +188,20 @@ namespace GrasscutterTools
this.LblServerVersionLabel = new System.Windows.Forms.Label();
this.LblPlayerCountLabel = new System.Windows.Forms.Label();
this.GrpRemoteCommand = new System.Windows.Forms.GroupBox();
this.TPOpenCommandCheck = new System.Windows.Forms.TabControl();
this.TPPlayerCheck = new System.Windows.Forms.TabPage();
this.LnkRCHelp = new System.Windows.Forms.LinkLabel();
this.BtnConnectOpenCommand = new System.Windows.Forms.Button();
this.BtnSendVerificationCode = new System.Windows.Forms.Button();
this.LblRemotePlayerId = new System.Windows.Forms.Label();
this.NUDVerificationCode = new System.Windows.Forms.NumericUpDown();
this.LblVerificationCode = new System.Windows.Forms.Label();
this.NUDRemotePlayerId = new System.Windows.Forms.NumericUpDown();
this.BtnConnectOpenCommand = new System.Windows.Forms.Button();
this.LblVerificationCode = new System.Windows.Forms.Label();
this.BtnSendVerificationCode = new System.Windows.Forms.Button();
this.NUDVerificationCode = new System.Windows.Forms.NumericUpDown();
this.LblRemotePlayerId = new System.Windows.Forms.Label();
this.TPConsoleCheck = new System.Windows.Forms.TabPage();
this.LblConsoleTip = new System.Windows.Forms.Label();
this.BtnConsoleConnect = new System.Windows.Forms.Button();
this.TxtToken = new System.Windows.Forms.TextBox();
this.LblToken = new System.Windows.Forms.Label();
this.TxtHost = new System.Windows.Forms.TextBox();
this.BtnQueryServerStatus = new System.Windows.Forms.Button();
this.LblHost = new System.Windows.Forms.Label();
@@ -248,8 +255,11 @@ namespace GrasscutterTools
this.TPRemoteCall.SuspendLayout();
this.GrpServerStatus.SuspendLayout();
this.GrpRemoteCommand.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.NUDVerificationCode)).BeginInit();
this.TPOpenCommandCheck.SuspendLayout();
this.TPPlayerCheck.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.NUDRemotePlayerId)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.NUDVerificationCode)).BeginInit();
this.TPConsoleCheck.SuspendLayout();
this.SuspendLayout();
//
// TxtCommand
@@ -485,6 +495,7 @@ namespace GrasscutterTools
// TPArtifact
//
resources.ApplyResources(this.TPArtifact, "TPArtifact");
this.TPArtifact.Controls.Add(this.BtnAddSubAttr);
this.TPArtifact.Controls.Add(this.LblArtifactName);
this.TPArtifact.Controls.Add(this.NUDArtifactStars);
this.TPArtifact.Controls.Add(this.LblArtifactStars);
@@ -493,7 +504,6 @@ namespace GrasscutterTools
this.TPArtifact.Controls.Add(this.CmbArtifactSet);
this.TPArtifact.Controls.Add(this.LblArtifactSet);
this.TPArtifact.Controls.Add(this.LblArtifactLevelTip);
this.TPArtifact.Controls.Add(this.LblAddSubAttr);
this.TPArtifact.Controls.Add(this.NUDSubAttributionTimes);
this.TPArtifact.Controls.Add(this.CmbSubAttributionValue);
this.TPArtifact.Controls.Add(this.CmbSubAttribution);
@@ -508,6 +518,14 @@ namespace GrasscutterTools
this.TTip.SetToolTip(this.TPArtifact, resources.GetString("TPArtifact.ToolTip"));
this.TPArtifact.UseVisualStyleBackColor = true;
//
// BtnAddSubAttr
//
resources.ApplyResources(this.BtnAddSubAttr, "BtnAddSubAttr");
this.BtnAddSubAttr.Name = "BtnAddSubAttr";
this.TTip.SetToolTip(this.BtnAddSubAttr, resources.GetString("BtnAddSubAttr.ToolTip"));
this.BtnAddSubAttr.UseVisualStyleBackColor = true;
this.BtnAddSubAttr.Click += new System.EventHandler(this.BtnAddSubAttr_Click);
//
// LblArtifactName
//
resources.ApplyResources(this.LblArtifactName, "LblArtifactName");
@@ -581,15 +599,6 @@ namespace GrasscutterTools
this.LblArtifactLevelTip.Name = "LblArtifactLevelTip";
this.TTip.SetToolTip(this.LblArtifactLevelTip, resources.GetString("LblArtifactLevelTip.ToolTip"));
//
// LblAddSubAttr
//
resources.ApplyResources(this.LblAddSubAttr, "LblAddSubAttr");
this.LblAddSubAttr.Cursor = System.Windows.Forms.Cursors.Hand;
this.LblAddSubAttr.ForeColor = System.Drawing.SystemColors.Highlight;
this.LblAddSubAttr.Name = "LblAddSubAttr";
this.TTip.SetToolTip(this.LblAddSubAttr, resources.GetString("LblAddSubAttr.ToolTip"));
this.LblAddSubAttr.Click += new System.EventHandler(this.LblAddSubAttr_Click);
//
// NUDSubAttributionTimes
//
resources.ApplyResources(this.NUDSubAttributionTimes, "NUDSubAttributionTimes");
@@ -1791,17 +1800,34 @@ namespace GrasscutterTools
// GrpRemoteCommand
//
resources.ApplyResources(this.GrpRemoteCommand, "GrpRemoteCommand");
this.GrpRemoteCommand.Controls.Add(this.LnkRCHelp);
this.GrpRemoteCommand.Controls.Add(this.BtnConnectOpenCommand);
this.GrpRemoteCommand.Controls.Add(this.BtnSendVerificationCode);
this.GrpRemoteCommand.Controls.Add(this.LblRemotePlayerId);
this.GrpRemoteCommand.Controls.Add(this.NUDVerificationCode);
this.GrpRemoteCommand.Controls.Add(this.LblVerificationCode);
this.GrpRemoteCommand.Controls.Add(this.NUDRemotePlayerId);
this.GrpRemoteCommand.Controls.Add(this.TPOpenCommandCheck);
this.GrpRemoteCommand.Name = "GrpRemoteCommand";
this.GrpRemoteCommand.TabStop = false;
this.TTip.SetToolTip(this.GrpRemoteCommand, resources.GetString("GrpRemoteCommand.ToolTip"));
//
// TPOpenCommandCheck
//
resources.ApplyResources(this.TPOpenCommandCheck, "TPOpenCommandCheck");
this.TPOpenCommandCheck.Controls.Add(this.TPPlayerCheck);
this.TPOpenCommandCheck.Controls.Add(this.TPConsoleCheck);
this.TPOpenCommandCheck.Name = "TPOpenCommandCheck";
this.TPOpenCommandCheck.SelectedIndex = 0;
this.TTip.SetToolTip(this.TPOpenCommandCheck, resources.GetString("TPOpenCommandCheck.ToolTip"));
//
// TPPlayerCheck
//
resources.ApplyResources(this.TPPlayerCheck, "TPPlayerCheck");
this.TPPlayerCheck.Controls.Add(this.LnkRCHelp);
this.TPPlayerCheck.Controls.Add(this.NUDRemotePlayerId);
this.TPPlayerCheck.Controls.Add(this.BtnConnectOpenCommand);
this.TPPlayerCheck.Controls.Add(this.LblVerificationCode);
this.TPPlayerCheck.Controls.Add(this.BtnSendVerificationCode);
this.TPPlayerCheck.Controls.Add(this.NUDVerificationCode);
this.TPPlayerCheck.Controls.Add(this.LblRemotePlayerId);
this.TPPlayerCheck.Name = "TPPlayerCheck";
this.TTip.SetToolTip(this.TPPlayerCheck, resources.GetString("TPPlayerCheck.ToolTip"));
this.TPPlayerCheck.UseVisualStyleBackColor = true;
//
// LnkRCHelp
//
resources.ApplyResources(this.LnkRCHelp, "LnkRCHelp");
@@ -1810,6 +1836,22 @@ namespace GrasscutterTools
this.TTip.SetToolTip(this.LnkRCHelp, resources.GetString("LnkRCHelp.ToolTip"));
this.LnkRCHelp.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.LnkRCHelp_LinkClicked);
//
// NUDRemotePlayerId
//
resources.ApplyResources(this.NUDRemotePlayerId, "NUDRemotePlayerId");
this.NUDRemotePlayerId.Maximum = new decimal(new int[] {
2147483647,
0,
0,
0});
this.NUDRemotePlayerId.Name = "NUDRemotePlayerId";
this.TTip.SetToolTip(this.NUDRemotePlayerId, resources.GetString("NUDRemotePlayerId.ToolTip"));
this.NUDRemotePlayerId.Value = new decimal(new int[] {
10001,
0,
0,
0});
//
// BtnConnectOpenCommand
//
resources.ApplyResources(this.BtnConnectOpenCommand, "BtnConnectOpenCommand");
@@ -1818,6 +1860,12 @@ namespace GrasscutterTools
this.BtnConnectOpenCommand.UseVisualStyleBackColor = true;
this.BtnConnectOpenCommand.Click += new System.EventHandler(this.BtnConnectOpenCommand_Click);
//
// LblVerificationCode
//
resources.ApplyResources(this.LblVerificationCode, "LblVerificationCode");
this.LblVerificationCode.Name = "LblVerificationCode";
this.TTip.SetToolTip(this.LblVerificationCode, resources.GetString("LblVerificationCode.ToolTip"));
//
// BtnSendVerificationCode
//
resources.ApplyResources(this.BtnSendVerificationCode, "BtnSendVerificationCode");
@@ -1826,12 +1874,6 @@ namespace GrasscutterTools
this.BtnSendVerificationCode.UseVisualStyleBackColor = true;
this.BtnSendVerificationCode.Click += new System.EventHandler(this.BtnSendVerificationCode_Click);
//
// LblRemotePlayerId
//
resources.ApplyResources(this.LblRemotePlayerId, "LblRemotePlayerId");
this.LblRemotePlayerId.Name = "LblRemotePlayerId";
this.TTip.SetToolTip(this.LblRemotePlayerId, resources.GetString("LblRemotePlayerId.ToolTip"));
//
// NUDVerificationCode
//
resources.ApplyResources(this.NUDVerificationCode, "NUDVerificationCode");
@@ -1853,27 +1895,48 @@ namespace GrasscutterTools
0,
0});
//
// LblVerificationCode
// LblRemotePlayerId
//
resources.ApplyResources(this.LblVerificationCode, "LblVerificationCode");
this.LblVerificationCode.Name = "LblVerificationCode";
this.TTip.SetToolTip(this.LblVerificationCode, resources.GetString("LblVerificationCode.ToolTip"));
resources.ApplyResources(this.LblRemotePlayerId, "LblRemotePlayerId");
this.LblRemotePlayerId.Name = "LblRemotePlayerId";
this.TTip.SetToolTip(this.LblRemotePlayerId, resources.GetString("LblRemotePlayerId.ToolTip"));
//
// NUDRemotePlayerId
// TPConsoleCheck
//
resources.ApplyResources(this.NUDRemotePlayerId, "NUDRemotePlayerId");
this.NUDRemotePlayerId.Maximum = new decimal(new int[] {
2147483647,
0,
0,
0});
this.NUDRemotePlayerId.Name = "NUDRemotePlayerId";
this.TTip.SetToolTip(this.NUDRemotePlayerId, resources.GetString("NUDRemotePlayerId.ToolTip"));
this.NUDRemotePlayerId.Value = new decimal(new int[] {
10001,
0,
0,
0});
resources.ApplyResources(this.TPConsoleCheck, "TPConsoleCheck");
this.TPConsoleCheck.Controls.Add(this.LblConsoleTip);
this.TPConsoleCheck.Controls.Add(this.BtnConsoleConnect);
this.TPConsoleCheck.Controls.Add(this.TxtToken);
this.TPConsoleCheck.Controls.Add(this.LblToken);
this.TPConsoleCheck.Name = "TPConsoleCheck";
this.TTip.SetToolTip(this.TPConsoleCheck, resources.GetString("TPConsoleCheck.ToolTip"));
this.TPConsoleCheck.UseVisualStyleBackColor = true;
//
// LblConsoleTip
//
resources.ApplyResources(this.LblConsoleTip, "LblConsoleTip");
this.LblConsoleTip.Name = "LblConsoleTip";
this.TTip.SetToolTip(this.LblConsoleTip, resources.GetString("LblConsoleTip.ToolTip"));
//
// BtnConsoleConnect
//
resources.ApplyResources(this.BtnConsoleConnect, "BtnConsoleConnect");
this.BtnConsoleConnect.Name = "BtnConsoleConnect";
this.TTip.SetToolTip(this.BtnConsoleConnect, resources.GetString("BtnConsoleConnect.ToolTip"));
this.BtnConsoleConnect.UseVisualStyleBackColor = true;
this.BtnConsoleConnect.Click += new System.EventHandler(this.BtnConsoleConnect_Click);
//
// TxtToken
//
resources.ApplyResources(this.TxtToken, "TxtToken");
this.TxtToken.Name = "TxtToken";
this.TTip.SetToolTip(this.TxtToken, resources.GetString("TxtToken.ToolTip"));
//
// LblToken
//
resources.ApplyResources(this.LblToken, "LblToken");
this.LblToken.Name = "LblToken";
this.TTip.SetToolTip(this.LblToken, resources.GetString("LblToken.ToolTip"));
//
// TxtHost
//
@@ -1977,9 +2040,13 @@ namespace GrasscutterTools
this.GrpServerStatus.ResumeLayout(false);
this.GrpServerStatus.PerformLayout();
this.GrpRemoteCommand.ResumeLayout(false);
this.GrpRemoteCommand.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.NUDVerificationCode)).EndInit();
this.TPOpenCommandCheck.ResumeLayout(false);
this.TPPlayerCheck.ResumeLayout(false);
this.TPPlayerCheck.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.NUDRemotePlayerId)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.NUDVerificationCode)).EndInit();
this.TPConsoleCheck.ResumeLayout(false);
this.TPConsoleCheck.PerformLayout();
this.ResumeLayout(false);
}
@@ -2073,7 +2140,6 @@ namespace GrasscutterTools
private System.Windows.Forms.NumericUpDown NUDSubAttributionTimes;
private System.Windows.Forms.ComboBox CmbSubAttributionValue;
private System.Windows.Forms.ComboBox CmbSubAttribution;
private System.Windows.Forms.Label LblAddSubAttr;
private System.Windows.Forms.Label LblArtifactLevelTip;
private System.Windows.Forms.GroupBox GrpSpawnRecord;
private System.Windows.Forms.Button BtnRemoveSpawnLog;
@@ -2154,6 +2220,14 @@ namespace GrasscutterTools
private System.Windows.Forms.CheckBox ChkQuestFilterTEST;
private System.Windows.Forms.CheckBox ChkQuestFilterUNRELEASED;
private System.Windows.Forms.CheckBox ChkQuestFilterHIDDEN;
private System.Windows.Forms.Button BtnAddSubAttr;
private System.Windows.Forms.TabControl TPOpenCommandCheck;
private System.Windows.Forms.TabPage TPPlayerCheck;
private System.Windows.Forms.TabPage TPConsoleCheck;
private System.Windows.Forms.Button BtnConsoleConnect;
private System.Windows.Forms.TextBox TxtToken;
private System.Windows.Forms.Label LblToken;
private System.Windows.Forms.Label LblConsoleTip;
}
}

View File

@@ -40,17 +40,18 @@ namespace GrasscutterTools
{
InitializeComponent();
Icon = Resources.IconGrasscutter;
LoadVersion();
LoadSettings();
LoadUpdate();
}
private void FormMain_Load(object sender, EventArgs e)
{
MultiLanguage.LoadLanguage(this, typeof(FormMain));
Version version = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version;
#if DEBUG
Text += " - by jie65535 - v" + version.ToString(3) + "-debug";
Text += " - by jie65535 - v" + AppVersion.ToString(3) + "-debug";
#else
Text += " - by jie65535 - v" + version.ToString(3);
Text += " - by jie65535 - v" + AppVersion.ToString(3);
#endif
GameData.LoadResources();
@@ -75,6 +76,13 @@ namespace GrasscutterTools
private readonly string[] LanguageNames = new string[] { "简体中文", "English" };
private readonly string[] Languages = new string[] { "zh-CN", "en-US" };
private Version AppVersion;
private void LoadVersion()
{
AppVersion = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version;
}
private void LoadSettings()
{
try
@@ -85,11 +93,10 @@ namespace GrasscutterTools
CmbLanguage.Items.AddRange(LanguageNames);
CmbLanguage.SelectedIndex = Array.IndexOf(Languages, Settings.Default.DefaultLanguage);
NUDRemotePlayerId.Value = Settings.Default.RemoteUid;
TxtHost.Text = Settings.Default.Host;
InitGiveItemRecord();
InitSpawnRecord();
InitOpenCommand();
}
catch (Exception ex)
{
@@ -103,11 +110,10 @@ namespace GrasscutterTools
{
Settings.Default.AutoCopy = ChkAutoCopy.Checked;
Settings.Default.Uid = NUDUid.Value;
Settings.Default.RemoteUid = NUDRemotePlayerId.Value;
Settings.Default.Host = TxtHost.Text;
SaveCustomCommands();
SaveGiveItemRecord();
SaveSpawnRecord();
SaveOpenCommand();
Settings.Default.Save();
}
catch (Exception ex)
@@ -116,6 +122,42 @@ namespace GrasscutterTools
}
}
private void LoadUpdate()
{
Task.Run(() =>
{
try
{
var info = Github.ReleaseAPI.GetReleasesLastest("jie65535", "GrasscutterCommandGenerator").Result;
if (Version.TryParse(info.TagName.Substring(1), out Version lastestVersion) && AppVersion < lastestVersion)
{
if (!string.IsNullOrEmpty(Settings.Default.CheckedLastVersion)
&& Version.TryParse(Settings.Default.CheckedLastVersion, out Version checkedVersion)
&& checkedVersion >= lastestVersion)
return;
BeginInvoke(new Action(() =>
{
var r = MessageBox.Show(
string.Format(Resources.NewVersionInfo, info.Name, info.CraeteTime.ToLocalTime(), info.Body),
Resources.CheckToNewVersion,
MessageBoxButtons.YesNo,
MessageBoxIcon.Information);
if (r == DialogResult.Yes)
System.Diagnostics.Process.Start(info.Url);
else if (r == DialogResult.No)
Settings.Default.CheckedLastVersion = lastestVersion.ToString();
}));
}
}
catch (Exception)
{
#if DEBUG
throw;
#endif
}
});
}
#endregion - -
#region - -
@@ -316,6 +358,8 @@ namespace GrasscutterTools
private Dictionary<string, List<KeyValuePair<int, string>>> subAttrs;
private string[] ArtifactPartLabels;
private void InitArtifactList()
{
CmbArtifactSet.Items.Clear();
@@ -339,6 +383,8 @@ namespace GrasscutterTools
}
CmbSubAttribution.Items.Clear();
CmbSubAttribution.Items.AddRange(subAttrs.Keys.ToArray());
ArtifactPartLabels = Resources.ArtifactPartLabels.Split(',');
}
private void CmbSubAttribution_SelectedIndexChanged(object sender, EventArgs e)
@@ -351,7 +397,7 @@ namespace GrasscutterTools
}
}
private void LblAddSubAttr_Click(object sender, EventArgs e)
private void BtnAddSubAttr_Click(object sender, EventArgs e)
{
if (CmbSubAttribution.SelectedIndex >= 0 && CmbSubAttributionValue.SelectedIndex >= 0)
{
@@ -384,8 +430,6 @@ namespace GrasscutterTools
ArtifactInputChanged(sender, e);
}
private readonly string[] ArtifactPartLabels = new string[] { "空之杯", "死之羽", "理之冠", "生之花", "时之沙" };
private void CmbArtifactPart_SelectedIndexChanged(object sender, EventArgs e)
{
if (CmbArtifactPart.SelectedIndex < 0)
@@ -395,8 +439,11 @@ namespace GrasscutterTools
}
var name = CmbArtifactPart.SelectedItem as string;
var id = GameData.Artifacts.Ids[Array.IndexOf(GameData.Artifacts.Names, name)];
LblArtifactName.Text = ArtifactPartLabels[id / 10 % 10 - 1];
var pardIndex = id / 10 % 10 - 1;
if (pardIndex < ArtifactPartLabels?.Length)
LblArtifactName.Text = ArtifactPartLabels[pardIndex];
else
LblArtifactName.Text = "";
ArtifactInputChanged(sender, e);
}
@@ -969,6 +1016,29 @@ namespace GrasscutterTools
private OpenCommandAPI OC;
private void InitOpenCommand()
{
NUDRemotePlayerId.Value = Settings.Default.RemoteUid;
TxtHost.Text = Settings.Default.Host;
if (!string.IsNullOrEmpty(Settings.Default.Host) && !string.IsNullOrEmpty(Settings.Default.TokenCache))
{
OC = new OpenCommandAPI(Settings.Default.Host, Settings.Default.TokenCache);
TxtToken.Text = Settings.Default.TokenCache;
Task.Run(async () =>
{
await Task.Delay(1000);
BeginInvoke(new Action(() => ShowTip("已从缓存中恢复Token", BtnInvokeOpenCommand)));
});
}
}
private void SaveOpenCommand()
{
Settings.Default.RemoteUid = NUDRemotePlayerId.Value;
Settings.Default.Host = TxtHost.Text;
Settings.Default.TokenCache = OC?.Token;
}
private async void BtnQueryServerStatus_Click(object sender, EventArgs e)
{
var btn = sender as Button;
@@ -1065,6 +1135,17 @@ namespace GrasscutterTools
}
}
private void BtnConsoleConnect_Click(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(TxtToken.Text))
{
MessageBox.Show("Token不能为空", Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
OC.Token = TxtToken.Text;
BtnConnectOpenCommand_Click(sender, e);
}
private void OnOpenCommandInvoke()
{
BtnInvokeOpenCommand_Click(BtnInvokeOpenCommand, EventArgs.Empty);
@@ -1089,7 +1170,7 @@ namespace GrasscutterTools
try
{
var msg = await OC.Invoke(cmd);
ShowTip(msg, btn);
ShowTip(string.IsNullOrEmpty(msg) ? "OK" : msg, btn);
}
catch (Exception ex)
{
@@ -1159,5 +1240,6 @@ namespace GrasscutterTools
}
#endregion - -
}
}

View File

@@ -217,6 +217,9 @@
<data name="TPArtifact.Text" xml:space="preserve">
<value>Artifact</value>
</data>
<data name="BtnAddSubAttr.Text" xml:space="preserve">
<value>+ Add</value>
</data>
<data name="LblArtifactStars.Location" type="System.Drawing.Point, System.Drawing">
<value>298, 41</value>
</data>
@@ -802,6 +805,9 @@ Tip: Most of the scenes have no effect and cannot be entered.</value>
<data name="GrpRemoteCommand.Text" xml:space="preserve">
<value>Remote Cell</value>
</data>
<data name="TPPlayerCheck.Text" xml:space="preserve">
<value>Player</value>
</data>
<data name="LnkRCHelp.Size" type="System.Drawing.Size, System.Drawing">
<value>35, 17</value>
</data>
@@ -811,15 +817,27 @@ Tip: Most of the scenes have no effect and cannot be entered.</value>
<data name="BtnConnectOpenCommand.Text" xml:space="preserve">
<value>Connect</value>
</data>
<data name="BtnSendVerificationCode.Text" xml:space="preserve">
<value>Send Code</value>
</data>
<data name="LblVerificationCode.Size" type="System.Drawing.Size, System.Drawing">
<value>39, 17</value>
</data>
<data name="LblVerificationCode.Text" xml:space="preserve">
<value>Code</value>
</data>
<data name="BtnSendVerificationCode.Text" xml:space="preserve">
<value>Send Code</value>
</data>
<data name="TPConsoleCheck.Text" xml:space="preserve">
<value>Console</value>
</data>
<data name="LblConsoleTip.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<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="BtnConsoleConnect.Text" xml:space="preserve">
<value>Connect</value>
</data>
<data name="TxtHost.Size" type="System.Drawing.Size, System.Drawing">
<value>167, 23</value>
</data>
@@ -838,7 +856,4 @@ Tip: Most of the scenes have no effect and cannot be entered.</value>
<data name="LblHost.Text" xml:space="preserve">
<value>Host</value>
</data>
<data name="$this.Text" xml:space="preserve">
<value>GrasscutterTools</value>
</data>
</root>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,46 @@
using System;
using System.Net.Http.Headers;
using System.Threading.Tasks;
using GrasscutterTools.Utils;
namespace GrasscutterTools.Github
{
public static class ReleaseAPI
{
public static async Task<ReleaseInfo> GetReleasesLastest(string username, string repo)
{
var headerValue = new ProductInfoHeaderValue("GrasscutterTools", "1");
try
{
HttpHelper.HttpClient.DefaultRequestHeaders.UserAgent.Add(headerValue);
var r = await HttpHelper.GetAsync<dynamic>($"https://api.github.com/repos/{username}/{repo}/releases/latest");
return new ReleaseInfo
{
TagName = r.tag_name,
Url = r.html_url,
CraeteTime = r.created_at,
Name = r.name,
Body = r.body
};
}
finally
{
HttpHelper.HttpClient.DefaultRequestHeaders.UserAgent.Remove(headerValue);
}
}
public class ReleaseInfo
{
public string TagName { get; set; }
public string Url { get; set; }
public DateTimeOffset CraeteTime { get; set; }
public string Name { get; set; }
public string Body { get; set; }
}
}
}

View File

@@ -222,6 +222,7 @@
<Compile Include="Game\ItemMap.cs" />
<Compile Include="Game\SetStatsCommand.cs" />
<Compile Include="Game\TextMapData.cs" />
<Compile Include="Github\ReleaseAPI.cs" />
<Compile Include="OpenCommand\OpenCommandAPI.cs" />
<Compile Include="MultiLanguage.cs" />
<Compile Include="Program.cs" />

View File

@@ -27,10 +27,12 @@ namespace GrasscutterTools.OpenCommand
{
public class OpenCommandAPI
{
public OpenCommandAPI(string host)
public OpenCommandAPI(string host, string token = "")
{
Host = host;
API = host + "/opencommand/api";
Token = token;
CanInvoke = !string.IsNullOrEmpty(token);
}
public string Host { get; }

View File

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

View File

@@ -247,6 +247,15 @@ namespace GrasscutterTools.Properties {
}
}
/// <summary>
/// 查找类似 空之杯,死之羽,理之冠,生之花,时之沙 的本地化字符串。
/// </summary>
internal static string ArtifactPartLabels {
get {
return ResourceManager.GetString("ArtifactPartLabels", resourceCulture);
}
}
/// <summary>
/// 查找类似 101021: 生命值+24
///101022: 生命值+30
@@ -403,6 +412,15 @@ namespace GrasscutterTools.Properties {
}
}
/// <summary>
/// 查找类似 检查到新版本 的本地化字符串。
/// </summary>
internal static string CheckToNewVersion {
get {
return ResourceManager.GetString("CheckToNewVersion", resourceCulture);
}
}
/// <summary>
/// 查找类似 无,晴天,多云,雨天,雷暴,雪天,雾天 的本地化字符串。
/// </summary>
@@ -469,6 +487,8 @@ namespace GrasscutterTools.Properties {
/// <summary>
/// 查找类似 无敌
////godmode
///无限耐力
////nostamina
///升到60级
////give 102 1880200
///奶
@@ -514,7 +534,7 @@ namespace GrasscutterTools.Properties {
///自杀
////killcharacter
///暗杀
////killcharacter &lt;pla [字符串的其余部分被截断]&quot;; 的本地化字符串。
//// [字符串的其余部分被截断]&quot;; 的本地化字符串。
/// </summary>
internal static string CustomCommands {
get {
@@ -715,6 +735,20 @@ namespace GrasscutterTools.Properties {
}
}
/// <summary>
/// 查找类似 版本名:{0}
///更新时间:{1}
///更新内容:
///{2}
///--------------------------------------------
///是否查看更新?选择否将不再提醒该版本。 的本地化字符串。
/// </summary>
internal static string NewVersionInfo {
get {
return ResourceManager.GetString("NewVersionInfo", resourceCulture);
}
}
/// <summary>
/// 查找类似 1: (test)蒙德城主$UNRELEASED
///2: (test)哥哥$UNRELEASED

View File

@@ -130,6 +130,9 @@
<data name="ArtifactMainAttribution" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\en-us\ArtifactMainAttribution.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8</value>
</data>
<data name="ArtifactPartLabels" xml:space="preserve">
<value>空之杯,死之羽,理之冠,生之花,时之沙</value>
</data>
<data name="ArtifactSubAttribution" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\en-us\ArtifactSubAttribution.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8</value>
</data>
@@ -148,6 +151,9 @@
<data name="BrowserOpenFailedTip" xml:space="preserve">
<value>The browser failed to open. You can manually access the following address:</value>
</data>
<data name="CheckToNewVersion" xml:space="preserve">
<value>Check to new version</value>
</data>
<data name="ClimateType" xml:space="preserve">
<value>None,Sunny,Partly cloudy,Rain,Thunderstorm,Snow,Fog</value>
</data>
@@ -196,6 +202,14 @@
<data name="Monster" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\en-us\Monster.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8</value>
</data>
<data name="NewVersionInfo" xml:space="preserve">
<value>Name : {0}
Update time : {1}
Update info :
{2}
-------------------------------------------
Do you want to check for updates? Selecting No will no longer remind you of this version.</value>
</data>
<data name="NPC" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\en-us\NPC.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8</value>
</data>

View File

@@ -130,6 +130,9 @@
<data name="ArtifactMainAttribution" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\zh-cn\ArtifactMainAttribution.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8</value>
</data>
<data name="ArtifactPartLabels" xml:space="preserve">
<value>空之杯,死之羽,理之冠,生之花,时之沙</value>
</data>
<data name="ArtifactSubAttribution" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\zh-cn\ArtifactSubAttribution.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8</value>
</data>
@@ -148,6 +151,9 @@
<data name="BrowserOpenFailedTip" xml:space="preserve">
<value>浏览器打开失败,你可以通过以下链接手动访问:</value>
</data>
<data name="CheckToNewVersion" xml:space="preserve">
<value>检查到新版本</value>
</data>
<data name="ClimateType" xml:space="preserve">
<value>无,晴天,多云,雨天,雷暴,雪天,雾天</value>
</data>
@@ -199,6 +205,14 @@
<data name="Monster" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\zh-cn\Monster.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8</value>
</data>
<data name="NewVersionInfo" xml:space="preserve">
<value>版本名:{0}
更新时间:{1}
更新内容:
{2}
--------------------------------------------
是否查看更新?选择否将不再提醒该版本。</value>
</data>
<data name="NPC" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\zh-cn\NPC.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8</value>
</data>

View File

@@ -106,5 +106,29 @@ namespace GrasscutterTools.Properties {
this["Host"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string CheckedLastVersion {
get {
return ((string)(this["CheckedLastVersion"]));
}
set {
this["CheckedLastVersion"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string TokenCache {
get {
return ((string)(this["TokenCache"]));
}
set {
this["TokenCache"] = value;
}
}
}
}

View File

@@ -23,5 +23,11 @@
<Setting Name="Host" Type="System.String" Scope="User">
<Value Profile="(Default)">https://127.0.0.1</Value>
</Setting>
<Setting Name="CheckedLastVersion" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="TokenCache" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
</Settings>
</SettingsFile>

View File

@@ -1,42 +1,42 @@
51: 行者之心
52: 勇士之心
53: 守护之心
54: 奇迹
55: 战狂
56: 武人
57: 教官
58: 赌徒
59: 流放者
60: 冒险家
61: 幸运儿
62: 学士
63: 游医
71: 冰风迷途的勇士
72: 平息鸣雷的尊者
73: 渡过烈火的贤人
74: 被怜爱的少女
75: 角斗士的终幕礼
76: 翠绿之影
77: 流浪大地的乐团
78: 冰之川与雪之砂
79: 如雷的盛怒
80: 炽烈的炎之魔女
81: 昔日宗室之仪
82: 染血的骑士道
83: 祭火之人
84: 祭水之人
85: 祭雷之人
86: 祭风之人
87: 祭冰之人
88: 悠古的磐岩
89: 逆飞的流星
90: 沉沦之心
91: 千岩牢固
92: 苍白之火
93: 追忆之注连
94: 绝缘之旗印
95: 华馆梦醒形骸记
96: 海染砗磲
97: 辰砂往生录
98: 来歆余响
99: 高天的风之主
51: Resolution of Sojourner
52: Brave Heart
53: Defender's Will
54: Tiny Miracle
55: Berserker
56: Martial Artist
57: Instructor
58: Gambler
59: The Exile
60: Adventurer
61: Lucky Dog
62: Scholar
63: Traveling Doctor
71: Blizzard Strayer
72: Thundersoother
73: Lavawalker
74: Maiden Beloved
75: Gladiator's Finale
76: Viridescent Venerer
77: Wanderer's Troupe
78: Glacier and Snowfield
79: Thundering Fury
80: Crimson Witch of Flames
81: Noblesse Oblige
82: Bloodstained Chivalry
83: Prayers for Illumination
84: Prayers for Destiny
85: Prayers for Wisdom
86: Prayers to the Firmament
87: Prayers to Springtime
88: Archaic Petra
89: Retracing Bolide
90: Heart of Depth
91: Tenacity of the Millelith
92: Pale Flame
93: Shimenawa's Reminiscence
94: Emblem of Severed Fate
95: Husk of Opulent Dreams
96: Ocean-Hued Clam
97: Vermillion Hereafter
98: Echoes of an Offering
99: Lord of the Winds

View File

@@ -1,66 +1,66 @@
10001: 生命值
10002: 生命值百分比
10003: 攻击力
10004: 攻击力百分比
10005: 防御力
10006: 防御力百分比
10007: 元素充能效率
10008: 元素精通
10009: 火元素抗性
10010: 雷元素抗性
10011: 冰元素抗性
10012: 水元素抗性
10013: 风元素抗性
10014: 岩元素抗性
10015: 草元素抗性
12001: 攻击力
13001: 生命值
13002: 生命值百分比
13003: 攻击力
13004: 攻击力百分比
13005: 防御力
13006: 防御力百分比
13007: 暴击率
13008: 暴击伤害
13009: 治疗加成
13010: 元素精通
14001: 生命值
15001: 生命值
15002: 生命值百分比
15003: 攻击力
15004: 攻击力百分比
15005: 防御力
15006: 防御力百分比
15007: 元素精通
15008: 火元素伤害加成
15009: 雷元素伤害加成
15010: 冰元素伤害加成
15011: 水元素伤害加成
15012: 风元素伤害加成
15013: 岩元素伤害加成
15014: 草元素伤害加成
15015: 物理伤害加成
10990: 攻击力百分比
10980: 生命值百分比
10970: 防御力百分比
10960: 元素充能效率
10950: 元素精通
30990: 攻击力百分比
30980: 生命值百分比
30970: 防御力百分比
30960: 暴击率
30950: 暴击伤害
30940: 治疗加成
30930: 元素精通
50990: 攻击力百分比
50980: 生命值百分比
50970: 防御力百分比
50960: 火元素伤害加成
50950: 雷元素伤害加成
50940: 冰元素伤害加成
50930: 水元素伤害加成
50920: 风元素伤害加成
50910: 岩元素伤害加成
50900: 草元素伤害加成
50890: 物理伤害加成
50880: 元素精通
10001: HP
10002: HP Percentage
10003: ATK
10004: ATK Percentage
10005: DEF
10006: DEF Percentage
10007: Energy Recharge
10008: Elemental Mastery
10009: Pyro RES
10010: Electro RES
10011: Cryo RES
10012: Hydro RES
10013: Anemo RES
10014: Geo RES
10015: Dendro RES
12001: ATK
13001: HP
13002: HP Percentage
13003: ATK
13004: ATK Percentage
13005: DEF
13006: DEF Percentage
13007: CRIT Rate
13008: CRIT DMG
13009: Healing Bonus
13010: Elemental Mastery
14001: HP
15001: HP
15002: HP Percentage
15003: ATK
15004: ATK Percentage
15005: DEF
15006: DEF Percentage
15007: Elemental Mastery
15008: Pyro DMG Bonus
15009: Electro DMG Bonus
15010: Cryo DMG Bonus
15011: Hydro DMG Bonus
15012: Anemo DMG Bonus
15013: Geo DMG Bonus
15014: Dendro DMG Bonus
15015: Physical DMG Bonus
10990: ATK Percentage
10980: HP Percentage
10970: DEF Percentage
10960: Energy Recharge
10950: Elemental Mastery
30990: ATK Percentage
30980: HP Percentage
30970: DEF Percentage
30960: CRIT Rate
30950: CRIT DMG
30940: Healing Bonus
30930: Elemental Mastery
50990: ATK Percentage
50980: HP Percentage
50970: DEF Percentage
50960: Pyro DMG Bonus
50950: Electro DMG Bonus
50940: Cryo DMG Bonus
50930: Hydro DMG Bonus
50920: Anemo DMG Bonus
50910: Geo DMG Bonus
50900: Dendro DMG Bonus
50890: Physical DMG Bonus
50880: Elemental Mastery

View File

@@ -1,335 +1,335 @@
101021: 生命值+24
101022: 生命值+30
201021: 生命值+50
201022: 生命值+61
201023: 生命值+72
301021: 生命值+100
301022: 生命值+115
301023: 生命值+129
301024: 生命值+143
401021: 生命值+167
401022: 生命值+191
401023: 生命值+215
401024: 生命值+239
501021: 生命值+209
501022: 生命值+239
501023: 生命值+269
501024: 生命值+299
101031: 生命值百分比+1.2%
101032: 生命值百分比+1.5%
201031: 生命值百分比+1.6%
201032: 生命值百分比+2.0%
201033: 生命值百分比+2.3%
301031: 生命值百分比+2.4%
301032: 生命值百分比+2.8%
301033: 生命值百分比+3.2%
301034: 生命值百分比+3.5%
401031: 生命值百分比+3.3%
401032: 生命值百分比+3.7%
401033: 生命值百分比+4.2%
401034: 生命值百分比+4.7%
501031: 生命值百分比+4.1%
501032: 生命值百分比+4.7%
501033: 生命值百分比+5.2%
501034: 生命值百分比+5.8%
101051: 攻击力+2
101052: 攻击力+2
201051: 攻击力+3
201052: 攻击力+4
201053: 攻击力+5
301051: 攻击力+7
301052: 攻击力+7
301053: 攻击力+8
301054: 攻击力+9
401051: 攻击力+11
401052: 攻击力+12
401053: 攻击力+14
401054: 攻击力+16
501051: 攻击力+14
501052: 攻击力+16
501053: 攻击力+18
501054: 攻击力+19
101061: 攻击力百分比+1.2%
101062: 攻击力百分比+1.5%
201061: 攻击力百分比+1.6%
201062: 攻击力百分比+2.0%
201063: 攻击力百分比+2.3%
301061: 攻击力百分比+2.4%
301062: 攻击力百分比+2.8%
301063: 攻击力百分比+3.2%
301064: 攻击力百分比+3.5%
401061: 攻击力百分比+3.3%
401062: 攻击力百分比+3.7%
401063: 攻击力百分比+4.2%
401064: 攻击力百分比+4.7%
501061: 攻击力百分比+4.1%
501062: 攻击力百分比+4.7%
501063: 攻击力百分比+5.2%
501064: 攻击力百分比+5.8%
101081: 防御力+2
101082: 防御力+2
201081: 防御力+4
201082: 防御力+5
201083: 防御力+6
301081: 防御力+8
301082: 防御力+9
301083: 防御力+10
301084: 防御力+11
401081: 防御力+13
401082: 防御力+15
401083: 防御力+17
401084: 防御力+19
501081: 防御力+16
501082: 防御力+19
501083: 防御力+21
501084: 防御力+23
101091: 防御力百分比+1.5%
101092: 防御力百分比+1.8%
201091: 防御力百分比+2.0%
201092: 防御力百分比+2.5%
201093: 防御力百分比+2.9%
301091: 防御力百分比+3.1%
301092: 防御力百分比+3.5%
301093: 防御力百分比+3.9%
301094: 防御力百分比+4.4%
401091: 防御力百分比+4.1%
401092: 防御力百分比+4.7%
401093: 防御力百分比+5.2%
401094: 防御力百分比+5.8%
501091: 防御力百分比+5.1%
501092: 防御力百分比+5.8%
501093: 防御力百分比+6.6%
501094: 防御力百分比+7.3%
101231: 元素充能效率+1.3%
101232: 元素充能效率+1.6%
201231: 元素充能效率+1.8%
201232: 元素充能效率+2.2%
201233: 元素充能效率+2.6%
301231: 元素充能效率+2.7%
301232: 元素充能效率+3.1%
301233: 元素充能效率+3.5%
301234: 元素充能效率+3.9%
401231: 元素充能效率+3.6%
401232: 元素充能效率+4.1%
401233: 元素充能效率+4.7%
401234: 元素充能效率+5.2%
501231: 元素充能效率+4.5%
501232: 元素充能效率+5.2%
501233: 元素充能效率+5.8%
501234: 元素充能效率+6.5%
101241: 元素精通+5
101242: 元素精通+6
201241: 元素精通+7
201242: 元素精通+8
201243: 元素精通+9
301241: 元素精通+10
301242: 元素精通+11
301243: 元素精通+13
301244: 元素精通+14
401241: 元素精通+13
401242: 元素精通+15
401243: 元素精通+17
401244: 元素精通+19
501241: 元素精通+16
501242: 元素精通+19
501243: 元素精通+21
501244: 元素精通+23
101201: 暴击率+0.8%
101202: 暴击率+1.0%
201201: 暴击率+1.1%
201202: 暴击率+1.3%
201203: 暴击率+1.5%
301201: 暴击率+1.6%
301202: 暴击率+1.9%
301203: 暴击率+2.1%
301204: 暴击率+2.3%
401201: 暴击率+2.2%
401202: 暴击率+2.5%
401203: 暴击率+2.8%
401204: 暴击率+3.1%
501201: 暴击率+2.7%
501202: 暴击率+3.1%
501203: 暴击率+3.5%
501204: 暴击率+3.9%
101221: 暴击伤害+1.5%
101222: 暴击伤害+1.9%
201221: 暴击伤害+2.2%
201222: 暴击伤害+2.6%
201223: 暴击伤害+3.1%
301221: 暴击伤害+3.3%
301222: 暴击伤害+3.7%
301223: 暴击伤害+4.2%
301224: 暴击伤害+4.7%
401221: 暴击伤害+4.3%
401222: 暴击伤害+5.0%
401223: 暴击伤害+5.6%
401224: 暴击伤害+6.2%
501221: 暴击伤害+5.4%
501222: 暴击伤害+6.2%
501223: 暴击伤害+7.0%
501224: 暴击伤害+7.8%
999001: 暴击伤害+350.0%
999002: 暴击率+100.0%
999003: 攻击力+233333
999004: 防御力+233333
998001: 生命值百分比+14.6%
998002: 攻击力百分比+14.6%
998003: 防御力百分比+18.2%
998004: 暴击率+9.7%
998005: 元素充能效率+16.2%
998006: 元素精通+58
998007: 暴击伤害+19.4%
995001: 生命值百分比+14.6%
995002: 攻击力百分比+14.6%
995003: 防御力百分比+18.2%
995004: 暴击率+9.7%
995005: 元素充能效率+16.2%
995006: 元素精通+58
995007: 暴击伤害+19.4%
997001: 生命值百分比+9.3%
997002: 攻击力百分比+9.3%
997003: 防御力百分比+11.7%
997004: 暴击率+6.2%
997005: 元素充能效率+10.4%
997006: 元素精通+37
997007: 暴击伤害+12.4%
996001: 生命值百分比+9.3%
996002: 攻击力百分比+9.3%
996003: 防御力百分比+11.7%
996004: 暴击率+6.2%
996005: 元素充能效率+10.4%
996006: 元素精通+37
996007: 暴击伤害+12.4%
994001: 暴击率+80.0%
993001: 暴击伤害+80.0%
992001: 护盾强效+80.0%
991001: 治疗加成+80.0%
990001: 受治疗加成+80.0%
989001: 冷却缩减+50.0%
988001: 移动速度百分比+30.0%
987001: 火元素伤害加成+80.0%
986001: 雷元素伤害加成+80.0%
985001: 水元素伤害加成+80.0%
984001: 草元素伤害加成+80.0%
983001: 风元素伤害加成+80.0%
982001: 岩元素伤害加成+80.0%
981001: 冰元素伤害加成+80.0%
980001: 物理伤害加成+80.0%
979001: 火元素抗性+80.0%
978001: 雷元素抗性+80.0%
977001: 水元素抗性+80.0%
976001: 草元素抗性+80.0%
975001: 风元素抗性+80.0%
974001: 岩元素抗性+80.0%
973001: 冰元素抗性+80.0%
972001: 物理抗性+80.0%
971001: 伤害增加+80.0%
970001: 受伤减免+80.0%
969001: 防御力+-500
968001: 元素精通+-300
951001: 生命值百分比+14.6%
951002: 攻击力百分比+14.6%
951003: 防御力百分比+18.2%
951004: 暴击率+9.7%
951005: 元素充能效率+16.2%
951006: 元素精通+58
951007: 暴击伤害+19.4%
952001: 生命值百分比+14.6%
952002: 攻击力百分比+14.6%
952003: 防御力百分比+18.2%
952004: 暴击率+9.7%
952005: 元素充能效率+16.2%
952006: 元素精通+58
952007: 暴击伤害+19.4%
953001: 生命值百分比+14.6%
953002: 攻击力百分比+14.6%
953003: 防御力百分比+18.2%
953004: 暴击率+9.7%
953005: 元素充能效率+16.2%
953006: 元素精通+58
953007: 暴击伤害+19.4%
956001: 生命值百分比+14.6%
956002: 攻击力百分比+14.6%
956003: 防御力百分比+18.2%
956004: 暴击率+9.7%
956005: 元素充能效率+16.2%
956006: 元素精通+58
956007: 暴击伤害+19.4%
941001: 生命值百分比+9.3%
941002: 攻击力百分比+9.3%
941003: 防御力百分比+11.7%
941004: 暴击率+6.2%
941005: 元素充能效率+10.4%
941006: 元素精通+37
941007: 暴击伤害+12.4%
942001: 生命值百分比+9.3%
942002: 攻击力百分比+9.3%
942003: 防御力百分比+11.7%
942004: 暴击率+6.2%
942005: 元素充能效率+10.4%
942006: 元素精通+37
942007: 暴击伤害+12.4%
943001: 生命值百分比+9.3%
943002: 攻击力百分比+9.3%
943003: 防御力百分比+11.7%
943004: 暴击率+6.2%
943005: 元素充能效率+10.4%
943006: 元素精通+37
943007: 暴击伤害+12.4%
946001: 生命值百分比+9.3%
946002: 攻击力百分比+9.3%
946003: 防御力百分比+11.7%
946004: 暴击率+6.2%
946005: 元素充能效率+10.4%
946006: 元素精通+37
946007: 暴击伤害+12.4%
961001: 生命值百分比+14.6%
961002: 攻击力百分比+14.6%
961003: 防御力百分比+18.2%
961004: 暴击率+9.7%
961005: 元素充能效率+16.2%
961006: 元素精通+58
961007: 暴击伤害+19.4%
961008: 生命值+747
961009: 攻击力+49
961010: 防御力+58
962001: 生命值百分比+14.6%
962002: 攻击力百分比+14.6%
962003: 防御力百分比+18.2%
962004: 暴击率+9.7%
962005: 元素充能效率+16.2%
962006: 元素精通+58
962007: 暴击伤害+19.4%
962008: 生命值+747
962009: 攻击力+49
962010: 防御力+58
963001: 生命值百分比+14.6%
963002: 攻击力百分比+14.6%
963003: 防御力百分比+18.2%
963004: 暴击率+9.7%
963005: 元素充能效率+16.2%
963006: 元素精通+58
963007: 暴击伤害+19.4%
963008: 生命值+747
963009: 攻击力+49
963010: 防御力+58
964001: 生命值百分比+14.6%
964002: 攻击力百分比+14.6%
964003: 防御力百分比+18.2%
964004: 暴击率+9.7%
964005: 元素充能效率+16.2%
964006: 元素精通+58
964007: 暴击伤害+19.4%
964008: 生命值+747
964009: 攻击力+49
964010: 防御力+58
965001: 生命值百分比+14.6%
965002: 攻击力百分比+14.6%
965003: 防御力百分比+18.2%
965004: 暴击率+9.7%
965005: 元素充能效率+16.2%
965006: 元素精通+58
965007: 暴击伤害+19.4%
965008: 生命值+747
965009: 攻击力+49
965010: 防御力+58
101021: HP+24
101022: HP+30
201021: HP+50
201022: HP+61
201023: HP+72
301021: HP+100
301022: HP+115
301023: HP+129
301024: HP+143
401021: HP+167
401022: HP+191
401023: HP+215
401024: HP+239
501021: HP+209
501022: HP+239
501023: HP+269
501024: HP+299
101031: HP Percentage+1.2%
101032: HP Percentage+1.5%
201031: HP Percentage+1.6%
201032: HP Percentage+2.0%
201033: HP Percentage+2.3%
301031: HP Percentage+2.4%
301032: HP Percentage+2.8%
301033: HP Percentage+3.2%
301034: HP Percentage+3.5%
401031: HP Percentage+3.3%
401032: HP Percentage+3.7%
401033: HP Percentage+4.2%
401034: HP Percentage+4.7%
501031: HP Percentage+4.1%
501032: HP Percentage+4.7%
501033: HP Percentage+5.2%
501034: HP Percentage+5.8%
101051: ATK+2
101052: ATK+2
201051: ATK+3
201052: ATK+4
201053: ATK+5
301051: ATK+7
301052: ATK+7
301053: ATK+8
301054: ATK+9
401051: ATK+11
401052: ATK+12
401053: ATK+14
401054: ATK+16
501051: ATK+14
501052: ATK+16
501053: ATK+18
501054: ATK+19
101061: ATK Percentage+1.2%
101062: ATK Percentage+1.5%
201061: ATK Percentage+1.6%
201062: ATK Percentage+2.0%
201063: ATK Percentage+2.3%
301061: ATK Percentage+2.4%
301062: ATK Percentage+2.8%
301063: ATK Percentage+3.2%
301064: ATK Percentage+3.5%
401061: ATK Percentage+3.3%
401062: ATK Percentage+3.7%
401063: ATK Percentage+4.2%
401064: ATK Percentage+4.7%
501061: ATK Percentage+4.1%
501062: ATK Percentage+4.7%
501063: ATK Percentage+5.2%
501064: ATK Percentage+5.8%
101081: DEF+2
101082: DEF+2
201081: DEF+4
201082: DEF+5
201083: DEF+6
301081: DEF+8
301082: DEF+9
301083: DEF+10
301084: DEF+11
401081: DEF+13
401082: DEF+15
401083: DEF+17
401084: DEF+19
501081: DEF+16
501082: DEF+19
501083: DEF+21
501084: DEF+23
101091: DEF Percentage+1.5%
101092: DEF Percentage+1.8%
201091: DEF Percentage+2.0%
201092: DEF Percentage+2.5%
201093: DEF Percentage+2.9%
301091: DEF Percentage+3.1%
301092: DEF Percentage+3.5%
301093: DEF Percentage+3.9%
301094: DEF Percentage+4.4%
401091: DEF Percentage+4.1%
401092: DEF Percentage+4.7%
401093: DEF Percentage+5.2%
401094: DEF Percentage+5.8%
501091: DEF Percentage+5.1%
501092: DEF Percentage+5.8%
501093: DEF Percentage+6.6%
501094: DEF Percentage+7.3%
101231: Energy Recharge+1.3%
101232: Energy Recharge+1.6%
201231: Energy Recharge+1.8%
201232: Energy Recharge+2.2%
201233: Energy Recharge+2.6%
301231: Energy Recharge+2.7%
301232: Energy Recharge+3.1%
301233: Energy Recharge+3.5%
301234: Energy Recharge+3.9%
401231: Energy Recharge+3.6%
401232: Energy Recharge+4.1%
401233: Energy Recharge+4.7%
401234: Energy Recharge+5.2%
501231: Energy Recharge+4.5%
501232: Energy Recharge+5.2%
501233: Energy Recharge+5.8%
501234: Energy Recharge+6.5%
101241: Elemental Mastery+5
101242: Elemental Mastery+6
201241: Elemental Mastery+7
201242: Elemental Mastery+8
201243: Elemental Mastery+9
301241: Elemental Mastery+10
301242: Elemental Mastery+11
301243: Elemental Mastery+13
301244: Elemental Mastery+14
401241: Elemental Mastery+13
401242: Elemental Mastery+15
401243: Elemental Mastery+17
401244: Elemental Mastery+19
501241: Elemental Mastery+16
501242: Elemental Mastery+19
501243: Elemental Mastery+21
501244: Elemental Mastery+23
101201: CRIT Rate+0.8%
101202: CRIT Rate+1.0%
201201: CRIT Rate+1.1%
201202: CRIT Rate+1.3%
201203: CRIT Rate+1.5%
301201: CRIT Rate+1.6%
301202: CRIT Rate+1.9%
301203: CRIT Rate+2.1%
301204: CRIT Rate+2.3%
401201: CRIT Rate+2.2%
401202: CRIT Rate+2.5%
401203: CRIT Rate+2.8%
401204: CRIT Rate+3.1%
501201: CRIT Rate+2.7%
501202: CRIT Rate+3.1%
501203: CRIT Rate+3.5%
501204: CRIT Rate+3.9%
101221: CRIT DMG+1.5%
101222: CRIT DMG+1.9%
201221: CRIT DMG+2.2%
201222: CRIT DMG+2.6%
201223: CRIT DMG+3.1%
301221: CRIT DMG+3.3%
301222: CRIT DMG+3.7%
301223: CRIT DMG+4.2%
301224: CRIT DMG+4.7%
401221: CRIT DMG+4.3%
401222: CRIT DMG+5.0%
401223: CRIT DMG+5.6%
401224: CRIT DMG+6.2%
501221: CRIT DMG+5.4%
501222: CRIT DMG+6.2%
501223: CRIT DMG+7.0%
501224: CRIT DMG+7.8%
999001: CRIT DMG+350.0%
999002: CRIT Rate+100.0%
999003: ATK+233333
999004: DEF+233333
998001: HP Percentage+14.6%
998002: ATK Percentage+14.6%
998003: DEF Percentage+18.2%
998004: CRIT Rate+9.7%
998005: Energy Recharge+16.2%
998006: Elemental Mastery+58
998007: CRIT DMG+19.4%
995001: HP Percentage+14.6%
995002: ATK Percentage+14.6%
995003: DEF Percentage+18.2%
995004: CRIT Rate+9.7%
995005: Energy Recharge+16.2%
995006: Elemental Mastery+58
995007: CRIT DMG+19.4%
997001: HP Percentage+9.3%
997002: ATK Percentage+9.3%
997003: DEF Percentage+11.7%
997004: CRIT Rate+6.2%
997005: Energy Recharge+10.4%
997006: Elemental Mastery+37
997007: CRIT DMG+12.4%
996001: HP Percentage+9.3%
996002: ATK Percentage+9.3%
996003: DEF Percentage+11.7%
996004: CRIT Rate+6.2%
996005: Energy Recharge+10.4%
996006: Elemental Mastery+37
996007: CRIT DMG+12.4%
994001: CRIT Rate+80.0%
993001: CRIT DMG+80.0%
992001: Shield Strength+80.0%
991001: Healing Bonus+80.0%
990001: Incoming Healing Bonus+80.0%
989001: CD Reduction+50.0%
988001: Movement SPD+30.0%
987001: Pyro DMG Bonus+80.0%
986001: Electro DMG Bonus+80.0%
985001: Hydro DMG Bonus+80.0%
984001: Dendro DMG Bonus+80.0%
983001: Anemo DMG Bonus+80.0%
982001: Geo DMG Bonus+80.0%
981001: Cryo DMG Bonus+80.0%
980001: Physical DMG Bonus+80.0%
979001: Pyro RES+80.0%
978001: Electro RES+80.0%
977001: Hydro RES+80.0%
976001: Dendro RES+80.0%
975001: Anemo RES+80.0%
974001: Geo RES+80.0%
973001: Cryo RES+80.0%
972001: Physical RES+80.0%
971001: DMG Bonus+80.0%
970001: DMG Reduction+80.0%
969001: DEF+-500
968001: Elemental Mastery+-300
951001: HP Percentage+14.6%
951002: ATK Percentage+14.6%
951003: DEF Percentage+18.2%
951004: CRIT Rate+9.7%
951005: Energy Recharge+16.2%
951006: Elemental Mastery+58
951007: CRIT DMG+19.4%
952001: HP Percentage+14.6%
952002: ATK Percentage+14.6%
952003: DEF Percentage+18.2%
952004: CRIT Rate+9.7%
952005: Energy Recharge+16.2%
952006: Elemental Mastery+58
952007: CRIT DMG+19.4%
953001: HP Percentage+14.6%
953002: ATK Percentage+14.6%
953003: DEF Percentage+18.2%
953004: CRIT Rate+9.7%
953005: Energy Recharge+16.2%
953006: Elemental Mastery+58
953007: CRIT DMG+19.4%
956001: HP Percentage+14.6%
956002: ATK Percentage+14.6%
956003: DEF Percentage+18.2%
956004: CRIT Rate+9.7%
956005: Energy Recharge+16.2%
956006: Elemental Mastery+58
956007: CRIT DMG+19.4%
941001: HP Percentage+9.3%
941002: ATK Percentage+9.3%
941003: DEF Percentage+11.7%
941004: CRIT Rate+6.2%
941005: Energy Recharge+10.4%
941006: Elemental Mastery+37
941007: CRIT DMG+12.4%
942001: HP Percentage+9.3%
942002: ATK Percentage+9.3%
942003: DEF Percentage+11.7%
942004: CRIT Rate+6.2%
942005: Energy Recharge+10.4%
942006: Elemental Mastery+37
942007: CRIT DMG+12.4%
943001: HP Percentage+9.3%
943002: ATK Percentage+9.3%
943003: DEF Percentage+11.7%
943004: CRIT Rate+6.2%
943005: Energy Recharge+10.4%
943006: Elemental Mastery+37
943007: CRIT DMG+12.4%
946001: HP Percentage+9.3%
946002: ATK Percentage+9.3%
946003: DEF Percentage+11.7%
946004: CRIT Rate+6.2%
946005: Energy Recharge+10.4%
946006: Elemental Mastery+37
946007: CRIT DMG+12.4%
961001: HP Percentage+14.6%
961002: ATK Percentage+14.6%
961003: DEF Percentage+18.2%
961004: CRIT Rate+9.7%
961005: Energy Recharge+16.2%
961006: Elemental Mastery+58
961007: CRIT DMG+19.4%
961008: HP+747
961009: ATK+49
961010: DEF+5787.0%
962001: HP Percentage+14.6%
962002: ATK Percentage+14.6%
962003: DEF Percentage+18.2%
962004: CRIT Rate+9.7%
962005: Energy Recharge+16.2%
962006: Elemental Mastery+58
962007: CRIT DMG+19.4%
962008: HP+747
962009: ATK+49
962010: DEF+58
963001: HP Percentage+14.6%
963002: ATK Percentage+14.6%
963003: DEF Percentage+18.2%
963004: CRIT Rate+9.7%
963005: Energy Recharge+16.2%
963006: Elemental Mastery+58
963007: CRIT DMG+19.4%
963008: HP+747
963009: ATK+49
963010: DEF+58
964001: HP Percentage+14.6%
964002: ATK Percentage+14.6%
964003: DEF Percentage+18.2%
964004: CRIT Rate+9.7%
964005: Energy Recharge+16.2%
964006: Elemental Mastery+58
964007: CRIT DMG+19.4%
964008: HP+747
964009: ATK+49
964010: DEF+58
965001: HP Percentage+14.6%
965002: ATK Percentage+14.6%
965003: DEF Percentage+18.2%
965004: CRIT Rate+9.7%
965005: Energy Recharge+16.2%
965006: Elemental Mastery+58
965007: CRIT DMG+19.4%
965008: HP+747
965009: ATK+49
965010: DEF+58

View File

@@ -1,5 +1,7 @@
God Mode
/godmode
NoStamina
/nostamina
Level up to 60
/give 102 1880200
Heal

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +1,7 @@
无敌
/godmode
无限耐力
/nostamina
升到60级
/give 102 1880200

File diff suppressed because it is too large Load Diff

View File

@@ -28,7 +28,10 @@ namespace GrasscutterTools.Utils
{
public static class HttpHelper
{
private static readonly HttpClient httpClient = new HttpClient();
public static readonly HttpClient HttpClient = new HttpClient
{
Timeout = TimeSpan.FromSeconds(10),
};
static HttpHelper()
{
@@ -39,7 +42,7 @@ namespace GrasscutterTools.Utils
{
try
{
var responseMessage = await httpClient.GetAsync(url);
var responseMessage = await HttpClient.GetAsync(url);
if (responseMessage.IsSuccessStatusCode)
{
var responseString = await responseMessage.Content.ReadAsStringAsync();
@@ -63,7 +66,7 @@ namespace GrasscutterTools.Utils
try
{
var content = new StringContent(JsonConvert.SerializeObject(obj), Encoding.UTF8, "application/json");
var responseMessage = await httpClient.PostAsync(url, content);
var responseMessage = await HttpClient.PostAsync(url, content);
if (responseMessage.IsSuccessStatusCode)
{
var responseString = await responseMessage.Content.ReadAsStringAsync();