Ejemplo n.º 1
0
    //This is the function that makes the sheep go fly
    public void HitSheep(QuestObject QO, MonsterAI m, GameObject g, float force, bool useMosnsterOrigin, MonsterAI originMonster)
    {
        //Check the Quest Objective for nullpointer and if not make the sheep deed
        if (QO != null)
        {
            QO.takeDamage(999, false, Vector3.zero);
            if (originMonster != null)
            {
                playerAction.ObjectiveAttacked(this);
            }
        }

        //sheep goes fly
        m.ToDeath();
        m.enabled = false;
        g.GetComponent <NavMeshAgent>().enabled = false;
        Rigidbody r = g.GetComponent <Rigidbody>();

        r.drag = 0;
        r.mass = 1;
        if (useMosnsterOrigin)
        {
            r.AddExplosionForce(force, this.transform.position, 100f, 3);
        }
        else
        {
            r.AddExplosionForce(force, g.transform.position, 100f, 1);
        }
        r.AddTorque((this.transform.position - g.transform.position) * 10);

        g.GetComponentInChildren <Animator>().SetTrigger("Flying");
        g.GetComponent <Sheep_flying>().flying = true;

        if (originMonster != null)
        {
            originMonster.playerAction.SheepAttacked(originMonster);
        }
    }