public override void OnInspectorGUI() { _tdTile = (TdTile)target; base.OnInspectorGUI(); DrawToggles(); }
private void OnMouseDown() { var option = SelectedTowerOption.Option; var rayHit = GetRaycastHit(); if (!rayHit.HasValue) { return; } var hit = rayHit.Value; if (option.SelectedTowerPrefab != null) { var tile = GetTile(hit); if (_lastTile != null && _lastTile != tile) { _lastTile.StopHighlightTile(); } _lastTile = tile; tile.ReadyToBuild(); } else { if (_lastTile != null) { _lastTile.StopHighlightTile(); _lastTile = null; } } SpellSpawner.IsReady = option.SelectedSpell != null; }
private void SetNextTarget(List <TdTile> targets) { _target = targets[GetRandom(0, targets.Count)]; if (!_target.IsGoal) { _targetNoiseOffset = new Vector3(Random.Range(-RandomTargetOffset, RandomTargetOffset), Random.Range(-RandomTargetOffset, RandomTargetOffset), 0); } }
public void SetSpawnPoint(Transform sp, bool move) { _spawnpoint = sp; var position = sp.position; if (move) { var firstTargets = FindNearestTile(_tiles).NextTiles; transform.position = new Vector3(position.x, position.y); _target = firstTargets[GetRandom(0, firstTargets.Count)]; } }
private void OnMouseOver() { var option = SelectedTowerOption.Option; var rayHit = GetRaycastHit(); if (!rayHit.HasValue) { return; } var hit = rayHit.Value; if (option.SelectedTowerPrefab != null) { var tile = GetTile(hit); if (_lastTile != null && _lastTile != tile) { _lastTile.StopHighlightTile(); } tile.HighlightTile(); _lastTile = tile; } else { if (_lastTile != null) { _lastTile.StopHighlightTile(); } _lastTile = null; } if (option.SelectedSpell != null) { SpellCircle.gameObject.SetActive(true); SpellCircle.transform.position = new Vector3(hit.point.x, hit.point.y, -1); SpellCircle.UpdateCircle(SelectedTowerOption.Option.SelectedSpell.Spell.Range); // CHANGE THIS } else { SpellCircle.gameObject.SetActive(false); } }
private void OnMouseUp() { var option = SelectedTowerOption.Option; var rayHit = GetRaycastHit(); if (!rayHit.HasValue) { return; } var hit = rayHit.Value; if (option.SelectedTowerPrefab != null) { var tile = GetTile(hit); if (tile == _lastTile && _lastTile != null) { tile.Build(option.SelectedTowerPrefab.Tower); } else if (_lastTile != null) { _lastTile.StopHighlightTile(); } } _lastTile = null; if (option.SelectedSpell != null) { if (SpellSpawner.IsReady) { SpellSpawner.IsReady = false; SelectedTowerOption.Option.SelectedSpell.TryInstantiateSpell(SpellSpawner); } } else { } }
public TileWithDistance(TdTile tile, float distance) { Tile = tile; Distance = distance; }
public TileWithCoordinates(int x, int y, TdTile tile) { Tile = tile; X = x; Y = y; }
public void BuildTower(TdTile tile) { tile.Build(Tower); }