Исправил класс отрисовки ДопПер
This commit is contained in:
parent
1578c07887
commit
1786de4b95
@ -20,7 +20,7 @@ public class DrawingSeaplane {
|
|||||||
pictureWidth = null;
|
pictureWidth = null;
|
||||||
_startPosX = null;
|
_startPosX = null;
|
||||||
_startPosY = null;
|
_startPosY = null;
|
||||||
_drawingSeaplanePortholes = new DrawingSeaplanePortholes(entitySeaplane);
|
_drawingSeaplanePortholes = new DrawingSeaplanePortholes();
|
||||||
Random random = new Random();
|
Random random = new Random();
|
||||||
int paddlesCount = random.nextInt(1,4);
|
int paddlesCount = random.nextInt(1,4);
|
||||||
_drawingSeaplanePortholes.setPortholesCount(paddlesCount * 10);
|
_drawingSeaplanePortholes.setPortholesCount(paddlesCount * 10);
|
||||||
|
@ -2,34 +2,31 @@ import java.awt.*;
|
|||||||
|
|
||||||
public class DrawingSeaplanePortholes {
|
public class DrawingSeaplanePortholes {
|
||||||
private PortholesCount _portholesCount;
|
private PortholesCount _portholesCount;
|
||||||
private final EntitySeaplane _entitySeaplane;
|
|
||||||
public void setPortholesCount(int portholesCount) {
|
public PortholesCount getPortholesCount() {
|
||||||
for (PortholesCount value : PortholesCount.values()) {
|
return _portholesCount;
|
||||||
if (value.enumNumber == portholesCount) {
|
|
||||||
_portholesCount = value;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
public DrawingSeaplanePortholes(EntitySeaplane entitySeaplane) {
|
public void setPortholesCount(int amount){
|
||||||
_entitySeaplane = entitySeaplane;
|
if(PortholesCount.contains(amount)) {
|
||||||
|
_portholesCount = PortholesCount.getNumber(amount);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void drawSeaplanePortholes(Graphics g, Color color, float startPosX, float startPosY) {
|
public void drawSeaplanePortholes(Graphics g, Color color, float startPosX, float startPosY) {
|
||||||
Graphics2D g2d = (Graphics2D) g;
|
Graphics2D g2d = (Graphics2D) g;
|
||||||
g2d.setStroke(new BasicStroke(1));
|
g2d.setStroke(new BasicStroke(1));
|
||||||
int distanceBetweenPortholes = (_portholesCount.enumNumber == 20) ? 7 : 20 - _portholesCount.enumNumber / 2;
|
int distanceBetweenPortholes = (getPortholesCount().enumNumber == 20) ? 7 : 20 - getPortholesCount().enumNumber / 2;
|
||||||
|
|
||||||
for (int i = 0; i < _portholesCount.enumNumber; i++) {
|
for (int i = 0; i < getPortholesCount().enumNumber; i++) {
|
||||||
g2d.setColor(color);
|
g2d.setColor(color);
|
||||||
int posX = (int)(startPosX + i * distanceBetweenPortholes);
|
int posX = (int)(startPosX + i * distanceBetweenPortholes);
|
||||||
drawPortholeBundle(g2d, posX, (int)startPosY);
|
drawPortholeBundle(g2d, posX, (int)startPosY + 5);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void drawPortholeBundle(Graphics2D g2d, int posX, int posY) {
|
private void drawPortholeBundle(Graphics2D g2d, int posX, int posY) {
|
||||||
g2d.fillOval(posX, posY, 5, 5); // Рисуем иллюминатор
|
g2d.fillOval(posX + 10, posY + 6, 5, 5); // Рисуем иллюминатор
|
||||||
g2d.setColor(Color.BLACK);
|
g2d.setColor(Color.BLACK);
|
||||||
g2d.drawOval(posX, posY, 5, 5); // Рисуем границу иллюминатора
|
g2d.drawOval(posX + 10, posY + 6, 5, 5); // Рисуем границу иллюминатора
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -5,4 +5,23 @@ public enum PortholesCount {
|
|||||||
|
|
||||||
public final int enumNumber;
|
public final int enumNumber;
|
||||||
PortholesCount(int i) {this.enumNumber = i;}
|
PortholesCount(int i) {this.enumNumber = i;}
|
||||||
|
|
||||||
|
public static PortholesCount getNumber(int amount){
|
||||||
|
PortholesCount [] num = PortholesCount.values();
|
||||||
|
for (PortholesCount portholesCount : num) {
|
||||||
|
if (amount == portholesCount.enumNumber) {
|
||||||
|
return portholesCount;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
public static boolean contains(int amount){
|
||||||
|
PortholesCount [] num = PortholesCount.values();
|
||||||
|
for (PortholesCount portholesCount : num) {
|
||||||
|
if (amount == portholesCount.enumNumber) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user