Removed awt use / Sand recolor / Bugfixes / Link fix

This commit is contained in:
Anuken
2019-03-09 16:47:08 -05:00
parent 563e015c92
commit f86a07daee
22 changed files with 1265 additions and 1232 deletions

View File

@@ -10,6 +10,7 @@ buildscript{
dependencies{
classpath 'com.mobidevelop.robovm:robovm-gradle-plugin:2.3.5'
classpath "com.badlogicgames.gdx:gdx-tools:1.9.9"
classpath "com.badlogicgames.packr:packr:2.1-SNAPSHOT"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 92 B

After

Width:  |  Height:  |  Size: 1004 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 103 B

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 92 B

After

Width:  |  Height:  |  Size: 1014 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 510 B

After

Width:  |  Height:  |  Size: 510 B

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 MiB

After

Width:  |  Height:  |  Size: 1.3 MiB

View File

@@ -36,7 +36,7 @@ public class Blocks implements ContentList{
//environment
air, part, spawn, deepwater, water, tar, stone, craters, charr, sand, ice, snow,
holostone, rocks, icerocks, cliffs, pine, whiteTree, whiteTreeDead, sporeCluster,
iceSnow, sandWater, duneRocks, stainedRocks, stainedStone, stainedRocksRed, stainedStoneRed, stainedRocksYellow, stainedStoneYellow, stainedBoulder,
iceSnow, sandWater, duneRocks, sandRocks, stainedRocks, stainedStone, stainedRocksRed, stainedStoneRed, stainedRocksYellow, stainedStoneYellow, stainedBoulder,
metalFloor, metalFloorDamaged, metalFloor2, metalFloor3, metalFloor5, ignarock, magmarock, hotrock, snowrocks,
//crafting
@@ -213,6 +213,10 @@ public class Blocks implements ContentList{
variants = 2;
}};
sandRocks = new StaticWall("sandrocks"){{
variants = 2;
}};
pine = new StaticWall("pine"){{
//fillsTile = false;
variants = 0;
@@ -283,18 +287,18 @@ public class Blocks implements ContentList{
}};
ignarock = new Floor("ignarock"){{
blendGroup = sand;
}};
hotrock = new Floor("hotrock"){{
heat = 0.5f;
blendGroup = sand;
blendGroup = ignarock;
}};
magmarock = new Floor("magmarock"){{
heat = 0.75f;
updateEffect = Fx.magmasmoke;
blendGroup = sand;
blendGroup = ignarock;
}};
//endregion
@@ -717,7 +721,8 @@ public class Blocks implements ContentList{
massDriver = new MassDriver("mass-driver"){{
requirements(Category.distribution, ItemStack.with(Items.titanium, 250, Items.silicon, 150, Items.lead, 250, Items.thorium, 100));
size = 3;
itemCapacity = 60;
itemCapacity = 120;
reloadTime = 200f;
range = 440f;
}};

View File

@@ -89,7 +89,7 @@ public class Items implements ContentList{
flammability = 1.05f;
}};
sand = new Item("sand", Color.valueOf("e3d39e")){{
sand = new Item("sand", Color.valueOf("f7cba4")){{
}};

View File

@@ -186,7 +186,7 @@ public class Zones implements ContentList{
}};
}};
ruinousShores = new Zone("ruinousShores", new MapGenerator("ruinousShores", 1)){{
ruinousShores = new Zone("ruinousShores", new MapGenerator("ruinousShores", 1).dist(3f, true)){{
loadout = Loadouts.basicFoundation;
baseLaunchCost = ItemStack.with(Items.copper, 200, Items.graphite, 50);
startingItems = ItemStack.list(Items.copper, 400);

View File

@@ -17,12 +17,10 @@ public enum Binding implements KeyBind{
rotate(new Axis(KeyCode.SCROLL)),
pick(KeyCode.MOUSE_MIDDLE),
dash(KeyCode.SHIFT_LEFT),
drop_unit(KeyCode.SHIFT_LEFT),
gridMode(KeyCode.GRAVE),
gridModeShift(KeyCode.ALT_LEFT),
zoom_hold(KeyCode.CONTROL_LEFT, "view"),
zoom(new Axis(KeyCode.SCROLL)),
zoom_minimap(new Axis(KeyCode.MINUS, KeyCode.PLUS)),
menu(Core.app.getType() == ApplicationType.Android ? KeyCode.BACK : KeyCode.ESCAPE),
pause(KeyCode.SPACE),
toggle_menus(KeyCode.C),

View File

@@ -164,7 +164,7 @@ public class DesktopInput extends InputHandler{
renderer.scaleCamera(Core.input.axisTap(Binding.zoom));
}
renderer.minimap.zoomBy(-Core.input.axisTap(Binding.zoom_minimap));
//renderer.minimap.zoomBy(-Core.input.axisTap(Binding.zoom_minimap));
if(player.isDead()) return;

View File

@@ -8,7 +8,7 @@ public class Links{
private static void createLinks(){
links = new LinkEntry[]{
new LinkEntry("discord", "https://discord.gg/BKADYds", Color.valueOf("7289da")),
new LinkEntry("discord", "https://discord.gg/mindustry", Color.valueOf("7289da")),
new LinkEntry("trello", "https://trello.com/b/aE2tcUwF", Color.valueOf("026aa7")),
new LinkEntry("wiki", "http://mindustry.wikia.com/wiki/Mindustry_Wiki", Color.valueOf("0f142f")),
new LinkEntry("itch.io", "https://anuke.itch.io/mindustry", Color.valueOf("fa5c5c")),

View File

@@ -120,6 +120,7 @@ public class SettingsMenuDialog extends SettingsDialog{
void addSettings(){
//TODO add when sound works again
//sound.volumePrefs();
sound.add("[LIGHT_GRAY]there is no sound implemented in v4 yet");
game.screenshakePref();
game.checkPref("effects", true);

View File

@@ -366,7 +366,7 @@ public class Block extends BlockStorage{
boolean buffered = consumes.get(ConsumePower.class).isBuffered;
float capacity = consumes.get(ConsumePower.class).powerCapacity;
bars.add("power", entity -> new Bar(() -> buffered ? Core.bundle.format("blocks.powerbalance", Float.isNaN(entity.power.satisfaction * capacity) ? "<BUGGED>" : (int)(entity.power.satisfaction * capacity)) :
bars.add("power", entity -> new Bar(() -> buffered ? Core.bundle.format("blocks.powerbalance", Float.isNaN(entity.power.satisfaction * capacity) ? "<ERROR>" : (int)(entity.power.satisfaction * capacity)) :
Core.bundle.get("blocks.power"), () -> Pal.powerBar, () -> entity.power.satisfaction));
}
}

View File

@@ -9,6 +9,7 @@ import io.anuke.arc.util.serialization.JsonWriter.OutputType;
import io.anuke.mindustry.Vars;
import io.anuke.mindustry.game.Version;
import io.anuke.mindustry.net.Net;
import org.lwjgl.util.tinyfd.TinyFileDialogs;
import java.io.PrintWriter;
import java.io.StringWriter;
@@ -25,34 +26,24 @@ public class CrashHandler{
try{
//check crash report setting
if(!Core.settings.getBool("crashreport")){
if(!Core.settings.getBool("crashreport", true)){
return;
}
}catch(Throwable ignored){
//don't send since we don't know if the user has the setting set
return;
}
if(!OS.isMac){
try{
javax.swing.UIManager.setLookAndFeel(javax.swing.UIManager.getSystemLookAndFeelClassName());
}catch(Throwable ignored){}
//if there's no settings init we don't know what the user wants but chances are it's an important crash, so send it anyway
}
boolean badGPU = false;
if(!OS.isMac && e.getMessage() != null && (e.getMessage().contains("Couldn't create window") || e.getMessage().contains("OpenGL 2.0 or higher"))){
try{
javax.swing.JOptionPane.showMessageDialog(null, "Your graphics card does not support OpenGL 2.0!\n" +
"Try to update your graphics drivers.\n\n" +
"(If that doesn't work, your computer just doesn't support Mindustry.)",
"oh no", javax.swing.JOptionPane.INFORMATION_MESSAGE);
badGPU = true;
}catch(Throwable ignored){}
if(e.getMessage() != null && (e.getMessage().contains("Couldn't create window") || e.getMessage().contains("OpenGL 2.0 or higher"))){
dialog(() -> TinyFileDialogs.tinyfd_messageBox("oh no", "Your graphics card does not support OpenGL 2.0!\n" +
"Try to update your graphics drivers.\n\n" +
"(If that doesn't work, your computer just doesn't support Mindustry.)", "ok", "error", true));
badGPU = true;
}
//don't create crash logs for me (anuke), as it's expected
//also don't create logs for custom builds
//don't create crash logs for me (anuke) or custom builds, as it's expected
if(System.getProperty("user.name").equals("anuke") || Version.build == -1) return;
boolean netActive = false, netServer = false;
@@ -83,14 +74,12 @@ public class CrashHandler{
try{
Path path = Paths.get(OS.getAppDataDirectoryString(Vars.appName), "crashes",
"crash-report-" + DateTimeFormatter.ofPattern("MM dd yyyy HH mm ss").format(LocalDateTime.now()) + ".txt");
"crash-report-" + DateTimeFormatter.ofPattern("MM_dd_yyyy_HH_mm_ss").format(LocalDateTime.now()) + ".txt");
Files.createDirectories(Paths.get(OS.getAppDataDirectoryString(Vars.appName), "crashes"));
Files.write(path, parseException(e).getBytes());
if(!badGPU){
javax.swing.JOptionPane.showMessageDialog(null, "A crash has occured. It has been saved in:\n" + path.toAbsolutePath().toString(),
"oh no", javax.swing.JOptionPane.INFORMATION_MESSAGE);
dialog(() -> TinyFileDialogs.tinyfd_messageBox("oh no", "A crash has occured. It has been saved in:\n" + path.toAbsolutePath().toString(), "ok", "error", true));
}
}catch(Throwable t){
Log.err("Failed to save local crash report.");
@@ -107,8 +96,12 @@ public class CrashHandler{
System.exit(1);
});
//sleep forever
try{ Thread.sleep(Long.MAX_VALUE); }catch(InterruptedException ignored){}
//sleep for 10 seconds or until crash report is sent
try{ Thread.sleep(10000); }catch(InterruptedException ignored){}
}
private static void dialog(Runnable r){
new Thread(r).start();
}
private static String parseException(Throwable e){