void Update()
    {
        if (FlashLight != null)
        {
            Vector3 d = Camera.main.ScreenToWorldPoint(Input.mousePosition) - gameObject.transform.position;

            Vector2 dist = new Vector2(d.x, d.y);
            dist.Normalize();
            float angle = Mathf.Rad2Deg * -Mathf.Atan2(dist.y, dist.x);
            FlashLight.transform.eulerAngles = new Vector3(angle, 90, 0);

            if (Input.GetMouseButtonDown(0))
            {
                GameObject wave = Instantiate(WavePrefab);
                wave.name = "Wave";
                wave.GetComponent <WaveActions>().Velocity = new Vector3(dist.x, dist.y, 0);
                wave.GetComponent <WaveActions>().transform.eulerAngles = new Vector3(0, 0, -angle);
                wave.GetComponent <WaveActions>().transform.position   +=
                    new Vector3(gameObject.transform.position.x + 1.5f * dist.x,
                                gameObject.transform.position.y + 1.5f * dist.y, 0);
                wave.GetComponent <WaveActions>().transform.localScale = new Vector3(0.25f, 0.25f, 0.25f);
            }
        }


        if (_animator != null)
        {
            _animator.SetFloat("velocityX", _moveScript.GetVelX());
            _animator.SetFloat("velocityY", _moveScript.GetVelY());
        }
    }
Пример #2
0
 // Update is called once per frame
 void Update()
 {
     if (_animator != null)
     {
         _animator.SetFloat("velocityX", _moveScript.GetVelX());
         _animator.SetFloat("velocityY", _moveScript.GetVelY());
     }
 }