Refactored planet rendering to different classes

This commit is contained in:
Anuken
2020-02-23 19:05:25 -05:00
parent 9af93dc44d
commit 7f53328f52
11 changed files with 189 additions and 195 deletions

View File

@@ -0,0 +1,31 @@
package mindustry.maps.generators;
import arc.math.geom.*;
import mindustry.graphics.*;
import mindustry.type.*;
import mindustry.world.*;
public abstract class PlanetGenerator extends BasicGenerator implements PlanetMesher{
protected Sector sector;
protected void genTile(Vec3 position, TileGen tile){
}
public void generate(Tiles tiles, Sector sec){
this.tiles = tiles;
this.sector = sec;
this.rand.setSeed(sec.id);
TileGen gen = new TileGen();
tiles.each((x, y) -> {
gen.reset();
Vec3 position = sector.rect.project(x / (float)tiles.width, y / (float)tiles.height);
genTile(position, gen);
tiles.set(x, y, new Tile(x, y, gen.floor, gen.overlay, gen.block));
});
generate(tiles);
}
}