v0.3.2a: refactored how level-generated visuals work, more flexible and resolves bugs

This commit is contained in:
Evan Debenham
2015-11-06 18:45:41 -05:00
committed by Evan Debenham
parent b5176de721
commit e2a57a0e31
14 changed files with 90 additions and 82 deletions
@@ -75,7 +75,7 @@ import com.shatteredpixel.shatteredpixeldungeon.ui.CustomTileVisual;
import com.shatteredpixel.shatteredpixeldungeon.sprites.ItemSprite;
import com.shatteredpixel.shatteredpixeldungeon.utils.GLog;
import com.watabou.noosa.Game;
import com.watabou.noosa.Scene;
import com.watabou.noosa.Group;
import com.watabou.noosa.audio.Sample;
import com.watabou.utils.Bundlable;
import com.watabou.utils.Bundle;
@@ -162,6 +162,8 @@ public abstract class Level implements Bundlable {
public HashSet<CustomTileVisual> customTiles;
protected ArrayList<Item> itemsToSpawn = new ArrayList<>();
protected Group visuals = new Group();
public int color1 = 0x004400;
public int color2 = 0x88CC44;
@@ -485,15 +487,17 @@ public abstract class Level implements Bundlable {
}
}
public void addVisuals( Scene scene ) {
public Group addVisuals() {
visuals.clear();
for (int i=0; i < LENGTH; i++) {
if (pit[i]) {
scene.add( new WindParticle.Wind( i ) );
visuals.add( new WindParticle.Wind( i ) );
if (i >= WIDTH && water[i-WIDTH]) {
scene.add( new FlowParticle.Flow( i - WIDTH ) );
visuals.add( new FlowParticle.Flow( i - WIDTH ) );
}
}
}
return visuals;
}
public int nMobs() {