using UnityEngine; using System.Collections.Generic; public class PartyUIManager : MonoBehaviour { public TeamCohesionManager cohesionManager; public GameObject characterCardPrefab; public Transform cardContainer; public PlayerWeaponManager weaponManager; void Start() { Debug.Log("#D001 > Reading Character Cards"); DisplayPartyUI(); } public void DisplayPartyUI() { foreach (Transform child in cardContainer) Destroy(child.gameObject); for (int i = 0; i < cohesionManager.groupMembers.Count; i++) { var character = cohesionManager.groupMembers[i]; GameObject card = Instantiate(characterCardPrefab, cardContainer); Debug.Log("#D001 > Character Card Instantiated"); CharacterUIController ui = card.GetComponent(); FirstPersonWeapon weapon = (i < weaponManager.weaponObjects.Count) ? weaponManager.weaponObjects[i] : null; ui.Setup(character, weapon); UIUpdater.Instance?.Register(character, ui); Debug.Log($"[UI Setup] Enregistrement de {character.characterName} (hashCode={character.GetHashCode()})"); UIUpdater.Instance?.MarkReady(); } } }