본문 바로가기
취미/게임 개발

Unity 2D 로그라이크 게임만들기(적 Ai) #3

by krapoi 2021. 8. 28.
반응형

이제 적의 움직임 즉, AI를 만들 시간이다.

Ai만 만들거라 오늘 포스팅은 좀 짧을 수 있다.

일단 EnemyAi라는 스크립트를 먼저 만들자.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class EnemyAi : MonoBehaviour
{

    public Transform target; //당연히 타겟은 플레이어 일 것이다. Transform으로 Target의 위치를 받아온다.
    void Update()
    {
        float dis = Vector3.Distance(transform.position, target.position); //내위치와 target의 위치 사이의 거리를 구함
        if (dis <= 10) // 거리가 10칸 안으로 좁혀졌으면 쫒기 시작
        {
            Move();
        }
        else return;
    }

    void Move()
    {
        float dir = target.position.x - transform.position.x; //2d이기에 좌우만 빼면됨 (내x위치 - targetx위치)
        dir = (dir < 0) ? -1 : 1; //방향조절 dir의 x거리가 -라면 -1,아니면 1
        transform.Translate(new Vector2(dir, 0) * Enemy.speed * Time.deltaTime);
        
    }
}

이걸 Enemy에게 넣어주자.

여기 Target부분에 플레이어를 끌어다 넣으면 된다.

드래그해서 넣으면된다.

이렇게 AI도 만들어 줬다.

다음번에는 공격을 만들어 보겠다.

 

**(제가 만들고 있는 게임을 토대로 설명드리는 것입니다. 코딩이 제 스타일이라 참고만 하시는 걸 추천합니다.)**

 

반응형