change way of entity spawning

This commit is contained in:
2017-07-15 14:56:25 -05:00
parent 1fce870503
commit 1af7457b00
6 changed files with 47 additions and 38 deletions

View File

@@ -111,41 +111,41 @@ public class EntityController {
}
}
public Entity spawnEntity(Stage stage, EntitySpawnInfo entitySpawnInfo) {
public EntitySpawnInfo spawnEntity(Stage stage, EntitySpawnInfo entitySpawnInfo) {
if (entitySpawnInfo != null) {
float[] param = entitySpawnInfo.getParameters();
Gdx.app.debug("Spawning Entity", entitySpawnInfo.toString() + " parameters: " + Arrays.toString(param));
Gdx.app.debug("Spawning Entity", entitySpawnInfo.toString() + " parameters: " + Arrays.toString(param) + "Attributed spawn window: " + entitySpawnInfo.getSpawnWindowID());
switch (entitySpawnInfo.getEntityType()) {
case VOID_CIRCLE:
VoidCircle voidCircle = voidCirclePool.obtain();
voidCircle.init(param[0], param[1], param[2], param[3], param[4]);
activeEnemies.add(voidCircle);
stage.addActor(voidCircle);
return voidCircle;
break;
case LASER:
Laser laser = laserPool.obtain();
laser.init(param[0], param[1], param[2]);
activeAllies.add(laser);
stage.addActor(laser);
return laser;
break;
case PELLET:
Pellet pellet = pelletPool.obtain();
pellet.init(param[0], param[1], param[2], param[3]);
activeEnemies.add(pellet);
stage.addActor(pellet);
return pellet;
break;
case SHARD:
Shard shard = shardPool.obtain();
shard.init(param[0], param[1], param[2], param[3], (int) param[4]);
activeEnemies.add(shard);
stage.addActor(shard);
return shard;
break;
case BAR:
Bar bar = barPool.obtain();
bar.init(param[0], param[1]);
activeEnemies.add(bar);
stage.addActor(bar);
return bar;
break;
case FLAKE:
Flake flake = flakePool.obtain();
Shard[] shards = new Shard[(int) param[0]];
@@ -157,13 +157,10 @@ public class EntityController {
flake.init(param[1], param[2], param[3], param[4], param[5], shards);
activeEnemies.add(flake);
stage.addActor(flake);
return flake;
default:
return null;
break;
}
} else {
return null;
}
return entitySpawnInfo;
}
public void free(Entity entity) {