add new interface for Tile containers which actually keep the array of Tile objects themselves
This commit is contained in:
parent
1f961356b0
commit
c8b39965ef
|
@ -5,7 +5,7 @@ import com.badlogic.gdx.math.Vector3;
|
||||||
import com.badlogic.gdx.math.collision.BoundingBox;
|
import com.badlogic.gdx.math.collision.BoundingBox;
|
||||||
import com.badlogic.gdx.utils.Disposable;
|
import com.badlogic.gdx.utils.Disposable;
|
||||||
|
|
||||||
public class TileChunk extends TileContainer implements Disposable {
|
public class TileChunk extends TileContainer implements TileRawDataContainer, Disposable {
|
||||||
final int x;
|
final int x;
|
||||||
final int y;
|
final int y;
|
||||||
final int z;
|
final int z;
|
||||||
|
@ -23,6 +23,7 @@ public class TileChunk extends TileContainer implements Disposable {
|
||||||
public TileChunkMesh alphaMesh;
|
public TileChunkMesh alphaMesh;
|
||||||
public final TileMap tileMap;
|
public final TileMap tileMap;
|
||||||
|
|
||||||
|
@Override
|
||||||
public Tile[] getData() {
|
public Tile[] getData() {
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
|
|
12
src/com/blarg/gdx/tilemap3d/TileRawDataContainer.java
Normal file
12
src/com/blarg/gdx/tilemap3d/TileRawDataContainer.java
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
package com.blarg.gdx.tilemap3d;
|
||||||
|
|
||||||
|
public interface TileRawDataContainer {
|
||||||
|
Tile[] getData();
|
||||||
|
|
||||||
|
int getWidth();
|
||||||
|
int getHeight();
|
||||||
|
int getDepth();
|
||||||
|
|
||||||
|
Tile get(int x, int y, int z);
|
||||||
|
Tile getSafe(int x, int y, int z);
|
||||||
|
}
|
|
@ -5,8 +5,9 @@ import com.badlogic.gdx.math.collision.BoundingBox;
|
||||||
import com.blarg.gdx.Bitfield;
|
import com.blarg.gdx.Bitfield;
|
||||||
import com.blarg.gdx.tilemap3d.Tile;
|
import com.blarg.gdx.tilemap3d.Tile;
|
||||||
import com.blarg.gdx.tilemap3d.TileContainer;
|
import com.blarg.gdx.tilemap3d.TileContainer;
|
||||||
|
import com.blarg.gdx.tilemap3d.TileRawDataContainer;
|
||||||
|
|
||||||
public class TilePrefab extends TileContainer {
|
public class TilePrefab extends TileContainer implements TileRawDataContainer {
|
||||||
public enum Rotation {
|
public enum Rotation {
|
||||||
ROT0(0),
|
ROT0(0),
|
||||||
ROT90(90),
|
ROT90(90),
|
||||||
|
@ -43,6 +44,11 @@ public class TilePrefab extends TileContainer {
|
||||||
final BoundingBox rotationBounds = new BoundingBox();
|
final BoundingBox rotationBounds = new BoundingBox();
|
||||||
final BoundingBox tmpRotationBounds = new BoundingBox();
|
final BoundingBox tmpRotationBounds = new BoundingBox();
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Tile[] getData() {
|
||||||
|
return new Tile[0];
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getWidth() {
|
public int getWidth() {
|
||||||
return width;
|
return width;
|
||||||
|
|
Loading…
Reference in a new issue