Добавлен класс отрисовки объекта и реализован интерфейс

This commit is contained in:
Nikita Potapov 2022-11-29 11:06:30 +04:00
parent db702d2459
commit 569e97e909
3 changed files with 52 additions and 1 deletions

View File

@ -202,4 +202,9 @@ public class DrawingBoat {
__startPosY = __pictureHeight - __boatHeight;
}
}
// Метод для получения текущих координат объекта
Position GetCurrentPosition() {
return new Position(__startPosX, __startPosY, __startPosX + __boatWidth, __startPosY + __boatHeight);
}
}

View File

@ -0,0 +1,46 @@
package src;
import java.awt.*;
public class DrawingObjectBoat implements IDrawingObject {
private DrawingBoat __drawingBoat = null;
public DrawingObjectBoat(DrawingBoat drawingBoat) {
__drawingBoat = drawingBoat;
}
@Override
public Position GetCurrentPosition() {
if (__drawingBoat == null)
return null;
return __drawingBoat.GetCurrentPosition();
}
@Override
public void MoveObject(EnumDirection enumDirection) {
if (__drawingBoat == null)
return;
__drawingBoat.MoveTransport(enumDirection);
}
@Override
public float Step() {
if (__drawingBoat == null)
return 0;
if (__drawingBoat.entityBoat == null)
return 0;
return __drawingBoat.entityBoat.Step();
}
@Override
public void SetObject(int x, int y, int width, int height) {
__drawingBoat.SetPosition(x, y, width, height);
}
@Override
public void DrawingObject(Graphics g) {
if (__drawingBoat == null)
return;
__drawingBoat.DrawTransport(g);
}
}

View File

@ -4,7 +4,7 @@ import java.awt.*;
public interface IDrawingObject {
float Step = 0;
float Step();
void SetObject(int x, int y, int width, int height);