public void StartTransmition() { _state = States.TRAVELING; // Activate the duration feedback _durationTransform.gameObject.SetActive(true); // Configure the particle feedback _particle.AddWayPoint(_originUnit.transform.position); if (_order != null && _order._endWorldPos != null && _order._endWorldPos != Vector3.zero) { _particle.AddWayPoint(_order._endWorldPos); } _particle.AddWayPoint(transform.position); if (_targetUnit != null) { _particle.AddWayPoint(_targetUnit.transform.position); } else { _particle.AddWayPoint(_targetPosition); } _particle.RecalculateTravelSpeed(_duration); // Activate the particle feedback _particle.Activate(); }
void Awake() { // Retrieve range feedback sprite renderer _rangeSprite = gameObject.GetComponent <SpriteRenderer>(); // Retrieve duration feedback's transform _durationTransform = transform.FindChild("Delay"); // Retrieve paticle and configure it _particle = new OrderParticle(transform.FindChild("Particle")); _particle.RecalculateTravelSpeed(_duration); _state = States.WAITING_ORIGIN; }
void Awake() { // Retrieve range feedback sprite renderer _rangeSprite = gameObject.GetComponent<SpriteRenderer>(); // Retrieve duration feedback's transform _durationTransform = transform.FindChild("Delay"); // Retrieve paticle and configure it _particle = new OrderParticle(transform.FindChild("Particle")); _particle.RecalculateTravelSpeed(_duration); _state = States.WAITING_ORIGIN; }