From c86018056437019edfa93df7131859bd16f842c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=AD=B1=E5=82=91?= Date: Tue, 25 Oct 2022 23:36:30 +0800 Subject: [PATCH] Add Drop Editor (WIP) --- .../Forms/FormDropEditor.Designer.cs | 433 +++ .../GrasscutterTools/Forms/FormDropEditor.cs | 192 + .../Forms/FormDropEditor.resx | 120 + .../Forms/FormMain.Designer.cs | 10 + Source/GrasscutterTools/Forms/FormMain.cs | 44 +- Source/GrasscutterTools/Forms/FormMain.resx | 3400 ++++++++++++++--- Source/GrasscutterTools/Game/Drop/DropData.cs | 56 + Source/GrasscutterTools/Game/Drop/DropInfo.cs | 21 + .../GrasscutterTools/GrasscutterTools.csproj | 11 + 9 files changed, 3682 insertions(+), 605 deletions(-) create mode 100644 Source/GrasscutterTools/Forms/FormDropEditor.Designer.cs create mode 100644 Source/GrasscutterTools/Forms/FormDropEditor.cs create mode 100644 Source/GrasscutterTools/Forms/FormDropEditor.resx create mode 100644 Source/GrasscutterTools/Game/Drop/DropData.cs create mode 100644 Source/GrasscutterTools/Game/Drop/DropInfo.cs diff --git a/Source/GrasscutterTools/Forms/FormDropEditor.Designer.cs b/Source/GrasscutterTools/Forms/FormDropEditor.Designer.cs new file mode 100644 index 0000000..8d1c684 --- /dev/null +++ b/Source/GrasscutterTools/Forms/FormDropEditor.Designer.cs @@ -0,0 +1,433 @@ +namespace GrasscutterTools.Forms +{ + partial class FormDropEditor + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.LblDropPathLabel = new System.Windows.Forms.Label(); + this.TxtDropJsonPath = new System.Windows.Forms.TextBox(); + this.BtnLoad = new System.Windows.Forms.Button(); + this.BtnSave = new System.Windows.Forms.Button(); + this.ListMonsters = new System.Windows.Forms.ListBox(); + this.TxtMonsterFilter = new System.Windows.Forms.TextBox(); + this.TxtItemFilter = new System.Windows.Forms.TextBox(); + this.ListDropData = new System.Windows.Forms.ListBox(); + this.GrpDropList = new System.Windows.Forms.GroupBox(); + this.BtnClear = new System.Windows.Forms.Button(); + this.BtnPaste = new System.Windows.Forms.Button(); + this.BtnCopy = new System.Windows.Forms.Button(); + this.TxtItem = new System.Windows.Forms.TextBox(); + this.BtnDelete = new System.Windows.Forms.Button(); + this.BtnAdd = new System.Windows.Forms.Button(); + this.LblItemLabel = new System.Windows.Forms.Label(); + this.LblTilde2 = new System.Windows.Forms.Label(); + this.LblTilde1 = new System.Windows.Forms.Label(); + this.NUDMaxWeight = new System.Windows.Forms.NumericUpDown(); + this.NUDMinWeight = new System.Windows.Forms.NumericUpDown(); + this.NUDMaxCount = new System.Windows.Forms.NumericUpDown(); + this.NUDMinCount = new System.Windows.Forms.NumericUpDown(); + this.LblWeightLabel = new System.Windows.Forms.Label(); + this.LblCountLabel = new System.Windows.Forms.Label(); + this.ListItems = new System.Windows.Forms.ListBox(); + this.GrpMonsterList = new System.Windows.Forms.GroupBox(); + this.GrpItemList = new System.Windows.Forms.GroupBox(); + this.GrpDropList.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.NUDMaxWeight)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.NUDMinWeight)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.NUDMaxCount)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.NUDMinCount)).BeginInit(); + this.GrpMonsterList.SuspendLayout(); + this.GrpItemList.SuspendLayout(); + this.SuspendLayout(); + // + // LblDropPathLabel + // + this.LblDropPathLabel.AutoSize = true; + this.LblDropPathLabel.Location = new System.Drawing.Point(17, 15); + this.LblDropPathLabel.Name = "LblDropPathLabel"; + this.LblDropPathLabel.Size = new System.Drawing.Size(105, 17); + this.LblDropPathLabel.TabIndex = 0; + this.LblDropPathLabel.Text = "Drop.json 路径:"; + // + // TxtDropJsonPath + // + this.TxtDropJsonPath.Location = new System.Drawing.Point(128, 12); + this.TxtDropJsonPath.Name = "TxtDropJsonPath"; + this.TxtDropJsonPath.Size = new System.Drawing.Size(487, 23); + this.TxtDropJsonPath.TabIndex = 1; + // + // BtnLoad + // + this.BtnLoad.Location = new System.Drawing.Point(621, 12); + this.BtnLoad.Name = "BtnLoad"; + this.BtnLoad.Size = new System.Drawing.Size(75, 23); + this.BtnLoad.TabIndex = 2; + this.BtnLoad.Text = "加载"; + this.BtnLoad.UseVisualStyleBackColor = true; + this.BtnLoad.Click += new System.EventHandler(this.BtnLoad_Click); + // + // BtnSave + // + this.BtnSave.Location = new System.Drawing.Point(702, 12); + this.BtnSave.Name = "BtnSave"; + this.BtnSave.Size = new System.Drawing.Size(75, 23); + this.BtnSave.TabIndex = 3; + this.BtnSave.Text = "保存"; + this.BtnSave.UseVisualStyleBackColor = true; + this.BtnSave.Click += new System.EventHandler(this.BtnSave_Click); + // + // ListMonsters + // + this.ListMonsters.FormattingEnabled = true; + this.ListMonsters.ItemHeight = 17; + this.ListMonsters.Location = new System.Drawing.Point(6, 51); + this.ListMonsters.Name = "ListMonsters"; + this.ListMonsters.Size = new System.Drawing.Size(238, 344); + this.ListMonsters.TabIndex = 4; + this.ListMonsters.SelectedIndexChanged += new System.EventHandler(this.ListMonsters_SelectedIndexChanged); + // + // TxtMonsterFilter + // + this.TxtMonsterFilter.Location = new System.Drawing.Point(6, 22); + this.TxtMonsterFilter.Name = "TxtMonsterFilter"; + this.TxtMonsterFilter.Size = new System.Drawing.Size(238, 23); + this.TxtMonsterFilter.TabIndex = 5; + this.TxtMonsterFilter.TextChanged += new System.EventHandler(this.TxtMonsterFilter_TextChanged); + // + // TxtItemFilter + // + this.TxtItemFilter.Location = new System.Drawing.Point(6, 22); + this.TxtItemFilter.Name = "TxtItemFilter"; + this.TxtItemFilter.Size = new System.Drawing.Size(238, 23); + this.TxtItemFilter.TabIndex = 6; + this.TxtItemFilter.TextChanged += new System.EventHandler(this.TxtItemFilter_TextChanged); + // + // ListDropData + // + this.ListDropData.FormattingEnabled = true; + this.ListDropData.ItemHeight = 17; + this.ListDropData.Location = new System.Drawing.Point(6, 22); + this.ListDropData.Name = "ListDropData"; + this.ListDropData.Size = new System.Drawing.Size(238, 174); + this.ListDropData.TabIndex = 7; + this.ListDropData.SelectedIndexChanged += new System.EventHandler(this.ListDropData_SelectedIndexChanged); + // + // GrpDropList + // + this.GrpDropList.Controls.Add(this.BtnClear); + this.GrpDropList.Controls.Add(this.BtnPaste); + this.GrpDropList.Controls.Add(this.BtnCopy); + this.GrpDropList.Controls.Add(this.TxtItem); + this.GrpDropList.Controls.Add(this.BtnDelete); + this.GrpDropList.Controls.Add(this.BtnAdd); + this.GrpDropList.Controls.Add(this.LblItemLabel); + this.GrpDropList.Controls.Add(this.LblTilde2); + this.GrpDropList.Controls.Add(this.LblTilde1); + this.GrpDropList.Controls.Add(this.NUDMaxWeight); + this.GrpDropList.Controls.Add(this.NUDMinWeight); + this.GrpDropList.Controls.Add(this.NUDMaxCount); + this.GrpDropList.Controls.Add(this.NUDMinCount); + this.GrpDropList.Controls.Add(this.LblWeightLabel); + this.GrpDropList.Controls.Add(this.LblCountLabel); + this.GrpDropList.Controls.Add(this.ListDropData); + this.GrpDropList.Location = new System.Drawing.Point(270, 41); + this.GrpDropList.Name = "GrpDropList"; + this.GrpDropList.Size = new System.Drawing.Size(250, 400); + this.GrpDropList.TabIndex = 8; + this.GrpDropList.TabStop = false; + this.GrpDropList.Text = "掉落列表"; + // + // BtnClear + // + this.BtnClear.Location = new System.Drawing.Point(169, 202); + this.BtnClear.Name = "BtnClear"; + this.BtnClear.Size = new System.Drawing.Size(75, 23); + this.BtnClear.TabIndex = 21; + this.BtnClear.Text = "× 清空"; + this.BtnClear.UseVisualStyleBackColor = true; + // + // BtnPaste + // + this.BtnPaste.Location = new System.Drawing.Point(87, 202); + this.BtnPaste.Name = "BtnPaste"; + this.BtnPaste.Size = new System.Drawing.Size(75, 23); + this.BtnPaste.TabIndex = 20; + this.BtnPaste.Text = "粘贴"; + this.BtnPaste.UseVisualStyleBackColor = true; + // + // BtnCopy + // + this.BtnCopy.Location = new System.Drawing.Point(6, 202); + this.BtnCopy.Name = "BtnCopy"; + this.BtnCopy.Size = new System.Drawing.Size(75, 23); + this.BtnCopy.TabIndex = 19; + this.BtnCopy.Text = "复制"; + this.BtnCopy.UseVisualStyleBackColor = true; + // + // TxtItem + // + this.TxtItem.Location = new System.Drawing.Point(87, 253); + this.TxtItem.Name = "TxtItem"; + this.TxtItem.Size = new System.Drawing.Size(137, 23); + this.TxtItem.TabIndex = 12; + // + // BtnDelete + // + this.BtnDelete.Location = new System.Drawing.Point(87, 360); + this.BtnDelete.Name = "BtnDelete"; + this.BtnDelete.Size = new System.Drawing.Size(75, 23); + this.BtnDelete.TabIndex = 18; + this.BtnDelete.Text = "- 删除"; + this.BtnDelete.UseVisualStyleBackColor = true; + // + // BtnAdd + // + this.BtnAdd.Location = new System.Drawing.Point(6, 360); + this.BtnAdd.Name = "BtnAdd"; + this.BtnAdd.Size = new System.Drawing.Size(75, 23); + this.BtnAdd.TabIndex = 17; + this.BtnAdd.Text = "+ 添加"; + this.BtnAdd.UseVisualStyleBackColor = true; + // + // LblItemLabel + // + this.LblItemLabel.AutoSize = true; + this.LblItemLabel.Location = new System.Drawing.Point(25, 256); + this.LblItemLabel.Name = "LblItemLabel"; + this.LblItemLabel.Size = new System.Drawing.Size(56, 17); + this.LblItemLabel.TabIndex = 15; + this.LblItemLabel.Text = "掉落物:"; + // + // LblTilde2 + // + this.LblTilde2.AutoSize = true; + this.LblTilde2.Location = new System.Drawing.Point(141, 315); + this.LblTilde2.Name = "LblTilde2"; + this.LblTilde2.Size = new System.Drawing.Size(17, 17); + this.LblTilde2.TabIndex = 14; + this.LblTilde2.Text = "~"; + // + // LblTilde1 + // + this.LblTilde1.AutoSize = true; + this.LblTilde1.Location = new System.Drawing.Point(141, 286); + this.LblTilde1.Name = "LblTilde1"; + this.LblTilde1.Size = new System.Drawing.Size(17, 17); + this.LblTilde1.TabIndex = 14; + this.LblTilde1.Text = "~"; + // + // NUDMaxWeight + // + this.NUDMaxWeight.Location = new System.Drawing.Point(164, 313); + this.NUDMaxWeight.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.NUDMaxWeight.Minimum = new decimal(new int[] { + 1, + 0, + 0, + 0}); + this.NUDMaxWeight.Name = "NUDMaxWeight"; + this.NUDMaxWeight.Size = new System.Drawing.Size(60, 23); + this.NUDMaxWeight.TabIndex = 13; + this.NUDMaxWeight.Value = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + // + // NUDMinWeight + // + this.NUDMinWeight.Location = new System.Drawing.Point(75, 315); + this.NUDMinWeight.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.NUDMinWeight.Name = "NUDMinWeight"; + this.NUDMinWeight.Size = new System.Drawing.Size(60, 23); + this.NUDMinWeight.TabIndex = 12; + // + // NUDMaxCount + // + this.NUDMaxCount.Location = new System.Drawing.Point(164, 284); + this.NUDMaxCount.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.NUDMaxCount.Minimum = new decimal(new int[] { + 1, + 0, + 0, + 0}); + this.NUDMaxCount.Name = "NUDMaxCount"; + this.NUDMaxCount.Size = new System.Drawing.Size(60, 23); + this.NUDMaxCount.TabIndex = 11; + this.NUDMaxCount.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); + // + // NUDMinCount + // + this.NUDMinCount.Location = new System.Drawing.Point(75, 284); + this.NUDMinCount.Maximum = new decimal(new int[] { + 10000, + 0, + 0, + 0}); + this.NUDMinCount.Minimum = new decimal(new int[] { + 1, + 0, + 0, + 0}); + this.NUDMinCount.Name = "NUDMinCount"; + this.NUDMinCount.Size = new System.Drawing.Size(60, 23); + this.NUDMinCount.TabIndex = 10; + this.NUDMinCount.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); + // + // LblWeightLabel + // + this.LblWeightLabel.AutoSize = true; + this.LblWeightLabel.Location = new System.Drawing.Point(25, 317); + this.LblWeightLabel.Name = "LblWeightLabel"; + this.LblWeightLabel.Size = new System.Drawing.Size(44, 17); + this.LblWeightLabel.TabIndex = 9; + this.LblWeightLabel.Text = "权重:"; + // + // LblCountLabel + // + this.LblCountLabel.AutoSize = true; + this.LblCountLabel.Location = new System.Drawing.Point(25, 286); + this.LblCountLabel.Name = "LblCountLabel"; + this.LblCountLabel.Size = new System.Drawing.Size(44, 17); + this.LblCountLabel.TabIndex = 8; + this.LblCountLabel.Text = "数量:"; + // + // ListItems + // + this.ListItems.FormattingEnabled = true; + this.ListItems.ItemHeight = 17; + this.ListItems.Location = new System.Drawing.Point(6, 51); + this.ListItems.Name = "ListItems"; + this.ListItems.Size = new System.Drawing.Size(238, 344); + this.ListItems.TabIndex = 9; + this.ListItems.SelectedIndexChanged += new System.EventHandler(this.ListItems_SelectedIndexChanged); + // + // GrpMonsterList + // + this.GrpMonsterList.Controls.Add(this.ListMonsters); + this.GrpMonsterList.Controls.Add(this.TxtMonsterFilter); + this.GrpMonsterList.Location = new System.Drawing.Point(12, 41); + this.GrpMonsterList.Name = "GrpMonsterList"; + this.GrpMonsterList.Size = new System.Drawing.Size(250, 400); + this.GrpMonsterList.TabIndex = 10; + this.GrpMonsterList.TabStop = false; + this.GrpMonsterList.Text = "怪物列表"; + // + // GrpItemList + // + this.GrpItemList.Controls.Add(this.TxtItemFilter); + this.GrpItemList.Controls.Add(this.ListItems); + this.GrpItemList.Location = new System.Drawing.Point(526, 41); + this.GrpItemList.Name = "GrpItemList"; + this.GrpItemList.Size = new System.Drawing.Size(250, 400); + this.GrpItemList.TabIndex = 11; + this.GrpItemList.TabStop = false; + this.GrpItemList.Text = "物品列表"; + // + // FormDropEditor + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 17F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(789, 450); + this.Controls.Add(this.GrpItemList); + this.Controls.Add(this.GrpMonsterList); + this.Controls.Add(this.GrpDropList); + this.Controls.Add(this.BtnSave); + this.Controls.Add(this.BtnLoad); + this.Controls.Add(this.TxtDropJsonPath); + this.Controls.Add(this.LblDropPathLabel); + this.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.Margin = new System.Windows.Forms.Padding(4); + this.Name = "FormDropEditor"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "Drop.json Editor"; + this.GrpDropList.ResumeLayout(false); + this.GrpDropList.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.NUDMaxWeight)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.NUDMinWeight)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.NUDMaxCount)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.NUDMinCount)).EndInit(); + this.GrpMonsterList.ResumeLayout(false); + this.GrpMonsterList.PerformLayout(); + this.GrpItemList.ResumeLayout(false); + this.GrpItemList.PerformLayout(); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.Windows.Forms.Label LblDropPathLabel; + private System.Windows.Forms.TextBox TxtDropJsonPath; + private System.Windows.Forms.Button BtnLoad; + private System.Windows.Forms.Button BtnSave; + private System.Windows.Forms.ListBox ListMonsters; + private System.Windows.Forms.TextBox TxtMonsterFilter; + private System.Windows.Forms.TextBox TxtItemFilter; + private System.Windows.Forms.ListBox ListDropData; + private System.Windows.Forms.GroupBox GrpDropList; + private System.Windows.Forms.Label LblTilde2; + private System.Windows.Forms.Label LblTilde1; + private System.Windows.Forms.NumericUpDown NUDMaxWeight; + private System.Windows.Forms.NumericUpDown NUDMinWeight; + private System.Windows.Forms.NumericUpDown NUDMaxCount; + private System.Windows.Forms.NumericUpDown NUDMinCount; + private System.Windows.Forms.Label LblWeightLabel; + private System.Windows.Forms.Label LblCountLabel; + private System.Windows.Forms.Label LblItemLabel; + private System.Windows.Forms.ListBox ListItems; + private System.Windows.Forms.GroupBox GrpMonsterList; + private System.Windows.Forms.GroupBox GrpItemList; + private System.Windows.Forms.Button BtnDelete; + private System.Windows.Forms.Button BtnAdd; + private System.Windows.Forms.TextBox TxtItem; + private System.Windows.Forms.Button BtnCopy; + private System.Windows.Forms.Button BtnPaste; + private System.Windows.Forms.Button BtnClear; + } +} \ No newline at end of file diff --git a/Source/GrasscutterTools/Forms/FormDropEditor.cs b/Source/GrasscutterTools/Forms/FormDropEditor.cs new file mode 100644 index 0000000..014d91e --- /dev/null +++ b/Source/GrasscutterTools/Forms/FormDropEditor.cs @@ -0,0 +1,192 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.IO; +using System.Linq; +using System.Text; +using System.Threading; +using System.Threading.Tasks; +using System.Windows.Forms; + +using GrasscutterTools.Game; +using GrasscutterTools.Game.Drop; +using GrasscutterTools.Properties; + +using Newtonsoft.Json; + +namespace GrasscutterTools.Forms +{ + public partial class FormDropEditor : Form + { + public FormDropEditor() + { + InitializeComponent(); + + Icon = Resources.IconGrasscutter; + + ListMonsters.Items.AddRange(GameData.Monsters.Lines); + ListItems.Items.AddRange(GameData.Items.Lines); + + Banners = new Dictionary>(); + } + + private Dictionary> Banners; + + #region - Drop.json 文件相关 - + /// + /// 加载按钮点击时触发 + /// + private void BtnLoad_Click(object sender, EventArgs e) + { + try + { + var path = TxtDropJsonPath.Text.Trim(); + if (path == string.Empty) + { + var dialog = new OpenFileDialog + { + FileName = "Drop.json", + Filter = "Drop.Json (*.json)|*.json|All files (*.*)|*.*", + }; + var result = dialog.ShowDialog(); + if (result == DialogResult.OK) + path = TxtDropJsonPath.Text = dialog.FileName; + else + return; + } + + // 反序列化 + var banners = JsonConvert.DeserializeObject>(File.ReadAllText(path)); + Banners = new Dictionary>(banners.Count); + foreach (var item in banners) + Banners.Add(item.MonsterId, item.DropDataList); + MessageBox.Show("OK", Resources.Tips, MessageBoxButtons.OK); + } + catch (Exception ex) + { + MessageBox.Show(ex.ToString(), Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + /// + /// 保存按钮点击时触发 + /// + private void BtnSave_Click(object sender, EventArgs e) + { + try + { + var path = TxtDropJsonPath.Text.Trim(); + if (path == string.Empty) + { + var dialog = new SaveFileDialog + { + FileName = "Drop.json", + Filter = "Drop.json (*.json)|*.json|All files (*.*)|*.*", + }; + var result = dialog.ShowDialog(); + if (result == DialogResult.OK) + path = TxtDropJsonPath.Text = dialog.FileName; + else + return; + } + + // 序列化 + var banners = new List(Banners.Count); + foreach (var item in Banners) + { + banners.Add(new DropInfo + { + MonsterId = item.Key, + DropDataList = item.Value, + }); + } + File.WriteAllText(path, JsonConvert.SerializeObject(banners)); + MessageBox.Show("OK", Resources.Tips, MessageBoxButtons.OK); + } + catch (Exception ex) + { + MessageBox.Show(ex.ToString(), Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + #endregion + + + #region - 怪物列表 - + + /// + /// 怪物列表过滤器文本改变时触发 + /// + private void TxtMonsterFilter_TextChanged(object sender, EventArgs e) + { + var filter = TxtMonsterFilter.Text.Trim(); + ListMonsters.BeginUpdate(); + ListMonsters.Items.Clear(); + ListMonsters.Items.AddRange(GameData.Monsters.Lines.Where(n => n.Contains(filter)).ToArray()); + ListMonsters.EndUpdate(); + } + + /// + /// 怪物列表选中项改变时触发 + /// + private void ListMonsters_SelectedIndexChanged(object sender, EventArgs e) + { + var monster = ListMonsters.SelectedItem as string; + if (string.IsNullOrEmpty(monster)) return; + var id = int.Parse(monster.Substring(0, monster.IndexOf(':')).Trim()); + ListDropData.BeginUpdate(); + ListDropData.Items.Clear(); + if (Banners.TryGetValue(id, out List dropList)) + ListDropData.Items.AddRange(dropList.ToArray()); + ListDropData.EndUpdate(); + } + + #endregion + + #region - 掉落物列表 - + + /// + /// 掉落列表选中项改变时触发 + /// + private void ListDropData_SelectedIndexChanged(object sender, EventArgs e) + { + var dropData = ListDropData.SelectedItem as DropData; + if (dropData == null) return; + TxtItem.Text = dropData.ItemId.ToString(); + NUDMinCount.Value = dropData.MinCount; + NUDMaxCount.Value = dropData.MaxCount; + NUDMinWeight.Value = dropData.MinWeight; + NUDMaxWeight.Value = dropData.MaxWeight; + } + + #endregion + + #region - 物品列表 - + + /// + /// 物品列表过滤器文本改变时触发 + /// + private void TxtItemFilter_TextChanged(object sender, EventArgs e) + { + var filter = TxtItemFilter.Text.Trim(); + ListItems.BeginUpdate(); + ListItems.Items.Clear(); + ListItems.Items.AddRange(GameData.Items.Lines.Where(n => n.Contains(filter)).ToArray()); + ListItems.EndUpdate(); + } + + /// + /// 物品列表选中项改变时触发 + /// + private void ListItems_SelectedIndexChanged(object sender, EventArgs e) + { + var item = ListItems.SelectedItem as string; + if (string.IsNullOrEmpty(item)) return; + TxtItem.Text = item; + } + + #endregion + } +} diff --git a/Source/GrasscutterTools/Forms/FormDropEditor.resx b/Source/GrasscutterTools/Forms/FormDropEditor.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/Source/GrasscutterTools/Forms/FormDropEditor.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/Source/GrasscutterTools/Forms/FormMain.Designer.cs b/Source/GrasscutterTools/Forms/FormMain.Designer.cs index 8018097..88bf49d 100644 --- a/Source/GrasscutterTools/Forms/FormMain.Designer.cs +++ b/Source/GrasscutterTools/Forms/FormMain.Designer.cs @@ -233,6 +233,7 @@ namespace GrasscutterTools.Forms this.ChkIncludeUID = new System.Windows.Forms.CheckBox(); this.LblDefaultUid = new System.Windows.Forms.Label(); this.TCMain = new System.Windows.Forms.TabControl(); + this.BtnOpenDropEditor = new System.Windows.Forms.Button(); this.TxtBanReason = new GrasscutterTools.Controls.TextBoxXP(); this.GrpCommand.SuspendLayout(); this.TPRemoteCall.SuspendLayout(); @@ -1938,6 +1939,7 @@ namespace GrasscutterTools.Forms // // TPHome // + this.TPHome.Controls.Add(this.BtnOpenDropEditor); this.TPHome.Controls.Add(this.LnkNewVersion); this.TPHome.Controls.Add(this.LblAbout); this.TPHome.Controls.Add(this.BtnOpenTextMap); @@ -2070,6 +2072,13 @@ namespace GrasscutterTools.Forms this.TCMain.Name = "TCMain"; this.TCMain.SelectedIndex = 0; // + // BtnOpenDropEditor + // + resources.ApplyResources(this.BtnOpenDropEditor, "BtnOpenDropEditor"); + this.BtnOpenDropEditor.Name = "BtnOpenDropEditor"; + this.BtnOpenDropEditor.UseVisualStyleBackColor = true; + this.BtnOpenDropEditor.Click += new System.EventHandler(this.BtnOpenDropEditor_Click); + // // TxtBanReason // this.TxtBanReason.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; @@ -2383,5 +2392,6 @@ namespace GrasscutterTools.Forms private System.Windows.Forms.NumericUpDown NUDAvatarSkillLevel; private System.Windows.Forms.Label LblAvatarSkillLevelLabel; private System.Windows.Forms.Label LblAvatarSkillLevelTip; + private System.Windows.Forms.Button BtnOpenDropEditor; } } diff --git a/Source/GrasscutterTools/Forms/FormMain.cs b/Source/GrasscutterTools/Forms/FormMain.cs index 2fe82ab..fe978bd 100644 --- a/Source/GrasscutterTools/Forms/FormMain.cs +++ b/Source/GrasscutterTools/Forms/FormMain.cs @@ -180,11 +180,6 @@ namespace GrasscutterTools.Forms /// private CommandVersion CommandVersion; - /// - /// 卡池编辑器窗口实例 - /// - private Form GachaBannerEditor; - /// /// 初始化首页设置 /// @@ -222,6 +217,17 @@ namespace GrasscutterTools.Forms CmbLanguage.SelectedIndexChanged += CmbLanguage_SelectedIndexChanged; } + private static void ToTop(Form form) + { + form.TopMost = true; + form.TopMost = false; + } + + /// + /// 卡池编辑器窗口实例 + /// + private Form GachaBannerEditor; + /// /// 点击打开卡池编辑器时触发 /// @@ -234,8 +240,7 @@ namespace GrasscutterTools.Forms } else { - GachaBannerEditor.TopMost = true; - GachaBannerEditor.TopMost = false; + ToTop(GachaBannerEditor); } } @@ -253,8 +258,28 @@ namespace GrasscutterTools.Forms } else { - TextMapBrowser.TopMost = true; - TextMapBrowser.TopMost = false; + ToTop(TextMapBrowser); + } + } + + /// + /// 掉落物编辑器窗口实例 + /// + private FormDropEditor DropEditor; + + /// + /// 点击打开掉落物编辑器时触发 + /// + private void BtnOpenDropEditor_Click(object sender, EventArgs e) + { + if (DropEditor == null || DropEditor.IsDisposed) + { + DropEditor = new FormDropEditor(); + DropEditor.Show(); + } + else + { + ToTop(DropEditor); } } @@ -2135,5 +2160,6 @@ namespace GrasscutterTools.Forms } #endregion - 任务 Quests - + } } diff --git a/Source/GrasscutterTools/Forms/FormMain.resx b/Source/GrasscutterTools/Forms/FormMain.resx index 4c7ef16..fcd5a88 100644 --- a/Source/GrasscutterTools/Forms/FormMain.resx +++ b/Source/GrasscutterTools/Forms/FormMain.resx @@ -210,21 +210,6 @@ Bottom, Left, Right - - NoControl - - - 6, 22 - - - 75, 23 - - - 3 - - - 执行(F5) - BtnInvokeOpenCommand @@ -264,6 +249,192 @@ 1 + + NoControl + + + 6, 22 + + + 75, 23 + + + 3 + + + 执行(F5) + + + BtnInvokeOpenCommand + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpCommand + + + 0 + + + LnkLinks + + + System.Windows.Forms.LinkLabel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPRemoteCall + + + 0 + + + LnkGOODHelp + + + System.Windows.Forms.LinkLabel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPRemoteCall + + + 1 + + + LnkInventoryKamera + + + System.Windows.Forms.LinkLabel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPRemoteCall + + + 2 + + + LblGOODHelp + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPRemoteCall + + + 3 + + + ButtonOpenGOODImport + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPRemoteCall + + + 4 + + + LblHostTip + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPRemoteCall + + + 5 + + + GrpServerStatus + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPRemoteCall + + + 6 + + + GrpRemoteCommand + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPRemoteCall + + + 7 + + + TxtHost + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPRemoteCall + + + 8 + + + BtnQueryServerStatus + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPRemoteCall + + + 9 + + + LblHost + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPRemoteCall + + + 10 + + + 4, 26 + + + 3, 3, 3, 3 + + + 652, 245 + + + 14 + + + 远程 + + + TPRemoteCall + + + System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TCMain + + + 12 + None @@ -459,6 +630,102 @@ None + + LnkOpenCommandLabel + + + System.Windows.Forms.LinkLabel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpServerStatus + + + 0 + + + LblOpenCommandSupport + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpServerStatus + + + 1 + + + LblServerVersion + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpServerStatus + + + 2 + + + LblPlayerCount + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpServerStatus + + + 3 + + + LblServerVersionLabel + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpServerStatus + + + 4 + + + LblPlayerCountLabel + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpServerStatus + + + 5 + + + 388, 36 + + + 200, 100 + + + 4 + + + 服务器状态 + + + GrpServerStatus + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPRemoteCall + + + 6 + True @@ -639,33 +906,207 @@ 5 - - 388, 36 - - - 200, 100 - - - 4 - - - 服务器状态 - - - GrpServerStatus - - - System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - TPRemoteCall - - - 6 - None + + TPOpenCommandCheck + + + System.Windows.Forms.TabControl, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpRemoteCommand + + + 0 + + + False + + + 72, 65 + + + 310, 161 + + + 6 + + + 远程执行 + + + GrpRemoteCommand + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPRemoteCall + + + 7 + + + TPPlayerCheck + + + System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPOpenCommandCheck + + + 0 + + + TPConsoleCheck + + + System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPOpenCommandCheck + + + 1 + + + Fill + + + 3, 19 + + + 304, 139 + + + 7 + + + TPOpenCommandCheck + + + System.Windows.Forms.TabControl, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpRemoteCommand + + + 0 + + + LnkRCHelp + + + System.Windows.Forms.LinkLabel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPPlayerCheck + + + 0 + + + NUDRemotePlayerId + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPPlayerCheck + + + 1 + + + BtnConnectOpenCommand + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPPlayerCheck + + + 2 + + + LblVerificationCode + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPPlayerCheck + + + 3 + + + BtnSendVerificationCode + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPPlayerCheck + + + 4 + + + NUDVerificationCode + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPPlayerCheck + + + 5 + + + LblRemotePlayerId + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPPlayerCheck + + + 6 + + + 4, 26 + + + 3, 3, 3, 3 + + + 296, 109 + + + 0 + + + 玩家验证 + + + TPPlayerCheck + + + System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPOpenCommandCheck + + + 0 + True @@ -858,32 +1299,80 @@ 6 - + + BtnConsoleConnect + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPConsoleCheck + + + 0 + + + TxtToken + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPConsoleCheck + + + 1 + + + LblToken + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPConsoleCheck + + + 2 + + + LblConsoleTip + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPConsoleCheck + + + 3 + + 4, 26 - + 3, 3, 3, 3 - + 296, 109 - - 0 + + 1 - - 玩家验证 + + 控制台 - - TPPlayerCheck + + TPConsoleCheck - + System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + TPOpenCommandCheck - - 0 + + 1 NoControl @@ -994,84 +1483,6 @@ 3 - - 4, 26 - - - 3, 3, 3, 3 - - - 296, 109 - - - 1 - - - 控制台 - - - TPConsoleCheck - - - System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - TPOpenCommandCheck - - - 1 - - - Fill - - - 3, 19 - - - 304, 139 - - - 7 - - - TPOpenCommandCheck - - - System.Windows.Forms.TabControl, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - GrpRemoteCommand - - - 0 - - - False - - - 72, 65 - - - 310, 161 - - - 6 - - - 远程执行 - - - GrpRemoteCommand - - - System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - TPRemoteCall - - - 7 - None @@ -1159,32 +1570,68 @@ 10 - + + GrasscutterToolsSupport + + + System.Windows.Forms.PictureBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPAbout + + + 0 + + + LnkGithub + + + System.Windows.Forms.LinkLabel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPAbout + + + 1 + + + LblSupportDescription + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPAbout + + + 2 + + 4, 26 - + 3, 3, 3, 3 - + 652, 245 - - 14 + + 13 - - 远程 + + 关于 - - TPRemoteCall + + TPAbout - + System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + TCMain - - 12 + + 11 Bottom, Right @@ -1287,36 +1734,168 @@ 2 - + + GrpBanPlayer + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPManage + + + 0 + + + GrpAccount + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPManage + + + 1 + + + GrpPermission + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPManage + + + 2 + + 4, 26 - + 3, 3, 3, 3 - + 652, 245 - - 13 + + 12 - - 关于 + + 管理 - - TPAbout + + TPManage - + System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + TCMain - - 11 + + 10 None + + DTPBanEndTime + + + System.Windows.Forms.DateTimePicker, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpBanPlayer + + + 0 + + + BtnUnban + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpBanPlayer + + + 1 + + + BtnBan + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpBanPlayer + + + 2 + + + TxtBanReason + + + GrasscutterTools.Controls.TextBoxXP, GrasscutterTools, Version=1.7.0.0, Culture=neutral, PublicKeyToken=de2b1c089621e923 + + + GrpBanPlayer + + + 3 + + + NUDBanUID + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpBanPlayer + + + 4 + + + LblBanUID + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpBanPlayer + + + 5 + + + 56, 158 + + + 540, 60 + + + 2 + + + 封禁管理 + + + GrpBanPlayer + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPManage + + + 0 + 154, 22 @@ -1392,30 +1971,6 @@ 2 - - 250, 22 - - - 150, 23 - - - 8 - - - 封禁理由 - - - TxtBanReason - - - GrasscutterTools.Controls.TextBoxXP, GrasscutterTools, Version=1.7.0.0, Culture=neutral, PublicKeyToken=de2b1c089621e923 - - - GrpBanPlayer - - - 3 - 66, 22 @@ -1467,33 +2022,105 @@ 5 - - 56, 158 - - - 540, 60 - - - 2 - - - 封禁管理 - - - GrpBanPlayer - - - System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - TPManage - - - 0 - None + + ChkAccountSetUid + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpAccount + + + 0 + + + NUDAccountUid + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpAccount + + + 1 + + + BtnDeleteAccount + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpAccount + + + 2 + + + BtnCreateAccount + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpAccount + + + 3 + + + LblAccountUserName + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpAccount + + + 4 + + + TxtAccountUserName + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpAccount + + + 5 + + + 56, 6 + + + 540, 60 + + + 0 + + + 账号管理 + + + GrpAccount + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPManage + + + 1 + True @@ -1653,33 +2280,129 @@ 5 - - 56, 6 - - - 540, 60 - - - 0 - - - 账号管理 - - - GrpAccount - - - System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - TPManage - - - 1 - None + + CmbPerm + + + System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpPermission + + + 0 + + + NUDPermUID + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpPermission + + + 1 + + + BtnPermClear + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpPermission + + + 2 + + + BtmPermRemove + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpPermission + + + 3 + + + BtnPermList + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpPermission + + + 4 + + + BtnPermAdd + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpPermission + + + 5 + + + LblPerm + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpPermission + + + 6 + + + LblPermUID + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpPermission + + + 7 + + + 56, 72 + + + 540, 80 + + + 1 + + + 权限管理 + + + GrpPermission + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPManage + + + 2 + 250, 21 @@ -1890,56 +2613,200 @@ 7 - - 56, 72 + + TxtSceneFilter - - 540, 80 + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + + TPScene + + + 0 + + + ChkIncludeSceneId + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPScene + + 1 - - 权限管理 + + LblTpZ - - GrpPermission + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + TPScene - - TPManage - - + 2 - - 4, 26 + + LblTpY - - 3, 3, 3, 3 + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 652, 245 + + TPScene - + + 3 + + + BtnTeleport + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPScene + + + 4 + + + LblTpX + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPScene + + + 5 + + + NUDTpZ + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPScene + + + 6 + + + NUDTpY + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPScene + + + 7 + + + NUDTpX + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPScene + + + 8 + + + CmbClimateType + + + System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPScene + + + 9 + + + LblClimateType + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPScene + + + 10 + + + LblSceneDescription + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPScene + + + 11 + + + ListScenes + + + System.Windows.Forms.ListBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPScene + + 12 - - 管理 + + LblTp - - TPManage + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + + TPScene + + + 13 + + + 4, 26 + + + 3, 3, 3, 3 + + + 652, 245 + + + 9 + + + 场景 + + + TPScene + + System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + TCMain - - 10 + + 9 Top, Left, Right @@ -2353,32 +3220,176 @@ 13 - + + LblClearGiveItemLogs + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPItem + + + 0 + + + BtnSaveGiveItemLog + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPItem + + + 1 + + + BtnRemoveGiveItemLog + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPItem + + + 2 + + + GrpGiveItemRecord + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPItem + + + 3 + + + ChkDrop + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPItem + + + 4 + + + TxtGameItemFilter + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPItem + + + 5 + + + ListGameItems + + + System.Windows.Forms.ListBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPItem + + + 6 + + + LblGameItemAmount + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPItem + + + 7 + + + LblGameItemLevel + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPItem + + + 8 + + + NUDGameItemAmout + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPItem + + + 9 + + + NUDGameItemLevel + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPItem + + + 10 + + + LblGiveCommandDescription + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPItem + + + 11 + + 4, 26 - + 3, 3, 3, 3 - + 652, 245 - - 9 + + 4 - - 场景 + + 物品 - - TPScene + + TPItem - + System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + TCMain - - 9 + + 8 Bottom, Left @@ -2473,21 +3484,6 @@ Top, Bottom, Left - - Fill - - - 17 - - - 3, 19 - - - 243, 140 - - - 6 - ListGiveItemLogs @@ -2524,6 +3520,33 @@ 3 + + Fill + + + 17 + + + 3, 19 + + + 243, 140 + + + 6 + + + ListGiveItemLogs + + + System.Windows.Forms.ListBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpGiveItemRecord + + + 0 + Bottom, Left @@ -2753,32 +3776,152 @@ 11 - - 4, 26 + + BtnGiveAllWeapons - - 3, 3, 3, 3 + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 652, 245 + + TPWeapon - + + 0 + + + TxtWeaponFilter + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPWeapon + + + 1 + + + LblWeaponDescription + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPWeapon + + + 2 + + + LblWeaponRefinement + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPWeapon + + + 3 + + + LblWeaponAmount + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPWeapon + + 4 - - 物品 + + LblWeaponLevel - - TPItem + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + + TPWeapon + + + 5 + + + NUDWeaponRefinement + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPWeapon + + + 6 + + + NUDWeaponAmout + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPWeapon + + + 7 + + + NUDWeaponLevel + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPWeapon + + + 8 + + + ListWeapons + + + System.Windows.Forms.ListBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPWeapon + + + 9 + + + 4, 26 + + + 3, 3, 3, 3 + + + 652, 245 + + + 3 + + + 武器 + + + TPWeapon + + System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + TCMain - - 8 + + 7 Bottom, Right @@ -3076,36 +4219,168 @@ 9 - + + GrpSetStats + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPStats + + + 0 + + + GrpTalentLevel + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPStats + + + 1 + + + LblStatsDescription + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPStats + + + 2 + + 4, 26 - + 3, 3, 3, 3 - + 652, 245 - - 3 + + 11 - - 武器 + + 数据 - - TPWeapon + + TPStats - + System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + TCMain - - 7 + + 6 None + + BtnUnlockStat + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpSetStats + + + 0 + + + BtnLockStat + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpSetStats + + + 1 + + + LblStatTip + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpSetStats + + + 2 + + + LblStatPercent + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpSetStats + + + 3 + + + NUDStat + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpSetStats + + + 4 + + + CmbStat + + + System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpSetStats + + + 5 + + + 160, 54 + + + 332, 96 + + + 4 + + + 角色属性 + + + GrpSetStats + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPStats + + + 0 + False @@ -3268,33 +4543,93 @@ 5 - - 160, 54 - - - 332, 96 - - - 4 - - - 角色属性 - - - GrpSetStats - - - System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - TPStats - - - 0 - None + + LnkTalentAll + + + System.Windows.Forms.LinkLabel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpTalentLevel + + + 0 + + + LnkTalentE + + + System.Windows.Forms.LinkLabel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpTalentLevel + + + 1 + + + LnkTalentQ + + + System.Windows.Forms.LinkLabel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpTalentLevel + + + 2 + + + LnkTalentNormalATK + + + System.Windows.Forms.LinkLabel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpTalentLevel + + + 3 + + + NUDTalentLevel + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpTalentLevel + + + 4 + + + 160, 156 + + + 332, 57 + + + 3 + + + 技能等级 + + + GrpTalentLevel + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPStats + + + 1 + True @@ -3436,30 +4771,6 @@ 4 - - 160, 156 - - - 332, 57 - - - 3 - - - 技能等级 - - - GrpTalentLevel - - - System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - TPStats - - - 1 - True @@ -3490,32 +4801,164 @@ 2 - + + LblAvatarSkillLevelTip + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPAvatar + + + 0 + + + BtnGiveAllChar + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPAvatar + + + 1 + + + LblAvatarSkillLevelLabel + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPAvatar + + + 2 + + + LblAvatarConstellation + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPAvatar + + + 3 + + + NUDAvatarSkillLevel + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPAvatar + + + 4 + + + NUDAvatarConstellation + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPAvatar + + + 5 + + + ImgAvatar + + + System.Windows.Forms.PictureBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPAvatar + + + 6 + + + LblAvatar + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPAvatar + + + 7 + + + LblAvatarLevel + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPAvatar + + + 8 + + + NUDAvatarLevel + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPAvatar + + + 9 + + + CmbAvatar + + + System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPAvatar + + + 10 + + 4, 26 - + 3, 3, 3, 3 - + 652, 245 - - 11 + + 5 - - 数据 + + 角色 - - TPStats + + TPAvatar - + System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + TCMain - - 6 + + 5 True @@ -3841,32 +5284,188 @@ 10 - + + ChkInfiniteHP + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPSpawn + + + 0 + + + LblClearSpawnLogs + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPSpawn + + + 1 + + + BtnSaveSpawnLog + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPSpawn + + + 2 + + + BtnRemoveSpawnLog + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPSpawn + + + 3 + + + GrpSpawnRecord + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPSpawn + + + 4 + + + GrpEntityType + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPSpawn + + + 5 + + + LblSpawnDescription + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPSpawn + + + 6 + + + LblEntityAmount + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPSpawn + + + 7 + + + LblEntityLevel + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPSpawn + + + 8 + + + NUDEntityAmout + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPSpawn + + + 9 + + + NUDEntityLevel + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPSpawn + + + 10 + + + TxtEntityFilter + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPSpawn + + + 11 + + + ListEntity + + + System.Windows.Forms.ListBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPSpawn + + + 12 + + 4, 26 - + 3, 3, 3, 3 - + 652, 245 - - 5 + + 6 - - 角色 + + 生成 - - TPAvatar + + TPSpawn - + System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + TCMain - - 5 + + 4 Bottom, Left @@ -3991,21 +5590,6 @@ Top, Bottom, Left - - Fill - - - 17 - - - 3, 19 - - - 244, 162 - - - 9 - ListSpawnLogs @@ -4042,9 +5626,84 @@ 4 + + Fill + + + 17 + + + 3, 19 + + + 244, 162 + + + 9 + + + ListSpawnLogs + + + System.Windows.Forms.ListBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpSpawnRecord + + + 0 + Bottom, Left + + RbEntityAnimal + + + System.Windows.Forms.RadioButton, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpEntityType + + + 0 + + + RbEntityMonster + + + System.Windows.Forms.RadioButton, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpEntityType + + + 1 + + + 265, 120 + + + 87, 87 + + + 4 + + + 列表分类 + + + GrpEntityType + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPSpawn + + + 5 + True @@ -4105,30 +5764,6 @@ 1 - - 265, 120 - - - 87, 87 - - - 4 - - - 列表分类 - - - GrpEntityType - - - System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - TPSpawn - - - 5 - Top, Bottom, Left, Right @@ -4327,36 +5962,168 @@ 12 - + + GrpQuestFilters + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPQuest + + + 0 + + + BtnFinishQuest + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPQuest + + + 1 + + + BtnAddQuest + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPQuest + + + 2 + + + LblQuestDescription + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPQuest + + + 3 + + + TxtQuestFilter + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPQuest + + + 4 + + + ListQuest + + + System.Windows.Forms.ListBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPQuest + + + 5 + + 4, 26 - + 3, 3, 3, 3 - + 652, 245 - - 6 + + 15 - - 生成 + + 任务 - - TPSpawn + + TPQuest - + System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + TCMain - - 4 + + 3 Bottom, Left + + ChkQuestFilterTEST + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpQuestFilters + + + 0 + + + ChkQuestFilterUNRELEASED + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpQuestFilters + + + 1 + + + ChkQuestFilterHIDDEN + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpQuestFilters + + + 2 + + + 202, 109 + + + 150, 130 + + + 7 + + + 列表过滤 + + + GrpQuestFilters + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPQuest + + + 0 + True @@ -4447,30 +6214,6 @@ 2 - - 202, 109 - - - 150, 130 - - - 7 - - - 列表过滤 - - - GrpQuestFilters - - - System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - TPQuest - - - 0 - Bottom, Left @@ -4614,32 +6357,260 @@ 5 - - 4, 26 + + LblArtifactLevelTip - - 3, 3, 3, 3 + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 652, 245 + + TPArtifact - + + 0 + + + BtnAddSubAttr + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPArtifact + + + 1 + + + LblArtifactName + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPArtifact + + + 2 + + + LblArtifactPart + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPArtifact + + + 3 + + + CmbArtifactPart + + + System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPArtifact + + + 4 + + + CmbArtifactSet + + + System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPArtifact + + + 5 + + + LblArtifactSet + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPArtifact + + + 6 + + + NUDSubAttributionTimes + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPArtifact + + + 7 + + + CmbSubAttributionValue + + + System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPArtifact + + + 8 + + + CmbSubAttribution + + + System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPArtifact + + + 9 + + + LblClearSubAttrCheckedList + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPArtifact + + + 10 + + + ListSubAttributionChecked + + + System.Windows.Forms.ListBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPArtifact + + + 11 + + + LblArtifactLevel + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPArtifact + + + 12 + + + LblSubAttribution + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPArtifact + + + 13 + + + CmbMainAttribution + + + System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPArtifact + + + 14 + + + LblMainAttribution + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPArtifact + + 15 - - 任务 + + NUDArtifactLevel - - TPQuest + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + + TPArtifact + + + 16 + + + LblArtifactStars + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPArtifact + + + 17 + + + NUDArtifactStars + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPArtifact + + + 18 + + + 4, 26 + + + 3, 3, 3, 3 + + + 652, 245 + + + 2 + + + 圣遗物 + + + TPArtifact + + System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + TCMain - - 3 + + 2 Top @@ -5184,32 +7155,116 @@ 18 - + + BtnExportCustomCommands + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPCustom + + + 0 + + + BtnLoadCustomCommands + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPCustom + + + 1 + + + LblCustomName + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPCustom + + + 2 + + + groupBox1 + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPCustom + + + 3 + + + BtnRemoveCustomCommand + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPCustom + + + 4 + + + BtnSaveCustomCommand + + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPCustom + + + 5 + + + TxtCustomName + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPCustom + + + 6 + + 4, 26 - + 3, 3, 3, 3 - + 652, 245 - - 2 + + 1 - - 圣遗物 + + 自定义 - - TPArtifact + + TPCustom - + System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + TCMain - - 2 + + 1 Bottom, Right @@ -5307,6 +7362,54 @@ Top, Bottom, Left, Right + + LnkResetCustomCommands + + + System.Windows.Forms.LinkLabel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox1 + + + 0 + + + FLPCustomCommands + + + System.Windows.Forms.FlowLayoutPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox1 + + + 1 + + + 6, 6 + + + 640, 204 + + + 1 + + + 列表 + + + groupBox1 + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPCustom + + + 3 + True @@ -5364,30 +7467,6 @@ 1 - - 6, 6 - - - 640, 204 - - - 1 - - - 列表 - - - groupBox1 - - - System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - TPCustom - - - 3 - Bottom, Right @@ -5472,32 +7551,38 @@ 6 - - 4, 26 + + Bottom, Right - - 3, 3, 3, 3 + + NoControl - - 652, 245 + + 525, 216 - - 1 + + 100, 23 - - 自定义 + + 10 - - TPCustom + + 掉落物编辑器 - - System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + BtnOpenDropEditor - - TCMain + + System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 1 + + TPHome + + + 0 + + + Bottom, Left True @@ -5506,7 +7591,7 @@ NoControl - 6, 79 + 6, 108 104, 17 @@ -5530,7 +7615,7 @@ TPHome - 0 + 1 Left @@ -5566,16 +7651,16 @@ TPHome - 1 + 2 - Bottom, Left + Bottom, Right NoControl - 112, 99 + 419, 216 100, 23 @@ -5596,16 +7681,16 @@ TPHome - 2 + 3 - Bottom, Left + Bottom, Right NoControl - 6, 99 + 313, 216 100, 23 @@ -5626,7 +7711,7 @@ TPHome - 3 + 4 Top, Bottom, Left, Right @@ -5638,7 +7723,7 @@ 313, 6 - 333, 233 + 333, 204 CenterImage @@ -5656,11 +7741,158 @@ TPHome - 4 + 5 Bottom, Left + + LblGCVersion + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpSettings + + + 0 + + + CmbGcVersions + + + System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpSettings + + + 1 + + + ChkTopMost + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpSettings + + + 2 + + + CmbLanguage + + + System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpSettings + + + 3 + + + LblLanguage + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpSettings + + + 4 + + + NUDUid + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpSettings + + + 5 + + + ChkIncludeUID + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpSettings + + + 6 + + + LblDefaultUid + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + GrpSettings + + + 7 + + + 6, 128 + + + 301, 111 + + + 5 + + + 设置 + + + GrpSettings + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TPHome + + + 6 + + + 4, 26 + + + 3, 3, 3, 3 + + + 652, 245 + + + 0 + + + 主页 + + + TPHome + + + System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + TCMain + + + 0 + True @@ -5874,57 +8106,6 @@ 7 - - 6, 128 - - - 301, 111 - - - 5 - - - 设置 - - - GrpSettings - - - System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - TPHome - - - 5 - - - 4, 26 - - - 3, 3, 3, 3 - - - 652, 245 - - - 0 - - - 主页 - - - TPHome - - - System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - TCMain - - - 0 - Top, Bottom, Left, Right @@ -5952,6 +8133,30 @@ 0 + + 250, 22 + + + 150, 23 + + + 8 + + + 封禁理由 + + + TxtBanReason + + + GrasscutterTools.Controls.TextBoxXP, GrasscutterTools, Version=1.7.0.0, Culture=neutral, PublicKeyToken=de2b1c089621e923 + + + GrpBanPlayer + + + 3 + True @@ -5964,6 +8169,9 @@ Microsoft YaHei UI, 9pt + + NoControl + 3, 4, 3, 4 diff --git a/Source/GrasscutterTools/Game/Drop/DropData.cs b/Source/GrasscutterTools/Game/Drop/DropData.cs new file mode 100644 index 0000000..b90cbce --- /dev/null +++ b/Source/GrasscutterTools/Game/Drop/DropData.cs @@ -0,0 +1,56 @@ +using Newtonsoft.Json; + +namespace GrasscutterTools.Game.Drop +{ + public class DropData + { + /// + /// 物品ID + /// + [JsonProperty("itemId")] + public int ItemId { get; set; } + + /// + /// 最小数量 + /// + [JsonProperty("minCount")] + public int MinCount { get; set; } + + /// + /// 最大数量 + /// + [JsonProperty("maxCount")] + public int MaxCount { get; set; } + + /// + /// 最小权重,范围0~10000 + /// + [JsonProperty("minWeight")] + public int MinWeight { get; set; } + + /// + /// 最大权重,范围0~10000 + /// + [JsonProperty("maxWeight")] + public int MaxWeight { get; set; } + + // 以下属性可用但没有必要 + + ///// + ///// 是否共享? + ///// + //[JsonProperty("share")] + //public bool IsShare { get; set; } + + ///// + ///// 是否直接给予 + ///// + //[JsonProperty("give")] + //public bool IsGive { get; set; } + + public override string ToString() + { + return $"{ItemId} x{MinCount}~x{MaxCount} [{MinWeight}~{MaxWeight}]"; + } + } +} \ No newline at end of file diff --git a/Source/GrasscutterTools/Game/Drop/DropInfo.cs b/Source/GrasscutterTools/Game/Drop/DropInfo.cs new file mode 100644 index 0000000..0b6421a --- /dev/null +++ b/Source/GrasscutterTools/Game/Drop/DropInfo.cs @@ -0,0 +1,21 @@ +using System.Collections.Generic; + +using Newtonsoft.Json; + +namespace GrasscutterTools.Game.Drop +{ + internal class DropInfo + { + /// + /// 怪物ID + /// + [JsonProperty("monsterId")] + public int MonsterId { get; set; } + + /// + /// 掉落列表 + /// + [JsonProperty("dropDataList")] + public List DropDataList { get; set; } = new List(); + } +} diff --git a/Source/GrasscutterTools/GrasscutterTools.csproj b/Source/GrasscutterTools/GrasscutterTools.csproj index 1b7f8bd..4cb74cc 100644 --- a/Source/GrasscutterTools/GrasscutterTools.csproj +++ b/Source/GrasscutterTools/GrasscutterTools.csproj @@ -90,6 +90,12 @@ + + Form + + + FormDropEditor.cs + Form @@ -115,6 +121,8 @@ FormTextMapBrowser.cs + + @@ -140,6 +148,9 @@ + + FormDropEditor.cs + FormGachaBannerEditor2.cs