반응형
- 코드 작성
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class TouchManager : MonoBehaviour
{
private Vector2 startPos;
public float minSwipeDistY = 50f;
public float minSwipeDistX = 50f;
private bool firstSwipe = false;
public string direction = ""; //Up, Down, Left, Right로 입력이 들어옵니다.
void Update()
{
if (Time.timeScale == 0) { InputButtonUp(); return; }
}
public void InputButtonUp()
{
firstSwipe = false;
}
public void InputButtonDown()
{
startPos = Input.mousePosition;
firstSwipe = true;
}
public void InputButtonStay()
{
if (!firstSwipe) return;
float swipeDistHorizontal = Mathf.Abs(Input.mousePosition.x - startPos.x);
float swipeDistVertical = Mathf.Abs(Input.mousePosition.y - startPos.y);
if (swipeDistHorizontal > swipeDistVertical)
{
if (swipeDistHorizontal > minSwipeDistX)
{
float swipeValue = Input.mousePosition.x - startPos.x;
if (swipeValue > 0)
{
direction = "Right";
firstSwipe = false;
}
else if (swipeValue < 0)
{
direction = "Left";
firstSwipe = false;
}
}
}
else
{
if (swipeDistVertical > minSwipeDistY)
{
float swipeValue = Input.mousePosition.y - startPos.y;
if (swipeValue > 0)
{
direction = "Up";
firstSwipe = false;
}
else if (swipeValue < 0)
{
direction = "Down";
firstSwipe = false;
}
}
}
Invoke("OnReset", 0.25f);
}
private void OnReset()
{
direction = "";
}
}
반응형
'개발 > C#' 카테고리의 다른 글
유니티 C# 코루틴 Coroutine 간단 사용법 (0) | 2022.07.06 |
---|---|
유니티 C# 스킬 쿨타임 구현 FillAmount 간단 사용법 (0) | 2022.07.06 |
유니티 C# 자석 효과 Magnet 간단 구현 (0) | 2022.07.06 |
유니티 C# 일시정지 Pause 구현하기 간단 사용법 (0) | 2022.07.06 |
유니티 C# 해상도 설정 SetResolution 간단 사용법 (0) | 2022.07.06 |
유니티 C# 시스템 언어 가져오기 System Language 간단 사용법 (0) | 2022.07.06 |
유니티 C# 플랫폼 분기별 코드 작성하기 Platform 간단 사용법 (0) | 2022.07.06 |
유니티 C# 공전, 자전 간단 구현 Revolution (0) | 2022.07.05 |
댓글