83 lines
1.6 KiB
C#
83 lines
1.6 KiB
C#
|
|
using UnityEngine;
|
|||
|
|
using System.Collections;
|
|||
|
|
using HedgehogTeam.EasyTouch;
|
|||
|
|
|
|||
|
|
public class BallRunPlayer : MonoBehaviour {
|
|||
|
|
|
|||
|
|
public Transform ballModel;
|
|||
|
|
|
|||
|
|
private bool start =false;
|
|||
|
|
private Vector3 moveDirection;
|
|||
|
|
private CharacterController characterController;
|
|||
|
|
private Vector3 startPosition;
|
|||
|
|
private bool isJump = false;
|
|||
|
|
|
|||
|
|
void OnEnable(){
|
|||
|
|
EasyTouch.On_SwipeEnd += On_SwipeEnd;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void OnDestroy(){
|
|||
|
|
EasyTouch.On_SwipeEnd -= On_SwipeEnd;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void Start(){
|
|||
|
|
characterController = GetComponent<CharacterController>();
|
|||
|
|
startPosition = transform.position;
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void Update () {
|
|||
|
|
|
|||
|
|
if (start){
|
|||
|
|
moveDirection = transform.TransformDirection(Vector3.forward)* 10f * Time.deltaTime;
|
|||
|
|
moveDirection.y -= 9.81f * Time.deltaTime;
|
|||
|
|
|
|||
|
|
if (isJump){
|
|||
|
|
moveDirection.y = 8f;
|
|||
|
|
isJump = false;
|
|||
|
|
}
|
|||
|
|
characterController.Move( moveDirection);
|
|||
|
|
ballModel.Rotate( Vector3.right * 400 * Time.deltaTime);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (transform.position.y<0.5){
|
|||
|
|
start=false;
|
|||
|
|
transform.position = startPosition;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void OnCollision(){
|
|||
|
|
Debug.Log("ok");
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void On_SwipeEnd (Gesture gesture){
|
|||
|
|
|
|||
|
|
if (start){
|
|||
|
|
switch (gesture.swipe){
|
|||
|
|
case EasyTouch.SwipeDirection.DownLeft:
|
|||
|
|
case EasyTouch.SwipeDirection.UpLeft:
|
|||
|
|
case EasyTouch.SwipeDirection.Left:
|
|||
|
|
transform.Rotate(Vector3.up * -90);
|
|||
|
|
|
|||
|
|
break;
|
|||
|
|
case EasyTouch.SwipeDirection.DownRight:
|
|||
|
|
case EasyTouch.SwipeDirection.UpRight:
|
|||
|
|
case EasyTouch.SwipeDirection.Right:
|
|||
|
|
transform.Rotate(Vector3.up * 90);
|
|||
|
|
break;
|
|||
|
|
case EasyTouch.SwipeDirection.Up:
|
|||
|
|
if (characterController.isGrounded){
|
|||
|
|
isJump = true;
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public void StartGame(){
|
|||
|
|
start = true;
|
|||
|
|
}
|
|||
|
|
}
|