protected override bool BeginMove(Direction dir, SpeedCode speed) { if (speed == SpeedCode.Slow || speed == SpeedCode.Medium || speed == SpeedCode.Fast) { switch (Status) { case GalleonStatus.Half: { if (speed == SpeedCode.Fast) { speed = SpeedCode.Medium; } break; } case GalleonStatus.Low: { if (speed == SpeedCode.Fast || speed == SpeedCode.Medium) { speed = SpeedCode.Slow; } break; } } } if (base.BeginMove(dir, speed)) { return(true); } return(false); }
protected override bool BeginMove(Direction dir, SpeedCode speed) { if (speed == SpeedCode.Fast) { speed = SpeedCode.Slow; } return(base.BeginMove(dir, speed)); }
protected BaseSmoothMulti(int itemID) : base(itemID) { m_Facing = Direction.North; m_Moving = Direction.North; m_Speed = SpeedCode.Stop; m_ContainedObjects = new DynamicComponentList(); m_VirtualMount = new SmoothMultiMountItem(this); m_Instances.Add(this); }
protected BaseSmoothMulti(int itemID) : base(itemID) { _facing = Direction.North; _moving = Direction.North; _speed = SpeedCode.Stop; _containedObjects = new DynamicComponentList(); _virtualMount = new SmoothMultiMountItem(this); _instances.Add(this); }
protected override bool BeginMove(Direction dir, SpeedCode speed) { Order = BoatOrder.Move; if (base.BeginMove(dir, speed)) { return(true); } return(false); }
protected override bool BeginMove(Direction dir, SpeedCode speed) { if (Anchored) { return(false); } if (base.BeginMove(dir, speed)) { return(true); } return(false); }
protected override bool Move(Direction dir, SpeedCode speed) { if (base.Move(dir, speed)) { return(true); } else { if (TillerMan != null) { TillerMan.TillerManSay(501424); //Ar, we've stopped sir. } return(false); } }
protected virtual bool EndMove() { if (m_Speed == SpeedCode.Stop) { return(false); } if (m_MoveTimer != null) { m_MoveTimer.Stop(); } m_Speed = SpeedCode.Stop; return(true); }
protected virtual bool EndMove() { if (_speed == SpeedCode.Stop) { return(false); } if (_currentMoveTimer != null) { _currentMoveTimer.Stop(); } _speed = SpeedCode.Stop; return(true); }
protected virtual bool BeginCourse(Direction dir, SpeedCode speed) { Order = BoatOrder.Course; if (speed == SpeedCode.One) { return(true); } if (base.BeginMove(dir, speed)) { return(true); } return(false); }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); m_Facing = (Direction)reader.ReadByte(); m_VirtualMount = reader.ReadItem() as SmoothMultiMountItem; m_Moving = m_Facing; m_Speed = SpeedCode.Stop; m_ContainedObjects = new DynamicComponentList(reader); if (m_VirtualMount == null) { Delete(); } }
protected virtual bool BeginMove(Direction dir, SpeedCode speed) { if (speed == SpeedCode.Stop) { return(false); } if (_currentMoveTimer != null) { _currentMoveTimer.Stop(); } _moving = dir; _speed = speed; _currentMoveTimer = new MoveTimer(this, timespanDictionary[speed], speed); _currentMoveTimer.Start(); return(true); }
protected virtual bool BeginMove(Direction dir, SpeedCode speed) { if (speed == SpeedCode.Stop) { return(false); } if (m_MoveTimer != null) { m_MoveTimer.Stop(); } m_Moving = dir; m_Speed = speed; m_MoveTimer = new MoveTimer(this, m_TimespanDictionary[speed], speed); m_MoveTimer.Start(); return(true); }
protected bool BeginCourse(Direction dir, SpeedCode speed) { if (Anchored) { return(false); } Order = BoatOrder.Course; if (speed == SpeedCode.One) { return(true); } if (BeginMove(dir, speed)) { return(true); } return(false); }
private bool Move(Direction dir, SpeedCode speed) { Map map = Map; if (map == null || Deleted) { return(false); } int rx = 0, ry = 0; Movement.Movement.Offset(dir, ref rx, ref ry); Point3D newLocation = new Point3D(X + rx, Y + ry, Z); if (!CanFit(newLocation, Map, ItemID)) { return(false); } SetLocationOnSmooth(newLocation); return(true); }
public MoveTimer(BaseSmoothMulti multi, TimeSpan interval, SpeedCode speed) : base(TimeSpan.Zero, interval, speed == SpeedCode.One ? 1 : 0) { m_Multi = multi; Priority = TimerPriority.TwentyFiveMS; }
protected virtual bool Move(Direction dir, SpeedCode speed) { Map map = Map; if (map == null || Deleted) { return(false); } int rx = 0, ry = 0; Movement.Movement.Offset(dir, ref rx, ref ry); Point3D newLocation = new Point3D(X + rx, Y + ry, Z); if (!CanFit(newLocation, Map, ItemID)) { return(false); } int xOffset = rx; int yOffset = ry; int newX = X + xOffset; int newY = Y + yOffset; Rectangle2D[] wrap = GetWrapFor(map); for (int i = 0; i < wrap.Length; ++i) { Rectangle2D rect = wrap[i]; if (rect.Contains(new Point2D(X, Y)) && !rect.Contains(new Point2D(newX, newY))) { if (newX < rect.X) { newX = rect.X + rect.Width - 1; } else if (newX >= rect.X + rect.Width) { newX = rect.X; } if (newY < rect.Y) { newY = rect.Y + rect.Height - 1; } else if (newY >= rect.Y + rect.Height) { newY = rect.Y; } for (int j = 1; j <= (int)speed; ++j) { if (!CanFit(new Point3D(newX + (j * rx), newY + (j * ry), Z), Map, ItemID)) { return(false); } } xOffset = newX - X; yOffset = newY - Y; } } Point3D newWrapLocation = new Point3D(X + xOffset, Y + yOffset, Z); GetMovingEntities(); if (newLocation != newWrapLocation) { Location = newWrapLocation; } else { SetLocationOnSmooth(newLocation); } return(true); }
public CourseMoveTimer(NewBaseBoat boat, TimeSpan interval, SpeedCode speed, bool single) : base(interval, interval, single ? 1 : 0) { _boat = boat; Priority = TimerPriority.TwentyFiveMS; }
protected override bool Move(Direction dir, SpeedCode speed) { return(base.Move(dir, speed)); }
/// <summary> /// Manejador del evento 'SelectedIndexChanged' del combobox usado para elegir la /// velocidad de comunicacion. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void cbSpeed_SelectedIndexChanged(object sender, EventArgs e) { var pn = "B" + (string)cbSpeed.SelectedItem; useSpeed = (SpeedCode)Enum.Parse(typeof(SpeedCode), pn); }
/// <summary> /// Constructor. /// </summary> /// <param name="bag">El tipo de target al que nos estamos conectando</param> public TargetConfigure(TargetBag bag) { InitializeComponent(); this.originalBag = bag; portList = new List <PortDescription>(); tbIP.Top = tbPort.Top = cbSpeed.Top; btPing.Top = cbSpeed.Top - 1; lbPort.Top = cbSpeed.Top + 3; try { using (ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\\CIMV2", "SELECT * FROM Win32_PnPEntity")) { foreach (ManagementObject queryObj in searcher.Get()) { object obj = queryObj["Name"]; if (obj != null) { var nom = obj.ToString(); var index = nom.ToLower().IndexOf("(com"); if (index >= 0) { index++; for (int i = index; i < nom.Length; i++) { if (nom[i] == ')') { string portName = nom.Substring(index, i - index); portList.Add(new PortDescription { Name = portName, Description = nom }); break; } } } } } } } catch (ManagementException e) { MessageBox.Show($"Error examinando el equipo: '{e.Message}'"); } portList.Add(new PortDescription { Name = "Red", Description = "Red Ethernet por TCP/IP" }); portList.Sort((a, b) => a.Name.ToUpper().CompareTo(b.Name.ToUpper())); cbPortName.Items.Clear(); foreach (var kvp in portList) { cbPortName.Items.Add(kvp); bool doSelect = originalBag.UseNetwork ? kvp.Name.ToLower() == "red" : kvp.Name.ToLower() == originalBag.PortName.ToLower(); if (doSelect) { cbPortName.SelectedIndex = cbPortName.Items.Count - 1; } } this.useSpeed = bag.Speed; this.Text = " " + bag.Name; int sel = -1; string actual = useSpeed.ToString(); foreach (var vn in Enum.GetNames(typeof(SpeedCode))) { if (vn == actual) { sel = cbSpeed.Items.Count; } cbSpeed.Items.Add(vn.Substring(1)); } if (sel >= 0) { cbSpeed.SelectedIndex = sel; } tbIP.Text = bag.IPAddress; }
public CourseMoveTimer(BaseGalleon galleon, TimeSpan interval, SpeedCode speed, bool single) : base(interval, interval, single ? 1 : 0) { _galleon = galleon; Priority = TimerPriority.TwentyFiveMS; }