Finger position

How do I SendMessage of the evt.position for the following code?

using UnityEngine;
using System.Collections;

public class Finger {
   public Touch touch;
   public bool moved = false;
   public ArrayList colliders = new ArrayList();
}

public class FingerManager : MonoBehaviour {

   public ArrayList fingers = new ArrayList();

   void Update () {
      RaycastHit[] hits;
      foreach (Touch evt in Input.touches) {
                // if (evt.phase==TouchPhase.Began) {

         if (evt.phase==TouchPhase.Began || evt.phase==TouchPhase.Moved  ) {
            Finger finger = new Finger();
            finger.touch = evt;
            Ray ray = Camera.main.ScreenPointToRay(evt.position);
            hits = Physics.RaycastAll(ray);
            foreach (RaycastHit hit in hits) {
               finger.colliders.Add(hit.collider);
               GameObject to = hit.collider.gameObject;
               to.SendMessage("FingerBegin",evt,SendMessageOptions.DontRequireReceiver);
            }
            fingers.Add(finger);
         }
         else if (evt.phase==TouchPhase.Moved) {
            for (int i=0;i<fingers.Count;++i) {
               Finger finger = (Finger)fingers*;*
 *if (finger.touch.fingerId==evt.fingerId) {*
 *finger.moved = true;*
 *foreach (Collider collider in finger.colliders) {*
 *if (collider==null) {continue;}*
 *GameObject to = collider.gameObject;*
 *to.SendMessage("FingerMove",evt,SendMessageOptions.DontRequireReceiver);*
 *}*
 *}*
 *}*
 *}*
 *else if (evt.phase==TouchPhase.Ended || evt.phase==TouchPhase.Canceled) {*
 *Ray ray = Camera.main.ScreenPointToRay(evt.position);*
 *hits = Physics.RaycastAll(ray);*
 *for (int i=0;i<fingers.Count;) {*
 _Finger finger = (Finger)fingers*;*_
 _*if (finger.touch.fingerId==evt.fingerId) {*_
 _*foreach (Collider collider in finger.colliders) {*_
 _*if (collider==null) {continue;}*_
 _*bool canceled = true;*_
 _*foreach (RaycastHit hit in hits) {*_
 _*if (hit.collider==collider) {*_
 _*canceled = false;*_
 _*GameObject to = collider.gameObject;*_
 _*to.SendMessage("FingerEnd",evt,SendMessageOptions.DontRequireReceiver);*_
 _*}*_
 _*}*_
 _*if (canceled) {*_
 _*GameObject to = collider.gameObject;*_
 _*to.SendMessage("FingerCancel",evt,SendMessageOptions.DontRequireReceiver);*_
 _*}*_
 _*}*_
 <em>_fingers *= fingers[fingers.Count-1];*_</em>
 <em>_*fingers.RemoveAt(fingers.Count-1);*_</em>
 <em>_*}*_</em>
 <em>_*else {*_</em>
 <em>_*++i;*_</em>
 <em>_*}*_</em>
 <em>_*}*_</em>
 <em>_*}*_</em>
 <em>_*}*_</em>
 <em>_*}*_</em>
<em>_*}*_</em>
<em>_*```*_</em>

Anyone, anyone?..... Come on now, don't be shy...:)

1 Answer

1

Dont you just need to look at the evt.position?

function FingerMove(evt:Touch){ evt.position; }

?

Would that be placed in the C# script or another .js script? Thx for your help.