Refactor com.bartlomiejpluta.base.{project,context} packages
This commit is contained in:
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
@@ -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;
|
||||
@@ -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;
|
||||
}
|
||||
}
|
||||
@@ -1,7 +0,0 @@
|
||||
package com.bartlomiejpluta.base.engine.project.loader;
|
||||
|
||||
import com.bartlomiejpluta.base.engine.project.model.Project;
|
||||
|
||||
public interface ProjectLoader {
|
||||
Project loadProject();
|
||||
}
|
||||
@@ -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);
|
||||
@@ -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;
|
||||
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user