Les Icônes se mettent correctement à jour durant la partie. Update de BaseMonoBehaviour, on peux maintenant ajouter une couleur a Info().

This commit is contained in:
mrtoine 2025-10-13 10:15:54 +02:00
parent aac376670c
commit 2b5a227237
10 changed files with 142 additions and 1163 deletions

View file

@ -33,6 +33,8 @@ namespace Quests.Runtime
public static event Action<QuestClass> OnEventFromQuest;
public static event Action<List<QuestTemplate>> OnAvailableQuestsUpdated;
public static event Action<QuestClass> OnCheckStateQuest;
#endregion
#region Unity API
@ -77,6 +79,9 @@ namespace Quests.Runtime
if (_activeQuests == null) _activeQuests = new List<QuestClass>();
if (_completedQuests == null) _completedQuests = new List<QuestClass>();
if (_disponibleQuests == null) _disponibleQuests = new List<QuestClass>();
// On Check L'état des quêtes avant toutes choses
CheckStateQuest();
}
#endregion
@ -174,12 +179,24 @@ namespace Quests.Runtime
/// </summary>
public void NotifyCompletedQuests()
{
foreach (var quest in _completedQuests)
foreach (QuestClass quest in _completedQuests)
{
OnQuestCompleted?.Invoke(quest);
}
}
public void CheckStateQuest()
{
List<QuestClass> quests = GetFact<List<QuestClass>>("accepted_quests");
if (quests == null) return;
foreach (QuestClass quest in quests)
{
OnCheckStateQuest?.Invoke(quest);
}
}
/// <summary>
/// Récupère l'historique des events lié à une quête
/// </summary>
@ -334,10 +351,9 @@ namespace Quests.Runtime
AdventurerClass adventurer = QuestClass.GetOneAdventurerFromId(adventurerId);
if (adventurer == null)
{
Info($"<color=orange>Aventurer {adventurerId} introuvable</color>");
continue;
}
Info($"<color=orange>{adventurer.Name} est dans la team avec le status dispo : {adventurer.IsAvailable}</color>");
if (adventurer != null && adventurer.IsAvailable == false)
{
adventurer.IsAvailable = true;
@ -346,7 +362,7 @@ namespace Quests.Runtime
}
if (anyChanged)
{
Info("<color=cyan>Comme les données on changées, on les sauvegarde.</color>");
SaveFacts();
}
}