private void Awake() { entity = GetComponent <BaseEntity>(); npc = entity.GetComponent <BaseNpc>(); npc.CancelInvoke(npc.TickAi); npc.SetAiFlag(BaseNpc.AiFlags.Sleeping, false); animalConfig = GetAnimalSpeed(npc); npc._maxHealth = animalConfig.health; npc.health = animalConfig.health; instance.animalAI[entity] = this; type = animalConfig.agressive ? AType.Aggressive : AType.Passive; originalType = type; state = AIState.Walking; lastPosition = entity.transform.position; InvokeHandler.InvokeRepeating(this, UpdateAI, 0, updateRate); if (IsStucked()) { DestroyAndKill(); } if (config.SleepAtNight) { InvokeHandler.InvokeRepeating(this, CheckTime, updateRate, 10 + updateRate); } }