diff --git a/src/com/annimon/influencexxii/EnemiesController.java b/src/com/annimon/influencexxii/EnemiesController.java index 08ace46..0123014 100644 --- a/src/com/annimon/influencexxii/EnemiesController.java +++ b/src/com/annimon/influencexxii/EnemiesController.java @@ -1,6 +1,9 @@ package com.annimon.influencexxii; +import com.badlogic.gdx.Gdx; import com.badlogic.gdx.graphics.Color; +import com.badlogic.gdx.graphics.g2d.ParticleEffect; +import com.badlogic.gdx.graphics.g2d.SpriteBatch; import com.badlogic.gdx.graphics.glutils.ShapeRenderer; import com.badlogic.gdx.graphics.glutils.ShapeRenderer.ShapeType; import com.badlogic.gdx.math.MathUtils; @@ -13,9 +16,13 @@ public class EnemiesController { private Array enemies; private int difficultMode; + private ParticleEffect explosion; + public EnemiesController() { enemies = new Array(); difficultMode = 0; + explosion = new ParticleEffect(); + explosion.load(Gdx.files.internal("data/explosion.p"), Gdx.files.internal("data")); } public void setScreenParameters(float width, float height) { @@ -23,12 +30,16 @@ public class EnemiesController { screenHeight = height; } - public void draw(ShapeRenderer renderer) { + public void draw(SpriteBatch batch, ShapeRenderer renderer) { renderer.begin(ShapeType.Filled); for (Enemy enemy : enemies) { enemy.draw(renderer); } renderer.end(); + // Draw explosion + batch.begin(); + explosion.draw(batch, Gdx.graphics.getDeltaTime()); + batch.end(); } public void addEnemy() { @@ -47,6 +58,8 @@ public class EnemiesController { public void killEnemy(float x, float y) { for (int i = 0; i < enemies.size; i++) { if (enemies.get(i).isCollide(x, y)) { + explosion.setPosition(x, y); + explosion.start(); Score.add(); difficultMode = Score.getDifficultMode(); enemies.set(i, generateNewEnemy()); diff --git a/src/com/annimon/influencexxii/InfluenceXXII.java b/src/com/annimon/influencexxii/InfluenceXXII.java index ba6fd96..5966a90 100644 --- a/src/com/annimon/influencexxii/InfluenceXXII.java +++ b/src/com/annimon/influencexxii/InfluenceXXII.java @@ -26,6 +26,7 @@ public class InfluenceXXII implements ApplicationListener { renderer = new ShapeRenderer(); font = new BitmapFont(Gdx.files.internal("data/font16.fnt"), false); + font.setScale(1.5f); font.setColor(new Color(0.23f, 0.38f, 1f, 0.81f)); spriteBatch = new SpriteBatch(); background = DrawUtils.random2Color(0, 0x22); @@ -60,7 +61,7 @@ public class InfluenceXXII implements ApplicationListener { Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT); // Draw enemies - enemies.draw(renderer); + enemies.draw(spriteBatch, renderer); // Draw pointer pointer.draw(renderer);