private DragonPosition MoveRealDragonToRandomPosition() { DragonPosition newPosition = (DragonPosition)Random.Range(0, 3); this.transform.position = GetVectorFromPosition(newPosition); return(newPosition); }
private Vector3 GetVectorFromPosition(DragonPosition position) { switch (position) { case DragonPosition.Left: return(new Vector3(-2f, 1.6f, 0f)); case DragonPosition.Center: return(new Vector3(4f, 1.6f, 0f)); case DragonPosition.Right: return(new Vector3(10f, 1.6f, 0f)); default: throw new NotImplementedException("There are only 3 valid dragon positions"); } }
private void SpawnPhoneyDragons(DragonPosition positionOfRealDragon) { for (int i = 0; i < 3; i++) { if (i != (int)positionOfRealDragon) { var phoneyDragonController = Instantiate(this.PhoneyDragonPrefab, this.GetVectorFromPosition((DragonPosition)i), Quaternion.identity).GetComponent <PhoneyDragonController>(); phoneyDragonController.PointToFollow = this.PointToFollow.transform; if (this._phoneyDragon1 == null) { this._phoneyDragon1 = phoneyDragonController; } else { this._phoneyDragon2 = phoneyDragonController; } } } }