Filled map list, added more blocks

This commit is contained in:
Anuken 2017-11-30 21:57:10 -05:00
parent 8abe4a9cee
commit 8455d48693
29 changed files with 357 additions and 291 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 254 B

After

Width:  |  Height:  |  Size: 315 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 226 B

After

Width:  |  Height:  |  Size: 378 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 199 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 160 B

BIN
core/assets/maps/arena.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

View File

Before

Width:  |  Height:  |  Size: 6.7 KiB

After

Width:  |  Height:  |  Size: 6.7 KiB

View File

Before

Width:  |  Height:  |  Size: 5.4 KiB

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.2 KiB

After

Width:  |  Height:  |  Size: 6.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

BIN
core/assets/maps/scorch.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.9 KiB

BIN
core/assets/maps/spiral.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 51 KiB

After

Width:  |  Height:  |  Size: 52 KiB

View File

@ -11,8 +11,9 @@ import io.anuke.mindustry.world.World;
import io.anuke.ucore.scene.ui.layout.Unit;
public class Vars{
public static final boolean testAndroid = false;
//shorthand for whether or not this is running on android
public static final boolean android = (Gdx.app.getType() == ApplicationType.Android);
public static final boolean android = (Gdx.app.getType() == ApplicationType.Android) || testAndroid;
//shorthand for whether or not this is running on GWT
public static final boolean gwt = (Gdx.app.getType() == ApplicationType.WebGL);
//how far away from the player blocks can be placed

View File

@ -30,21 +30,24 @@ public class EditorControl extends Module{
RidgedPerlin rid = new RidgedPerlin(1, 10, 20f);
RidgedPerlin rid2 = new RidgedPerlin(1, 6, 1f);
RidgedPerlin rid3 = new RidgedPerlin(1, 6, 1f);
String map = "volcano";
String map = "fortress";
ObjectMap<String, Boolean> prefs = new OrderedMap<String, Boolean>(){
{
put("replace", true);
put("terrain", false);
put("circle", false);
put("distort", false);
put("sand", false);
put("grass", false);
put("stone", false);
put("allgrass", false);
put("allsnow", false);
put("allsand", false);
put("lavarock", false);
put("water", false);
put("oil", false);
put("lavariver", false);
put("slavariver", false);
put("river", false);
put("iceriver", false);
put("oilriver", false);
@ -102,7 +105,7 @@ public class EditorControl extends Module{
for(int x = 0; x < pixmap.getWidth(); x++){
for(int y = 0; y < pixmap.getHeight(); y++){
float dist = Vector2.dst((float) x / pixmap.getWidth(), (float) y / pixmap.getHeight(), 0.5f, 0.5f) * 2f;
double noise = sim.octaveNoise2D(5, 0.6, 1 / 150.0, x, y + 9999) + dist / 10f;
double noise = sim.octaveNoise2D(6, 0.6, 1 / 180.0, x, y + 9999) / (prefs.get("circle") ? 1.7 : 1f) + dist / 10f;
if(dist > 0.8){
noise += 2 * (dist - 0.8);
@ -122,10 +125,10 @@ public class EditorControl extends Module{
int dx = 0, dy = 0;
if(prefs.get("distort")){
double intensity = 10;
double intensity = 12;
double scale = 80;
double octaves = 3;
double falloff = 0.7;
double octaves = 4;
double falloff = 0.6;
double nx = (sim.octaveNoise2D(octaves, falloff, 1 / scale, x, y) - 0.5f) * intensity;
double ny = (sim.octaveNoise2D(octaves, falloff, 1 / scale, x, y + 99999) - 0.5f) * intensity;
dx = (int) nx;
@ -148,23 +151,27 @@ public class EditorControl extends Module{
double noil = sim.octaveNoise2D(1, 1.0, 1 / 150.0, x + 9999, y) + sim.octaveNoise2D(1, 1.0, 1 / 2.0, x, y) / 290.0;
if(!floor || prefs.get("replace")){
if(prefs.get("allgrass")){
block = floor ? Blocks.grass : Blocks.grassblock;
}
if(prefs.get("allsnow")){
}else if(prefs.get("allsnow")){
block = floor ? Blocks.snow : Blocks.snowblock;
}else if(prefs.get("allsand")){
block = floor ? Blocks.sand : Blocks.sandblock;
}else if(prefs.get("replace")){
block = floor ? Blocks.stone : Blocks.stoneblock;
}
if(noise > 0.7 && prefs.get("grass")){
block = floor ? Blocks.grass : Blocks.grassblock;
}else if(noise > 0.7 && prefs.get("lavarock")){
}
if(noise > 0.7 && prefs.get("lavarock")){
block = floor ? Blocks.blackstone : Blocks.blackstoneblock;
}else if(noise > 0.7 && prefs.get("sand")){
}
if(noise > 0.7 && prefs.get("sand")){
block = floor ? Blocks.sand : Blocks.sandblock;
}else if(noise > 0.8 && prefs.get("stone")){
block = floor ? Blocks.stone : Blocks.stoneblock;
}else if(prefs.get("replace") && !prefs.get("allgrass") && !prefs.get("allsnow")){
}
if(noise > 0.8 && prefs.get("stone")){
block = floor ? Blocks.stone : Blocks.stoneblock;
}
}
@ -194,6 +201,16 @@ public class EditorControl extends Module{
block = Blocks.blackstone;
}
}
if(floor && prefs.get("slavariver")){
double lava = rid.getValue(x, y, 1 / 40f);
double t = 0.7;
if(lava > t){
block = Blocks.lava;
}else if(lava > t - 0.3){
block = Blocks.blackstone;
}
}
if(floor && prefs.get("oilriver")){
double lava = rid3.getValue(x, y, 1 / 100f);

View File

@ -16,7 +16,7 @@ import io.anuke.ucore.scene.ui.layout.Unit;
import io.anuke.ucore.scene.utils.Elements;
public class LevelDialog extends FloatingDialog{
private Map selectedMap = Map.delta;
private Map selectedMap = Map.maze;
private TextureRegion region = new TextureRegion();
public LevelDialog(){

View File

@ -8,6 +8,8 @@ import com.badlogic.gdx.Gdx;
import io.anuke.mindustry.Vars;
import io.anuke.mindustry.core.GameState;
import io.anuke.mindustry.core.GameState.State;
import io.anuke.ucore.scene.builders.build;
import io.anuke.ucore.scene.builders.imagebutton;
import io.anuke.ucore.scene.ui.ConfirmDialog;
import io.anuke.ucore.scene.ui.layout.Cell;
import io.anuke.ucore.scene.ui.layout.Unit;
@ -17,58 +19,85 @@ public class MenuDialog extends FloatingDialog{
private LoadDialog load = new LoadDialog();
public boolean wasPaused = false;
public MenuDialog(){
public MenuDialog() {
super("Paused");
setup();
}
void setup(){
content().defaults().width(220).height(50).units(Unit.dp);
content().addButton("Back", ()->{
hide();
if(!wasPaused)
GameState.set(State.playing);
});
shown(()->{
shown(() -> {
wasPaused = GameState.is(State.paused);
GameState.set(State.paused);
});
content().row();
content().addButton("Settings", ()->{
ui.showPrefs();
});
if(!Vars.android){
content().row();
content().addButton("Controls", ()->{
ui.showControls();
});
}
if(Gdx.app.getType() != ApplicationType.WebGL){
content().row();
content().addButton("Save Game", ()->{
save.show();
});
content().row();
content().addButton("Load Game", ()->{
load.show();
});
}
content().row();
content().addButton("Back to menu", ()->{
new ConfirmDialog("Confirm", "Are you sure you want to quit?", ()->{
content().defaults().width(220).height(50).units(Unit.dp);
content().addButton("Back", () -> {
hide();
GameState.set(State.menu);
}){{
for(Cell<?> cell : getButtonTable().getCells())
cell.pad(3).size(180, 44).units(Unit.dp);
}}.show();
});
if(!wasPaused)
GameState.set(State.playing);
});
content().row();
content().addButton("Settings", () -> {
ui.showPrefs();
});
if(Gdx.app.getType() != ApplicationType.WebGL){
content().row();
content().addButton("Save Game", () -> {
save.show();
});
content().row();
content().addButton("Load Game", () -> {
load.show();
});
}
content().row();
content().addButton("Quit", () -> {
new ConfirmDialog("Confirm", "Are you sure you want to quit?", () -> {
hide();
GameState.set(State.menu);
}){
{
for(Cell<?> cell : getButtonTable().getCells())
cell.pad(3).size(180, 44).units(Unit.dp);
}
}.show();
});
}else{
build.begin(content());
content().defaults().size(120f).pad(5).units(Unit.dp);
float isize = Unit.dp.inPixels(14f*4);
new imagebutton("icon-play-2", isize, () -> {
hide();
if(!wasPaused)
GameState.set(State.playing);
}).text("Back").padTop(4f);
new imagebutton("icon-tools", isize, () -> ui.showPrefs()).text("Settings").padTop(4f);
new imagebutton("icon-save", isize, ()-> save.show()).text("Save").padTop(4f);
new imagebutton("icon-load", isize, () -> load.show()).text("Load").padTop(4f);
new imagebutton("icon-quit", isize, () -> {
new ConfirmDialog("Confirm", "Are you sure you want to quit?", () -> {
hide();
GameState.set(State.menu);
}){{
for(Cell<?> cell : getButtonTable().getCells())
cell.pad(3).size(180, 44).units(Unit.dp);
}}.show();
}).text("Quit").padTop(4f);
build.end();
}
}
}

View File

@ -52,9 +52,7 @@ public class MenuFragment implements Fragment{
new imagebutton("icon-play-2", isize, () -> ui.showLevels()).text("Play").padTop(4f);
new imagebutton("icon-tutorial", isize, ()->{
control.playMap(Map.tutorial);
}).text("Tutorial").padTop(4f);
new imagebutton("icon-tutorial", isize, ()-> control.playMap(Map.tutorial)).text("Tutorial").padTop(4f);
new imagebutton("icon-load", isize, () -> ui.showLoadGame()).text("Load").padTop(4f);

View File

@ -103,6 +103,10 @@ public class Generator{
floor = Blocks.snow;
}
if(block == Blocks.sandblock){
floor = Blocks.sand;
}
if(floor == Blocks.grass && Mathf.chance(0.02) && block == Blocks.air){
block = Blocks.shrub;
}

View File

@ -3,20 +3,18 @@ package io.anuke.mindustry.world;
import com.badlogic.gdx.graphics.Color;
public enum Map{
delta("Starting map."),
pit("Eck."),
canyon("the canyon"),
maze("it's okay."),
volcano("desc"),
fortress("desc", true),
maze("desc"),
fortress("desc"),
sinkhole("desc"),
volcanic("desc"),
rooms("desc"),
caves("desc"),
volcano("desc", true),
caldera("desc"),
scorch("desc", Color.valueOf("e5d8bb")),
desert("desc"),
grassland("desc"){{
backgroundColor = Color.valueOf("5ab464");
}},
islands("desc", Color.valueOf("e5d8bb")),
grassland("desc", Color.valueOf("5ab464")),
tundra("desc"),
spiral("desc", Color.valueOf("f7feff")),
tutorial(false),
test1(false),
test2(false),
@ -43,4 +41,9 @@ public enum Map{
this.flipBase = flipBase;
this.description = description;
}
private Map(String description, Color background){
this(description);
backgroundColor = background;
}
}

View File

@ -10,7 +10,7 @@ public class DistributionBlocks{
conduit = new LiquidBlock("conduit"){{
fullDescription = "Basic liquid transport block. Works like a conveyor, but with liquids. "
+ "Best used with pumps or other conduits.";
+ "Best used with pumps or other conduits. Can be used as a bridge over liquids for enemies and players.";
health = 45;
}},
@ -31,7 +31,7 @@ public class DistributionBlocks{
conveyor = new Conveyor("conveyor"){{
description = "Moves items.";
fullDescription = "Basic item transport block. Moves items forward and automatically deposits them into turrets or crafters. "
+ "Can be rotated.";
+ "Rotatable. Can be used as a bridge over liquids for enemies and players.";
}},
steelconveyor = new Conveyor("steelconveyor"){{