// Path: core/src/com/alexaut/kroniax/game/level/LevelObject.java
// public abstract class LevelObject {
//     private String mType;
// 
//     private final Color mColor;
// 
//     protected LevelObject(String type) {
//         mType = type;
//         mColor = getColorFromType();
//     }
// 
//     // Override these
//     public abstract boolean checkCollision(Vector2 p1, Vector2 p2);
// 
//     public abstract void render(ShapeRenderer renderer);
// 
//     public String getType() {
//         return mType;
//     }
// 
//     public Color getColor() {
//         return mColor;
//     }
// 
//     private Color getColorFromType() {
//         if (mType.equalsIgnoreCase("finish"))
//             return Color.GREEN;
//         else if (mType.equalsIgnoreCase("speed_change"))
//             return Color.CYAN;
//         else if (mType.equalsIgnoreCase("gravity_change"))
//             return Color.YELLOW;
//         else if (mType.equalsIgnoreCase("checkpoint"))
//             return Color.ORANGE;
//         else if (mType.equalsIgnoreCase("modal_text"))
//             return new Color(0, 0, 0, 0);
//         else if (mType.equalsIgnoreCase("size_change"))
//             return Color.DARK_GRAY;
//         else if (mType.equalsIgnoreCase("camera_rotate"))
//             return Color.GOLD;
// 
//         return Color.WHITE;
//     }
// }
// 
// Path: core/src/com/alexaut/kroniax/game/scripts/Script.java
// public abstract class Script {
//     private boolean mRunning;
//     private boolean mStarted;
// 
//     public Script() {
//         mRunning = false;
//         mStarted = false;
//     }
// 
//     public boolean isAlive() {
//         return mRunning;
//     }
// 
//     public void start() {
//         mRunning = true;
//         mStarted = true;
//     }
// 
//     public void stop() {
//         mRunning = false;
//         mStarted = true;
//     }
// 
//     public void reset() {
//         mRunning = false;
//         mStarted = false;
//     }
// 
//     public boolean alreadyStarted() {
//         return mStarted;
//     }
// 
//     public abstract void update(float deltaTime, GameController gameController, Level level, Player player,
//             Camera camera);
// }


import java.util.ArrayList;
import com.alexaut.kroniax.game.level.LevelObject;
import com.alexaut.kroniax.game.scripts.Script;
import com.badlogic.gdx.graphics.g2d.TextureRegion;
package com.alexaut.kroniax.game.tilemap;



public class TileMap {

    private Properties mProperties;

    private ArrayList<Tileset> mTilesets;
    private ArrayList<TileLayer> mTileLayers;
// Path: core/src/com/alexaut/kroniax/game/level/LevelObject.java
// public abstract class LevelObject {
//     private String mType;
// 
//     private final Color mColor;
// 
//     protected LevelObject(String type) {
//         mType = type;
//         mColor = getColorFromType();
//     }
// 
//     // Override these
//     public abstract boolean checkCollision(Vector2 p1, Vector2 p2);
// 
//     public abstract void render(ShapeRenderer renderer);
// 
//     public String getType() {
//         return mType;
//     }
// 
//     public Color getColor() {
//         return mColor;
//     }
// 
//     private Color getColorFromType() {
//         if (mType.equalsIgnoreCase("finish"))
//             return Color.GREEN;
//         else if (mType.equalsIgnoreCase("speed_change"))
//             return Color.CYAN;
//         else if (mType.equalsIgnoreCase("gravity_change"))
//             return Color.YELLOW;
//         else if (mType.equalsIgnoreCase("checkpoint"))
//             return Color.ORANGE;
//         else if (mType.equalsIgnoreCase("modal_text"))
//             return new Color(0, 0, 0, 0);
//         else if (mType.equalsIgnoreCase("size_change"))
//             return Color.DARK_GRAY;
//         else if (mType.equalsIgnoreCase("camera_rotate"))
//             return Color.GOLD;
// 
//         return Color.WHITE;
//     }
// }
// 
// Path: core/src/com/alexaut/kroniax/game/scripts/Script.java
// public abstract class Script {
//     private boolean mRunning;
//     private boolean mStarted;
// 
//     public Script() {
//         mRunning = false;
//         mStarted = false;
//     }
// 
//     public boolean isAlive() {
//         return mRunning;
//     }
// 
//     public void start() {
//         mRunning = true;
//         mStarted = true;
//     }
// 
//     public void stop() {
//         mRunning = false;
//         mStarted = true;
//     }
// 
//     public void reset() {
//         mRunning = false;
//         mStarted = false;
//     }
// 
//     public boolean alreadyStarted() {
//         return mStarted;
//     }
// 
//     public abstract void update(float deltaTime, GameController gameController, Level level, Player player,
//             Camera camera);
// }


// Path: core/src/com/alexaut/kroniax/game/tilemap/TileMap.java
import java.util.ArrayList;
import com.alexaut.kroniax.game.level.LevelObject;
import com.alexaut.kroniax.game.scripts.Script;
import com.badlogic.gdx.graphics.g2d.TextureRegion;

package com.alexaut.kroniax.game.tilemap;



public class TileMap {

    private Properties mProperties;

    private ArrayList<Tileset> mTilesets;
    private ArrayList<TileLayer> mTileLayers;
    private ArrayList<LevelObject> mLevelObjects;