修复游戏会卡死的bug (占领城市后, unit编制改变 时,将playerid赋给了cityid

This commit is contained in:
daixiawu 2025-07-09 21:24:50 +08:00
parent 71312ac3b9
commit c17b9c3bc3
5 changed files with 14 additions and 11 deletions

View File

@ -27,7 +27,7 @@ MonoBehaviour:
_version: 3.33
_category:
_comments:
_translation: {x: -215, y: 43}
_translation: {x: 71, y: 178}
_zoomFactor: 1
_haltSerialization: 0
_externalSerializationFile: {fileID: 0}

File diff suppressed because one or more lines are too long

View File

@ -70894,7 +70894,7 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
Ban: 0
ID: 8
ID: 1041
FontID: 0
--- !u!1 &552429849
GameObject:
@ -92600,7 +92600,7 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
NoAI: 0
FullSight: 0
FullSight: 1
AIActionTime: 0.5
AIAllTech: 0
AIMoreMoney: 0
@ -124065,7 +124065,7 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_AnchoredPosition: {x: 0, y: 0.00033841847}
m_SizeDelta: {x: 0, y: 493.63}
m_Pivot: {x: 0, y: 1}
--- !u!114 &934004167
@ -204507,7 +204507,7 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
Ban: 0
ID: 9
ID: 213
FontID: 0
--- !u!1 &1554509886
GameObject:
@ -258961,7 +258961,7 @@ MonoBehaviour:
m_HandleRect: {fileID: 1493913665}
m_Direction: 2
m_Value: 0
m_Size: 1
m_Size: 0.9999184
m_NumberOfSteps: 0
m_OnValueChanged:
m_PersistentCalls:

View File

@ -269,7 +269,7 @@ namespace RuntimeData
var tmpUnitDataList = new List<UnitData>();
GetUnitDataListByCityId(cid, tmpUnitDataList);
foreach(var tmpUnitData in tmpUnitDataList)
SetUnitIdToCityId(tmpUnitData.Id,oldPlayerData.Id);
SetUnitIdToCityId(tmpUnitData.Id,oldPlayerCapitalCityData.Id);
oldPlayerCapitalCityData.RenderMark = true;
}

View File

@ -28,8 +28,11 @@ public class TimeEndUI
return;
if (_mapData == null)
return;
//每帧判断,当前是否游戏结束了
if (_mapData.PlayerMap.CheckTimeEnd())
{
_main.GameLogic.ChangeState(GameState.Finished);
ROTimeEndUI.gameObject.SetActive(true);
int ans = 1;
foreach(var player in _mapData.PlayerMap.PlayerDataList)
@ -46,7 +49,7 @@ public class TimeEndUI
public void OnReturnClicked()
{
_main.GameLogic.ChangeState(GameState.Finished);
_main.GameLogic.ChangeState(GameState.Menu);
ROTimeEndUI.gameObject.SetActive(false);
_main.UIManager.GameUI.ShowMainUIManager();
}