반응형
지난번에 말했듯이 적과 바닥을 만들 것이다.
우선 스프라이트를 꺼내 주자.
바닥이 될 스프라이트와 적이 된 스프라이트를 꺼내야 한다.
이렇게 만들었다면,
위치를 잡아주자.
이제
Tag처리를 해주도록 하자.
Tag는 Inspector에서 찾을 수 있다.
Tag는 2개를 만들건대, 각각 Enemy와 Ground로 만들었다.
이제 게임을 실행해 본다면 플레이어가 바닥을 뚫고 떨어질 것이다.
이걸 방지하기 위해 Ground와 Player에 Collider2D를 넣어주자.
이렇게 만들고 나면 땅을 통과하지 않을 것이다.
이제 적을 만들어 주자.
적도 플레이어와 같이 Rigidbody와 Collider를 넣어주자.
이제 Enemy의 스크립트를 짤 시간이다.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Enemy : MonoBehaviour
{
public static float HP;
public static float speed;
public static float AD;
Rigidbody2D rigid;
void Start()
{
HP = 100;
rigid = GetComponent<Rigidbody2D>();
speed = 3;
AD = 10.0f;
}
void Update()
{
}
}
이제 Enemy에 스크립트를 넣어주자.
그리고 게임을 실행하면 Enemy도 안정적으로 바닥 위에 있다.
근데 여기서 플레이어를 움직여 Enemy에 부딪혀보면 이상한 점이 있다.
이걸 해결해야 하는데 방법은 간단하다.
플레이어와 Enemy의 Inspector에 들어가
빨간 줄이 쳐 저 있는 Freeze Rotation에 Z를 체크하면 된다.(Enemy도 똑같은 방식으로 고정시킨다.)
그러면 고쳐진다.
다음에는 적 AI를 만들어 보겠다.
**(제가 만들고 있는 게임을 토대로 설명드리는 것입니다. 코딩이 제 스타일이라 참고만 하시는 걸 추천합니다.)**
반응형
'취미 > 게임 개발' 카테고리의 다른 글
[Unity] 게임 개발 - 클릭 이벤트 만들기 (0) | 2021.12.09 |
---|---|
Unity 2D 로그라이크 게임만들기(적 Ai) #3 (1) | 2021.08.28 |
Visual studio에서 Unity 자동완성이 안될때 (1) | 2021.08.27 |
Unity 2D 로그라이크 게임만들기(플레이어 생성) #1 (0) | 2021.08.26 |
방탈출 게임 Unity InputField 사용 (0) | 2021.07.12 |