mover objetos de un lado a otro hasta el cuarto entre puntos y detenerlos con un clic del mouse
– UnityAssets3Free
buenas , por aqui Juan y hoy os traigo
esta pregunta
Actualmente intento mover un sprite entre dos puntos y hacer que se detenga entre esos dos puntos haciendo clic/tocando el mouse. No puedo entender cómo hacer esto (el script no está sobre el objeto que se está moviendo por cierto)
void Update()
if(isMoving)
Vector3 v = startingPos;
v.x += distanceToCover * Mathf.Sin(Time.time * triangleSpeed);
transform.position = v;
if(Input.GetMouseButtonDown(1))
2 respuestas 2
Si la primera parte del código funciona bien, no permita que se llame al movimiento, lo que significa que simplemente configure el isMoving
por false
.
void Update()
if(isMoving)
Vector3 v = startingPos;
v.x += distanceToCover * Mathf.Sin(Time.time * triangleSpeed);
transform.position = v;
if(Input.GetMouseButtonDown(1))
isMoving = false;
Puede animar este movimiento y luego establecer la velocidad de animación en 0 cuando se hace clic
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class stoponclick : MonoBehaviour
{
public GameObject movingObject;
void Update()
if (Input.GetMouseButtonDown(1))
if (movingObject != null)
if (movingObject.GetComponent<Animator>()!=null)
movingObject.GetComponent<Animator>().speed=0;
}
nota: si aun no se resuelve tu pregunta por favor dejar un comentario y pronto lo podremos de nuevo , muchas gracias
eso es todo,espero que te halla servido