/// <summary> /// Elküldi a hangyát a megadott másik hangyához /// </summary> /// <param name="Item">Ide fog menni</param> public void Goto(AntBase Ant) { int Direction = this.DirectionTo(Ant); UnderlyingAnt.TurnToDirection(this.DirectionTo(Ant)); UnderlyingAnt.GoAhead(Math.Min(Settings.WalkingUnit, this.DistanceFrom(Ant))); }
/// <summary> /// Kiszámolja a másik hangya szögét ehhez a hangyához képest. /// </summary> /// <param name="Ant">A másik hangya</param> /// <returns>A két hangya hajlásszöge</returns> public virtual int DirectionTo(AntBase Ant) { return Coordinate.GetDegreesBetween(this.UnderlyingAnt, Ant.UnderlyingAnt); }
/// <summary> /// Kiszámolja a távolságot e hangya és egy másik között /// </summary> /// <param name="Ant">A másik hangya</param> /// <returns>A két hangya közötti távolság</returns> public virtual int DistanceFrom(AntBase Ant) { return Coordinate.GetDistanceBetween(Ant.UnderlyingAnt, this.UnderlyingAnt); }
/// <summary> /// Beléptet egy hangyát a csapatba /// </summary> /// <param name="Ant">A hozzáadandó hangya</param> public void AddMember(AntBase Ant) { Ant.JoinSquad(this); }