diff --git a/game/modules/tome/class/GameState.lua b/game/modules/tome/class/GameState.lua index 93e86468e33441030da20d060a123999c84d5e43..028f3ad8026ef56fd4d67d2c4a66d58d369f8563 100644 --- a/game/modules/tome/class/GameState.lua +++ b/game/modules/tome/class/GameState.lua @@ -2505,14 +2505,14 @@ function _M:infiniteDungeonChallenge(zone, lev, data, id_layout_name, id_grids_n self.id_challenge.count = self.id_challenge.count + 1 local challenges = { - { id = "exterminator", rarity = 1 }, - { id = "pacifist", rarity = 2 }, + -- { id = "exterminator", rarity = 1 }, + -- { id = "pacifist", rarity = 2 }, { id = "fast-exit", rarity = 2, min_lev = 8 }, - { id = "near-sighted", rarity = 3, min_lev = 4 }, - { id = "mirror-match", rarity = 4, min_lev = 5 }, - { id = "multiplicity", rarity = 6, min_lev = 10 }, - { id = "dream-horror", rarity = 8, min_lev = 15 }, - { id = "headhunter", rarity = 10, min_lev = 12 }, + -- { id = "near-sighted", rarity = 3, min_lev = 4 }, + -- { id = "mirror-match", rarity = 4, min_lev = 5 }, + -- { id = "multiplicity", rarity = 6, min_lev = 10 }, + -- { id = "dream-horror", rarity = 8, min_lev = 15 }, + -- { id = "headhunter", rarity = 10, min_lev = 12 }, } self:triggerHook{"InfiniteDungeon:getChallenges", challenges=challenges} @@ -2647,6 +2647,14 @@ function _M:infiniteDungeonChallengeFinish(zone, level) if self.turns_left >= 0 then who:setQuestStatus(self.id, self.COMPLETED) end end, on_act_base = function(self, who) + if game.level.turn_counter then + game.level.turn_counter = game.level.turn_counter - 10 + game.player.changed = true + if game.level.turn_counter < 0 then + game.level.turn_counter = nil + end + end + self.turns_left = self.turns_left - 1 if self.turns_left < 0 then who:setQuestStatus(self.id, self.FAILED) @@ -2654,6 +2662,9 @@ function _M:infiniteDungeonChallengeFinish(zone, level) end, }) self:locationRevealAround(level.default_down.x, level.default_down.y) + level.turn_counter = turns * 10 + level.max_turn_counter = turns * 10 + level.turn_counter_desc = "Find the exit! It is marked on your map." end elseif id_challenge == "dream-horror" then local m = zone:makeEntity(level, "actor", {name="dreaming horror", random_boss=true}, nil, true)