From 0bf578191d3dd54f2837bfb40c69e4f783e84b2c Mon Sep 17 00:00:00 2001 From: shangfengh <3495281661@qq.com> Date: Fri, 28 Apr 2023 21:14:08 +0800 Subject: [PATCH] fix: :poop: fix the bug temporarily --- docs/QandA.md | 4 +++- logic/GameClass/GameObj/Map/Map.cs | 6 +++--- logic/GameEngine/MoveEngine.cs | 12 ++++++++---- logic/Server/CopyInfo.cs | 2 +- logic/cmd/gameServerAndClient.cmd | 2 +- resource/vector.png | Bin 0 -> 36550 bytes 6 files changed, 16 insertions(+), 10 deletions(-) create mode 100644 resource/vector.png diff --git a/docs/QandA.md b/docs/QandA.md index 27cc1517..e66d7229 100644 --- a/docs/QandA.md +++ b/docs/QandA.md @@ -61,7 +61,9 @@ A: 2. 不要点重新生成,要点生成 3. 开启下图选项 ![CompileFaster](https://raw.githubusercontent.com/shangfengh/THUAI6/new/resource/CompileFaster.png) - + +Q:这是什么错误啊 +![vector](https://raw.githubusercontent.com/shangfengh/THUAI6/new/resource/vector.png) ## Python diff --git a/logic/GameClass/GameObj/Map/Map.cs b/logic/GameClass/GameObj/Map/Map.cs index 953ddb3b..3cfbf49a 100644 --- a/logic/GameClass/GameObj/Map/Map.cs +++ b/logic/GameClass/GameObj/Map/Map.cs @@ -232,14 +232,14 @@ public bool Remove(GameObj gameObj) break; } } + if (ToDel != null) + GameObjDict[gameObj.Type].Remove(ToDel); } finally { GameObjLockDict[gameObj.Type].ExitWriteLock(); } - if (ToDel == null) return false; - GameObjDict[gameObj.Type].Remove(ToDel); - return true; + return ToDel != null; } public bool RemoveJustFromMap(GameObj gameObj) { diff --git a/logic/GameEngine/MoveEngine.cs b/logic/GameEngine/MoveEngine.cs index 978f6c52..aa13c682 100644 --- a/logic/GameEngine/MoveEngine.cs +++ b/logic/GameEngine/MoveEngine.cs @@ -147,14 +147,16 @@ public void MoveObj(IMoveable obj, int moveTime, double direction) isDestroyed = true; return false; case AfterCollision.MoveMax: - MoveMax(obj, res); + if (threadNum == 0 || ((ICharacter)obj).ThreadNum == threadNum) + MoveMax(obj, res); moveVecLength = 0; res = new XY(direction, moveVecLength); break; } } while (flag); - deltaLen += moveVecLength - Math.Sqrt(obj.MovingSetPos(res, GetPlaceType(obj.Position + res))); + if (threadNum == 0 || ((ICharacter)obj).ThreadNum == threadNum) + deltaLen += moveVecLength - Math.Sqrt(obj.MovingSetPos(res, GetPlaceType(obj.Position + res))); return true; }, @@ -172,7 +174,8 @@ public void MoveObj(IMoveable obj, int moveTime, double direction) res = new XY(direction, moveVecLength); if ((collisionObj = collisionChecker.CheckCollisionWhenMoving(obj, res)) == null) { - obj.MovingSetPos(res, GetPlaceType(obj.Position + res)); + if (threadNum == 0 || ((ICharacter)obj).ThreadNum == threadNum) + obj.MovingSetPos(res, GetPlaceType(obj.Position + res)); } else { @@ -186,7 +189,8 @@ public void MoveObj(IMoveable obj, int moveTime, double direction) isDestroyed = true; break; case AfterCollision.MoveMax: - MoveMax(obj, res); + if (threadNum == 0 || ((ICharacter)obj).ThreadNum == threadNum) + MoveMax(obj, res); moveVecLength = 0; res = new XY(direction, moveVecLength); break; diff --git a/logic/Server/CopyInfo.cs b/logic/Server/CopyInfo.cs index 1e129718..d6a14233 100644 --- a/logic/Server/CopyInfo.cs +++ b/logic/Server/CopyInfo.cs @@ -272,7 +272,7 @@ private static MessageOfObj Chest(Chest chest, int time) Y = chest.Position.y } }; - int progress = (chest.WhoOpen!=null) ? ((time - chest.OpenStartTime) * chest.WhoOpen.SpeedOfOpenChest) : 0; + int progress = (chest.WhoOpen != null) ? ((time - chest.OpenStartTime) * chest.WhoOpen.SpeedOfOpenChest) : 0; msg.ChestMessage.Progress = (progress > GameData.degreeOfOpenedChest) ? GameData.degreeOfOpenedChest : progress; return msg; } diff --git a/logic/cmd/gameServerAndClient.cmd b/logic/cmd/gameServerAndClient.cmd index 71f90c76..125b3911 100644 --- a/logic/cmd/gameServerAndClient.cmd +++ b/logic/cmd/gameServerAndClient.cmd @@ -1,6 +1,6 @@ @echo off -start cmd /k ..\Server\bin\Debug\net6.0\Server.exe --ip 0.0.0.0 --port 8888 --studentCount 4 --trickerCount 1 --gameTimeInSecond 600 --fileName test +start cmd /k ..\Server\bin\Debug\net6.0\Server.exe --ip 0.0.0.0 --port 8888 --studentCount 0 --trickerCount 1 --gameTimeInSecond 600 --fileName test ping -n 2 127.0.0.1 > NUL diff --git a/resource/vector.png b/resource/vector.png new file mode 100644 index 0000000000000000000000000000000000000000..72d198778ccf5bef5441e12cdb80fb286bad0fdb GIT binary patch literal 36550 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 literal 0 HcmV?d00001