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; }
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); }
// 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(); }
//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); }
public IAStateWorking(IABrain brain, float updateTime) : base(brain, updateTime) { tag = IAStateTag.WORKING; layer = IAStateLayer.PASSIVE; }
public void OnSceneGUI() { IABrain brain = ((IABrain)target); brain.DrawBrainEditor(); }
public IAStateIdle(IABrain brain, float updateTime) : base(brain, updateTime) { tag = IAStateTag.IDLE; layer = IAStateLayer.PASSIVE; }
public IAStateChecking(IABrain brain, float updateTime) : base(brain, updateTime) { tag = IAStateTag.CHECKING; layer = IAStateLayer.PASSIVE; }
public IAStateSpot(IABrain brain, float updateTime) : base(brain, updateTime) { tag = IAStateTag.SPOT; layer = IAStateLayer.ACTIVE; }
// Use this for initialization void Start() { brain = GetComponent <IABrain>(); hardMemory = new List <IAInformation>(); softMemory = new List <IAInformation>(); }
public IAState(IABrain brain, float updateTime) { this.brain = brain; this.updateTime = updateTime; }
public override void InitBehaviour(RadarTracker tracker) { brain = tracker.GetComponent <IABrain>(); filledImage.fillAmount = 0f; filledImage.color = stateColors.Find(c => c.state == IAState.IAStateTag.IDLE).color; }