
<?xml version="1.0" encoding="utf-8"?>
<Screen name="TideMapAssetManagerTest" descriptors="xworker.libgdx.Screen">
<actions>
<GroovyAction name="render">
<code><![CDATA[import com.badlogic.gdx.Gdx;
camera.update();
renderer.setView(camera);
renderer.render();
batch.begin();
font.draw(batch, "FPS: " + Gdx.graphics.getFramesPerSecond(), 10, 20);
batch.end();]]></code>
</GroovyAction>
</actions>
<Resources>
<OrthographicCamera name="camera" zoom="2"></OrthographicCamera>
<BitmapFont name="font" constructor="default"></BitmapFont>
<SpriteBatch name="batch" constructor="default"></SpriteBatch>
<FileResource name="map" type="tiledMap" file="data\maps\tide\Map01.tide"></FileResource>
<OrthogonalTiledMapRenderer name="renderer" constructor="map_unitScale" map="map" unitScale="0.03125"></OrthogonalTiledMapRenderer>
<Code name="init">
<code><![CDATA[import com.badlogic.gdx.InputAdapter;
import com.badlogic.gdx.graphics.OrthographicCamera;
import com.badlogic.gdx.math.Vector3;
import com.badlogic.gdx.Gdx;
float w = Gdx.graphics.getWidth();
float h = Gdx.graphics.getHeight();
camera.setToOrtho(false, (float) (w / h) * 10, 10f);
camera.zoom = 2;
camera.update();
cameraController = new OrthoCamController(camera);
Gdx.input.setInputProcessor(cameraController);
public class OrthoCamController extends InputAdapter {
final OrthographicCamera camera;
final Vector3 curr = new Vector3();
final Vector3 last = new Vector3(-1, -1, -1);
final Vector3 delta = new Vector3();
public OrthoCamController (OrthographicCamera camera) {
this.camera = camera;
}
@Override
public boolean touchDragged (int x, int y, int pointer) {
camera.unproject(curr.set(x, y, 0));
if (!(last.x == -1 && last.y == -1 && last.z == -1)) {
camera.unproject(delta.set(last.x, last.y, 0));
delta.sub(curr);
camera.position.add(delta.x, delta.y, 0);
}
last.set(x, y, 0);
return false;
}
@Override
public boolean touchUp (int x, int y, int pointer, int button) {
last.set(-1, -1, -1);
return false;
}
}]]></code>
</Code>
</Resources>
</Screen>