static bool Prefix(ChunkOverride __instance, ref ChunkOverride __result)
 {
     Main.LogDebug($"[ChunkOverrideCopyPatch.Prefix] Running ChunkOverrideCopyPatch - {__instance.name}");
     __result = new ChunkOverride {
         name                               = __instance.name,
         encounterChunk                     = new EncounterChunkRef(__instance.encounterChunk),
         enableChunkFromContract            = __instance.enableChunkFromContract,
         requirementList                    = Utilities.Cloner.DeepCopy <List <RequirementDef> >(__instance.requirementList),
         controlledByContractChunkGroupList = __instance.controlledByContractChunkGroupList
     };
     return(false);
 }
Esempio n. 2
0
        static bool Prefix(EncounterChunkGameLogic __instance, ChunkOverride chunkOverride)
        {
            Main.LogDebug($"[EncounterChunkGameLogicApplyContractOverridePatch.Prefix] Running EncounterChunkGameLogicApplyContractOverridePatch - {chunkOverride.name}");
            EncounterObjectStatus startingStatus = EncounterObjectStatus.Active;

            if (chunkOverride.enableChunkFromContract)
            {
                if (chunkOverride.controlledByContractChunkGroupList.Count > 0)
                {
                    if (!Enum.TryParse(chunkOverride.controlledByContractChunkGroupList[0], out startingStatus))
                    {
                        startingStatus = EncounterObjectStatus.Active;
                    }
                }
                __instance.startingStatus = startingStatus;
            }
            return(false);
        }