Ejemplo n.º 1
0
 private void Start()
 {
     pathFromDistance = new NavMeshPath();
     if (brain == null) brain = GetComponent<IABrain>();
     rotationHelper = (InstanceManager.instance.CreateEmptyObject(InstanceManager.InstanceType.Utils, "RotationHelper")).transform;
     rotationHelper.transform.rotation = transform.rotation;
 }
Ejemplo n.º 2
0
    private void Start()
    {
        if (brain == null)
        {
            brain = transform.parent.GetComponent <IABrain>();
        }

        SphereCollider sphere = gameObject.AddComponent <SphereCollider>();

        sphere.radius    = viewDistance / brain.transform.localScale.x;
        gameObject.layer = LayerMask.NameToLayer("Detection");
        inFieldOfView    = new List <Collider>();
        visualReaction   = brain.GetUpdateTime(IAState.IAStateTag.SPOT);
    }
Ejemplo n.º 3
0
 // Use this for initialization
 void Start()
 {
     if (enemyBrain == null)
     {
         enemyBrain = GetComponent <IABrain>();
     }
     if (enemyAnimator == null)
     {
         enemyAnimator = transform.GetChild(0).GetComponent <Animator>();
     }
     if (enemyHitbox == null)
     {
         enemyHitbox = GetComponent <Hitbox>();
     }
     lastCurrentLife = enemyHitbox.getCurrentLife();
 }
Ejemplo n.º 4
0
    //Create a new state from the tag (gives the right child class)
    public static IAState CreateNewState(IAStateTag tag, IABrain brain, float updateTime)
    {
        switch (tag)
        {
        case IAStateTag.IDLE:
            return(new IAStateIdle(brain, updateTime));

        case IAStateTag.WORKING:
            return(new IAStateWorking(brain, updateTime));

        case IAStateTag.TALKING:
            return(new IAStateTalking(brain, updateTime));

        case IAStateTag.CHECKING:
            return(new IAStateChecking(brain, updateTime));

        case IAStateTag.SPOT:
            return(new IAStateSpot(brain, updateTime));
        }
        return(null);
    }
Ejemplo n.º 5
0
 public IAStateWorking(IABrain brain, float updateTime) : base(brain, updateTime)
 {
     tag   = IAStateTag.WORKING;
     layer = IAStateLayer.PASSIVE;
 }
Ejemplo n.º 6
0
    public void OnSceneGUI()
    {
        IABrain brain = ((IABrain)target);

        brain.DrawBrainEditor();
    }
Ejemplo n.º 7
0
 public IAStateIdle(IABrain brain, float updateTime) : base(brain, updateTime)
 {
     tag   = IAStateTag.IDLE;
     layer = IAStateLayer.PASSIVE;
 }
Ejemplo n.º 8
0
 public IAStateChecking(IABrain brain, float updateTime) : base(brain, updateTime)
 {
     tag   = IAStateTag.CHECKING;
     layer = IAStateLayer.PASSIVE;
 }
Ejemplo n.º 9
0
 public IAStateSpot(IABrain brain, float updateTime) : base(brain, updateTime)
 {
     tag   = IAStateTag.SPOT;
     layer = IAStateLayer.ACTIVE;
 }
Ejemplo n.º 10
0
 // Use this for initialization
 void Start()
 {
     brain      = GetComponent <IABrain>();
     hardMemory = new List <IAInformation>();
     softMemory = new List <IAInformation>();
 }
Ejemplo n.º 11
0
 public IAState(IABrain brain, float updateTime)
 {
     this.brain      = brain;
     this.updateTime = updateTime;
 }
Ejemplo n.º 12
0
 public override void InitBehaviour(RadarTracker tracker)
 {
     brain = tracker.GetComponent <IABrain>();
     filledImage.fillAmount = 0f;
     filledImage.color      = stateColors.Find(c => c.state == IAState.IAStateTag.IDLE).color;
 }