void Start() { shipMoveLogic = GetComponent <ShipMovementLogic>(); combatGuiHandler = GetComponent <CombatGuiHandler>(); combatInputController = GetComponent <CombatInputController>(); mainCamera = Camera.main; ChangeState <InitBattleState>(); }
public void Setup(Tile tile, int totalApCost = 0) { GlobalHelper.DestroyAllChildren(tileEffectsParent); tileType.text = tile.TileType.ToString(); if (ReferenceEquals(_inputController, null)) { _inputController = FindObjectOfType <CombatInputController>(); } if (tile is Floor floor) { if (_inputController.TileSelected() && ReferenceEquals(tile, _inputController.GetSelectedTile())) { if (totalApCost <= 0) { totalApCost = _inputController.GetTotalTileMovementCost(); } apCost.text = $"{totalApCost} AP to move here"; } else { apCost.text = $"{floor.ApCost} AP to cross"; } } else { apCost.text = "Impassable"; } var effects = tile.GetEffects(); if (effects == null || !effects.Any()) { tileEffectsParent.SetActive(false); } else { var listedEffects = new List <string>(); tileEffectsParent.SetActive(true); foreach (var effect in effects) { if (listedEffects.Contains(effect.Name)) { continue; } listedEffects.Add(effect.Name); var effectText = Instantiate(tileEffectTextPrefab, tileEffectsParent?.transform); effectText.GetComponent <TextMeshProUGUI>().text = effect.Name; } } if (_subscribed) { return; } var eventMediator = FindObjectOfType <EventMediator>(); eventMediator.SubscribeToEvent(RefreshEvent, this); _subscribed = true; }
private void Start() { _inputController = FindObjectOfType <CombatInputController>(); }
void Start() { combatControllerParent = GetComponent <CombatController>(); InitVisualDebugVector(); inputController = GetComponent <CombatInputController>(); }