์ œ๊ฐ€ Enemy ์ธ tag๋ฅผ ๋‹ฌ๊ณ ์žˆ๋Š” ์• ๋“ค ๊ฑฐ๋ฆฌ๋ฅผ ๊ตฌํ•ด์„œ ์ผ์ •๊ฑฐ๋ฆฌ ์•ˆ์— ๋“ค์–ด์˜ฌ์‹œ ๊ณต๊ฒฉ๋ชจ์…˜์„ ์ทจํ•˜๋ผ๊ณ  ํ–ˆ๋Š”๋ฐ ๊ฑฐ๋ฆฌ๋ฅผ ๊ณ„์‚ฐํ• ๋•Œ ์ž๊พธ ์•ž์— ์žˆ์—ˆ๋˜ ์• ๋“ค ๋’ค๋กœ ๋ณด๋‚ด๋„ ๊ทธ์• ๋งŒ ์ธ์‹์„ ํ•˜๋„ค์š” ใ… ใ… 

๊ทธ์• ๋ฅผ ์‚ญ์ œ์‹œํ‚ค๋ฉด ์ •์ƒ์ ์œผ๋กœ ๋ฐ”๋กœ ๋’ค์—์žˆ๋Š” ์• ๋ฅผ ๊ณต๊ฒฉํ•˜๊ธฐ๋Š” ํ•˜๋Š”๋ฐย ๋” ์•ž์— Enemy ์ธ tag๋ฅผ ๋‹ฌ๊ณ ์žˆ๋Š” ์• ๊ฐ€ ์žˆ์–ด๋„ ๊ทธ๋ ‡๊ฒŒ ๋˜๋‹ˆ@@ ใ… ใ… ใ… ใ… 

์ธ๋”” ๊ฒŒ์ž„๊ฐค๋Ÿฌ๋ฆฌ ๊ณ ์ˆ˜๋‹˜๋“ค์˜ ๋„์›€์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค ์–ด๋–ป๊ฒŒ ํ•ด์•ผ์ง€ ์ œ๋Œ€๋กœ ์ธ์‹์„ ํ• ๊นŒ์š”?????

(์ฝ”๋“œ๊ฐ€ ์ข€ ์ง€์ €๋ถ„ํ•ฉ๋‹ˆ๋‹ค ์–‘ํ•ด๋ถ€ํƒ)

์ฐธ๊ณ ๋กœ ์ €๊ธฐ ํƒ€์›Œ๋„ Enemy tag๋ฅผ ๋ถ™์˜€์Šต๋‹ˆ๋‹ค ์ € ์ƒˆ๋ž‘

viewimage.php?id=2abcdd23dad63db0&no=24b0d769e1d32ca73ced82fa11d02831fe384ecd5bf5471a0304a3eb0c951586551fce29fa29bbd4a6274f344330b8a6551e54e78c78a51669cc959fbe2632ee6aa0


viewimage.php?id=2abcdd23dad63db0&no=24b0d769e1d32ca73ced82fa11d02831fe384ecd5bf5471a0304a3eb0c951586551fce29fa29bbd4a6274f344330b8a6551e54e78c78a71038c99799b02532eee1a5




using System.Collections;

using System.Collections.Generic;

using UnityEngine;


public class Dragon : MonoBehaviour

{


ย  ย  public GameObject Enemy;

ย  ย  public float Dis;

ย  ย  public float dspeed = 0.1f;

ย  ย  private Animator animator;

ย  ย  public GameObject U_dragon;

ย  ย  private Rigidbody2D zx;

ย  ย  public List FoundObjects;

ย  ย  public GameObject fireball_01;

ย  ย  public float shortDis;

ย  ย  public float H = 25.0f;

ย  ย ย 

ย  ย  // Start is called before the first frame update

ย  ย  void Start()

ย  ย  {

ย  ย  ย  ย  zx = GetComponent();

ย  ย  ย  ย  animator = GetComponent();

ย  ย  ย  ย 

ย  ย  }


ย  ย  // Update is called once per frame

ย  ย  void Update()

ย  ย  {

ย  ย  ย  ย  FoundObjects = new List(GameObject.FindGameObjectsWithTag("Enemy"));

ย  ย  ย  ย  shortDis = Vector2.Distance(U_dragon.transform.position, FoundObjects[0].transform.position);


ย  ย  ย  ย 

ย  ย  ย  ย 


ย  ย  ย  ย  if (shortDis > 7)

ย  ย  ย  ย  {

ย  ย  ย  ย  ย  ย  zx.transform.Translate(transform.right * dspeed);

ย  ย  ย  ย  ย  ย  animator.SetBool("Walk", true);

ย  ย  ย  ย  ย  ย  animator.SetBool("Attack", false);

ย  ย  ย  ย  ย  ย  animator.SetBool("Die", false);

ย  ย  ย  ย  }



ย  ย  ย  ย  if (shortDis<=7)

ย  ย  ย  ย  {

ย  ย  ย  ย  ย  ย  Fireball();

ย  ย  ย  ย  ย  ย  animator.SetBool("Walk", false);

ย  ย  ย  ย  ย  ย  animator.SetBool("Attack", true);

ย  ย  ย  ย  }

ย  ย  ย  ย 

ย  ย  }

ย  ย  void Fireball()

ย  ย  {

ย  ย  ย  ย  StartCoroutine(CreatFireball());

ย  ย  }

ย  ย  IEnumerator CreatFireball()

ย  ย  {

ย  ย  ย  ย  if (H== 25.0f)

ย  ย  ย  ย  {

ย  ย  ย  ย  ย  ย  Instantiate(fireball_01, U_dragon.transform.position, fireball_01.transform.rotation);

ย  ย  ย  ย  ย  ย  H = 0;

ย  ย  ย  ย  }

ย  ย  ย  ย  H++;

ย  ย  ย  ย  yield return null;

ย  ย  }

}