package model; import java.util.ArrayList; import java.util.List; public class Hitbox { private String shape = null;// shape - Форма хитбокса. Понадобится при написании сохранения. Один из параметров в xml-file. private List listPoints = null;//для прямоугольника - 4 точки. Для круга - надо посмотреть. public Hitbox(String shape,List listPoints){ this.shape = new String(shape); this.listPoints = new ArrayList(listPoints) ; } public Hitbox(String informationHitbox){ if(informationHitbox!= null) { listPoints = new ArrayList(); String[] informations = informationHitbox.split(" "); //в 0-м индексе всегда идет название фигуры.Так сделан наш xml. shape = new String(informations[0]); //заполняем лист точками. Пока что делаю тупо и топорно. Хардкод. Потом можно переделать. if(shape.equals("Rectangle")) { parseStringToRectangleHitbox(informations); }else if(shape.equals("Circle")) { parseStringToCircleHitbox(informations); } } } private void parseStringToRectangleHitbox(String[] informations) { //составляем точки по которым строится прямоугольник, и запихиваем их в лист с точками for(int i = 1;i getListPoints() { return listPoints; } public void Print() { System.out.println(); System.out.println("|||Hitbox:"); if(shape!=null&&listPoints!=null) { System.out.println("shape: " + shape); for(Point point: listPoints) { System.out.print("("+point.x+";"+point.y+") "); } System.out.println(); }else { System.out.println("null"); } } //дописать функцию возвращения listPonts и shape(форма), если будет нужно. // так же при написании функции возвращения нужных координат, надо их сделать целочисленными. }