From d53f12aeb91a72553d8233e9f5db3f8a5c5dd5cb Mon Sep 17 00:00:00 2001 From: Anuken Date: Thu, 7 Sep 2017 22:14:21 -0400 Subject: [PATCH] Implemented replacement blocks --- android/AndroidManifest.xml | 4 +-- core/assets-raw/ui/icon-rotate.png | Bin 256 -> 190 bytes core/assets/ui/uiskin.png | Bin 12224 -> 12218 bytes core/src/io/anuke/mindustry/Inventory.java | 2 +- core/src/io/anuke/mindustry/UI.java | 30 +++++++++++++----- core/src/io/anuke/mindustry/Vars.java | 2 +- core/src/io/anuke/mindustry/World.java | 5 +++ .../io/anuke/mindustry/entities/Bullet.java | 4 +++ .../anuke/mindustry/entities/BulletType.java | 2 +- .../mindustry/entities/enemies/Enemy.java | 4 +++ .../io/anuke/mindustry/resource/Recipe.java | 2 +- .../io/anuke/mindustry/ui/UpgradeDialog.java | 2 +- .../mindustry/world/blocks/RepairTurret.java | 5 +++ desktop/mindustry-saves/0.mins | Bin 1461 -> 1358 bytes 14 files changed, 47 insertions(+), 15 deletions(-) diff --git a/android/AndroidManifest.xml b/android/AndroidManifest.xml index a14a86aa6f..56ad5d4ddc 100644 --- a/android/AndroidManifest.xml +++ b/android/AndroidManifest.xml @@ -1,8 +1,8 @@ + android:versionCode="8" + android:versionName="1.1.4" > diff --git a/core/assets-raw/ui/icon-rotate.png b/core/assets-raw/ui/icon-rotate.png index 77ed4bb76d05c8f2f532d5c410658466b4a5499f..8426b9ef47cb402015db39050a01858a76380936 100644 GIT binary patch delta 134 zcmV;10D1p_0=@x|Bo78+OGiWi{{a60|De66laV1GYzYSgEEJ%oImG|~082?kK~yNu zy-`6505AyB{{QE83SvaLG1je8)B;|YyL-2{8xjCeC6VN)sJLJU3YAQXnJKpRzO`C` ouQL86RxjcaIOUeDPREjK0is4A6b-H&aR2}S07*qoM6N<$f~^HKrvLx| delta 228 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 + + }); + + new button("P", ()->{ + + }); + + new button("S", ()->{ + + }); + + row(); + + itemtable = new table("button").end().top().left().colspan(3).fillX().size(-1).get(); get().setVisible(play); - Label fps = new Label(""); - fps.update(()->{ - fps.setText(Settings.getBool("fps") ? (Gdx.graphics.getFramesPerSecond() + " FPS") : ""); - }); + Label fps = new Label(()->(Settings.getBool("fps") ? (Gdx.graphics.getFramesPerSecond() + " FPS") : "")); row(); - add(fps); + add(fps).colspan(3).size(-1); }}.end(); @@ -599,13 +612,14 @@ public class UI extends SceneModule{ public void updateItems(){ itemtable.clear(); + itemtable.left(); for(Item stack : Inventory.getItemTypes()){ Image image = new Image(Draw.region("icon-" + stack.name())); Label label = new Label("" + Inventory.getAmount(stack)); label.setFontScale(fontscale*2f); itemtable.add(image).size(32).units(Unit.dp); - itemtable.add(label); + itemtable.add(label).left(); itemtable.row(); } } diff --git a/core/src/io/anuke/mindustry/Vars.java b/core/src/io/anuke/mindustry/Vars.java index 28a3d94f0f..8a2cd2d1d7 100644 --- a/core/src/io/anuke/mindustry/Vars.java +++ b/core/src/io/anuke/mindustry/Vars.java @@ -15,7 +15,7 @@ public class Vars{ //respawn time in frames public static final float respawnduration = 60*4; //time between waves in frames - public static final float wavespace = 30*60*(android ? 2 : 1); + public static final float wavespace = 25*60*(android ? 2 : 1); //how far away from spawn points the player can't place blocks public static final float enemyspawnspace = 65; //scale of the font diff --git a/core/src/io/anuke/mindustry/World.java b/core/src/io/anuke/mindustry/World.java index 7cc701edad..ad4c85f0e4 100644 --- a/core/src/io/anuke/mindustry/World.java +++ b/core/src/io/anuke/mindustry/World.java @@ -197,6 +197,11 @@ public class World{ } Tile tile = tile(x, y); + if(tile.block() != type && ((tile.block().name.contains("wall") && type.name.contains("wall")) || + (tile.block().name.contains("conveyor") && type.name.contains("conveyor")))){ + return true; + } + return tile != null && tile.block() == Blocks.air; } diff --git a/core/src/io/anuke/mindustry/entities/Bullet.java b/core/src/io/anuke/mindustry/entities/Bullet.java index b81a49569c..0300ee9e8a 100644 --- a/core/src/io/anuke/mindustry/entities/Bullet.java +++ b/core/src/io/anuke/mindustry/entities/Bullet.java @@ -22,6 +22,10 @@ public class Bullet extends BulletEntity{ type.draw(this); } + public float drawSize(){ + return 8; + } + @Override public void update(){ diff --git a/core/src/io/anuke/mindustry/entities/BulletType.java b/core/src/io/anuke/mindustry/entities/BulletType.java index eba69d8645..f151936895 100644 --- a/core/src/io/anuke/mindustry/entities/BulletType.java +++ b/core/src/io/anuke/mindustry/entities/BulletType.java @@ -25,7 +25,7 @@ public abstract class BulletType extends BaseBulletType{ }, sniper = new BulletType(3f, 20){ public void draw(Bullet b){ - Draw.color("lightgray"); + Draw.color(Color.LIGHT_GRAY); Draw.rect("bullet", b.x, b.y, b.angle()); Draw.reset(); } diff --git a/core/src/io/anuke/mindustry/entities/enemies/Enemy.java b/core/src/io/anuke/mindustry/entities/enemies/Enemy.java index 4296543f76..fc4749246d 100644 --- a/core/src/io/anuke/mindustry/entities/enemies/Enemy.java +++ b/core/src/io/anuke/mindustry/entities/enemies/Enemy.java @@ -41,6 +41,10 @@ public class Enemy extends DestructibleEntity{ heal(); } + public float drawSize(){ + return 12; + } + void move(){ Vector2 vec = Pathfind.find(this); vec.sub(x, y).setLength(speed); diff --git a/core/src/io/anuke/mindustry/resource/Recipe.java b/core/src/io/anuke/mindustry/resource/Recipe.java index 3d58fca099..05c7d9ec9f 100644 --- a/core/src/io/anuke/mindustry/resource/Recipe.java +++ b/core/src/io/anuke/mindustry/resource/Recipe.java @@ -21,7 +21,7 @@ public enum Recipe{ turret(defense, WeaponBlocks.turret, stack(Item.stone, 6)), dturret(defense, WeaponBlocks.doubleturret, stack(Item.stone, 12)), machineturret(defense, WeaponBlocks.machineturret, stack(Item.iron, 15), stack(Item.stone, 20)), - shotgunturret(defense, WeaponBlocks.shotgunturret, stack(Item.iron, 15), stack(Item.iron, 20)), + shotgunturret(defense, WeaponBlocks.shotgunturret, stack(Item.iron, 18), stack(Item.stone, 20)), flameturret(defense, WeaponBlocks.flameturret, stack(Item.iron, 25), stack(Item.steel, 18)), sniperturret(defense, WeaponBlocks.sniperturret, stack(Item.iron, 30), stack(Item.steel, 20)), diff --git a/core/src/io/anuke/mindustry/ui/UpgradeDialog.java b/core/src/io/anuke/mindustry/ui/UpgradeDialog.java index ff7f3a370d..817eba2033 100644 --- a/core/src/io/anuke/mindustry/ui/UpgradeDialog.java +++ b/core/src/io/anuke/mindustry/ui/UpgradeDialog.java @@ -35,7 +35,7 @@ public class UpgradeDialog extends Dialog{ getButtonTable().addButton("Ok", ()->{ hide(); - }); + }).size(84, 48).pad(4); Table weptab = new Table(); weptab.background("button"); diff --git a/core/src/io/anuke/mindustry/world/blocks/RepairTurret.java b/core/src/io/anuke/mindustry/world/blocks/RepairTurret.java index 11a8e6b28e..fdce540a7d 100644 --- a/core/src/io/anuke/mindustry/world/blocks/RepairTurret.java +++ b/core/src/io/anuke/mindustry/world/blocks/RepairTurret.java @@ -32,6 +32,11 @@ public class RepairTurret extends Turret{ } } + @Override + public void drawPixelOverlay(Tile tile){ + + } + @Override public void drawOver(Tile tile){ TurretEntity entity = tile.entity(); diff --git a/desktop/mindustry-saves/0.mins b/desktop/mindustry-saves/0.mins index a8f92b17b00a5b6c10e2a2d930cdb604bc289d6b..dc86eb02526b70666e551c28f8b4c49605731fc2 100644 GIT binary patch literal 1358 zcmZXTOKTHh6oyY?ZK#)AoXn)jB-ON-rWe!D>NFP+Z3Zn!7lMHl@m}xXA8^yXD;K)Z zg@_g0xDiF6cxkG&E(8$-QBjI@QQf-NbB^y<2_3@8^F8PNE;E@BQ5#XO}F%Vna3p9461 z0VxB03bOK8fO}~vc`0(mn?eb7G7iwAX(C&b|1CFc4Q3^?I++%Exuz&yeVc*Y7>s93 z|2&NKQZ~{TKz^&Z-@3UdO|7iDs{jE1G~WsmE6@?Vi#lxuWcDxaaGz~>Af5X0aq zaLbxNCixbSHO6{xS|0>>RzZPhRqHU;M*)8M5(?ZZ7#MCK6P^S(2Ew0Ux;_J}F9JM0 zaRg?|SJV22){bL<{^MvlOEBpZfY?bu_!Kg|-(e!lFqtU{ClKIbp+Fh#UIEHgh*))labiq~PR7$9$; zV-q^NZX${&0G$f_c)^&`ZImkt0iv!uD0eG}Nr_=7rV$0QfPw+{E==?uAeaNh4J2m7 z@a~arL~aitX29MG6Dafd@XAgvqOby+tT7b>)~s|m3K&Qz@b&t4 zO2m8F3fzg$iQ#Blp8%WKLqOz_0GB&<0}}m+oX3FZ9zaQf%b6!IJ$nK6Q~us5E;G3) zXF#SA8T8_Ow5HBhODUF=lSn^f{6!83@v%blqL){(Ycg$K#n#e_<%-i(6s4^&_1$>! zm#1CxJjfQMngG8;S%FP(5K(ABcb7p9Z4Y{<-qi7?NnM1OZ5@);7(zpy$3xF#>N&No zjTPl1|4-hwsn|kObviXp)x-Q!O;4=XtW4EOvL}g#sd15J@6(mbR6oM)rj^!ddxEMX zWIw0hC3>|)Goy6r7LmJr>P63~?fu@VH+B9?rAIu(76s&5UkdO=>^K0h4+7lR0^CV1 z0n!F4htLV~3uq^7plrZ;izsFwc@)Mv28g@^WYq96I*n<2kH|d^h#F}BV9ZAWerk(> z)F+tW33Q4lVM+$vVVFV#;Qx$r`v^?tiva%@b6-vL4W{+G0B^eSG@|GaL>tCoDhBcs RFxfNc^zx5KZ>;i5;UBbAd=UTu