Exemplo n.º 1
0
    void MakeRayCasting()
    {
        RaycastHit hit;


        ray = new Ray(cameraPlayer.transform.position, cameraPlayer.transform.forward);

        Physics.Raycast(ray, out hit, rayDistance, interactiveLayer.value);

        Debug.DrawRay(ray.origin, ray.direction * rayDistance, rayColor);

        if (hit.collider)
        {
            if (!interactObject)
            {
                interactObject = hit.collider.gameObject.GetComponent <Interactable>();
            }
            if (interactObject)
            {
                if (interactObject.GetStatus() != InteractStatus.interact)
                {
                    interactObject.SetInteractor(GetComponent <Interactor>());
                    interactObject.SetStatus(InteractStatus.focus);
                    normalImage.enabled = false;
                    focusImage.enabled  = true;
                }
            }
        }
        else
        {
            if (interactObject && interactObject.GetStatus() != InteractStatus.interact)
            {
                interactObject.SetStatus(InteractStatus.none);
                interactObject = null;
            }
            focusImage.enabled  = false;
            normalImage.enabled = true;
        }


        if (interactObject)
        {
            InteractStatus currentStatus = interactObject.GetStatus();
            if (currentStatus == InteractStatus.interact)
            {
                onInteract(ray);
            }
        }
    }
Exemplo n.º 2
0
 protected void a(j A_0)
 {
     global::u.c("handleGetCurrentScene");
     try
     {
         InteractStatus         interactStatus = new InteractStatus();
         List <InteractElement> elements       = this.o.a();
         interactStatus.elements  = elements;
         interactStatus.scenename = global::b.a();
         A_0.b = interactStatus;
     }
     catch (Exception ex)
     {
         global::u.a(ex.Message + " " + ex.StackTrace);
         A_0.f = ResponseStatus.UN_KNOW_ERROR;
         A_0.b = ex.Message + " " + ex.StackTrace;
     }
     global::o.a(A_0);
 }
Exemplo n.º 3
0
 public void SetStatus(InteractStatus i)
 {
     interactStatus = i;
 }
Exemplo n.º 4
0
 /// <summary>
 /// How facilities communicate with visitor
 /// </summary>
 /// <param name="rememberTalking"></param>
 public void Communicate(InteractStatus rememberTalking)
 {
     InteractStatus = rememberTalking;
 }