Created
September 29, 2025 17:57
-
-
Save AltimorTASDK/de27cf9901f96d34b3aad78d939da510 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| public void TimePasses() | |
| { | |
| StaticVariableList.ClearSceneTransitions(); | |
| string sceneNameString = this.GetSceneNameString(); | |
| MapZone currentMapZoneEnum = this.GetCurrentMapZoneEnum(); | |
| if (this.playerData.seenBellBeast && this.playerData.shermaPos == 0) | |
| { | |
| this.playerData.shermaPos = 1; | |
| } | |
| if (this.playerData.shermaPos == 1 && sceneNameString != "Bone_East_10_Room" && (this.playerData.scenesVisited.Contains("Belltown") || this.playerData.scenesVisited.Contains("Halfway_01"))) | |
| { | |
| this.playerData.shermaPos = 2; | |
| } | |
| if (this.playerData.spinnerDefeated && (this.playerData.encounteredLastJudge || (this.playerData.activatedStepsUpperBellbench && this.playerData.defeatedCoralDrillers) || (this.playerData.visitedCoral && currentMapZoneEnum == MapZone.DUSTPENS) || currentMapZoneEnum == MapZone.SWAMP)) | |
| { | |
| this.playerData.shermaAtSteps = true; | |
| } | |
| if (this.playerData.SeenLastJudgeGateOpen && !this.playerData.shermaCitadelEntrance_Visiting && this.playerData.enteredCoral_10 && this.playerData.enteredSong_19 && this.playerData.citadelWoken) | |
| { | |
| this.playerData.shermaCitadelEntrance_Visiting = true; | |
| } | |
| if ((this.playerData.shermaCitadelEntrance_Seen || this.playerData.citadelHalfwayComplete) && !this.playerData.shermaCitadelEntrance_Left) | |
| { | |
| this.playerData.shermaCitadelEntrance_Left = true; | |
| } | |
| if (this.playerData.shermaCitadelSpa_Seen && !this.playerData.shermaCitadelSpa_Left) | |
| { | |
| this.playerData.shermaCitadelSpa_Left = true; | |
| this.playerData.shermaCitadelEntrance_Left = true; | |
| } | |
| if (this.playerData.enclaveLevel >= 2 && sceneNameString != "Song_Enclave" && sceneNameString != "Bellshrine_Enclave") | |
| { | |
| this.playerData.shermaInEnclave = true; | |
| } | |
| if (!this.playerData.shermaHealerActive && QuestManager.GetQuest("Save Sherma").IsCompleted && sceneNameString != "Song_Enclave" && sceneNameString != "Bellshrine_Enclave") | |
| { | |
| this.playerData.shermaHealerActive = true; | |
| } | |
| if (this.playerData.shermaHealerActive && sceneNameString != "Song_Enclave" && sceneNameString != "Bellshrine_Enclave") | |
| { | |
| this.playerData.shermaWoundedPilgrim = Random.Range(1, 4); | |
| } | |
| if (sceneNameString != "Bonetown" && sceneNameString != "Belltown") | |
| { | |
| this.playerData.mapperAway = (Random.Range(1, 100) > 50); | |
| } | |
| if (this.playerData.killedRoostingCrowman) | |
| { | |
| this.playerData.killedRoostingCrowman = false; | |
| } | |
| if (this.playerData.spinnerDefeated) | |
| { | |
| this.playerData.MapperAppearInBellhart = true; | |
| } | |
| if (this.playerData.defeatedCoralDrillers) | |
| { | |
| this.playerData.coralDrillerSoloReady = true; | |
| } | |
| if (this.playerData.dust01_battleCompleted) | |
| { | |
| this.playerData.dust01_returnReady = true; | |
| } | |
| if (sceneNameString != "Bonetown" && this.playerData.visitedBellhart) | |
| { | |
| this.playerData.BonebottomBellwayPilgrimLeft = true; | |
| } | |
| if (this.playerData.BoneBottomShopKeepWillLeave && !this.playerData.BoneBottomShopKeepLeft && sceneNameString != "Bonetown") | |
| { | |
| this.playerData.BoneBottomShopKeepLeft = true; | |
| } | |
| if (currentMapZoneEnum != MapZone.BONETOWN && currentMapZoneEnum != MapZone.PATH_OF_BONE && currentMapZoneEnum != MapZone.MOSS_CAVE) | |
| { | |
| if (this.playerData.seenPilbyLeft && !this.playerData.bonetownPilgrimRoundActive) | |
| { | |
| this.playerData.bonetownPilgrimRoundActive = true; | |
| } | |
| if (this.playerData.seenPebbLeft && !this.playerData.bonetownPilgrimHornedActive) | |
| { | |
| this.playerData.bonetownPilgrimHornedActive = true; | |
| } | |
| } | |
| if (this.playerData.hasChargeSlash && sceneNameString != "Room_Pinstress") | |
| { | |
| this.playerData.pinstressStoppedResting = true; | |
| if (Random.Range(0, 100) >= 50) | |
| { | |
| this.playerData.pinstressInsideSitting = true; | |
| } | |
| else | |
| { | |
| this.playerData.pinstressInsideSitting = false; | |
| } | |
| if (this.playerData.blackThreadWorld) | |
| { | |
| this.playerData.pinstressQuestReady = true; | |
| } | |
| } | |
| if (!this.playerData.IsPinGallerySetup && this.playerData.spinnerDefeated && sceneNameString != "Bone_12") | |
| { | |
| this.playerData.IsPinGallerySetup = true; | |
| } | |
| if (!this.playerData.PinGalleryLastChallengeOpen && this.playerData.pinGalleriesCompleted == 2 && this.playerData.visitedCitadel && sceneNameString != "Bone_12") | |
| { | |
| this.playerData.PinGalleryLastChallengeOpen = true; | |
| } | |
| if (this.playerData.bone03_openedTrapdoor && !QuestManager.GetQuest("Rock Rollers").IsAccepted) | |
| { | |
| this.playerData.bone03_openedTrapdoorForRockRoller = true; | |
| } | |
| if (this.playerData.rhinoChurchUnlocked) | |
| { | |
| this.playerData.rhinoRampageCompleted = true; | |
| } | |
| if (this.playerData.rhinoChurchUnlocked && !this.playerData.churchRhinoKilled && this.playerData.visitedCitadel && this.playerData.PilgrimsRestDoorBroken && currentMapZoneEnum != MapZone.WILDS && this.playerData.respawnScene != "Bone_East_10_Room") | |
| { | |
| this.playerData.rhinoRuckus = true; | |
| this.playerData.didRhinoRuckus = true; | |
| } | |
| if (sceneNameString != "Bone_East_10_Room") | |
| { | |
| this.playerData.pilgrimRestCrowd = Random.Range(1, 6); | |
| } | |
| if (sceneNameString != "Halfway_01" && this.playerData.MetHalfwayHunterFan) | |
| { | |
| if (Random.Range(1, 100) > 50) | |
| { | |
| this.playerData.nuuIsHome = true; | |
| } | |
| else | |
| { | |
| this.playerData.nuuIsHome = false; | |
| } | |
| } | |
| if (this.playerData.MetHalfwayHunterFan && this.playerData.defeatedSplinterQueen && currentMapZoneEnum != MapZone.SHELLWOOD_THICKET && !this.playerData.nuuVisiting_splinterQueen) | |
| { | |
| this.playerData.nuuVisiting_splinterQueen = true; | |
| } | |
| if (this.playerData.MetHalfwayHunterFan && this.playerData.defeatedCoralDrillers && currentMapZoneEnum != MapZone.JUDGE_STEPS && !this.playerData.nuuVisiting_coralDrillers) | |
| { | |
| this.playerData.nuuVisiting_coralDrillers = true; | |
| } | |
| if (this.playerData.MetHalfwayHunterFan && this.playerData.skullKingDefeated && currentMapZoneEnum != MapZone.PATH_OF_BONE && !this.playerData.nuuVisiting_skullKing) | |
| { | |
| this.playerData.nuuVisiting_skullKing = true; | |
| } | |
| if (this.playerData.MetHalfwayHunterFan && this.playerData.defeatedZapCoreEnemy && currentMapZoneEnum != MapZone.RED_CORAL_GORGE && !this.playerData.nuuVisiting_zapNest) | |
| { | |
| this.playerData.nuuVisiting_zapNest = true; | |
| } | |
| if (sceneNameString != "Halfway_01") | |
| { | |
| this.playerData.halfwayCrowd = Random.Range(1, 5); | |
| if (this.playerData.MetHalfwayBartender) | |
| { | |
| this.playerData.HalfwayPatronsCanVisit = true; | |
| } | |
| if (this.playerData.SeenHalfwayPatronLeft) | |
| { | |
| this.playerData.HalfwayPatronLeftGone = true; | |
| } | |
| if (this.playerData.SeenHalfwayPatronRight) | |
| { | |
| this.playerData.HalfwayPatronRightGone = true; | |
| } | |
| } | |
| if (!this.playerData.greymoor_05_centipedeArrives && (this.playerData.greymoor_04_battleCompleted || this.playerData.greymoor_10_entered)) | |
| { | |
| this.playerData.greymoor_05_centipedeArrives = true; | |
| } | |
| if (this.playerData.garmondMoorwingConvo) | |
| { | |
| this.playerData.garmondMoorwingConvoReady = true; | |
| } | |
| if (this.playerData.metGarmond && this.playerData.vampireGnatDeaths > 1) | |
| { | |
| this.playerData.garmondMoorwingConvoReady = true; | |
| } | |
| if (this.playerData.openedDust05Gate) | |
| { | |
| this.playerData.garmondInDust05 = true; | |
| } | |
| if (this.playerData.dust05EnemyClearedOut) | |
| { | |
| this.playerData.dust05EnemyClearedOut = true; | |
| } | |
| if (this.playerData.bellShrineEnclave || this.playerData.defeatedCogworkDancers || this.playerData.hasHarpoonDash) | |
| { | |
| if (!this.playerData.garmondInSong01 && !this.playerData.garmondSeenInSong01 && this.playerData.enteredSong_01) | |
| { | |
| this.playerData.garmondInSong01 = true; | |
| } | |
| if (!this.playerData.garmondInSong02 && !this.playerData.garmondSeenInSong02 && this.playerData.enteredSong_02) | |
| { | |
| this.playerData.garmondInSong02 = true; | |
| } | |
| if (!this.playerData.garmondInSong13 && !this.playerData.garmondSeenInSong13 && this.playerData.enteredSong_13) | |
| { | |
| this.playerData.garmondInSong13 = true; | |
| } | |
| if (!this.playerData.garmondInSong17 && !this.playerData.garmondSeenInSong17 && this.playerData.enteredSong_17 && this.playerData.marionettesMet) | |
| { | |
| this.playerData.garmondInSong17 = true; | |
| } | |
| } | |
| if (!this.playerData.garmondInLibrary && this.playerData.libraryRoofShortcut && this.playerData.metGarmond) | |
| { | |
| this.playerData.garmondInLibrary = true; | |
| } | |
| if (this.playerData.HasMelodyArchitect && this.playerData.HasMelodyConductor && this.playerData.HasMelodyLibrarian && QuestManager.GetQuest("Fine Pins").IsCompleted && (this.playerData.metGarmond || (this.playerData.garmondSeenInSong13 && this.playerData.garmondSeenInSong17))) | |
| { | |
| this.playerData.garmondInEnclave = true; | |
| } | |
| if ((this.playerData.garmondEncounters_act3 >= 3 || this.playerData.HasWhiteFlower) && !this.playerData.garmondFinalQuestReady) | |
| { | |
| this.playerData.garmondFinalQuestReady = true; | |
| } | |
| this.playerData.pilgrimGroupBonegrave = Random.Range(1, 4); | |
| if (this.playerData.savedPlinney) | |
| { | |
| this.playerData.shellGravePopulated = true; | |
| } | |
| this.playerData.pilgrimGroupShellgrave = Random.Range(1, 4); | |
| this.playerData.pilgrimGroupGreymoorField = Random.Range(1, 4); | |
| this.playerData.enemyGroupAnt04 = Random.Range(1, 4); | |
| float num = (float)Random.Range(1, 100); | |
| if (num <= 60f) | |
| { | |
| this.playerData.halfwayCrowEnemyGroup = 2; | |
| } | |
| else if (num <= 90f) | |
| { | |
| this.playerData.halfwayCrowEnemyGroup = 1; | |
| } | |
| else | |
| { | |
| this.playerData.halfwayCrowEnemyGroup = 3; | |
| } | |
| if (this.playerData.bonegraveRosaryPilgrimDefeated) | |
| { | |
| this.playerData.bonegravePilgrimCrowdsCanReturn = true; | |
| } | |
| if (this.playerData.wokeSongChevalier && !this.playerData.songChevalierActiveInSong_25) | |
| { | |
| this.playerData.songChevalierActiveInSong_25 = true; | |
| } | |
| if (this.playerData.wokeSongChevalier && !this.playerData.songChevalierActiveInSong_27) | |
| { | |
| this.playerData.songChevalierActiveInSong_27 = true; | |
| } | |
| if (this.playerData.wokeSongChevalier && !this.playerData.songChevalierActiveInSong_04 && this.playerData.song_04_battleCompleted) | |
| { | |
| this.playerData.songChevalierActiveInSong_04 = true; | |
| } | |
| if (this.playerData.blackThreadWorld && this.playerData.wokeSongChevalier) | |
| { | |
| if (!this.playerData.songChevalierActiveInSong_02) | |
| { | |
| this.playerData.songChevalierActiveInSong_02 = true; | |
| } | |
| if (!this.playerData.songChevalierActiveInSong_24) | |
| { | |
| this.playerData.songChevalierActiveInSong_24 = true; | |
| } | |
| if (!this.playerData.songChevalierActiveInHang_02) | |
| { | |
| this.playerData.songChevalierActiveInHang_02 = true; | |
| } | |
| if (!this.playerData.songChevalierActiveInSong_07 && QuestManager.GetQuest("Save City Merchant").IsCompleted) | |
| { | |
| this.playerData.songChevalierActiveInSong_07 = true; | |
| } | |
| } | |
| if (this.playerData.songChevalierEncounterCooldown) | |
| { | |
| this.playerData.songChevalierEncounterCooldown = false; | |
| } | |
| if (this.playerData.songChevalierEncounters >= 2 && this.playerData.HasMelodyConductor && this.playerData.enclaveLevel >= 2 && !this.playerData.songChevalierQuestReady && !QuestManager.GetQuest("Song Knight").IsCompleted) | |
| { | |
| this.playerData.songChevalierQuestReady = true; | |
| } | |
| if (this.playerData.songChevalierEncounters >= 1 && this.playerData.HasWhiteFlower && !this.playerData.songChevalierQuestReady && !QuestManager.GetQuest("Song Knight").IsCompleted) | |
| { | |
| this.playerData.songChevalierQuestReady = true; | |
| } | |
| if (this.playerData.blackThreadWorld && QuestManager.GetQuest("Song Knight").IsCompleted) | |
| { | |
| this.playerData.songChevalierActiveInSong_25 = false; | |
| this.playerData.songChevalierSeenInSong_25 = false; | |
| this.playerData.songChevalierActiveInSong_27 = false; | |
| this.playerData.songChevalierSeenInSong_27 = false; | |
| this.playerData.songChevalierActiveInSong_02 = false; | |
| this.playerData.songChevalierSeenInSong_02 = false; | |
| this.playerData.songChevalierActiveInSong_24 = false; | |
| this.playerData.songChevalierSeenInSong_24 = false; | |
| this.playerData.songChevalierActiveInSong_07 = false; | |
| this.playerData.songChevalierSeenInSong_07 = false; | |
| this.playerData.songChevalierActiveInHang_02 = false; | |
| this.playerData.songChevalierSeenInHang_02 = false; | |
| switch (Random.Range(1, 7)) | |
| { | |
| case 1: | |
| this.playerData.songChevalierActiveInSong_25 = true; | |
| break; | |
| case 2: | |
| this.playerData.songChevalierActiveInSong_27 = true; | |
| break; | |
| case 3: | |
| this.playerData.songChevalierActiveInSong_02 = true; | |
| break; | |
| case 4: | |
| this.playerData.songChevalierActiveInSong_24 = true; | |
| break; | |
| case 5: | |
| if (QuestManager.GetQuest("Save City Merchant").IsCompleted) | |
| { | |
| this.playerData.songChevalierActiveInSong_07 = true; | |
| } | |
| else | |
| { | |
| this.playerData.songChevalierActiveInSong_25 = true; | |
| } | |
| break; | |
| case 6: | |
| this.playerData.songChevalierActiveInHang_02 = true; | |
| break; | |
| } | |
| } | |
| if (!this.playerData.enclaveNPC_songKnightFan && this.playerData.blackThreadWorld && this.playerData.wokeSongChevalier && this.playerData.hasSuperJump && currentMapZoneEnum != MapZone.CITY_OF_SONG) | |
| { | |
| this.playerData.enclaveNPC_songKnightFan = true; | |
| } | |
| if (this.playerData.boneEastJailerKilled || this.playerData.CurseKilledFlyBoneEast) | |
| { | |
| this.playerData.boneEastJailerClearedOut = true; | |
| } | |
| if (this.playerData.enteredGreymoor05) | |
| { | |
| this.playerData.previouslyVisitedGreymoor_05 = true; | |
| } | |
| if (this.playerData.greymoor05_clearedOut) | |
| { | |
| this.playerData.greymoor05_clearedOut = false; | |
| } | |
| if (this.playerData.seenEmptyShellwood16) | |
| { | |
| this.playerData.slabFlyInShellwood16 = true; | |
| } | |
| if (this.playerData.completedLibraryEntryBattle) | |
| { | |
| this.playerData.scholarAmbushReady = true; | |
| } | |
| if (this.playerData.ant04_battleCompleted) | |
| { | |
| this.playerData.ant04_enemiesReturn = true; | |
| } | |
| if (this.playerData.dicePilgrimDefeated && this.playerData.dicePilgrimState == 0 && (this.playerData.defeatedCogworkDancers || this.playerData.hasHarpoonDash) && currentMapZoneEnum != MapZone.JUDGE_STEPS) | |
| { | |
| this.playerData.dicePilgrimState = 2; | |
| } | |
| else if (this.playerData.dicePilgrimState == 0 && (this.playerData.defeatedCogworkDancers || this.playerData.hasHarpoonDash) && currentMapZoneEnum != MapZone.JUDGE_STEPS) | |
| { | |
| this.playerData.dicePilgrimState = 1; | |
| } | |
| if (this.playerData.coral19_clearedOut) | |
| { | |
| this.playerData.coral19_clearedOut = false; | |
| } | |
| if (this.playerData.defeatedCoralDrillerSolo && currentMapZoneEnum != MapZone.RED_CORAL_GORGE && currentMapZoneEnum != MapZone.JUDGE_STEPS) | |
| { | |
| this.playerData.coralDrillerSoloEnemiesReturned = true; | |
| } | |
| if (this.playerData.defeatedWispPyreEffigy) | |
| { | |
| this.playerData.wisp02_enemiesReturned = true; | |
| } | |
| if (!this.playerData.HalfwayScarecrawAppeared && sceneNameString != "Halfway_01" && QuestManager.GetQuest("Crow Feathers").IsCompleted) | |
| { | |
| this.playerData.HalfwayScarecrawAppeared = true; | |
| } | |
| if (this.playerData.metGrubFarmer && !this.playerData.farmer_grewFirstGrub && sceneNameString != "Dust_11") | |
| { | |
| this.playerData.farmer_grubGrown_1 = true; | |
| this.playerData.farmer_grewFirstGrub = true; | |
| } | |
| if (this.playerData.grubFarmLevel >= 1 && this.playerData.farmer_grewFirstGrub && (!this.playerData.blackThreadWorld || this.playerData.silkFarmAbyssCoresCleared)) | |
| { | |
| if (this.timeSinceLastTimePasses > 0f) | |
| { | |
| this.playerData.grubFarmerTimer += this.timeSinceLastTimePasses; | |
| } | |
| while (this.playerData.grubFarmerTimer >= 1800f) | |
| { | |
| this.playerData.grubFarmerTimer -= 1800f; | |
| if (!this.playerData.farmer_grubGrowing_1 && !this.playerData.farmer_grubGrown_1) | |
| { | |
| this.playerData.farmer_grubGrowing_1 = true; | |
| } | |
| else if (!this.playerData.farmer_grubGrown_1) | |
| { | |
| this.playerData.farmer_grubGrown_1 = true; | |
| this.playerData.farmer_grubGrowing_1 = false; | |
| } | |
| else | |
| { | |
| if (this.playerData.grubFarmLevel >= 2 && this.playerData.farmer_grubGrown_1) | |
| { | |
| if (!this.playerData.farmer_grubGrowing_2 && !this.playerData.farmer_grubGrown_2) | |
| { | |
| this.playerData.farmer_grubGrowing_2 = true; | |
| continue; | |
| } | |
| if (!this.playerData.farmer_grubGrown_2) | |
| { | |
| this.playerData.farmer_grubGrown_2 = true; | |
| this.playerData.farmer_grubGrowing_2 = false; | |
| continue; | |
| } | |
| } | |
| if (this.playerData.grubFarmLevel >= 3 && this.playerData.farmer_grubGrown_2) | |
| { | |
| if (!this.playerData.farmer_grubGrowing_3 && !this.playerData.farmer_grubGrown_3) | |
| { | |
| this.playerData.farmer_grubGrowing_3 = true; | |
| } | |
| else if (!this.playerData.farmer_grubGrown_3) | |
| { | |
| this.playerData.farmer_grubGrown_3 = true; | |
| this.playerData.farmer_grubGrowing_3 = false; | |
| } | |
| } | |
| } | |
| } | |
| } | |
| if (this.playerData.hitCrowCourtSwitch && !this.playerData.CrowCourtInSession && !this.playerData.defeatedCrowCourt && currentMapZoneEnum != MapZone.GREYMOOR && this.playerData.blackThreadWorld) | |
| { | |
| this.playerData.CrowCourtInSession = true; | |
| } | |
| if (this.playerData.defeatedCrowCourt && this.playerData.CrowCourtInSession && currentMapZoneEnum != MapZone.GREYMOOR) | |
| { | |
| this.playerData.CrowCourtInSession = false; | |
| } | |
| if (this.playerData.CrawbellInstalled) | |
| { | |
| if (this.timeSinceLastTimePasses > 0f) | |
| { | |
| this.playerData.CrawbellTimer += this.timeSinceLastTimePasses; | |
| } | |
| if (!(sceneNameString == "Belltown") && !(sceneNameString == "Belltown_Room_Spare") && !(sceneNameString == "Belltown_basement") && !(sceneNameString == "Belltown_Room_pinsmith") && !(sceneNameString == "Belltown_Room_Relic")) | |
| { | |
| this.playerData.CrawbellCrawsInside = (Random.Range(0, 2) == 0); | |
| ArrayForEnumAttribute.EnsureArraySize<int>(ref this.playerData.CrawbellCurrency, typeof(CurrencyType)); | |
| ArrayForEnumAttribute.EnsureArraySize<int>(ref this.playerData.CrawbellCurrencyCaps, typeof(CurrencyType)); | |
| for (int i = 0; i < this.playerData.CrawbellCurrencyCaps.Length; i++) | |
| { | |
| if (this.playerData.CrawbellCurrencyCaps[i] <= 0) | |
| { | |
| this.playerData.CrawbellCurrencyCaps[i] = Random.Range(300, 500); | |
| } | |
| } | |
| while (this.playerData.CrawbellTimer >= 300f) | |
| { | |
| this.playerData.CrawbellTimer -= 300f; | |
| for (int j = 0; j < this.playerData.CrawbellCurrency.Length; j++) | |
| { | |
| int num2 = this.playerData.CrawbellCurrency[j]; | |
| if (num2 < this.playerData.CrawbellCurrencyCaps[j]) | |
| { | |
| this.playerData.CrawbellCurrency[j] = num2 + Random.Range(5, 20); | |
| } | |
| } | |
| } | |
| } | |
| } | |
| if (this.playerData.Collectables.GetData("Growstone").Amount > 0) | |
| { | |
| if (this.timeSinceLastTimePasses > 0f) | |
| { | |
| this.playerData.GrowstoneTimer += this.timeSinceLastTimePasses; | |
| } | |
| while (this.playerData.GrowstoneTimer >= 1200f) | |
| { | |
| if (this.playerData.GrowstoneState >= 3) | |
| { | |
| this.playerData.GrowstoneTimer = 0f; | |
| break; | |
| } | |
| this.playerData.GrowstoneTimer -= 1200f; | |
| this.playerData.GrowstoneState++; | |
| } | |
| } | |
| if (this.playerData.blackThreadWorld && !this.playerData.HuntressRuntAppeared && !Gameplay.HuntressQuest.IsCompleted) | |
| { | |
| this.playerData.HuntressRuntAppeared = true; | |
| } | |
| if (this.playerData.defeatedSplinterQueen && !this.playerData.splinterQueenSproutCut && currentMapZoneEnum != MapZone.SHELLWOOD_THICKET && this.playerData.splinterQueenSproutTimer < 50) | |
| { | |
| this.playerData.splinterQueenSproutTimer++; | |
| } | |
| if (this.playerData.roofCrabDefeated && this.playerData.citadelWoken && currentMapZoneEnum != MapZone.CRAWLSPACE && currentMapZoneEnum != MapZone.BONETOWN && currentMapZoneEnum != MapZone.PATH_OF_BONE && currentMapZoneEnum != MapZone.MOSSTOWN) | |
| { | |
| this.playerData.littleCrabsAppeared = true; | |
| } | |
| if ((this.playerData.BonebottomBellwayPilgrimScared || this.playerData.skullKingInvaded) && !this.playerData.BonebottomBellwayPilgrimLeft && (!this.playerData.skullKingInvaded || this.playerData.skullKingKilled) && currentMapZoneEnum != MapZone.BONETOWN && currentMapZoneEnum != MapZone.PATH_OF_BONE) | |
| { | |
| this.playerData.BonebottomBellwayPilgrimLeft = true; | |
| } | |
| if (this.playerData.spinnerDefeated) | |
| { | |
| this.playerData.BonebottomBellwayPilgrimLeft = true; | |
| } | |
| this.playerData.skullKingWillInvade = false; | |
| if (this.playerData.skullKingDefeated && !this.playerData.skullKingWillInvade && currentMapZoneEnum != MapZone.BONETOWN && currentMapZoneEnum != MapZone.PATH_OF_BONE && currentMapZoneEnum != MapZone.MOSS_CAVE && !this.playerData.blackThreadWorld && (this.playerData.visitedCitadel || this.playerData.visitedCoral || this.playerData.visitedDustpens) && !QuestManager.GetQuest("Soul Snare").IsAccepted && Random.Range(1, 100) <= 30) | |
| { | |
| this.playerData.skullKingWillInvade = true; | |
| } | |
| if (this.playerData.skullKingWillInvade && QuestManager.GetQuest("Soul Snare").IsAccepted) | |
| { | |
| this.playerData.skullKingWillInvade = false; | |
| } | |
| if (this.playerData.skullKingKilled && !this.playerData.skullKingBenchMended) | |
| { | |
| this.playerData.skullKingBenchMended = true; | |
| } | |
| if (this.playerData.skullKingBenchMended && this.playerData.pilbyKilled && !this.playerData.boneBottomFuneral && !this.playerData.blackThreadWorld && currentMapZoneEnum != MapZone.BONETOWN && currentMapZoneEnum != MapZone.PATH_OF_BONE && currentMapZoneEnum != MapZone.MOSS_CAVE) | |
| { | |
| this.playerData.boneBottomFuneral = true; | |
| this.playerData.skullKingPlatMended = true; | |
| } | |
| if ((this.playerData.UnlockedMelodyLift || this.playerData.hasDoubleJump) && !this.playerData.pilbyKilled && this.playerData.pilbyMeetConvo && !this.playerData.pilbyAtPilgrimsRest && !this.playerData.rhinoRuckus) | |
| { | |
| this.playerData.pilbyAtPilgrimsRest = true; | |
| if (this.playerData.PilgrimsRestDoorBroken) | |
| { | |
| this.playerData.pilbyInsidePilgrimsRest = true; | |
| } | |
| } | |
| if (this.playerData.pilbySeenAtPilgrimsRest && !this.playerData.pilbyLeftPilgrimsRest && currentMapZoneEnum != MapZone.WILDS) | |
| { | |
| this.playerData.pilbyLeftPilgrimsRest = true; | |
| } | |
| if (currentMapZoneEnum != MapZone.BONETOWN && currentMapZoneEnum != MapZone.PATH_OF_BONE && currentMapZoneEnum != MapZone.MOSS_CAVE && this.playerData.visitedBoneForest) | |
| { | |
| this.playerData.bonetownCrowd = Random.Range(1, 8); | |
| } | |
| if (sceneNameString != "Bellway_01" && sceneNameString != "Bonetown") | |
| { | |
| if (QuestManager.GetQuest("Building Materials (Statue)").IsCompleted) | |
| { | |
| this.playerData.fixerStatueConstructed = true; | |
| } | |
| if (QuestManager.GetQuest("Building Materials (Bridge)").IsCompleted) | |
| { | |
| this.playerData.fixerBridgeConstructed = true; | |
| } | |
| if (QuestManager.GetQuest("Pilgrim Rags").IsCompleted) | |
| { | |
| this.playerData.boneBottomAddition_RagLine = true; | |
| } | |
| } | |
| PersistentItemData<int> persistentItemData; | |
| if (!this.playerData.ChurchKeeperLeftBasement && this.sceneName != "Tut_03" && this.sceneName != "Bonetown" && this.sceneData.PersistentInts.TryGetValue("Tut_03", "Churchkeeper Basement", out persistentItemData) && persistentItemData.Value > 0) | |
| { | |
| this.playerData.ChurchKeeperLeftBasement = true; | |
| } | |
| if (this.playerData.CaravanLechSaved && !this.playerData.CaravanLechReturnedToCaravan && this.sceneName != "Bone_10" && this.sceneName != "Greymoor_08" && this.sceneName != "Coral_Judge_Arena" && this.sceneName != "Aqueduct_05") | |
| { | |
| this.playerData.CaravanLechReturnedToCaravan = true; | |
| } | |
| if ((this.playerData.encounteredVampireGnat_05 || this.playerData.encounteredVampireGnatBoss) && currentMapZoneEnum != MapZone.GREYMOOR) | |
| { | |
| this.playerData.allowVampireGnatInAltLoc = true; | |
| } | |
| if (!this.playerData.VampireGnatCorpseOnCaravan && this.playerData.VampireGnatDefeatedBeforeCaravanArrived && !this.playerData.VampireGnatCorpseInWater && this.playerData.CaravanTroupeLocation > CaravanTroupeLocations.Bone && this.sceneName != "Greymoor_08") | |
| { | |
| this.playerData.VampireGnatCorpseOnCaravan = true; | |
| } | |
| if (this.playerData.CaravanTroupeLocation > CaravanTroupeLocations.Bone && !this.playerData.creaturesReturnedToBone10 && this.playerData.respawnScene != "Bone_10") | |
| { | |
| this.playerData.creaturesReturnedToBone10 = true; | |
| } | |
| CaravanTroupeLocations caravanTroupeLocation = this.playerData.CaravanTroupeLocation; | |
| if (caravanTroupeLocation != CaravanTroupeLocations.Greymoor) | |
| { | |
| if (caravanTroupeLocation == CaravanTroupeLocations.CoralJudge) | |
| { | |
| if (this.playerData.MetCaravanTroupeLeaderJudge && !this.playerData.CaravanTroupeLeaderCanLeaveJudge && this.sceneName != "Coral_Judge_Arena") | |
| { | |
| this.playerData.CaravanTroupeLeaderCanLeaveJudge = true; | |
| } | |
| } | |
| } | |
| else if (this.playerData.MetCaravanTroupeLeaderGreymoor && !this.playerData.CaravanTroupeLeaderCanLeaveGreymoor && this.sceneName != "Greymoor_08") | |
| { | |
| this.playerData.CaravanTroupeLeaderCanLeaveGreymoor = true; | |
| } | |
| if (!this.playerData.SpinnerDefeatedTimePassed && this.sceneName != "Belltown" && this.sceneName != "Belltown_Boss") | |
| { | |
| this.playerData.SpinnerDefeatedTimePassed = true; | |
| } | |
| if (!this.playerData.antMerchantKilled && currentMapZoneEnum != MapZone.HUNTERS_NEST && (this.playerData.defeatedCogworkDancers || this.playerData.bellShrineEnclave || this.playerData.hasHarpoonDash)) | |
| { | |
| this.playerData.antMerchantKilled = true; | |
| if (this.playerData.ant21_InitBattleCompleted && !Gameplay.CurveclawTool.IsUnlocked && !Gameplay.CurveclawUpgradedTool.IsUnlocked) | |
| { | |
| this.playerData.ant21_ExtraBattleAdded = true; | |
| } | |
| } | |
| if (this.playerData.MottledChildGivenTool && !this.playerData.MottledChildNewTool) | |
| { | |
| this.playerData.MottledChildNewTool = true; | |
| } | |
| if (this.playerData.bellShrineBellhart && currentMapZoneEnum != MapZone.BELLTOWN && currentMapZoneEnum != MapZone.MEMORY) | |
| { | |
| this.playerData.belltownCrowdsReady = true; | |
| this.playerData.belltownCrowd = Random.Range(1, 7); | |
| } | |
| if (this.playerData.visitedBellhartSaved && currentMapZoneEnum != MapZone.BELLTOWN) | |
| { | |
| this.playerData.shermaInBellhart = true; | |
| } | |
| if (currentMapZoneEnum != MapZone.BELLTOWN) | |
| { | |
| BelltownHouseStates belltownHouseState = this.playerData.BelltownHouseState; | |
| if (belltownHouseState != BelltownHouseStates.None) | |
| { | |
| if (belltownHouseState == BelltownHouseStates.Half) | |
| { | |
| if (QuestManager.GetQuest("Belltown House Mid").IsCompleted) | |
| { | |
| this.playerData.BelltownHouseState = BelltownHouseStates.Full; | |
| } | |
| } | |
| } | |
| else if (QuestManager.GetQuest("Belltown House Start").IsCompleted) | |
| { | |
| this.playerData.BelltownHouseState = BelltownHouseStates.Half; | |
| } | |
| if (this.playerData.BelltownGreeterConvo > 0) | |
| { | |
| this.playerData.BelltownGreeterMetTimePassed = true; | |
| } | |
| } | |
| if (this.playerData.gotPastDockSpearThrower) | |
| { | |
| this.playerData.gotPastDockSpearThrower = false; | |
| } | |
| if (this.playerData.wardBossDefeated && currentMapZoneEnum != MapZone.WARD && currentMapZoneEnum != MapZone.MEMORY && this.playerData.respawnScene != "Ward_02") | |
| { | |
| this.playerData.wardWoken = true; | |
| } | |
| PersistentItemData<bool> persistentItemData2; | |
| if (this.sceneData.PersistentBools.TryGetValue("Dock_10", "dock_pressure_plate_lock", out persistentItemData2) && persistentItemData2.Value && currentMapZoneEnum != MapZone.DOCKS && this.playerData.respawnScene != "Dock_10" && !this.playerData.blackThreadWorld && !this.playerData.BallowInSauna) | |
| { | |
| this.playerData.BallowInSauna = true; | |
| } | |
| if (this.playerData.BallowSeenInSauna && !this.playerData.BallowLeftSauna && sceneNameString != "Dock_10") | |
| { | |
| this.playerData.BallowLeftSauna = true; | |
| } | |
| if (this.playerData.defeatedRoachkeeperChef && currentMapZoneEnum != MapZone.DUSTPENS) | |
| { | |
| this.playerData.roachkeeperChefCorpsePrepared = true; | |
| } | |
| if (sceneNameString != "Song_Enclave" && sceneNameString != "Bellshrine_Enclave") | |
| { | |
| switch (this.playerData.enclaveLevel) | |
| { | |
| case 0: | |
| if (this.playerData.metCaretaker) | |
| { | |
| this.playerData.enclaveLevel = 1; | |
| } | |
| break; | |
| case 1: | |
| if (QuestManager.GetQuest("Songclave Donation 1").IsCompleted && Gameplay.EnclaveQuestBoard.CompletedQuestCount >= 2) | |
| { | |
| this.playerData.enclaveLevel = 2; | |
| } | |
| break; | |
| case 2: | |
| if (QuestManager.GetQuest("Songclave Donation 2").IsCompleted && Gameplay.EnclaveQuestBoard.CompletedQuestCount >= 5) | |
| { | |
| this.playerData.enclaveLevel = 3; | |
| } | |
| break; | |
| } | |
| if (QuestManager.GetQuest("Fine Pins").IsCompleted) | |
| { | |
| this.playerData.enclaveAddition_PinRack = true; | |
| } | |
| if (QuestManager.GetQuest("Song Pilgrim Cloaks").IsCompleted) | |
| { | |
| this.playerData.enclaveAddition_CloakLine = true; | |
| } | |
| if (Gameplay.EnclaveQuestBoard.CompletedQuestCount >= 4) | |
| { | |
| this.playerData.enclaveDonation2_Available = true; | |
| } | |
| } | |
| if (!this.playerData.citadelHalfwayComplete && (this.playerData.defeatedCogworkDancers || this.playerData.hasHarpoonDash || this.playerData.visitedEnclave)) | |
| { | |
| this.playerData.citadelHalfwayComplete = true; | |
| } | |
| if (this.playerData.citadelWoken && currentMapZoneEnum != MapZone.WARD && currentMapZoneEnum != MapZone.CITY_OF_SONG) | |
| { | |
| this.playerData.song05MarchGroupReady = true; | |
| } | |
| if (this.playerData.under07_battleCompleted && this.playerData.hasHarpoonDash && currentMapZoneEnum != MapZone.UNDERSTORE && currentMapZoneEnum != MapZone.CITY_OF_SONG) | |
| { | |
| this.playerData.under07_heavyWorkerReturned = true; | |
| } | |
| if (this.playerData.grindleInSong_08) | |
| { | |
| this.playerData.grindleInSong_08 = false; | |
| } | |
| if (this.playerData.seenGrindleInSong_08 && currentMapZoneEnum != MapZone.CITY_OF_SONG) | |
| { | |
| this.playerData.savedGrindleInCitadel = true; | |
| this.playerData.grindleInSong_08 = false; | |
| } | |
| if (this.playerData.savedGrindleInCitadel && this.playerData.grindleChestLocation == 0) | |
| { | |
| this.playerData.grindleChestLocation = Random.Range(1, 4); | |
| } | |
| if (this.playerData.hang04Battle) | |
| { | |
| this.playerData.leftTheGrandForum = true; | |
| } | |
| if (this.playerData.song_17_clearedOut) | |
| { | |
| this.playerData.song_17_clearedOut = false; | |
| } | |
| PersistentItemData<bool> persistentItemData3; | |
| if (this.sceneData.PersistentBools.TryGetValue("Under_07c", "Bot Blocker", out persistentItemData3) && persistentItemData3.Value && currentMapZoneEnum != MapZone.UNDERSTORE && currentMapZoneEnum != MapZone.CITY_OF_SONG && currentMapZoneEnum != MapZone.COG_CORE) | |
| { | |
| this.playerData.rosaryThievesInUnder07 = true; | |
| } | |
| if (this.playerData.bankOpened && currentMapZoneEnum != MapZone.HANG && currentMapZoneEnum != MapZone.CITY_OF_SONG && currentMapZoneEnum != MapZone.COG_CORE) | |
| { | |
| this.playerData.rosaryThievesInBank = true; | |
| } | |
| if (this.playerData.cog7_automaton_defeated) | |
| { | |
| this.playerData.cog7_automatonRepairing = true; | |
| } | |
| if (this.playerData.cog7_automatonRepairingComplete) | |
| { | |
| this.playerData.cog7_automaton_defeated = false; | |
| this.playerData.cog7_automatonRepairing = false; | |
| this.playerData.cog7_automatonRepairingComplete = false; | |
| } | |
| if (!this.playerData.cityMerchantCanLeaveForBridge && this.playerData.enclaveLevel > 2 && this.playerData.hasDoubleJump && this.playerData.MetCityMerchantEnclave) | |
| { | |
| this.playerData.cityMerchantCanLeaveForBridge = true; | |
| } | |
| if (this.playerData.MetCityMerchantEnclave) | |
| { | |
| this.playerData.cityMerchantInLibrary03 = true; | |
| } | |
| if (this.playerData.cityMerchantInGrandForumSeen) | |
| { | |
| this.playerData.cityMerchantInGrandForumLeft = true; | |
| } | |
| if (this.playerData.cityMerchantInLibrary03Seen) | |
| { | |
| this.playerData.cityMerchantInLibrary03Left = true; | |
| } | |
| if (this.playerData.cityMerchantRecentlySeenInEnclave && currentMapZoneEnum != MapZone.LIBRARY && currentMapZoneEnum != MapZone.CITY_OF_SONG && currentMapZoneEnum != MapZone.HANG) | |
| { | |
| this.playerData.cityMerchantRecentlySeenInEnclave = false; | |
| } | |
| if (this.playerData.ArchitectWillLeave && this.sceneName != "Under_17" && !this.playerData.ArchitectLeft) | |
| { | |
| this.playerData.ArchitectLeft = true; | |
| } | |
| if (!this.playerData.trobbioCleanedUp && this.playerData.defeatedTrobbio && currentMapZoneEnum != MapZone.LIBRARY && currentMapZoneEnum != MapZone.CITY_OF_SONG && currentMapZoneEnum != MapZone.UNDERSTORE) | |
| { | |
| this.playerData.trobbioCleanedUp = true; | |
| } | |
| if (this.playerData.visitedCradle && currentMapZoneEnum != MapZone.CITY_OF_SONG && currentMapZoneEnum != MapZone.MEMORY && currentMapZoneEnum != MapZone.CRADLE) | |
| { | |
| this.playerData.laceCorpseAddedEffects = true; | |
| } | |
| if (QuestManager.GetQuest("Broodmother Hunt").IsCompleted && !this.playerData.tinyBroodMotherAppeared && currentMapZoneEnum != MapZone.THE_SLAB) | |
| { | |
| this.playerData.tinyBroodMotherAppeared = true; | |
| } | |
| if (!this.playerData.BlueScientistDead && currentMapZoneEnum != MapZone.CRAWLSPACE && QuestManager.GetQuest("Extractor Blue").IsCompleted && QuestManager.GetQuest("Extractor Blue Worms").IsCompleted) | |
| { | |
| this.playerData.BlueScientistDead = true; | |
| } | |
| if (!this.playerData.BlueScientistSceneryPustulesGrown && currentMapZoneEnum != MapZone.CRAWLSPACE && QuestManager.GetQuest("Extractor Blue").IsCompleted) | |
| { | |
| this.playerData.BlueScientistSceneryPustulesGrown = true; | |
| } | |
| if (this.playerData.UnlockedDustCage) | |
| { | |
| if (this.playerData.GreenPrinceLocation == GreenPrinceLocations.DustCage && this.playerData.song_04_battleCompleted) | |
| { | |
| this.playerData.GreenPrinceLocation = GreenPrinceLocations.Song04; | |
| } | |
| else if (this.playerData.GreenPrinceLocation < GreenPrinceLocations.CogDancers && this.playerData.defeatedCogworkDancers && this.playerData.bellShrineEnclave && (this.playerData.GreenPrinceSeenSong04 || this.playerData.blackThreadWorld)) | |
| { | |
| this.playerData.GreenPrinceLocation = GreenPrinceLocations.CogDancers; | |
| } | |
| } | |
| if (!this.playerData.ShakraFinalQuestAppear && sceneNameString != "Belltown") | |
| { | |
| ShopItemList mapperStock = Gameplay.MapperStock; | |
| bool flag = false; | |
| foreach (ShopItem shopItem in mapperStock.ShopItems) | |
| { | |
| if ((shopItem.GetTypeFlags() & ShopItem.TypeFlags.Map) != ShopItem.TypeFlags.None && !shopItem.IsPurchased) | |
| { | |
| flag = true; | |
| break; | |
| } | |
| } | |
| int num3 = 0; | |
| if (this.playerData.HasMelodyArchitect) | |
| { | |
| num3++; | |
| } | |
| if (this.playerData.HasMelodyConductor) | |
| { | |
| num3++; | |
| } | |
| if (this.playerData.HasMelodyLibrarian) | |
| { | |
| num3++; | |
| } | |
| bool flag2 = false; | |
| if (num3 >= 2) | |
| { | |
| flag2 = true; | |
| } | |
| if (!flag && (this.playerData.DefeatedSwampShaman || flag2)) | |
| { | |
| this.playerData.ShakraFinalQuestAppear = true; | |
| this.playerData.MapperLeaveAll(); | |
| } | |
| } | |
| if (!this.playerData.swampMuckmanTallInvades && this.playerData.DefeatedSwampShaman && currentMapZoneEnum != MapZone.SWAMP && currentMapZoneEnum != MapZone.AQUEDUCT) | |
| { | |
| this.playerData.swampMuckmanTallInvades = true; | |
| } | |
| if (this.playerData.blackThreadWorld && this.playerData.seenMapperAct3 && currentMapZoneEnum != MapZone.BELLTOWN) | |
| { | |
| this.playerData.mapperLocationAct3 = Random.Range(1, 6); | |
| if (this.playerData.mapperLocationAct3 == 4 || this.playerData.mapperLocationAct3 == 5) | |
| { | |
| this.playerData.mapperLocationAct3 = 2; | |
| } | |
| if (Random.Range(1, 100) <= 50) | |
| { | |
| this.playerData.mapperIsFightingAct3 = true; | |
| } | |
| else | |
| { | |
| this.playerData.mapperIsFightingAct3 = false; | |
| } | |
| this.playerData.mapperFightGroup = Random.Range(1, 3); | |
| } | |
| if (!this.playerData.thievesReturnedToShadow28 && this.playerData.SavedFlea_Shadow_28) | |
| { | |
| this.playerData.thievesReturnedToShadow28 = true; | |
| } | |
| if (!this.playerData.FleaGamesCanStart && this.playerData.blackThreadWorld && this.playerData.CaravanTroupeLocation == CaravanTroupeLocations.Aqueduct && Gameplay.FleaCharmTool.IsUnlocked && currentMapZoneEnum != MapZone.AQUEDUCT && this.playerData.respawnScene != "Aqueduct_05") | |
| { | |
| this.playerData.FleaGamesCanStart = true; | |
| } | |
| if (this.playerData.SethNpcLocation == SethNpcLocations.Absent && this.playerData.HasWhiteFlower) | |
| { | |
| this.playerData.SethNpcLocation = SethNpcLocations.Greymoor; | |
| } | |
| if (!this.playerData.SethJoinedFleatopia && this.playerData.FleaGamesEnded && (this.playerData.SethNpcLocation == SethNpcLocations.Fleatopia || (this.playerData.MetSethNPC & this.playerData.HasWhiteFlower)) && sceneNameString != "Aqueduct_05") | |
| { | |
| this.playerData.SethNpcLocation = SethNpcLocations.Fleatopia; | |
| this.playerData.SethJoinedFleatopia = true; | |
| } | |
| if (this.playerData.gillyQueueMovingOn && this.playerData.blackThreadWorld) | |
| { | |
| this.playerData.gillyLocationAct3++; | |
| this.playerData.gillyQueueMovingOn = false; | |
| } | |
| if (this.playerData.gillyLocationAct3 > 0 && this.playerData.Collectables.GetData("Hunter Heart").Amount > 0 && currentMapZoneEnum != MapZone.HUNTERS_NEST && currentMapZoneEnum != MapZone.WILDS) | |
| { | |
| this.playerData.gillyLocationAct3 = 3; | |
| } | |
| if (this.GetCurrentMapZone() != this.lastTimePassesMapZone) | |
| { | |
| this.TimePassesElsewhere(); | |
| } | |
| this.lastTimePassesMapZone = this.GetCurrentMapZone(); | |
| this.timeSinceLastTimePasses = 0f; | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment