Refactor com.bartlomiejpluta.base.{project,context} packages

This commit is contained in:
2021-03-12 19:24:11 +01:00
parent f17ce55882
commit 8e5e2da0f9
9 changed files with 9 additions and 56 deletions

View File

@@ -3,8 +3,8 @@
*/
package com.bartlomiejpluta.base.engine;
import com.bartlomiejpluta.base.engine.context.manager.ContextManager;
import com.bartlomiejpluta.base.engine.core.engine.GameEngine;
import com.bartlomiejpluta.base.engine.project.model.ContextManager;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;

View File

@@ -1,4 +1,4 @@
package com.bartlomiejpluta.base.engine.project.model;
package com.bartlomiejpluta.base.engine.context.manager;
import com.bartlomiejpluta.base.api.game.context.Context;

View File

@@ -1,12 +1,13 @@
package com.bartlomiejpluta.base.engine.project.model;
package com.bartlomiejpluta.base.engine.context.manager;
import com.bartlomiejpluta.base.api.game.context.Context;
import com.bartlomiejpluta.base.api.game.runner.GameRunner;
import com.bartlomiejpluta.base.engine.context.model.DefaultContext;
import com.bartlomiejpluta.base.engine.core.engine.GameEngine;
import com.bartlomiejpluta.base.engine.gui.manager.FontManager;
import com.bartlomiejpluta.base.engine.project.config.ProjectConfiguration;
import com.bartlomiejpluta.base.engine.project.loader.ClassLoader;
import com.bartlomiejpluta.base.engine.project.serial.ProjectDeserializer;
import com.bartlomiejpluta.base.engine.util.reflection.ClassLoader;
import com.bartlomiejpluta.base.engine.world.entity.manager.EntityManager;
import com.bartlomiejpluta.base.engine.world.entity.manager.EntitySetManager;
import com.bartlomiejpluta.base.engine.world.image.manager.ImageManager;

View File

@@ -1,4 +1,4 @@
package com.bartlomiejpluta.base.engine.project.model;
package com.bartlomiejpluta.base.engine.context.model;
import com.bartlomiejpluta.base.api.game.camera.Camera;
import com.bartlomiejpluta.base.api.game.context.Context;

View File

@@ -1,41 +0,0 @@
package com.bartlomiejpluta.base.engine.project.loader;
import com.bartlomiejpluta.base.engine.gui.manager.FontManager;
import com.bartlomiejpluta.base.engine.project.config.ProjectConfiguration;
import com.bartlomiejpluta.base.engine.project.model.Project;
import com.bartlomiejpluta.base.engine.project.serial.ProjectDeserializer;
import com.bartlomiejpluta.base.engine.world.entity.manager.EntitySetManager;
import com.bartlomiejpluta.base.engine.world.image.manager.ImageManager;
import com.bartlomiejpluta.base.engine.world.map.manager.MapManager;
import com.bartlomiejpluta.base.engine.world.tileset.manager.TileSetManager;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@Slf4j
@Component
@RequiredArgsConstructor(onConstructor = @__(@Autowired))
public class DefaultProjectLoader implements ProjectLoader {
private final ProjectConfiguration configuration;
private final ProjectDeserializer projectDeserializer;
private final TileSetManager tileSetManager;
private final MapManager mapManager;
private final ImageManager imageManager;
private final EntitySetManager entitySetManager;
private final FontManager fontManager;
@Override
public Project loadProject() {
log.info("Loading project resources");
var resource = DefaultProjectLoader.class.getResourceAsStream(configuration.projectFile(configuration.getMainFile()));
var project = projectDeserializer.deserialize(resource);
project.getTileSetAssets().forEach(tileSetManager::registerAsset);
project.getMapAssets().forEach(mapManager::registerAsset);
project.getImageAssets().forEach(imageManager::registerAsset);
project.getEntitySetAssets().forEach(entitySetManager::registerAsset);
project.getFontAssets().forEach(fontManager::registerAsset);
return project;
}
}

View File

@@ -1,7 +0,0 @@
package com.bartlomiejpluta.base.engine.project.loader;
import com.bartlomiejpluta.base.engine.project.model.Project;
public interface ProjectLoader {
Project loadProject();
}

View File

@@ -1,4 +1,4 @@
package com.bartlomiejpluta.base.engine.project.loader;
package com.bartlomiejpluta.base.engine.util.reflection;
public interface ClassLoader {
<T> Class<T> loadClass(String className);

View File

@@ -1,4 +1,4 @@
package com.bartlomiejpluta.base.engine.project.loader;
package com.bartlomiejpluta.base.engine.util.reflection;
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;

View File

@@ -4,7 +4,7 @@ import com.bartlomiejpluta.base.api.game.context.Context;
import com.bartlomiejpluta.base.api.game.map.handler.MapHandler;
import com.bartlomiejpluta.base.engine.error.AppException;
import com.bartlomiejpluta.base.engine.project.config.ProjectConfiguration;
import com.bartlomiejpluta.base.engine.project.loader.ClassLoader;
import com.bartlomiejpluta.base.engine.util.reflection.ClassLoader;
import com.bartlomiejpluta.base.engine.world.map.asset.GameMapAsset;
import com.bartlomiejpluta.base.engine.world.map.model.DefaultGameMap;
import com.bartlomiejpluta.base.engine.world.map.serial.MapDeserializer;