脚本可挂在joystick上(空物体),下加两个image图作为joystick的组成部分。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;
using UnityEngine.UI;
/// <summary>
/// Move control.摇杆控制character移动
/// 脚本挂载对象joystick
///
/// </summary>
public class MoveControl : MonoBehaviour, IPointerDownHandler, IPointerUpHandler, IDragHandler, IEndDragHandler
{
public Image joystickbg;//joystick的背景大圆(或背景图片)
public Image movePoint;//joystick中心也移动圆点(或其他可移动物体)
// 控制角色
private Transform player;
float radius = 0f;
//摇杆初始位置
Vector3 originPosofJoystick;
//movepoint初始位置
Vector3 originPosofmovePoint;
private bool isdrag = false;
void Start()
{
radius = joystickbg.GetComponent<RectTransform>().rect.height / 2;
originPosofmovePoint = movePoint.transform.position;
//角色需设置标签为player
player = GameObject.FindWithTag("Player").transform;
}
void Update()
{
}
void Fixed