public void SetCombatUnitConfig(CombatUnitConfig config) { combatUnitConfig = config; HexUnit.SetMeshChild(Instantiate(config.MeshChild, gameObject.transform).transform); HexVision.AddVisibleObject(HexUnit.GetMesh()); BaseMovement = config.BaseMovement; BaseStrength = config.BaseStrength; Symbol = config.Symbol; foreach (AbilityConfig abilityConfig in config.GetAbilityConfigs()) { abilities.AbilitiesList.Add(abilityConfig); } }
private void Awake() { hexGrid = FindObjectOfType <HexGrid>(); HUDUI = FindObjectOfType <HUD>(); Behaviour = gameObject.AddComponent <UnitBehaviour>(); GameController = FindObjectOfType <GameController>(); unitUI = Instantiate(unitUiPrefab).GetComponent <UnitUI>(); hexVision = gameObject.AddComponent <HexVision>(); abilities = GetComponent <Abilities>(); unitUI.Unit = this; hexVision.AddVisibleObject(unitUI.gameObject); if (hexUnit.GetMesh()) { hexVision.AddVisibleObject(hexUnit.GetMesh()); } hexUnit.HexVision = hexVision; gameController.VisionSystem.AddHexVision(hexVision); AudioSource audioSource = gameObject.AddComponent <AudioSource>(); audioSource.spatialBlend = 1; audioSource.minDistance = 10; Setup(); }