![[Unity2D] Tweening을 사용한 캐릭터 움직이기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FAKzFK%2FbtqFpA2VrWx%2FpMrtU1AMXvilmEDxi52Bd1%2Fimg.png)
[Unity2D] Tweening을 사용한 캐릭터 움직이기C#/Unity2020. 7. 6. 17:24
Table of Contents
using System.Collections;
using System.Collections.Generic;
using System.Reflection;
using UnityEngine;
// 이동간 절대기준 사용위한 Tweening 라이브러리 사용
using DG.Tweening;
public class hero : MonoBehaviour
{
bool _token = false;
// Update is called once per frame
void Update()
{
if(!_token) {
// 왼쪽
if (Input.GetKey(KeyCode.LeftArrow))
{
_token = true;
float EndPositionX = transform.position.x;
EndPositionX -= 1.5f;
// endValue = 도착지, duration = 얼마동안?(1초=1.0f)
// OnComplete = duration이 끝나면 인자 함수를 실행해줌
// SetEase = 움직임 자연스럽게 해주는 효과
// 더블클릭하고 F12 누르면 함수안으로 들어가짐
// enum 열거형 = 배열과는 다르게 상수를 정의하기위해 쓰임
transform.DOMoveX(EndPositionX, 0.5f).OnComplete(ActionComplete).SetEase(Ease.Flash);
// 오른쪽
} else if (Input.GetKey(KeyCode.RightArrow))
{
_token = true;
float EndPositionX = transform.position.x;
EndPositionX += 1.5f;
// endValue = 도착지, duration = 얼마동안?(1초=1.0f)
transform.DOMoveX(EndPositionX, 0.5f).OnComplete(ActionComplete).SetEase(Ease.Flash);
// 위
} else if (Input.GetKey(KeyCode.UpArrow))
{
_token = true;
float EndPositionY = transform.position.y;
EndPositionY += 1.5f;
// endValue = 도착지, duration = 얼마동안?(1초=1.0f)
transform.DOMoveY(EndPositionY, 0.5f).OnComplete(ActionComplete).SetEase(Ease.Flash);
// 아래
} else if (Input.GetKey(KeyCode.DownArrow))
{
_token = true;
float EndPositionY = transform.position.y;
EndPositionY -= 1.5f;
// endValue = 도착지, duration = 얼마동안?(1초=1.0f)
transform.DOMoveY(EndPositionY, 0.5f).OnComplete(ActionComplete).SetEase(Ease.Flash);
/* 좌표를 통해 움직이는 기본적인 코드
Vector3 CurrentPosition = transform.position;
CurrentPosition.y -= 0.01f;
transform.position = CurrentPosition;
*/
}
void ActionComplete()
{
// 토큰값 false
_token = false;
}
}
}
}
반응형
'C# > Unity' 카테고리의 다른 글
[기타내용] 공부할때 썼던 내용들 (0) | 2020.08.03 |
---|---|
[Unity2D] 몬스터,캐릭터와 충돌 및 공격 변경 (0) | 2020.07.09 |
[Unity2D] 몬스터만들기, 애니메이션, 애니메이터(이동, 대기, 공격, 죽음) (0) | 2020.07.08 |
[Unity2D] Collision, Trigger 충돌 조건 확인 & 총알 발사하기 (0) | 2020.07.07 |
@반나무 :: 반나무_뿌리
3년차 WPF 개발자입니다.
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!