public static CombatAnimaController GetOrAdd(GameObject gameObject) { if (gameObject == null) { Debug.Log("Combat -> argument named `gameObject` is null."); return(null); } CombatAnimaController combat = gameObject.GetComponent <CombatAnimaController>(); if (combat == null) { combat = gameObject.AddComponent <CombatAnimaController>(); if (combat.combat.m_BattleActionDict.Count == 0) { combat.combat.m_BattleActions = new BattleAction[] { ScriptableObject.CreateInstance <PrepareAction>(), ScriptableObject.CreateInstance <AttackAction>() }; combat.combat.InitBattleActions(); } } return(combat); }
public static CombatAnimaController GetOrAdd(GameObject gameObject, MapClass role0, MapClass role1) { CombatAnimaController combat = GetOrAdd(gameObject); if (combat == null || !combat.LoadCombatUnit(role0, role1)) { return(null); } return(combat); }