extends "res://scripts/Investigations/InvestigationBase.gd" var descriptions = [ "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", ]; func _ready(): cluesToFind = 99; func InitClues(): cluesFound = ProgressAchievementsSingleton.GetMinigameClues(); for i in descriptions.size(): var clue = $Clues.get_child(i) as TextureButton; clue.connect("button_up", self, "onButtonPressed", [clue, descriptions[i]]) clue.connect("mouse_entered", self, "onButtonHoverOn", [clue]); clue.connect("mouse_exited", self, "onButtonHoverOff", [clue]); PrepareNewLogic(); func TimerOut(): EndInvestigationLoop("END"); func onButtonPressed(control, code): if CheckHover(): onButtonHoverOff(control) var number = ProgressAchievementsSingleton.AddMinigameClue(code); # if number != - 1: # if number == 25: # Steam.set_achievement("FireMinigame") # else : # var res = Steam.user_stats.indicate_achievement_progress("FireMinigame", number, 25) var res = false; EndInvestigationLoop(code); func PrepareNewLogic(): ProgressAchievementsSingleton.SetMinigameVariables(); var window = get_node("Clues/27"); window.disconnect("button_up", self, "onButtonPressed"); window.connect("button_up", self, "customWindow", [window, "27"]); if ProgressAchievementsSingleton.IsWindowPressed(): var hammer = get_node("Clues/7"); hammer.disconnect("button_up", self, "onButtonPressed"); hammer.connect("button_up", self, "onButtonPressed", [hammer, "yellow_hammer"]); var sledgehammer = get_node("Clues/21"); sledgehammer.disconnect("button_up", self, "onButtonPressed"); sledgehammer.connect("button_up", self, "onButtonPressed", [sledgehammer, "green_sledgehammer"]); var wrench = get_node("Clues/11"); wrench.disconnect("button_up", self, "onButtonPressed"); wrench.connect("button_up", self, "onButtonPressed", [wrench, "orange_wrench"]); if not ProgressAchievementsSingleton.IsCasketPressed(): var casket = get_node("Clues/8"); casket.disconnect("button_up", self, "onButtonPressed"); casket.connect("button_up", self, "customCasket", [casket, "8"]); else : var drawer = get_node("Clues/24"); drawer.disconnect("button_up", self, "onButtonPressed"); drawer.connect("button_up", self, "customDrawer", [drawer]); if ProgressAchievementsSingleton.IsDrawerPressed(): var barrel = get_node("Clues/18") barrel.disconnect("button_up", self, "onButtonPressed"); barrel.connect("button_up", self, "customBarrel", [barrel]); if ProgressAchievementsSingleton.IsBarrelPressed() and not ProgressAchievementsSingleton.IsClosedTrapdoorPressed(): get_node("Clues/18").visible = false; var trapdoor = get_node("Clues/28"); trapdoor.visible = true; trapdoor.connect("mouse_entered", self, "onButtonHoverOn", [trapdoor]); trapdoor.connect("mouse_exited", self, "onButtonHoverOff", [trapdoor]); trapdoor.connect("button_up", self, "customClosedTrapdoor", [trapdoor]); if ProgressAchievementsSingleton.IsClosedTrapdoorPressed(): get_node("Clues/18").visible = false; var trapdoor = get_node("Clues/29"); trapdoor.visible = true; trapdoor.connect("mouse_entered", self, "onButtonHoverOn", [trapdoor]); trapdoor.connect("mouse_exited", self, "onButtonHoverOff", [trapdoor]); trapdoor.connect("button_up", self, "onButtonPressed", [trapdoor, "openedTrapdoor"]); func customWindow(control, code): if not CheckHover(): return ; ProgressAchievementsSingleton.WindowPressed(); onButtonPressed(control, code); func customCasket(control, code): if not CheckHover(): return ; ProgressAchievementsSingleton.CasketPressed(); onButtonPressed(control, code); func customDrawer(control): if not CheckHover(): return ; ProgressAchievementsSingleton.DrawerPressed(); onButtonPressed(control, "drawer"); func customBarrel(control): if not CheckHover(): return ; ProgressAchievementsSingleton.BarrelPressed(); onButtonPressed(control, "barrel"); func customClosedTrapdoor(control): if not CheckHover(): return ; ProgressAchievementsSingleton.ClosedTrapdoorPressed(); onButtonPressed(control, "closedTrapdoor");