From d892cd6c0ef80a686a156dc5c745f63c568056cd Mon Sep 17 00:00:00 2001 From: ZZY <2450266535@qq.com> Date: Sat, 15 Jun 2024 23:27:57 +0800 Subject: [PATCH] =?UTF-8?q?bugfix=20=E4=BF=AE=E5=A4=8D=E6=92=A4=E5=9B=9E?= =?UTF-8?q?=E5=92=8C=E9=87=8D=E6=96=B0=E5=BC=80=E5=A7=8B=E6=8C=89=E9=92=AE?= =?UTF-8?q?=E7=9A=84=E9=80=BB=E8=BE=91=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Scripts/Entities/ChessBoard.cs | 4 +++- Scripts/Utilities/VirtualBoard.cs | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/Scripts/Entities/ChessBoard.cs b/Scripts/Entities/ChessBoard.cs index 7c4577f..a316423 100644 --- a/Scripts/Entities/ChessBoard.cs +++ b/Scripts/Entities/ChessBoard.cs @@ -9,7 +9,7 @@ public partial class ChessBoard : Node2D { public override void _Ready() { Board = new VirtualBoard(this as Node); Records = new MoveRecords(onUndoRecordCallback: (newNode, oldNode, newPos, oldPos) => { - GD.Print("Undo: ", newNode, "->", newNode, ":", newPos, "->", oldPos); + GD.Print("Undo: ", newNode, "->", oldNode, ":", newPos, "->", oldPos); ChessPiece newPiece = newNode as ChessPiece; ChessPiece oldPiece = oldNode as ChessPiece; Board.MoveNode(oldPos, newPos); @@ -64,6 +64,7 @@ public partial class ChessBoard : Node2D { } Node NowNode; if (NowChess != null) { + GD.Print("nowchess", NowChess); NowNode = NowChess.Duplicate(); Board.RemoveNode(clickArrPos); } else { @@ -83,6 +84,7 @@ public partial class ChessBoard : Node2D { public void redo() { Records.Clear(); Board.Clear(); + selectedNodePos = Vector2.Inf; Board.InitChessBoard(); } diff --git a/Scripts/Utilities/VirtualBoard.cs b/Scripts/Utilities/VirtualBoard.cs index 374a296..6dbc271 100644 --- a/Scripts/Utilities/VirtualBoard.cs +++ b/Scripts/Utilities/VirtualBoard.cs @@ -59,6 +59,7 @@ class VirtualBoard { public void Clear() { foreach (var node in BoardRoot.GetChildren()) { if (node is ChessPiece chessPiece) { + RemoveNode(chessPiece.getPos()); chessPiece.QueueFree(); } }