Exemplo n.º 1
0
    /// <summary>
    /// Use the object at position x, y on object obj
    /// </summary>
    /// <param name="posX">Position x.</param>
    /// <param name="posY">Position y.</param>
    /// <param name="obj">Object.</param>
    public override bool Use(float posX, float posY, GameObject obj = null)
    {
        base.Use(posX, posY, obj);
        if (obj != null)
        {
            Cthulhu creature = obj.GetComponent <Cthulhu> ();
            if (creature != null)
            {
                if (burnt)
                {
                    creature.ObtainWrongLeg();
                }
                else
                {
                    creature.ObtainLeg(eventName);
                }

                Destroy(gameObject, 0.1f);
                return(true);
            }

            Believer believer = obj.GetComponent <Believer> ();
            if (believer != null)
            {
                if (triggerBeliever)
                {
                    believer.GetRightLeg();
                }
                else
                {
                    believer.GetWrongLeg();
                }
                return(true);
            }
        }
        //PlayerControl.playerControl.Unlcoked (1);
        return(false);
    }
Exemplo n.º 2
0
    /// <summary>
    /// Use the object at position x, y on object obj
    /// </summary>
    /// <param name="posX">Position x.</param>
    /// <param name="posY">Position y.</param>
    /// <param name="obj">Object.</param>
    public override bool Use(float posX, float posY, GameObject obj = null)
    {
        base.Use(posX, posY, obj);
        initialPosition = transform.position;
        des             = initialPosition;

        GetComponent <Rigidbody2D>().isKinematic = true;
        if (obj != null)
        {
            Cthulhu cthulhu = obj.GetComponent <Cthulhu> ();
            if (cthulhu != null && cthulhu.wakeUp)
            {
                cthulhu.Feed();
                Destroy(gameObject, 0.2f);
                return(true);
            }
            else
            {
                swimming        = true;
                initialPosition = transform.position;
                des             = initialPosition;
                currentInd      = -1;
                InvokeRepeating("GetNextDes", 1 / swimmingInterval, 1 / swimmingInterval);
            }
        }
        else
        {
            swimming        = true;
            initialPosition = transform.position;
            des             = initialPosition;
            currentInd      = -1;
            InvokeRepeating("GetNextDes", 1 / swimmingInterval, 1 / swimmingInterval);
        }
        //PlayerControl.playerControl.Unlcoked (1);
        return(false);
    }