лаб-8
This commit is contained in:
parent
8aeba4bf1e
commit
267d861a60
@ -3,6 +3,7 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
using System.Windows.Forms.Design.Behavior;
|
||||||
|
|
||||||
namespace AircraftCarrier
|
namespace AircraftCarrier
|
||||||
{
|
{
|
||||||
@ -14,6 +15,7 @@ namespace AircraftCarrier
|
|||||||
_aircraftcarrier = aircraftcarrier;
|
_aircraftcarrier = aircraftcarrier;
|
||||||
}
|
}
|
||||||
public float Step => _aircraftcarrier?.AircraftCarrier?.Step ?? 0;
|
public float Step => _aircraftcarrier?.AircraftCarrier?.Step ?? 0;
|
||||||
|
public DrawningAircraftCarrier GetAircraftCarrier => _aircraftcarrier;
|
||||||
public (float Left, float Right, float Top, float Bottom) GetCurrentPosition()
|
public (float Left, float Right, float Top, float Bottom) GetCurrentPosition()
|
||||||
{
|
{
|
||||||
return _aircraftcarrier?.GetCurrentPosition() ?? default;
|
return _aircraftcarrier?.GetCurrentPosition() ?? default;
|
||||||
@ -32,5 +34,61 @@ namespace AircraftCarrier
|
|||||||
}
|
}
|
||||||
public string GetInfo() => _aircraftcarrier?.GetDataForSave();
|
public string GetInfo() => _aircraftcarrier?.GetDataForSave();
|
||||||
public static IDrawningObject Create(string data) => new DrawningObjectAircraftCarrier(data.CreateDrawningAircraftCarrier());
|
public static IDrawningObject Create(string data) => new DrawningObjectAircraftCarrier(data.CreateDrawningAircraftCarrier());
|
||||||
|
public bool Equals(IDrawningObject? other)
|
||||||
|
{
|
||||||
|
if (other == null)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
var otherAircraftCarrier = other as DrawningObjectAircraftCarrier;
|
||||||
|
if (otherAircraftCarrier == null)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
var aircraftcarrier = _aircraftcarrier.AircraftCarrier;
|
||||||
|
var otherAircraftCarrierAircraftCarrier = otherAircraftCarrier._aircraftcarrier.AircraftCarrier;
|
||||||
|
|
||||||
|
if (aircraftcarrier.GetType().Name != otherAircraftCarrierAircraftCarrier.GetType().Name)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (aircraftcarrier.Speed != otherAircraftCarrierAircraftCarrier.Speed)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (aircraftcarrier.Weight != otherAircraftCarrierAircraftCarrier.Weight)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (aircraftcarrier.BodyColor != otherAircraftCarrierAircraftCarrier.BodyColor)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
// TODO доделать проверки в случае продвинутого объекта
|
||||||
|
if (aircraftcarrier is EntityModernAircraftCarrier Modernaircraftcarrier && otherAircraftCarrierAircraftCarrier is EntityModernAircraftCarrier otherModernaircraftcarrier)
|
||||||
|
{
|
||||||
|
if (Modernaircraftcarrier.Route != otherModernaircraftcarrier.Route)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (Modernaircraftcarrier.FlightDeck != otherModernaircraftcarrier.FlightDeck)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (Modernaircraftcarrier.HangarDeck != otherModernaircraftcarrier.HangarDeck)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (Modernaircraftcarrier.DopColor != otherModernaircraftcarrier.DopColor)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (aircraftcarrier is EntityModernAircraftCarrier || aircraftcarrier is EntityModernAircraftCarrier)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
Loading…
x
Reference in New Issue
Block a user