public void SetHighlight(HighlightStatus status)
    {
        switch (status)
        {
        case HighlightStatus.Default:
            transform.localScale = initLocalScale;
            if ((Behaviour)GetComponent("Halo"))
            {
                ((Behaviour)GetComponent("Halo")).enabled = false;
            }
            break;

        case HighlightStatus.Highlight:
            transform.localScale = initLocalScale * scaleupRate;
            if ((Behaviour)GetComponent("Halo"))
            {
                ((Behaviour)GetComponent("Halo")).enabled = true;
            }
            break;

        case HighlightStatus.UnHighlight:
            transform.localScale = initLocalScale;
            if ((Behaviour)GetComponent("Halo"))
            {
                ((Behaviour)GetComponent("Halo")).enabled = false;
            }
            break;
        }
    }
Esempio n. 2
0
 public override void AddFields(FieldData fields)
 {
     base.AddFields(fields);
     name = fields.add(name, "name");
     fields.addList(events, "events");
     fields.addList(extraConditions, "extraConditions");
     enabled           = fields.add(enabled, "enabled");
     defaultStatus     = fields.addEnum(defaultStatus, "defaultStatus");
     meetAllConditions = fields.add(meetAllConditions, "meetAllConditions");
     condition1        = fields.add(condition1, "condition1");
     condition2        = fields.add(condition2, "condition2");
 }
Esempio n. 3
0
    /** SetBehaviorOfObjectsInFront Method
     * @Params : RaycastHit
     * Set the behavior of Objects detected in front of the player.
     * The method tries to get the type of the object (Mechanism, pickable etc...) if it has one and apply its behavior.
     **/
    private void SetBehaviorOfObjectsInFront(RaycastHit hit)
    {
        if (hit.transform.GetComponent <IInterractableEntity>() != null)
        {
            GameObject           objectInFrontOfPlayer = hit.transform.gameObject;
            IInterractableEntity interractable         = hit.transform.GetComponent <IInterractableEntity>();
            interractable.DisplayTextOfInterractable();
            HighlightStatus scriptExisting = objectInFrontOfPlayer.GetComponentInChildren <HighlightStatus>();
            if (scriptExisting == null)
            {
                GameObject obj = (GameObject)Resources.Load("Status/Utils/HighlightStatus", typeof(GameObject));
                Instantiate(obj, objectInFrontOfPlayer.transform.position, objectInFrontOfPlayer.transform.rotation, objectInFrontOfPlayer.transform);
            }
            else
            {
                scriptExisting.ResetStatus();
            }

            if (Input.GetKeyDown(InputsProperties.Activate) && !CursorBehaviour.CursorIsVisible)
            {
                interractable.ActivateInterractable();
            }
        }
    }
Esempio n. 4
0
 public override void AddFields(FieldData fields)
 {
     base.AddFields(fields);
     fields.addReference(item, "location");
     status = fields.addEnum(status, "status");
 }