인프런 커뮤니티 질문&답변

yeonu2311님의 프로필 이미지

작성한 질문수

따라하면서 배우는 고박사의 유니티 기초

게임오브젝트 물리와 충돌 (13:01)

움직임 안됨

작성

·

166

1

마지막 예제(충돌에 따라 태양을 변화시키는 예제)에서,
완전히 동일한 코드임에도 불구하고, 캐릭터 이동이 안됩니다.
인스펙타 창의 포지션 값은 계속 변화하는데 플레이어는 그대로 있습니다.
 
-> 알 수 없지만 완전 똑같은 코드를 새로 해보니 되더라고요! 그런데 이번엔 sun의 color가 변하질 않습니다!
using UnityEngine;

public class TriggerEvent : MonoBehaviour
{
[SerializeField]
private GameObject moveObject;
[SerializeField]
private Vector3 moveDirection;
private float moveSpeed;

private void Awake()
{
moveSpeed = 5.0f;
}

private void OntriggerEnter2D(Collider2D collision)
{
moveObject.GetComponent<SpriteRenderer>().color = Color.black;
}

private void OnTriggerStay2D(Collider2D collision)
{
moveObject.transform.position += moveDirection * moveSpeed;
}

private void OnTriggerExit2D(Collider2D collision)
{
moveObject.GetComponent<SpriteRenderer>().color = Color.white;
moveObject.transform.position = new Vector3(0, 4, 0);
}
}

답변 1

0

고박사님의 프로필 이미지
고박사
지식공유자

지금 작성해주신 코드가 완전히 본인 프로젝트와 완전히 동일한 코드라면

OnTriggerEnter2D()에서 T가 소문자로 작성되어 있습니다.

이벤트 메소드가 아닌 일반 메소드로 인식해 실행이 안됩니다.

yeonu2311님의 프로필 이미지
yeonu2311
질문자

감사합니다!!