Refactoring EditableCanvas in DrawboxEditable and other classes
This commit is contained in:
@ -3,34 +3,35 @@ package model;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class Hitbox {
|
||||
public abstract class Hitbox {
|
||||
String shape = null;// shape - Форма хитбокса. Понадобится при написании сохранения. Один из параметров в xml-file.
|
||||
Point referencePoint = new Point(0, 0); //Точка отсчета хитбокса, от нее рассчитывается высота+ширина/радиус(при круге) хитбокса.
|
||||
Entity owner;
|
||||
|
||||
public Hitbox(){
|
||||
}
|
||||
//Либо так передавать shape, либо создать setShape. Но по сути shape определяется при создании обьекта, и тогда set - предоставление не нужных возможностей.
|
||||
public Hitbox(String shape){
|
||||
this.shape = new String(shape);
|
||||
}
|
||||
|
||||
//informationHitbox - default="Rectangle 0 0 96 98"
|
||||
//Предварительно, я бы сказал что вообще этот конструктор бесполезен и его можно удалить,
|
||||
// т.к. Hitbox конструктор вызывается из дочерних элементов, а они уже владеют всей необходимой инфой, и entity owner задают сами
|
||||
// кстати забавно. сейчас устанавливается entity через serOwnerEntity, но как будто этот метод тоже излишек, ведь владелец хитбокса только один.
|
||||
//Но нет. у нас может быть хитбокс создан программно раньше entity, помню было такое где то, так что этот метод еще обоснован.
|
||||
public Hitbox(String informationHitbox, Entity owner){
|
||||
if(informationHitbox!= null) {
|
||||
setOwnerEntity(owner);
|
||||
String[] informations = informationHitbox.split(" ");
|
||||
shape = new String(informations[0]);
|
||||
if(shape.equals("Rectangle")) {
|
||||
/*parseStringToRectangleHitbox(informations);
|
||||
createCartesianPointsFromWidthAndHeigh();
|
||||
convertCartesianPointsToIso();
|
||||
printToConsole();*/
|
||||
}else if(shape.equals("Circle")) {
|
||||
//parseStringToCircleHitbox(informations);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public abstract String listPointsToString();
|
||||
|
||||
|
||||
/**
|
||||
* @param result - Point object to store the result
|
||||
* @return x and y converted to isometic coords
|
||||
|
||||
Reference in New Issue
Block a user