/* * void Update() * { * if (Input.GetKeyDown(KeyCode.Q)) * { * GameObject sword = Instantiate(Sword, SwordsTail.transform); * SwordsTail.CollectSword(sword); * } * } */ private void OnTriggerEnter2D(Collider2D collision) { if (collision.GetComponentInParent <Rigidbody2D>()) { if (collision.GetComponentInParent <SwordsTail>()) { GameObject sword = Instantiate(Sword, SwordsTail.transform); SwordsTail.CollectSword(sword); Destroy(gameObject); } } }
void Update() { mousPosition = Camera.ScreenToWorldPoint(Input.mousePosition); Vector2 direction = new Vector2(mousPosition.x - transform.position.x, mousPosition.y - transform.position.y); if (_isFliesBack) { PlayerPosition = FindObjectOfType <PlayerMove>().transform.position; moveTo = PlayerPosition - transform.position; transform.up = moveTo; if (Mathf.Abs(moveTo.x) <= StopDistance && Mathf.Abs(moveTo.y) <= StopDistance) { FindObjectOfType <SpawnSword>().WithSword = false; GameObject sword = Instantiate(Sword, SwordsTail.transform); SwordsTail.CollectSword(sword); Destroy(gameObject); } } else { if (_isChase) { transform.up = direction; moveTo = Camera.ScreenToWorldPoint(Input.mousePosition) - transform.position; } if (Mathf.Abs(moveTo.x) <= StopDistance && Mathf.Abs(moveTo.y) <= StopDistance) { _isChase = false; _isFliesBack = true; } if (Input.GetMouseButtonDown(0)) { _isChase = false; FindObjectOfType <SwordPiercing>().SwordStartWait = false; } } }