Render LevelComponents with sprites instead of shapes
This commit is contained in:
parent
8d6a9b7f97
commit
8336838fc4
@ -44,7 +44,9 @@ public class PacDude extends Game {
|
|||||||
Gdx.gl.glClearColor(0, 0, 0, 1);
|
Gdx.gl.glClearColor(0, 0, 0, 1);
|
||||||
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
|
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
|
||||||
|
|
||||||
|
batch.begin();
|
||||||
super.render();
|
super.render();
|
||||||
|
batch.end();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
package com.me.pacman.level;
|
package com.me.pacman.level;
|
||||||
|
|
||||||
import com.badlogic.gdx.graphics.Color;
|
import com.badlogic.gdx.graphics.Texture;
|
||||||
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
|
import com.badlogic.gdx.graphics.g2d.TextureRegion;
|
||||||
import com.badlogic.gdx.graphics.glutils.ShapeRenderer;
|
import com.me.pacman.PacDude;
|
||||||
|
|
||||||
public class Level {
|
public class Level {
|
||||||
|
|
||||||
@ -14,23 +14,29 @@ public class Level {
|
|||||||
components = loader.loadLevel();
|
components = loader.loadLevel();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void render(SpriteBatch batch, ShapeRenderer sr, int offsetX, int offsetY) {
|
public void render(PacDude game, int offsetX, int offsetY) {
|
||||||
sr.begin(ShapeRenderer.ShapeType.Filled);
|
Texture sprites = game.assets.get("sprites/sprites_1.png");
|
||||||
sr.setColor(Color.valueOf("#f8b090"));
|
TextureRegion powerPellet = new TextureRegion(sprites, 16, 16, 8, 8);
|
||||||
|
TextureRegion pellet = new TextureRegion(sprites, 24, 16, 8, 8);
|
||||||
|
|
||||||
for (int i = 0; i < components.length; i++) {
|
for (int i = 0; i < components.length; i++) {
|
||||||
LevelComponent[] row = components[i];
|
LevelComponent[] row = components[i];
|
||||||
for (int j = 0; j < row.length; j++) {
|
for (int j = 0; j < row.length; j++) {
|
||||||
LevelComponent component = row[j];
|
LevelComponent component = row[j];
|
||||||
|
TextureRegion sprite;
|
||||||
switch (component) {
|
switch (component) {
|
||||||
case PELLET:
|
case PELLET:
|
||||||
sr.rect((j * 8) + (offsetX-1), (i * 8) + (offsetY-1), 2, 2);
|
sprite = pellet;
|
||||||
break;
|
break;
|
||||||
|
case POWER_PELLET:
|
||||||
|
sprite = powerPellet;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
game.batch.draw(sprite, (j * 8) + offsetX + 8, (i * 8) + offsetY + 8);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
sr.end();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -19,6 +19,7 @@ public class MenuState extends State {
|
|||||||
public void setup() {
|
public void setup() {
|
||||||
game.assets.load("level.png", Texture.class);
|
game.assets.load("level.png", Texture.class);
|
||||||
game.assets.load("logo.png", Texture.class);
|
game.assets.load("logo.png", Texture.class);
|
||||||
|
game.assets.load("sprites/sprites_1.png", Texture.class);
|
||||||
game.assets.finishLoading();
|
game.assets.finishLoading();
|
||||||
|
|
||||||
levelBackground = game.assets.get("level.png", Texture.class);
|
levelBackground = game.assets.get("level.png", Texture.class);
|
||||||
@ -30,12 +31,9 @@ public class MenuState extends State {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void render() {
|
public void render() {
|
||||||
level.render(game.batch, game.sr, 12, 28);
|
|
||||||
|
|
||||||
game.batch.begin();
|
|
||||||
game.batch.draw(levelBackground, 0, 16);
|
game.batch.draw(levelBackground, 0, 16);
|
||||||
|
level.render(game, 0, 16);
|
||||||
game.batch.draw(logo, 0, 124, 224, 120);
|
game.batch.draw(logo, 0, 124, 224, 120);
|
||||||
game.batch.end();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
Loading…
Reference in New Issue
Block a user