From a2656b4b1c2625bf879cb7a16eacf2257ba77feb Mon Sep 17 00:00:00 2001 From: wuwenbo Date: Tue, 26 Aug 2025 14:40:06 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A6=82=E6=9E=9C=E5=8E=9F=E5=A7=8B=E9=A6=96?= =?UTF-8?q?=E9=83=BD=E6=B2=A1=E4=BA=86=EF=BC=8C=E5=A4=A7=E4=BD=BF=E9=A6=86?= =?UTF-8?q?=E8=87=AA=E5=8A=A8=E6=92=A4=E9=94=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Unity/Assets/Scripts/TH1_Logic/Player/PlayerLogic.cs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/Unity/Assets/Scripts/TH1_Logic/Player/PlayerLogic.cs b/Unity/Assets/Scripts/TH1_Logic/Player/PlayerLogic.cs index 7e4d6b058..bc2bce3ec 100644 --- a/Unity/Assets/Scripts/TH1_Logic/Player/PlayerLogic.cs +++ b/Unity/Assets/Scripts/TH1_Logic/Player/PlayerLogic.cs @@ -232,6 +232,8 @@ namespace Logic //记录oldplayer和newplayer var oldPid = playerData2.Id; var newPid = playerData.Id; + + bool lostEmbassy = Main.CityLogic.CheckCradleCapital(mapData, playerData2, cityData); // 修改城市和玩家的所属关系 if (!mapData.SetCityIdToPlayerId(cityData.Id, playerData.Id)) @@ -239,7 +241,13 @@ namespace Logic LogSystem.LogError("占领失败!"); return; } - + + // 撤销所有国家在 player2 建立的大使馆 + if (lostEmbassy) + { + foreach (var info in playerData2.DiplomacyData.Info) info.IsEmbassy = false; + } + //转移小兵的编制,要在处理完城市和玩家所属关系后才能转移小兵编制,不然出局的玩家清理本城市小兵的时候会出错 if (!mapData.GetCityDataByUnitId(unitData.Id, out var oldCityData)) {