private void AISquadManagerHook(On.AISquadManager.orig_Update orig, AISquadManager self)
        {
            if (global.IsGameplayStarted && global.CurrentTime > 0)
            {
                return;
            }

            orig(self);
        }
Exemple #2
0
    private void AISquadManager_TryActivateSquad(On.AISquadManager.orig_TryActivateSquad orig, AISquadManager self, AISquad _squad, bool _resetPositions)
    {
        List <AISquad> _reserve           = (List <AISquad>)AccessTools.Field(typeof(AISquadManager), "m_squadsInReserve").GetValue(self);
        List <AISquad> _play              = (List <AISquad>)AccessTools.Field(typeof(AISquadManager), "m_squadsInPlay").GetValue(self);
        DictionaryExt <UID, AISquad> _all = (DictionaryExt <UID, AISquad>)AccessTools.Field(typeof(AISquadManager), "m_allSquads").GetValue(self);

        OLogger.Log($"TryActivateSquad {(_squad != null ? _squad.name : "(null)")}");
        OLogger.Log($" > All={_all.Count} Play={_play.Count} Reserve={_reserve.Count}");
        OLogger.Log($" > InReserve={_reserve.Contains(_squad)}");

        /*if (_squad != null && !_reserve.Contains(_squad))
         * {
         *  _reserve.Add(_squad);
         *  AccessTools.Field(typeof(AISquadManager), "m_squadsInReserve").SetValue(self, _reserve);
         * }*/
        orig(self, _squad, _resetPositions);
    }
Exemple #3
0
    private void AISquadManager_TryDeactivateSquad(On.AISquadManager.orig_TryDeactivateSquad orig, AISquadManager self, AISquad _squad)
    {
        List <AISquad> _reserve           = (List <AISquad>)AccessTools.Field(typeof(AISquadManager), "m_squadsInReserve").GetValue(self);
        List <AISquad> _play              = (List <AISquad>)AccessTools.Field(typeof(AISquadManager), "m_squadsInPlay").GetValue(self);
        DictionaryExt <UID, AISquad> _all = (DictionaryExt <UID, AISquad>)AccessTools.Field(typeof(AISquadManager), "m_allSquads").GetValue(self);

        OLogger.Log($"TryDeactivateSquad {(_squad != null ? _squad.name : "(null)")}");
        OLogger.Log($" > All={_all.Count} Play={_play.Count} Reserve={_reserve.Count}");
        orig(self, _squad);
    }
Exemple #4
0
    private bool AISquadManager_CheckActiveSquadsCap(On.AISquadManager.orig_CheckActiveSquadsCap orig, AISquadManager self)
    {
        bool res = orig(self);

        OLogger.Log($"CheckActiveSquadsCap {res}");
        return(res);
    }
Exemple #5
0
 private void AISquadManager_FirstSpawn(On.AISquadManager.orig_FirstSpawn orig, AISquadManager self)
 {
     OLogger.Log("FirstSpawn");
     orig(self);
 }
Exemple #6
0
 private void AISquadManager_FindSpawn(On.AISquadManager.orig_FindSpawn orig, AISquadManager self, bool _ignoreSight)
 {
     OLogger.Log("FindSpawn");
     orig(self, _ignoreSight);
 }