public MongbatHideoutBossPuzzleChestSolutionAndTime GetLastGuess(Mobile m) { MongbatHideoutBossPuzzleChestSolutionAndTime pcst = null; m_Guesses.TryGetValue(m, out pcst); return(pcst); }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadEncodedInt(); m_Solution = new MongbatHideoutBossPuzzleChestSolution(reader); int length = reader.ReadEncodedInt(); for (int i = 0; i < length; i++) { MongbatHideoutBossPuzzleChestCylinder cylinder = (MongbatHideoutBossPuzzleChestCylinder)reader.ReadInt(); if (length == m_Hints.Length) { m_Hints[i] = cylinder; } } if (length != m_Hints.Length) { InitHints(); } int guesses = reader.ReadEncodedInt(); for (int i = 0; i < guesses; i++) { Mobile m = reader.ReadMobile(); MongbatHideoutBossPuzzleChestSolutionAndTime sol = new MongbatHideoutBossPuzzleChestSolutionAndTime(reader); m_Guesses[m] = sol; } }
public void SubmitSolution(Mobile m, MongbatHideoutBossPuzzleChestSolution solution) { int correctCylinders, correctColors; if (solution.Matches(this.Solution, out correctCylinders, out correctColors)) { LockPick(m); DisplayTo(m); } else { m_Guesses[m] = new MongbatHideoutBossPuzzleChestSolutionAndTime(DateTime.Now, solution); m.SendGump(new MongbatHideoutChestStatusGump(correctCylinders, correctColors)); DoDamage(m); } }