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...:)
– anon56119378