public PuzzleChestSolutionAndTime(DateTime when, PuzzleChestSolution solution) : base(solution) => When = when;
public PuzzleGump(Mobile from, PuzzleChest chest, PuzzleChestSolution solution, int check) : base(50, 50) { m_From = from; m_Chest = chest; m_Solution = solution; Draggable = false; AddBackground(25, 0, 500, 410, 0x53); AddImage(62, 20, 0x67); AddHtmlLocalized(80, 36, 110, 70, 1018309, true); // A Puzzle Lock /* Correctly choose the sequence of cylinders needed to open the latch. Each cylinder * may potentially be used more than once. Beware! A false attempt could be deadly! */ AddHtmlLocalized(214, 26, 270, 90, 1018310, true, true); AddLeftCylinderButton(62, 130, PuzzleChestCylinder.LightBlue, 10); AddLeftCylinderButton(62, 180, PuzzleChestCylinder.Blue, 11); AddLeftCylinderButton(62, 230, PuzzleChestCylinder.Green, 12); AddLeftCylinderButton(62, 280, PuzzleChestCylinder.Orange, 13); AddRightCylinderButton(451, 130, PuzzleChestCylinder.Purple, 14); AddRightCylinderButton(451, 180, PuzzleChestCylinder.Red, 15); AddRightCylinderButton(451, 230, PuzzleChestCylinder.DarkBlue, 16); AddRightCylinderButton(451, 280, PuzzleChestCylinder.Yellow, 17); var lockpicking = from.Skills.Lockpicking.Base; if (lockpicking >= 60.0) { AddHtmlLocalized(160, 125, 230, 24, 1018308); // Lockpicking hint: AddBackground(159, 150, 230, 95, 0x13EC); if (lockpicking >= 80.0) { AddHtmlLocalized(165, 157, 200, 40, 1018312); // In the first slot: AddCylinder(350, 165, chest.Solution.First); AddHtmlLocalized(165, 197, 200, 40, 1018313); // Used in unknown slot: AddCylinder(350, 200, chest.FirstHint); if (lockpicking >= 90.0) { AddCylinder(350, 212, chest.SecondHint); } if (lockpicking >= 100.0) { AddCylinder(350, 224, chest.ThirdHint); } } else { AddHtmlLocalized(165, 157, 200, 40, 1018313); // Used in unknown slot: AddCylinder(350, 160, chest.FirstHint); if (lockpicking >= 70.0) { AddCylinder(350, 172, chest.SecondHint); } } } PuzzleChestSolution lastGuess = chest.GetLastGuess(from); if (lastGuess != null) { AddHtmlLocalized(127, 249, 170, 20, 1018311); // Thy previous guess: AddBackground(290, 247, 115, 25, 0x13EC); AddCylinder(281, 254, lastGuess.First); AddCylinder(303, 254, lastGuess.Second); AddCylinder(325, 254, lastGuess.Third); AddCylinder(347, 254, lastGuess.Fourth); AddCylinder(369, 254, lastGuess.Fifth); } AddPedestal(140, 270, solution.First, 0, check == 0); AddPedestal(195, 270, solution.Second, 1, check == 1); AddPedestal(250, 270, solution.Third, 2, check == 2); AddPedestal(305, 270, solution.Fourth, 3, check == 3); AddPedestal(360, 270, solution.Fifth, 4, check == 4); AddButton(258, 370, 0xFA5, 0xFA7, 1); }