Clean code after Entity/Character changes

This commit is contained in:
2022-08-23 00:01:40 +02:00
parent 33dad1e6d3
commit 6f9ff07ab2

View File

@@ -33,8 +33,8 @@ public class DefaultCharacter extends MovableSprite implements Character {
private final CharacterSetManager characterSetManager; private final CharacterSetManager characterSetManager;
private final Map<Direction, Integer> spriteDirectionRows; private final Map<Direction, Integer> spriteDirectionRows;
private final Map<Direction, Vector2fc> spriteDefaultRows; private final Map<Direction, Vector2fc> spriteDefaultRows;
private final Vector2f entityScale = new Vector2f(1, 1); private final Vector2f characterScale = new Vector2f(1, 1);
private Vector2fc entitySetSize; private Vector2fc characterSetSize;
private final EventHandler eventHandler = new EventHandler(); private final EventHandler eventHandler = new EventHandler();
@@ -56,8 +56,8 @@ public class DefaultCharacter extends MovableSprite implements Character {
private final Queue<CharacterInstantAnimation> instantAnimations = new LinkedList<>(); private final Queue<CharacterInstantAnimation> instantAnimations = new LinkedList<>();
public DefaultCharacter(Mesh mesh, CharacterSetManager characterSetManager, int defaultSpriteColumn, Map<Direction, Integer> spriteDirectionRows, Map<Direction, Vector2fc> spriteDefaultRows, String entitySetUid) { public DefaultCharacter(Mesh mesh, CharacterSetManager characterSetManager, int defaultSpriteColumn, Map<Direction, Integer> spriteDirectionRows, Map<Direction, Vector2fc> spriteDefaultRows, String characterSetUid) {
super(mesh, createMaterial(characterSetManager, entitySetUid)); super(mesh, createMaterial(characterSetManager, characterSetUid));
this.defaultSpriteColumn = defaultSpriteColumn; this.defaultSpriteColumn = defaultSpriteColumn;
this.characterSetManager = characterSetManager; this.characterSetManager = characterSetManager;
this.spriteDirectionRows = spriteDirectionRows; this.spriteDirectionRows = spriteDirectionRows;
@@ -66,13 +66,13 @@ public class DefaultCharacter extends MovableSprite implements Character {
var texture = material.getTexture(); var texture = material.getTexture();
if (texture != null) { if (texture != null) {
this.entitySetSize = texture.getSpriteSize(); this.characterSetSize = texture.getSpriteSize();
super.setScale(entitySetSize.x() * entityScale.x, entitySetSize.y() * entityScale.y); super.setScale(characterSetSize.x() * characterScale.x, characterSetSize.y() * characterScale.y);
} }
} }
private static Material createMaterial(CharacterSetManager characterSetManager, String entitySetUid) { private static Material createMaterial(CharacterSetManager characterSetManager, String characterSetUid) {
return entitySetUid != null ? characterSetManager.loadObject(requireNonNull(entitySetUid)) : Material.colored(0, 0, 0, 0); return characterSetUid != null ? characterSetManager.loadObject(requireNonNull(characterSetUid)) : Material.colored(0, 0, 0, 0);
} }
@Override @Override
@@ -124,15 +124,15 @@ public class DefaultCharacter extends MovableSprite implements Character {
} }
@Override @Override
public void changeCharacterSet(String entitySetUid) { public void changeCharacterSet(String characterSetUid) {
this.material = createMaterial(characterSetManager, entitySetUid); this.material = createMaterial(characterSetManager, characterSetUid);
var texture = this.material.getTexture(); var texture = this.material.getTexture();
if (texture != null) { if (texture != null) {
this.entitySetSize = texture.getSpriteSize(); this.characterSetSize = texture.getSpriteSize();
super.setScale(entitySetSize.x() * entityScale.x, entitySetSize.y() * entityScale.y); super.setScale(characterSetSize.x() * characterScale.x, characterSetSize.y() * characterScale.y);
} else { } else {
this.entitySetSize = null; this.characterSetSize = null;
} }
} }
@@ -177,43 +177,43 @@ public class DefaultCharacter extends MovableSprite implements Character {
@Override @Override
public void setScaleX(float scaleX) { public void setScaleX(float scaleX) {
if (entitySetSize == null) { if (characterSetSize == null) {
throw new AppException("Cannot change Character scale if no Character Set is provided"); throw new AppException("Cannot change Character scale if no Character Set is provided");
} }
this.entityScale.x = scaleX; this.characterScale.x = scaleX;
super.setScaleX(entitySetSize.x() * scaleX); super.setScaleX(characterSetSize.x() * scaleX);
} }
@Override @Override
public void setScaleY(float scaleY) { public void setScaleY(float scaleY) {
if (entitySetSize == null) { if (characterSetSize == null) {
throw new AppException("Cannot change Character scale if no Character Set is provided"); throw new AppException("Cannot change Character scale if no Character Set is provided");
} }
this.entityScale.y = scaleY; this.characterScale.y = scaleY;
super.setScaleY(entitySetSize.y() * scaleY); super.setScaleY(characterSetSize.y() * scaleY);
} }
@Override @Override
public void setScale(float scale) { public void setScale(float scale) {
if (entitySetSize == null) { if (characterSetSize == null) {
throw new AppException("Cannot change Character scale if no Character Set is provided"); throw new AppException("Cannot change Character scale if no Character Set is provided");
} }
this.entityScale.x = scale; this.characterScale.x = scale;
this.entityScale.y = scale; this.characterScale.y = scale;
super.setScale(entitySetSize.x() * scale, entitySetSize.y() * scale); super.setScale(characterSetSize.x() * scale, characterSetSize.y() * scale);
} }
@Override @Override
public float getScaleX() { public float getScaleX() {
return entityScale.x; return characterScale.x;
} }
@Override @Override
public float getScaleY() { public float getScaleY() {
return entityScale.y; return characterScale.y;
} }
@Override @Override
@@ -233,13 +233,13 @@ public class DefaultCharacter extends MovableSprite implements Character {
@Override @Override
public void setScale(float scaleX, float scaleY) { public void setScale(float scaleX, float scaleY) {
if (entitySetSize == null) { if (characterSetSize == null) {
throw new AppException("Cannot change Character scale if no Character Set is provided"); throw new AppException("Cannot change Character scale if no Character Set is provided");
} }
this.entityScale.x = scaleX; this.characterScale.x = scaleX;
this.entityScale.y = scaleY; this.characterScale.y = scaleY;
super.setScale(entitySetSize.x() * scaleX, entitySetSize.y() * scaleY); super.setScale(characterSetSize.x() * scaleX, characterSetSize.y() * scaleY);
} }
int currentFrame() { int currentFrame() {