增加成就系统的完整更新,可能会将已完成的成就置回

This commit is contained in:
wuwenbo 2025-09-01 15:04:26 +08:00
parent f64bfc7991
commit 5c20ce233f
2 changed files with 20 additions and 0 deletions

View File

@ -46,6 +46,12 @@ namespace RuntimeData
foreach (var item in Achievement.AchievementList)item.BindMapData(mapData);
}
public void CompleteRefreshAchievementData(MapData map)
{
foreach (var item in Achievement.AchievementList)
item.CheckConditionsComplete(map);
}
public void OnTurnStart(MapData map, PlayerData player)
{
foreach (var item in Achievement.AchievementList)

View File

@ -79,6 +79,20 @@ namespace Logic.Achievement
CheckConditions(map);
}
public void CheckConditionsComplete(MapData mapData)
{
CheckMapMatch(mapData);
foreach (var condition in Conditions)
{
if (condition.CheckCondition(this, mapData)) continue;
IsFinished = false;
return;
}
IsFinished = true;
AchievementDataManager.Instance.FinishedCache.Add(ID);
}
public void CheckConditions(MapData mapData)
{
if (IsFinished) return;