Beispiel #1
0
        public override void Enter(BEnemy owner)
        {
            //turn off FOV visualization
            owner.viewMeshFilter.SetActive(false);
            //turn off all waypoints
            owner.castTo <EnemyPatrol>().disableWaypoints();

            owner.attackFSM.changeState(Search.Instance);
            owner.attackFSM.changeGlobalState(BasicEnemyAttackGlobal.Instance);
        }
Beispiel #2
0
        public override void Enter(BEnemy owner)
        {
            //turn on FOV visualization
            owner.viewMeshFilter.SetActive(true);

            //turn on all waypoints
            ((EnemyPatrol)owner).reenableWaypoints();

            if (owner.movingPatrol)
            {
                owner.taskList["NextWaypoint"] = new Task(owner.castTo <EnemyPatrol>().moveTowardsNext());
            }
            else
            {
                owner.taskList["NextWaypoint"] = new Task(owner.castTo <EnemyPatrol>().rotateTowardsNext());
            }

            owner.playerSpotted = false;
        }
Beispiel #3
0
        public override void Enter(BEnemy owner)
        {
            owner.isDead = true;

            //turn off FOV visualization
            owner.viewMeshFilter.SetActive(false);
            //turn off all waypoints
            owner.castTo <EnemyPatrol>().disableWaypoints();

            //set velocity to zero
            owner.GetComponent <Rigidbody2D>().velocity = Vector3.zero;

            //drop item
            GameObject.Instantiate(owner.itemDrop, owner.transform.position, Quaternion.identity);

            //play animation
            owner.transform.Find("Texture").GetComponent <Animator>().SetTrigger("isDead");
        }