diff --git a/android/assets/projectile.png b/android/assets/projectile.png deleted file mode 100644 index 2d47e38..0000000 Binary files a/android/assets/projectile.png and /dev/null differ diff --git a/core/src/com/throwgame/main/Main.java b/core/src/com/throwgame/main/Main.java index 1e1e181..b20c489 100644 --- a/core/src/com/throwgame/main/Main.java +++ b/core/src/com/throwgame/main/Main.java @@ -12,7 +12,7 @@ import model.Level; import view.Levelscreen; import view.Titlescreen; -public class Main extends Game implements InputProcessor{ +public class Main extends ApplicationAdapter implements InputProcessor{ int screenId; Controller c; @@ -21,13 +21,17 @@ public class Main extends Game implements InputProcessor{ @Override public void create () { c = new Controller(); + c.create(); screenId = 0; - setScreen(new Titlescreen(this)); + } @Override public void render () { - screen.render(0); + Gdx.gl.glClearColor(1f, 1f, 1f, 1f); + Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT); + + c.getScreen().render(0); } @Override diff --git a/core/src/controller/Controller.java b/core/src/controller/Controller.java index 803e49b..c451998 100644 --- a/core/src/controller/Controller.java +++ b/core/src/controller/Controller.java @@ -7,13 +7,29 @@ package controller; import com.badlogic.gdx.Game; import com.badlogic.gdx.InputProcessor; +import com.badlogic.gdx.Screen; +import view.AbstractScreen; import view.Titlescreen; /** * * @author Jan */ -public class Controller{ +public class Controller extends Game{ + + @Override + public void create() { + setScreen(new Titlescreen(this)); + } + + @Override + public void render(){ + + } + + public Screen getScreen(){ + return screen; + } diff --git a/core/src/view/Gamescreen.java b/core/src/view/Gamescreen.java index d450759..9c62ba8 100644 --- a/core/src/view/Gamescreen.java +++ b/core/src/view/Gamescreen.java @@ -13,8 +13,10 @@ import com.badlogic.gdx.graphics.Texture; import com.badlogic.gdx.graphics.g2d.BitmapFont; import com.badlogic.gdx.graphics.g2d.Sprite; import com.badlogic.gdx.graphics.g2d.SpriteBatch; +import com.badlogic.gdx.graphics.glutils.ShapeRenderer; import com.badlogic.gdx.math.Rectangle; import model.Goal; +import model.Level; import model.Projectile; /** @@ -27,24 +29,24 @@ public class Gamescreen extends AbstractScreen{ Projectile p; SpriteBatch batch; - Sprite projectile; - Rectangle goalLeft; - Rectangle goalRight; - Rectangle goalBottom; + //Rectangle goalLeft; + //Rectangle goalRight; + //Rectangle goalBottom; + ShapeRenderer shapeRenderer; - public Gamescreen(Game game){ + public Gamescreen(Game game, Level level){ super(game); - g = new Goal(800,400,200,150); - p = new Projectile(250, 250, 0); - projectile = new Sprite(new Texture("projectile.png")); - projectile.setPosition(p.getxPos(), p.getyPos()); - goalLeft = new Rectangle(g.getxPos(), g.getyPos(), 0.1f * g.getSizeX(), g.getSizeY()); - goalBottom = new Rectangle(g.getxPos() + goalLeft.getWidth(), g.getyPos(), 0.8f * g.getSizeX(),0.2f * g.getSizeY()); - goalRight = new Rectangle(g.getxPos() + goalLeft.getWidth() + goalBottom.getWidth(), g.getyPos(), 0.1f * g.getSizeX(),g.getSizeY()); + g = level.getGoal(); + p = level.getProjectile(); + // Goal rectangles + //goalLeft = new Rectangle(g.getxPos(), g.getyPos(), 0.1f * g.getSizeX(), g.getSizeY()); + //goalBottom = new Rectangle(g.getxPos() + 0.1f * g.getSizeX(), g.getyPos(), 0.8f * g.getSizeX(),0.2f * g.getSizeY()); + //goalRight = new Rectangle(g.getxPos() + 0.1f * g.getSizeX() + 0.8f * g.getSizeX(), g.getyPos(), 0.1f * g.getSizeX(),g.getSizeY()); batch = new SpriteBatch(); + shapeRenderer = new ShapeRenderer(); } @@ -54,10 +56,15 @@ public class Gamescreen extends AbstractScreen{ @Override public void render(float f) { - Gdx.gl.glClearColor(1f, 1f, 1f, 1f); - Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT); + batch.begin(); - projectile.draw(batch); + shapeRenderer.begin(ShapeRenderer.ShapeType.Filled); + shapeRenderer.setColor(Color.BLACK); + shapeRenderer.rect(g.getxPos(), g.getyPos(), 0.2f * g.getSizeX(), g.getSizeY()); + shapeRenderer.rect(g.getxPos() + 0.2f * g.getSizeX(), g.getyPos(), 0.6f * g.getSizeX(),0.2f * g.getSizeY()); + shapeRenderer.rect(g.getxPos() + 0.2f * g.getSizeX() + 0.6f * g.getSizeX(), g.getyPos(), 0.2f * g.getSizeX(),g.getSizeY()); + shapeRenderer.circle(p.getxPos(), p.getyPos(), p.getRadius()); + shapeRenderer.end(); batch.end(); if(Gdx.input.justTouched()){ @@ -84,4 +91,8 @@ public class Gamescreen extends AbstractScreen{ @Override public void dispose() { } + + public void update(){ + + } } diff --git a/core/src/view/Levelscreen.java b/core/src/view/Levelscreen.java index 39faa0a..3dd4aba 100644 --- a/core/src/view/Levelscreen.java +++ b/core/src/view/Levelscreen.java @@ -15,6 +15,9 @@ import com.badlogic.gdx.graphics.g2d.BitmapFont; import com.badlogic.gdx.graphics.g2d.Sprite; import com.badlogic.gdx.graphics.g2d.SpriteBatch; import com.badlogic.gdx.utils.Timer; +import model.Goal; +import model.Level; +import model.Projectile; /** * @@ -74,8 +77,7 @@ public class Levelscreen extends AbstractScreen{ @Override public void render(float f) { - Gdx.gl.glClearColor(1f, 1f, 1f, 1f); - Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT); + SpriteBatch batch = new SpriteBatch(); @@ -101,7 +103,7 @@ public class Levelscreen extends AbstractScreen{ } else{ dispose(); - game.setScreen(new Gamescreen(game)); + game.setScreen(new Gamescreen(game, new Level(new Goal(400,400,200,100), new Projectile(160,160,0)))); } } } diff --git a/core/src/view/Titlescreen.java b/core/src/view/Titlescreen.java index 643e2e6..46c9eaf 100644 --- a/core/src/view/Titlescreen.java +++ b/core/src/view/Titlescreen.java @@ -60,8 +60,7 @@ public class Titlescreen extends AbstractScreen{ @Override public void render(float f) { - Gdx.gl.glClearColor(1f, 1f, 1f, 1f); - Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT); + batch.begin(); clicktostart.draw(batch);