예제 #1
0
 public static void OnPreDungeonGen(LoopDungeonGenerator generator, Dungeon dungeon, DungeonFlow flow, int dungeonSeed)
 {
     // Tools.Print("Attempting to override floor layout...", "5599FF");
     //CollectDataForAnalysis(flow, dungeon);
     if (flow.name != "Foyer Flow" && !GameManager.IsReturningToFoyerWithPlayer)
     {
         if (debugFlow)
         {
             flow = SampleFlow.CreateDebugFlow(dungeon);
             generator.AssignFlow(flow);
         }
         //  Tools.Print("Dungeon name: " + dungeon.name);
         // Tools.Print("Override Flow set to: " + flow.name);
     }
     dungeon = null;
 }
        public static void OnPreDungeonGen(LoopDungeonGenerator generator, Dungeon dungeon, DungeonFlow flow, int dungeonSeed)
        {
            bool notFoyer = flow.name != "Foyer Flow" && !GameManager.IsReturningToFoyerWithPlayer;

            if (notFoyer && flow.name != "Tutorial Flow")
            {
                Module.BossClone    = 0;
                dungeonSeed         = Module.Order;
                dungeon.DungeonSeed = Module.Order;
                GameManager.Instance.CurrentRunSeed = Module.Order;

                flow = ThesisFloorGenerator.CreateBranchingThesisFlow(dungeon);
                generator.AssignFlow(flow);
            }

            dungeon = null;
        }
예제 #3
0
        // Token: 0x0600000F RID: 15 RVA: 0x000028CC File Offset: 0x00000ACC
        public static void OnPreDungeonGen(LoopDungeonGenerator generator, Dungeon dungeon, DungeonFlow flow, int dungeonSeed)
        {
            Tools.Print <string>("Attempting to override floor layout...", "5599FF", false);
            bool flag = flow.name != "Foyer Flow" && !GameManager.IsReturningToFoyerWithPlayer;

            if (flag)
            {
                bool flag2 = DungeonHandler.debugFlow;
                if (flag2)
                {
                    generator.AssignFlow(flow);
                }
                Tools.Print <string>("Dungeon name: " + dungeon.name, "FFFFFF", false);
                Tools.Print <string>("Override Flow set to: " + flow.name, "FFFFFF", false);
            }
            dungeon = null;
        }
예제 #4
0
        public static void LoopGenConstructor(Action <LoopDungeonGenerator, Dungeon, int> orig, LoopDungeonGenerator self, Dungeon dungeon, int dungeonSeed)
        {
            orig(self, dungeon, dungeonSeed);

            if (GameManager.Instance != null && GameManager.Instance != targetInstance)
            {
                targetInstance = GameManager.Instance;
                targetInstance.OnNewLevelFullyLoaded += OnLevelLoad;
            }

            var flow = (DungeonFlow)m_assignedFlow.GetValue(self);

            OnPreDungeonGeneration?.Invoke(self, dungeon, flow, dungeonSeed);
            dungeon = null;
        }
예제 #5
0
        // Token: 0x06000086 RID: 134 RVA: 0x00005868 File Offset: 0x00003A68
        public static void LoopGenConstructor(Action <LoopDungeonGenerator, Dungeon, int> orig, LoopDungeonGenerator self, Dungeon dungeon, int dungeonSeed)
        {
            Tools.Print <string>("-Loop Gen Called-", "5599FF", false);
            orig(self, dungeon, dungeonSeed);
            bool flag  = GameManager.Instance != null && GameManager.Instance != DungeonHooks.targetInstance;
            bool flag2 = flag;

            if (flag2)
            {
                DungeonHooks.targetInstance = GameManager.Instance;
                DungeonHooks.targetInstance.OnNewLevelFullyLoaded += DungeonHooks.OnLevelLoad;
            }
            DungeonFlow arg = (DungeonFlow)DungeonHooks.m_assignedFlow.GetValue(self);
            Action <LoopDungeonGenerator, Dungeon, DungeonFlow, int> onPreDungeonGeneration = DungeonHooks.OnPreDungeonGeneration;
            bool flag3 = onPreDungeonGeneration != null;

            if (flag3)
            {
                onPreDungeonGeneration(self, dungeon, arg, dungeonSeed);
            }
            dungeon = null;
        }