public override void OnDoubleClick(Mobile from) { if (m_Boat != null && m_Boat.Contains(from)) { m_Boat.BeginRename(from); } else if (m_Boat != null) { m_Boat.BeginRename(from); } }
public override void OnDoubleClick(Mobile from) { if (m_Boat?.Contains(from) == true) { m_Boat.BeginRename(from); } else { m_Boat?.BeginDryDock(from); } }
public override void OnResponse(NetState sender, RelayInfo info) { if (m_Boat == null || m_From == null) { return; } if (!m_Boat.Contains(m_From)) { if (BaseBoat.isCarpet(m_Boat)) { m_From.SendMessage("You have to be on your carpet to do that!"); } else { m_From.SendMessage("You have to be on the boat to do that!"); } m_From.CloseGump(typeof(TillerManGump)); return; } switch (info.ButtonID) { case 100: m_Boat.StopMove(true); break; case 99: m_Boat.BeginRename(m_From); break; case 1: // N { if (m_Boat.Facing == Direction.North) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.North, true); } else { m_Boat.OneMove(Direction.North); } } else if (m_Boat.Facing == Direction.South) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.South, true); } else { m_Boat.OneMove(Direction.South); } } else if (m_Boat.Facing == Direction.East) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.West, true); } else { m_Boat.OneMove(Direction.West); } } else if (m_Boat.Facing == Direction.West) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.East, true); } else { m_Boat.OneMove(Direction.East); } } break; } case 2: // NE { if (m_Boat.Facing == Direction.North) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.Right, true); } else { m_Boat.OneMove(Direction.Right); } } else if (m_Boat.Facing == Direction.South) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.Left, true); } else { m_Boat.OneMove(Direction.Left); } } else if (m_Boat.Facing == Direction.East) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.Up, true); } else { m_Boat.OneMove(Direction.Up); } } else if (m_Boat.Facing == Direction.West) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.Down, true); } else { m_Boat.OneMove(Direction.Down); } } break; } case 3: // E { if (m_Boat.Facing == Direction.North) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.East, true); } else { m_Boat.OneMove(Direction.East); } } else if (m_Boat.Facing == Direction.South) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.West, true); } else { m_Boat.OneMove(Direction.West); } } else if (m_Boat.Facing == Direction.East) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.North, true); } else { m_Boat.OneMove(Direction.North); } } else if (m_Boat.Facing == Direction.West) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.South, true); } else { m_Boat.OneMove(Direction.South); } } break; } case 4: // SE { if (m_Boat.Facing == Direction.North) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.Down, true); } else { m_Boat.OneMove(Direction.Down); } } else if (m_Boat.Facing == Direction.South) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.Up, true); } else { m_Boat.OneMove(Direction.Up); } } else if (m_Boat.Facing == Direction.East) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.Right, true); } else { m_Boat.OneMove(Direction.Right); } } else if (m_Boat.Facing == Direction.West) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.Left, true); } else { m_Boat.OneMove(Direction.Left); } } break; } case 5: // S { if (m_Boat.Facing == Direction.North) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.South, true); } else { m_Boat.OneMove(Direction.South); } } else if (m_Boat.Facing == Direction.South) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.North, true); } else { m_Boat.OneMove(Direction.North); } } else if (m_Boat.Facing == Direction.East) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.East, true); } else { m_Boat.OneMove(Direction.East); } } else if (m_Boat.Facing == Direction.West) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.West, true); } else { m_Boat.OneMove(Direction.West); } } break; } case 6: // SW { if (m_Boat.Facing == Direction.North) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.Left, true); } else { m_Boat.OneMove(Direction.Left); } } else if (m_Boat.Facing == Direction.South) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.Right, true); } else { m_Boat.OneMove(Direction.Right); } } else if (m_Boat.Facing == Direction.East) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.Down, true); } else { m_Boat.OneMove(Direction.Down); } } else if (m_Boat.Facing == Direction.West) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.Up, true); } else { m_Boat.OneMove(Direction.Up); } } break; } case 7: // W { if (m_Boat.Facing == Direction.North) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.West, true); } else { m_Boat.OneMove(Direction.West); } } else if (m_Boat.Facing == Direction.South) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.East, true); } else { m_Boat.OneMove(Direction.East); } } else if (m_Boat.Facing == Direction.East) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.South, true); } else { m_Boat.OneMove(Direction.South); } } else if (m_Boat.Facing == Direction.West) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.North, true); } else { m_Boat.OneMove(Direction.North); } } break; } case 8: // NW { if (m_Boat.Facing == Direction.North) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.Up, true); } else { m_Boat.OneMove(Direction.Up); } } else if (m_Boat.Facing == Direction.South) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.Down, true); } else { m_Boat.OneMove(Direction.Down); } } else if (m_Boat.Facing == Direction.East) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.Left, true); } else { m_Boat.OneMove(Direction.Left); } } else if (m_Boat.Facing == Direction.West) { if (!ToggleOneStep) { m_Boat.StartMove(Direction.Right, true); } else { m_Boat.OneMove(Direction.Right); } } break; } case 9: // TOGGLE ONE STEP { if (!ToggleOneStep) { ToggleOneStep = true; } else { ToggleOneStep = false; } break; } case 10: // RAISE / DROP ANCHOR { if (m_Boat.Anchored) { m_Boat.RaiseAnchor(true); } else { m_Boat.LowerAnchor(true); } break; } case 11: // TURN LEFT/RIGHT/AROUND { m_Boat.StartTurn(-2, true); // LEFT break; } case 12: { m_Boat.StartTurn(2, true); // RIGHT break; } case 13: { m_Boat.StartTurn(-4, true); // AROUND break; } } m_From.CloseGump(typeof(TillerManGump)); m_From.SendGump(new TillerManGump(m_From, m_Boat, ToggleOneStep)); }