работает над игрой android в Unity 2D. Короче говоря, у меня есть два отдельных объекта в сцене, к которым прикреплен этот скрипт:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class SwipeScript : MonoBehaviour
{
Vector2 startPos, endPos, direction;
float touchTimeStart, touchTimeFinish, timeInterval;
public static int brojbacanja=0;
public static bool bacenaprva = false;
[Range (0.05f, 1f)]
public float throwForce = 0.3f;
void Update(){
if (Input.touchCount > 0 && Input.GetTouch (0).phase == TouchPhase.Began && brojbacanja == 0) {
touchTimeStart = Time.time;
startPos = Input.GetTouch (0).position;
}
if (Input.touchCount > 0 && Input.GetTouch (0).phase == TouchPhase.Ended && brojbacanja == 0) {
touchTimeFinish = Time.time;
timeInterval = touchTimeFinish - touchTimeStart;
endPos = Input.GetTouch (0).position;
direction = startPos - endPos;
GetComponent<Rigidbody2D> ().AddForce (-direction / timeInterval * throwForce);
brojbacanja = 1;
bacenaprva = true;
}
}
}
То, что это делает, в значительной степени позволяет мне проводить пальцем по экрану в любом месте и бросать объект, к которому он прикреплен , Поскольку у меня есть два разных объекта, которые я хотел бы бросить по отдельности, я хочу немного их изменить, чтобы при касании объекта, который я хочу бросить, другой объект оставался неподвижным. Я уже читал об этой проблеме и пытался использовать Raycast и OnMouseDown (), но не знал, как ее реализовать.
Если кто-то может помочь, был бы признателен.