From 21f3a053ed4f294f3edd853fff2e3a71db8fa5fa Mon Sep 17 00:00:00 2001 From: Anuken Date: Sun, 3 Mar 2019 19:54:20 -0500 Subject: [PATCH] Impact map balance / Block balance / Editor block sorting --- core/assets/maps/impact0079.mmap | Bin 515260 -> 515260 bytes .../io/anuke/mindustry/content/Blocks.java | 4 ++-- .../src/io/anuke/mindustry/content/Zones.java | 4 ++-- .../mindustry/editor/MapEditorDialog.java | 13 ++++++++++--- core/src/io/anuke/mindustry/type/Loadout.java | 2 +- 5 files changed, 15 insertions(+), 8 deletions(-) diff --git a/core/assets/maps/impact0079.mmap b/core/assets/maps/impact0079.mmap index 9c45ae297c2e078d796a2ca6c4d8ea1033e0d054..0353276104fd2f0a1bb3d372fc2f9ac42dbee6d6 100644 GIT binary patch delta 1046 zcmdn9Q-04*`Gyw87N!>FEi5e((=Tu_Nlx3#$TdCS9TWHT2Q17i+qX%u%wwOvK!}NT z`h-6$T+;)lGO|vWuVvwfsIh;@%(s1l0!u&p^ag8YE|40L>G2;~Sf{_zW)_$(@Rx~Y zdVV_#*Y*SrmJoI!#&SjmVa9e4F&#uKXPn+Rhec(&{ZD3AkO8dR2dWqt84fVcU}QKj zJ@6xoFvJ|NQ`8Jt;@CYID;OD68yFZFR6&Y_8CNhe2!}H$GN_^v7BD5M3=9k)SwRq? z$Z&wM6J)_m#_5W87^SAm2(ofdcUZv0x&5~}OC-A|VOSEdK05j8z~zxV3e%%sE|l9TWTX$Gt43 z(*@jEGN&6XXSJEWfS*-k`i9voy3-rX?yO;_+{mYaUzAG6%_ z58s(3rwi1w$bs~_O?Sv)=9(_=z{)+nAdyL8`T;2>`RNB{vj|V?W;CDtp(%cPf(Lv2 zb_YHt7RG6%%udq_ZZeroe;~!GF}_9 z8kQPH32;hK1xGWS0Q;#yfEC$K{|_>AZuhQZnZiEZ;Vp{>B%6XlYP)nB%S?8tyALq) dPruK?%+>z7m!FEi5e((;dWEl&1&0W8$9vfQ6Z5`!)%ddF<2ee=u&(Dq}l{n9j%` z%($F!dSDHU=JWz}7I}!-Y6dKE?9(UQVi6H!tYBnNZD0T?o&h3OOn>OXW;cDqZC38- z4hxt#xBoV0iDaMNkijA>tjbskQql<`W`c;7jME$Eu*gr}V96v0(IT*diF105DKpph ztM)AZ?9&@U!1}5{?&ty$vp~cu41Hj$X1lXAvQKyT$*ewof)bMmx{0O!Eae!|V2#${ zAdMS#u?R!L=EHer<>?PDv$9P`xJNV|q2lgk?9<=yGV^ZVpU0BUK3!o0lOsg>0ShzdblG)G?9(6jvY1X6aAV1w zZm^uyX8HntR*mT!X0zx{Z_sCzoNjlUg@1ZL1uOsb1-&fh(-=YGTul7a1!`I3K)T$f zJLE8PO_z6I<(^)U$RsiSfE1JbG-(#$Y2A$GlRq@YPfze*kKgXV$Hc-ot(4hmdcjR5 zv*{0{ST&|M^s%~4o60CRHGoxWy1`mjC6GV(A^w<buWl!+y1(j{h}WLERERp diff --git a/core/src/io/anuke/mindustry/content/Blocks.java b/core/src/io/anuke/mindustry/content/Blocks.java index a0405e29b2..76d9c8742b 100644 --- a/core/src/io/anuke/mindustry/content/Blocks.java +++ b/core/src/io/anuke/mindustry/content/Blocks.java @@ -450,7 +450,7 @@ public class Blocks implements ContentList{ Items.titanium, 2 ); hasPower = true; - filterTime = 30f; + filterTime = 35f; spinnerLength = 1.5f; spinnerRadius = 3.5f; spinnerThickness = 1.5f; @@ -458,7 +458,7 @@ public class Blocks implements ContentList{ size = 2; consumes.power(1f); - consumes.liquid(Liquids.slag, 0.09f); + consumes.liquid(Liquids.slag, 0.07f); }}; cultivator = new Cultivator("cultivator"){{ diff --git a/core/src/io/anuke/mindustry/content/Zones.java b/core/src/io/anuke/mindustry/content/Zones.java index ae5d55ada9..d2bd4d6b73 100644 --- a/core/src/io/anuke/mindustry/content/Zones.java +++ b/core/src/io/anuke/mindustry/content/Zones.java @@ -361,11 +361,11 @@ public class Zones implements ContentList{ ).drops(ItemStack.with(Items.copper, 2000, Items.lead, 1500, Items.silicon, 1000, Items.graphite, 2000, Items.pyratite, 2000, Items.titanium, 2000, Items.metaglass, 1000, Items.coal, 2000))){{ loadout = Loadouts.basicFoundation; baseLaunchCost = ItemStack.with(Items.copper, 500, Items.lead, 500, Items.silicon, 100); - startingItems = ItemStack.list(Items.copper, 2000, Items.lead, 500, Items.silicon, 200); + startingItems = ItemStack.list(Items.copper, 2000, Items.lead, 500, Items.silicon, 200, Items.titanium, 400, Items.graphite, 200); itemRequirements = ItemStack.with(Items.silicon, 8000, Items.titanium, 6000, Items.graphite, 4000); conditionWave = 20; zoneRequirements = new Zone[]{stainedMountains}; - blockRequirements = new Block[]{Blocks.launchPad, Blocks.unloader}; + blockRequirements = new Block[]{Blocks.launchPad, Blocks.unloader, Blocks.melter, Blocks.separator}; resources = new Item[]{Items.scrap}; rules = () -> new Rules(){{ waves = true; diff --git a/core/src/io/anuke/mindustry/editor/MapEditorDialog.java b/core/src/io/anuke/mindustry/editor/MapEditorDialog.java index c13113a814..ab494b556a 100644 --- a/core/src/io/anuke/mindustry/editor/MapEditorDialog.java +++ b/core/src/io/anuke/mindustry/editor/MapEditorDialog.java @@ -29,6 +29,7 @@ import io.anuke.mindustry.ui.dialogs.FloatingDialog; import io.anuke.mindustry.world.Block; import io.anuke.mindustry.world.Block.Icon; import io.anuke.mindustry.world.blocks.OreBlock; +import io.anuke.mindustry.world.blocks.storage.CoreBlock; import java.io.DataInputStream; import java.io.InputStream; @@ -503,9 +504,15 @@ public class MapEditorDialog extends Dialog implements Disposable{ blocksOut.clear(); blocksOut.addAll(Vars.content.blocks()); - blocksOut.sort((b1, b2) -> b1.synthetic() && !b2.synthetic() ? 1 : b2.synthetic() && !b1.synthetic() ? -1 : - b1 instanceof OreBlock && !(b2 instanceof OreBlock) ? 1 : !(b1 instanceof OreBlock) && b2 instanceof OreBlock ? -1 : - Integer.compare(b1.id, b2.id)); + blocksOut.sort((b1, b2) -> { + int core = -Boolean.compare(b1 instanceof CoreBlock, b2 instanceof CoreBlock); + if(core != 0) return core; + int synth = Boolean.compare(b1.synthetic(), b2.synthetic()); + if(synth != 0) return synth; + int ore = Boolean.compare(b1 instanceof OreBlock, b2 instanceof OreBlock); + if(ore != 0) return ore; + return Integer.compare(b1.id, b2.id); + }); for(Block block : blocksOut){ TextureRegion region = block.icon(Icon.medium); diff --git a/core/src/io/anuke/mindustry/type/Loadout.java b/core/src/io/anuke/mindustry/type/Loadout.java index 5095a5a87c..312a5b4d4e 100644 --- a/core/src/io/anuke/mindustry/type/Loadout.java +++ b/core/src/io/anuke/mindustry/type/Loadout.java @@ -56,7 +56,7 @@ public class Loadout extends Content{ char c = layout[y].charAt(x); if(entries.containsKey(c)){ BlockEntry entry = entries.get(c); - blocks.put(Pos.get(x - coreX, layout.length - 1 - (y - coreY)), entry); + blocks.put(Pos.get(x - coreX, -(y - coreY)), entry); } } }