using System.Collections.Generic;
using UnityEngine;
public class HoldToMove : MonoBehaviour
{
public bool holdEntered = false;
private bool heldHeld = false;
public Transform holdElevator;
void Update()
{
if (heldHeld == true)
{
if (Input.GetAxis("Mouse Y") > 0)
{
holdElevator.transform.Translate(Vector3.forward * 10 * Time.deltaTime);
}
if (Input.GetAxis("Mouse Y") < 0)
{
holdElevator.transform.Translate(Vector3.back * 10 * Time.deltaTime);
}
if (Input.GetAxis("Mouse X") > 0)
{
holdElevator.transform.Translate(Vector3.right * 10 * Time.deltaTime);
}
if (Input.GetAxis("Mouse X") < 0)
{
holdElevator.transform.Translate(Vector3.left * 10 * Time.deltaTime);
}
}
if (!Input.GetMouseButton(0))
{
heldHeld = false;
}
}
void OnMouseEnter()
{
holdEntered = true;
if (Input.GetMouseButton(0))
{
heldHeld = true;
}
}
void OnMouseExit()
{
holdEntered = false;
}
}
Так что я пытаюсь сделать так, чтобы, когда я удерживаю кнопку мыши после просмотра объекта, этот скрипт присоединяется к объекту, «holdElevator» должен двигаться с помощью мыши (что он делает), и когда я отпустите его, он останавливается (как я хочу), но проблема в том, что это работает только один раз, как мне это исправить?