1
Fork 0

Draw player and make sure to center the camera around their position

This commit is contained in:
Joshua Goins 2022-04-30 19:07:30 -04:00
parent ffd69c2ddb
commit 5e6ffed741
2 changed files with 20 additions and 0 deletions

BIN
assets/player.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 279 B

View file

@ -1,12 +1,16 @@
package com.redstrate.watersymbol.screens; package com.redstrate.watersymbol.screens;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.Screen; import com.badlogic.gdx.Screen;
import com.badlogic.gdx.graphics.OrthographicCamera; import com.badlogic.gdx.graphics.OrthographicCamera;
import com.badlogic.gdx.graphics.Texture;
import com.badlogic.gdx.graphics.g2d.Sprite;
import com.badlogic.gdx.maps.tiled.TiledMap; import com.badlogic.gdx.maps.tiled.TiledMap;
import com.badlogic.gdx.maps.tiled.TiledMapRenderer; import com.badlogic.gdx.maps.tiled.TiledMapRenderer;
import com.badlogic.gdx.maps.tiled.TmxMapLoader; import com.badlogic.gdx.maps.tiled.TmxMapLoader;
import com.badlogic.gdx.maps.tiled.renderers.OrthogonalTiledMapRenderer; import com.badlogic.gdx.maps.tiled.renderers.OrthogonalTiledMapRenderer;
import com.badlogic.gdx.utils.ScreenUtils; import com.badlogic.gdx.utils.ScreenUtils;
import com.redstrate.watersymbol.Player;
import com.redstrate.watersymbol.WaterSymbol; import com.redstrate.watersymbol.WaterSymbol;
public class GameScreen implements Screen { public class GameScreen implements Screen {
@ -15,6 +19,10 @@ public class GameScreen implements Screen {
TiledMap tiledMap; TiledMap tiledMap;
OrthographicCamera camera; OrthographicCamera camera;
TiledMapRenderer tiledMapRenderer; TiledMapRenderer tiledMapRenderer;
Player player;
Texture playerTexture;
Sprite playerSprite;
GameScreen(WaterSymbol game) { GameScreen(WaterSymbol game) {
this.game = game; this.game = game;
@ -24,6 +32,12 @@ public class GameScreen implements Screen {
tiledMap = new TmxMapLoader().load("test.tmx"); tiledMap = new TmxMapLoader().load("test.tmx");
tiledMapRenderer = new OrthogonalTiledMapRenderer(tiledMap); tiledMapRenderer = new OrthogonalTiledMapRenderer(tiledMap);
player = new Player();
player.positionX = 0;
player.positionY = 0;
playerTexture = new Texture(Gdx.files.internal("player.png"));
playerSprite = new Sprite(playerTexture);
} }
@Override @Override
@ -35,9 +49,15 @@ public class GameScreen implements Screen {
public void render(float delta) { public void render(float delta) {
ScreenUtils.clear(0, 0, 0.2f, 1); ScreenUtils.clear(0, 0, 0.2f, 1);
camera.position.set(player.positionX, player.positionY, 0);
camera.update(); camera.update();
tiledMapRenderer.setView(camera); tiledMapRenderer.setView(camera);
tiledMapRenderer.render(); tiledMapRenderer.render();
game.batch.begin();
game.batch.setProjectionMatrix(camera.combined);
playerSprite.draw(game.batch);
game.batch.end();
} }
@Override @Override