public override void ServerInit()
    {
        if (base.isClient)
        {
            return;
        }
        base.ServerInit();
        this.UpdateNetworkGroup();
        if (this.AiDomain == null)
        {
            Debug.LogError(string.Concat(base.name, " requires an AI domain to be set."));
            base.DieInstantly();
            return;
        }
        this.AiDomain.Initialize(this);
        if (!AiManager.ai_htn_use_agency_tick)
        {
            base.InvokeRepeating(new Action(this.InvokedTick), 0f, 0.1f);
        }
        BaseNpcDefinition aiDefinition = this.AiDefinition;

        if (aiDefinition == null)
        {
            return;
        }
        aiDefinition.Loadout(this);
    }
    public override float StartMaxHealth()
    {
        BaseNpcDefinition aiDefinition = this.AiDefinition;

        if (aiDefinition == null)
        {
            return(0f);
        }
        return(aiDefinition.Vitals.HP);
    }
    public override float MaxVelocity()
    {
        BaseNpcDefinition aiDefinition = this.AiDefinition;

        if (aiDefinition == null)
        {
            return(0f);
        }
        return(aiDefinition.Movement.RunSpeed);
    }
    public override void OnKilled(HitInfo info)
    {
        BaseNpcDefinition aiDefinition = this.AiDefinition;

        if (aiDefinition != null)
        {
            aiDefinition.OnCreateCorpse(this);
        }
        else
        {
        }
        base.Invoke(new Action(this.KillMessage), 0.5f);
    }