반응형
게임 만들다가 보니 보스가 가만히 있는 채로 공격하는 것보다 앞뒤로 왔다갔다 움직이면서 공격하는 것이 사용자 입장에서 더 역동적이고 재밌을 것 같아 해당 코드를 짜고 정리하게 되었습니다.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class Boss1 : MonoBehaviour
{
private float time;
private float realtime;
Vector3 firstP;
int a = 1;
// Start is called before the first frame update
void Start()
{
firstP = transform.position;
}
private void Update()
{
time += Time.deltaTime;
if (firstP.x + 2 < transform.position.x)
{
a = 1;
}
else if (firstP.x - 2 > transform.position.x)
{
a = -1;
}
transform.Translate(Vector3.left * 1.0f * Time.deltaTime * a);
}
}
코드를 간략히 소개하자면, firstP 를 통해서 오브젝트의 처음 위치를 저장한 후 +2 만큼 -2 만큼 왔다갔다 움직일 수 있게 if 문을 통해서 조건문을 만들어주었습니다. transform.Translate 를 통해서 움직이는 코드가 매순간 호출될 수 있게 update 안에 넣어주었고 a 를 조정해서 앞뒤로 움직이는 코드입니다.
게임에 적용한 결과,
요렇게 귀엽게 고양이랑 알파카 보스가 앞뒤로 움직이는 것을 보실 수 있습니다.
앞으로 게임 만들 때 많이 사용하지 않을까 하여 정리해보았습니다. 감사합니다.
반응형
'IT' 카테고리의 다른 글
[정보 처리 기사 실기 공부] 디자인 패턴, 소프트웨어 아키텍처 패턴 (0) | 2022.04.01 |
---|---|
2022년 1회 정보처리기사 자격증 필기 시험 후기 및 팁(유용한 사이트 추천) (0) | 2022.03.06 |
틴커캐드와 3d printer를 이용한 직접 디자인한 쿠키커터 만들기 (0) | 2022.01.16 |
로블록스 로그 출력 확인하기 / print (0) | 2022.01.10 |
로블록스 사용자 상태 표시하기(리더보드 만들기) (0) | 2022.01.10 |
댓글