use of com.b3dgs.lionengine.game.feature.tile.map.MapTileGame in project lionengine by b3dgs.
the class ExtractableModelTest method testConfigWithNode.
/**
* Test the extraction config with node.
*/
@Test
void testConfigWithNode() {
final MapTile map = new MapTileGame();
map.create(16, 16, 4, 4);
services.add(map);
final Featurable featurable = new FeaturableModel(services, setup);
featurable.addFeatureAndGet(new TransformableModel(services, setup)).teleport(16, 32);
final Media media = UtilExtractable.createMedia();
final Extractable extractable = new ExtractableModel(services, new Setup(media));
extractable.prepare(featurable);
assertEquals(10, extractable.getResourceQuantity());
assertEquals("gold", extractable.getResourceType());
assertEquals(1, extractable.getInTileX());
assertEquals(2, extractable.getInTileY());
assertEquals(1, extractable.getInTileWidth());
assertEquals(2, extractable.getInTileHeight());
extractable.getFeature(Identifiable.class).notifyDestroyed();
assertTrue(media.getFile().delete());
}
use of com.b3dgs.lionengine.game.feature.tile.map.MapTileGame in project lionengine by b3dgs.
the class TransitionsConfigTest method testExportsImports.
/**
* Test exports and imports.
*
* @throws IOException If error.
*/
@Test
void testExportsImports() throws IOException {
final MapTile map = UtilMap.createMap(7);
UtilMap.fill(map, UtilMap.TILE_WATER);
UtilMap.fill(map, UtilMap.TILE_WATER, UtilMap.TILE_TRANSITION, 3);
final MapTile map2 = UtilMap.createMap(7);
UtilMap.fill(map, UtilMap.TILE_WATER);
UtilMap.fill(map, UtilMap.TILE_GROUND, UtilMap.TILE_TRANSITION, 3);
final MapTileGame map3 = new MapTileGame();
map3.addFeature(new MapTileGroupModel());
map3.create(1, 1, 3, 3);
final TransitionsExtractor extractor = new TransitionsExtractorImpl();
final Map<Transition, Collection<Integer>> transitions = extractor.getTransitions(Arrays.asList(map, map2, map3));
final Media media = Medias.create("transition.xml");
TransitionsConfig.exports(media, transitions);
assertEquals(transitions, TransitionsConfig.imports(media));
assertTrue(media.getFile().delete());
}
use of com.b3dgs.lionengine.game.feature.tile.map.MapTileGame in project lionengine by b3dgs.
the class TransformableModelTest method prepare.
/**
* Prepare test.
*/
@Before
public void prepare() {
services.add(new MapTileGame());
featurable.addFeature(new IdentifiableModel());
transformable.prepare(featurable);
}
use of com.b3dgs.lionengine.game.feature.tile.map.MapTileGame in project lionengine by b3dgs.
the class CircuitConfigTest method testExportsImports.
/**
* Test exports imports.
*
* @throws IOException If error.
*/
@Test
public void testExportsImports() throws IOException {
final Media config = UtilMapTransition.createTransitions();
final MapTile map = UtilMap.createMap(7);
map.getFeature(MapTileTransition.class).loadTransitions(config);
UtilMap.fill(map, UtilMap.TILE_GROUND);
UtilMap.fill(map, UtilMap.TILE_ROAD, UtilMap.TILE_ROAD, 3);
final MapTile map3 = new MapTileGame();
map3.addFeature(new MapTileGroupModel());
map3.create(1, 1, 3, 3);
final CircuitsExtractor extractor = new CircuitsExtractorImpl();
final Map<Circuit, Collection<TileRef>> circuits = extractor.getCircuits(Arrays.asList(map, map3));
final Media media = Medias.create("circuit.xml");
CircuitsConfig.exports(media, circuits);
final Map<Circuit, Collection<TileRef>> imported = CircuitsConfig.imports(media);
Assert.assertEquals(circuits, imported);
Assert.assertTrue(media.getFile().delete());
Assert.assertTrue(config.getFile().delete());
}
use of com.b3dgs.lionengine.game.feature.tile.map.MapTileGame in project lionengine by b3dgs.
the class HandlerPersisterTest method testWithMap.
/**
* Test with map.
*
* @throws IOException If error.
*/
@Test
void testWithMap() throws IOException {
services.add(new Camera());
final MapTile map = services.add(new MapTileGame());
map.create(16, 16, 5, 5);
final Featurable featurable = factory.create(Medias.create("ObjectFeatures.xml"));
featurable.getFeature(Transformable.class).teleport(16, 32);
handler.add(featurable);
handler.update(1.0);
final HandlerPersister persister = new HandlerPersister(services);
final Media media = Medias.create("persister.data");
try (FileWriting writing = new FileWriting(media)) {
persister.save(writing);
}
final Services services2 = new Services();
services2.add(new Factory(services2));
services2.add(map);
final Handler handler2 = services2.add(new Handler(services2));
final HandlerPersister persister2 = new HandlerPersister(services2);
try (FileReading reading = new FileReading(media)) {
persister2.load(reading);
}
handler2.update(1.0);
final Featurable featurable2 = handler2.values().iterator().next();
final Transformable transformable = featurable2.getFeature(Transformable.class);
assertEquals(16.0, transformable.getX());
assertEquals(32.0, transformable.getY());
assertTrue(media.getFile().delete());
}
Aggregations