Example #1
0
    public override bool AssignWorker(AI_Controller worker)
    {
        BaseCharacter character = worker.GetComponent <BaseCharacter>();

        if (!character)
        {
            return(false);
        }

        Inventory inventory = worker.GetComponent <Inventory>();

        if (!inventory || !inventory.HasItem(BlockID, 1))
        {
            return(false);
        }

        return(base.AssignWorker(worker));
    }
Example #2
0
    public void HandleDeadNPC(AI_Controller npc)
    {
        mNPCList.Remove(npc);

        // here we also need to spawn the event, with the location of their death.
        if (npc.GetComponent <GRT_Behaviour>())
        {
            mGruntDied.Raise(npc.transform.position);
        }
        if (npc.GetComponent <LNK_Behaviour>())
        {
            mLankyDied.Raise(npc.transform.position);
        }
        if (npc.GetComponent <TNK_Behaviour>())
        {
            mTankDied.Raise(npc.transform.position);
        }
    }
Example #3
0
    // so here we have to kind of hack in figuring out when we last shot, and if it's this frame (or very close to)
    private void SetShotTrigger()
    {
        AI_Conditions cons = mEntity.GetComponent <AI_Conditions>();

        if (Time.time - mGun.mFireTimeStamp <= 0.05f)
        {
            mAnimController.SetTrigger("Shoot");
        }
        else
        {
            mAnimController.ResetTrigger("Shoot");
        }
    }