2- 자동차 움직이기 게임 만들기
2023. 2. 10. 21:48ㆍ언어/유니티
728x90
자동차 게임을 만들기 위해서는
차와 깃발 땅 이미지가 필요합니다 .
놓고 싶은 위치에 만들어 준후
car 이미지에 코드 하나와 오디오 소스 컴포넌트를 넣어줍니다.
오디오를 하나 준비하여 AudioClip 에 하나 집어 넣어줍니다.
그리고 car 이미지에 code 추가 해줌
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class car : MonoBehaviour
{
float speed=0;
Vector2 startPos; //시작 좌표
Vector2 endPos; // 끝 좌표
void Update()
{
if (Input.GetMouseButton(0)) //마우스가 눌려있는동안 그 마우스 좌표가 startpos다
{
this.startPos = Input.mousePosition;
}
else if (Input.GetMouseButtonUp(0)) //마우스를 땐순간 마우스 좌표는 endPos
{
endPos=Input.mousePosition;
float swipeLength=( endPos.x - startPos.x);
//마우스를 땠을때 마우스 좌표에서 마우스가 눌려있는동안의 마우스 좌표를
//뺀 값이 swipeLength 이다.
this.speed = swipeLength / 500.0f;
//마우스를 끌었을때 길이를 초기 속도로 하기위해서 나눴음
GetComponent<AudioSource>().Play();
// 자동차가 행동할때 오디오 소스가 나옴
}
transform.Translate(this.speed,0, 0);
// 이동한 값이 됨
this.speed *= 0.98f; //점점 감속 ex 60프레임 이되면 속도가 낮아짐
}
}
자세한 내용들은 주석을 달아 놨다
UI에 text를 하나 만들어주고
빈 오브젝트를 하나 만들어주고 이름을 GameDir이라고 칭해준다.
GameDir에 코드 하나를 넣어준다.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.UIElements; //넣어줘야됨
public class cardis : MonoBehaviour
{
GameObject car;
GameObject flag;
GameObject test;
void Start()
{
this.car = GameObject.Find("car"); //car이미지를 찾아서 위치를 알기위해서
this.flag = GameObject.Find("flag");
this.test = GameObject.Find("test");
}
void Update()
{
float length = this.flag.transform.position.x - this.car.transform.position.x;
//깃발의 거리에서 자동차의 x위치 를 뺸값이 length가됨
if (length >= 0)
{
this.test.GetComponent<Text>().text = "목표 지점 까지" + length.ToString("F2") + "m";
//test라는 텍스트옆에 텍스르로 목표지점까지 현재 위치를 실시간으로 알려줌
// 여기서 ToString 은
}
else
{
this.test.GetComponent<Text>().text = "게임 오버";
}
}
}
넣어주면 이렇게 실시간으로 몇 m 남았는지 알려주고
깃발에 도착시 게임 오버라고 뜬다!
728x90
'언어 > 유니티' 카테고리의 다른 글
4-점프맵만들기 (0) | 2023.02.15 |
---|---|
3- 피하기 게임 만들기 (0) | 2023.02.13 |
1- 간단한 운세 UI 만들어보기 (2) | 2023.02.09 |
3-유니티 플랫포머 마이크로 공부 (Platformer Microgame)- player직접 구현 (0) | 2023.02.09 |
2-유니티 플랫포머 마이크로 공부 (Platformer Microgame)- player(component) (0) | 2023.02.07 |