Skip to content

Commit

Permalink
Merge e301704 into 006c1df
Browse files Browse the repository at this point in the history
  • Loading branch information
realhackcraft committed Aug 19, 2023
2 parents 006c1df + e301704 commit c22b5bd
Show file tree
Hide file tree
Showing 4 changed files with 11,490 additions and 57,378 deletions.
53 changes: 49 additions & 4 deletions .idea/workspace.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

59 changes: 47 additions & 12 deletions src/main/java/rpgkit/LDtkLoader.java
Original file line number Diff line number Diff line change
Expand Up @@ -146,7 +146,7 @@ public void processLayers(ArrayList<LayerInstance> tileLayers,
for (LayerInstance layer : tileLayers) {
if (layer.getType().equals("Entities")) {
processEntityLayer(layer, rpgKit, ldtk, targetLevel);
} else if (layer.getType().equals("Tiles")) {
} else {
processTileLayer(layer, rpgKit, targetLevel);
}
}
Expand Down Expand Up @@ -203,27 +203,62 @@ public void processTileLayer(LayerInstance layer, RPGKit rpgKit, Level targetLev
*/
public void processTileSet(LayerInstance layer, RPGKit rpgKit, TileSet tileset, Level targetLevel) {
TileManager tileManager = new TileManager();
for (TileInstance tile : layer.getGridTiles()) {
TileCustomMetadata metadata = null;
if (layer.getType().equals("Tiles")) {
for (TileInstance tile : layer.getGridTiles()) {
TileCustomMetadata metadata = null;

for (TileCustomMetadata metadata1 : tileset.tileSet.getCustomData()) {
if (metadata1.getTileID() == tile.getT()) {
metadata = metadata1;
break;
}
}

for (TileCustomMetadata metadata1 : tileset.tileSet.getCustomData()) {
if (metadata1.getTileID() == tile.getT()) {
metadata = metadata1;
break;
TileProperties properties = null;
if (metadata != null) {
properties = getTileProperties(metadata);
}
}

TileProperties properties = null;
if (metadata != null) {
properties = getTileProperties(metadata);
addTile(properties, tile, tileset, targetLevel, tileManager);
}
} else {
for (TileInstance tile : layer.getAutoLayerTiles()) {
TileCustomMetadata metadata = null;

for (TileCustomMetadata metadata1 : tileset.tileSet.getCustomData()) {
if (metadata1.getTileID() == tile.getT()) {
metadata = metadata1;
break;
}
}

addTile(properties, tile, tileset, targetLevel, tileManager);
TileProperties properties = null;
if (metadata != null) {
properties = getTileProperties(metadata);
}
addAutoTile(properties, tile, tileset, targetLevel, tileManager);
}
}

rpgKit.manager.managers.add(tileManager);
}

private void addAutoTile(TileProperties properties, TileInstance tile, TileSet tileset, Level targetLevel, TileManager tileManager) {
try {
if (properties != null && properties.getInteraction() != null) {
tileManager.tiles.add(RPGKit.getInstance().interactableLoader.loadInteractable(properties.getInteraction().toLowerCase(),
tile,
tileset,
targetLevel,
properties));
} else {
tileManager.tiles.add(new Tile(tile, tileset, targetLevel, properties));
}
} catch (IOException e) {
throw new RuntimeException(e);
}
}

/**
* Get tile properties.
*
Expand Down
Loading

0 comments on commit c22b5bd

Please sign in to comment.