//could fail due to cost or illegal grid pos void TryToSpawnAt(Vector2 gridPos) { if (!IsOkGridSpace(gridPos)) { return; } DefenderSelector selected = DefenderSelector.selectedDefender; if (selected) { Defender def = selected.defenderToSpawn.GetComponent <Defender>(); if (starCounter.TryToUseStars(def.spawnCost)) { Instantiate(def.gameObject, gridPos, Quaternion.identity, defendersParent); audioSource.clip = spawnOKClip; audioSource.Play(); } else { audioSource.clip = noMoneyToSpawnClip; audioSource.Play(); } } }
public void Selected() { if (selectedDefender) { selectedDefender.Unselect(); } selectedDefender = this; spriteRenderer.material.color = Color.white; }