diff --git a/core/assets-raw/sprites/blocks/chainturret-icon_old.png b/core/assets-raw/sprites/blocks/chainturret-icon_old.png deleted file mode 100644 index 12e4f5f7d5..0000000000 Binary files a/core/assets-raw/sprites/blocks/chainturret-icon_old.png and /dev/null differ diff --git a/core/assets-raw/sprites/blocks/chainturret_old.png b/core/assets-raw/sprites/blocks/chainturret_old.png deleted file mode 100644 index 3b03c296f1..0000000000 Binary files a/core/assets-raw/sprites/blocks/chainturret_old.png and /dev/null differ diff --git a/core/assets-raw/sprites/blocks/titancannon-icon_old.png b/core/assets-raw/sprites/blocks/titancannon-icon_old.png deleted file mode 100644 index 9d4cee27fb..0000000000 Binary files a/core/assets-raw/sprites/blocks/titancannon-icon_old.png and /dev/null differ diff --git a/core/assets-raw/sprites/blocks/titancannon_old.png b/core/assets-raw/sprites/blocks/titancannon_old.png deleted file mode 100644 index fc492458c2..0000000000 Binary files a/core/assets-raw/sprites/blocks/titancannon_old.png and /dev/null differ diff --git a/core/assets/version.properties b/core/assets/version.properties index 8617720ed4..f67546d8c5 100644 --- a/core/assets/version.properties +++ b/core/assets/version.properties @@ -1,5 +1,5 @@ #Autogenerated file. Do not modify. -#Sat Apr 21 18:47:28 EDT 2018 +#Sun Apr 22 16:19:48 EDT 2018 version=pre-alpha androidBuildCode=1087 name=Mindustry diff --git a/core/src/io/anuke/mindustry/ai/BlockIndexer.java b/core/src/io/anuke/mindustry/ai/BlockIndexer.java new file mode 100644 index 0000000000..3523d2732b --- /dev/null +++ b/core/src/io/anuke/mindustry/ai/BlockIndexer.java @@ -0,0 +1,6 @@ +package io.anuke.mindustry.ai; + +/**Class used for indexing special target blocks for AI. + * TODO implement this class*/ +public class BlockIndexer { +} diff --git a/core/src/io/anuke/mindustry/content/Recipes.java b/core/src/io/anuke/mindustry/content/Recipes.java index 0aad0e5dbf..88cb592b1e 100644 --- a/core/src/io/anuke/mindustry/content/Recipes.java +++ b/core/src/io/anuke/mindustry/content/Recipes.java @@ -114,7 +114,10 @@ public class Recipes { new Recipe(liquid, LiquidBlocks.pump, stack(Items.steel, 10)), new Recipe(liquid, LiquidBlocks.fluxpump, stack(Items.steel, 10), stack(Items.densealloy, 5)), - new Recipe(units, UnitBlocks.flierFactory, stack(Items.steel, 10)), + new Recipe(units, UnitBlocks.droneFactory, stack(Items.steel, 10)), + new Recipe(units, UnitBlocks.vtolFactory, stack(Items.steel, 10)), + new Recipe(units, UnitBlocks.droneFactory, stack(Items.steel, 10)), + new Recipe(units, UnitBlocks.droneFactory, stack(Items.steel, 10)), new Recipe(units, UnitBlocks.walkerFactory, stack(Items.steel, 10)), new Recipe(units, DebugBlocks.itemSource, stack(Items.steel, 10)).setDebug(), diff --git a/core/src/io/anuke/mindustry/content/UnitTypes.java b/core/src/io/anuke/mindustry/content/UnitTypes.java index 3305245e10..0b960c98fd 100644 --- a/core/src/io/anuke/mindustry/content/UnitTypes.java +++ b/core/src/io/anuke/mindustry/content/UnitTypes.java @@ -1,12 +1,13 @@ package io.anuke.mindustry.content; import io.anuke.mindustry.entities.units.UnitType; -import io.anuke.mindustry.entities.units.types.Flier; +import io.anuke.mindustry.entities.units.types.Vtol; import io.anuke.mindustry.entities.units.types.Scout; public class UnitTypes { public static final UnitType + drone = new Vtol(), scout = new Scout(), - flier = new Flier(); + vtol = new Vtol(); } diff --git a/core/src/io/anuke/mindustry/content/blocks/UnitBlocks.java b/core/src/io/anuke/mindustry/content/blocks/UnitBlocks.java index dd2eea11be..3b79d0e3d6 100644 --- a/core/src/io/anuke/mindustry/content/blocks/UnitBlocks.java +++ b/core/src/io/anuke/mindustry/content/blocks/UnitBlocks.java @@ -4,13 +4,22 @@ import io.anuke.mindustry.content.Items; import io.anuke.mindustry.content.UnitTypes; import io.anuke.mindustry.resource.ItemStack; import io.anuke.mindustry.world.Block; -import io.anuke.mindustry.world.blocks.types.production.UnitFactory; +import io.anuke.mindustry.world.blocks.types.units.UnitFactory; public class UnitBlocks { public static final Block - flierFactory = new UnitFactory("flierfactory"){{ - type = UnitTypes.flier; + droneFactory = new UnitFactory("dronefactory"){{ + type = UnitTypes.drone; + produceTime = 200; + size = 2; + requirements = new ItemStack[]{ + new ItemStack(Items.stone, 5) + }; + }}, + + vtolFactory = new UnitFactory("vtolfactory"){{ + type = UnitTypes.vtol; produceTime = 200; size = 2; requirements = new ItemStack[]{ diff --git a/core/src/io/anuke/mindustry/content/bullets/TurretBullets.java b/core/src/io/anuke/mindustry/content/bullets/TurretBullets.java index 68364418a0..05e35b3a84 100644 --- a/core/src/io/anuke/mindustry/content/bullets/TurretBullets.java +++ b/core/src/io/anuke/mindustry/content/bullets/TurretBullets.java @@ -123,7 +123,7 @@ public class TurretBullets { hiteffect = BulletFx.hitLancer; despawneffect = Fx.none; hitsize = 4; - lifetime = 20f; + lifetime = 16f; pierce = true; } @@ -134,12 +134,15 @@ public class TurretBullets { @Override public void draw(Bullet b) { - Lines.lineAngle(b.x, b.y, b.angle(), length); + float f = Mathf.curve(b.fin(), 0f, 0.2f); + float baseLen = length * f; + + Lines.lineAngle(b.x, b.y, b.angle(), baseLen); for(int s = 0; s < 3; s ++) { Draw.color(colors[s]); for (int i = 0; i < tscales.length; i++) { Lines.stroke(7f * b.fout() * (s == 0 ? 1.5f : s == 1 ? 1f : 0.3f) * tscales[i]); - Lines.lineAngle(b.x, b.y, b.angle(), length * lenscales[i]); + Lines.lineAngle(b.x, b.y, b.angle(), baseLen * lenscales[i]); } } Draw.reset(); diff --git a/core/src/io/anuke/mindustry/entities/units/types/Bomber.java b/core/src/io/anuke/mindustry/entities/units/types/Bomber.java new file mode 100644 index 0000000000..d344e003d5 --- /dev/null +++ b/core/src/io/anuke/mindustry/entities/units/types/Bomber.java @@ -0,0 +1,10 @@ +package io.anuke.mindustry.entities.units.types; + +import io.anuke.mindustry.entities.units.FlyingUnitType; + +public class Bomber extends FlyingUnitType { + + public Bomber(String name) { + super(name); + } +} diff --git a/core/src/io/anuke/mindustry/entities/units/types/Cruiser.java b/core/src/io/anuke/mindustry/entities/units/types/Cruiser.java new file mode 100644 index 0000000000..07aa14b11d --- /dev/null +++ b/core/src/io/anuke/mindustry/entities/units/types/Cruiser.java @@ -0,0 +1,10 @@ +package io.anuke.mindustry.entities.units.types; + +import io.anuke.mindustry.entities.units.FlyingUnitType; + +public class Cruiser extends FlyingUnitType { + + public Cruiser(String name) { + super(name); + } +} diff --git a/core/src/io/anuke/mindustry/entities/units/types/Reaper.java b/core/src/io/anuke/mindustry/entities/units/types/Reaper.java new file mode 100644 index 0000000000..94c098c075 --- /dev/null +++ b/core/src/io/anuke/mindustry/entities/units/types/Reaper.java @@ -0,0 +1,9 @@ +package io.anuke.mindustry.entities.units.types; + +import io.anuke.mindustry.entities.units.FlyingUnitType; + +public class Reaper extends FlyingUnitType { + public Reaper(String name) { + super(name); + } +} diff --git a/core/src/io/anuke/mindustry/entities/units/types/RepairDrone.java b/core/src/io/anuke/mindustry/entities/units/types/RepairDrone.java new file mode 100644 index 0000000000..f099addb36 --- /dev/null +++ b/core/src/io/anuke/mindustry/entities/units/types/RepairDrone.java @@ -0,0 +1,10 @@ +package io.anuke.mindustry.entities.units.types; + +import io.anuke.mindustry.entities.units.FlyingUnitType; + +public class RepairDrone extends FlyingUnitType { + + public RepairDrone(String name) { + super(name); + } +} diff --git a/core/src/io/anuke/mindustry/entities/units/types/Flier.java b/core/src/io/anuke/mindustry/entities/units/types/Vtol.java similarity index 68% rename from core/src/io/anuke/mindustry/entities/units/types/Flier.java rename to core/src/io/anuke/mindustry/entities/units/types/Vtol.java index 418b11daf6..169425d090 100644 --- a/core/src/io/anuke/mindustry/entities/units/types/Flier.java +++ b/core/src/io/anuke/mindustry/entities/units/types/Vtol.java @@ -2,9 +2,9 @@ package io.anuke.mindustry.entities.units.types; import io.anuke.mindustry.entities.units.FlyingUnitType; -public class Flier extends FlyingUnitType { +public class Vtol extends FlyingUnitType { - public Flier(){ + public Vtol(){ super("flier"); } diff --git a/core/src/io/anuke/mindustry/graphics/BlockRenderer.java b/core/src/io/anuke/mindustry/graphics/BlockRenderer.java index 3570be9eee..04dfab35ed 100644 --- a/core/src/io/anuke/mindustry/graphics/BlockRenderer.java +++ b/core/src/io/anuke/mindustry/graphics/BlockRenderer.java @@ -7,11 +7,11 @@ import io.anuke.mindustry.game.Team; import io.anuke.mindustry.world.Block; import io.anuke.mindustry.world.Tile; import io.anuke.mindustry.world.blocks.types.StaticBlock; -import io.anuke.mindustry.world.blocks.types.defense.Turret; import io.anuke.ucore.core.Graphics; import io.anuke.ucore.core.Settings; import io.anuke.ucore.graphics.Draw; import io.anuke.ucore.util.Mathf; + import java.util.Arrays; import static io.anuke.mindustry.Vars.*; @@ -230,8 +230,7 @@ public class BlockRenderer{ if((storeX == drawx - halfBlockWidth || storeX == drawx + halfBlockWidth || storeY == drawy - halfBlockHeight || storeY == drawy + halfBlockHeight) && ((tiley - control.input().getBlockY()) % block.size != 0 || (tilex - control.input().getBlockX()) % block.size != 0)) { return; - } - else { + }else{ storeX = drawx; storeY = drawy; } @@ -241,14 +240,6 @@ public class BlockRenderer{ Draw.color(Color.WHITE); Draw.alpha(opacity); - if(block instanceof Turret) { - if (block.isMultiblock()) { - Draw.rect("block-" + block.size + "x" + block.size, drawx, drawy); - } else { - Draw.rect("block", drawx, drawy); - } - } - drawPreview(block, drawx, drawy, rotation, opacity); Draw.reset(); diff --git a/core/src/io/anuke/mindustry/world/blocks/types/units/ResupplyPoint.java b/core/src/io/anuke/mindustry/world/blocks/types/units/ResupplyPoint.java new file mode 100644 index 0000000000..f4b5548bc3 --- /dev/null +++ b/core/src/io/anuke/mindustry/world/blocks/types/units/ResupplyPoint.java @@ -0,0 +1,4 @@ +package io.anuke.mindustry.world.blocks.types.units; + +public class ResupplyPoint { +} diff --git a/core/src/io/anuke/mindustry/world/blocks/types/production/UnitFactory.java b/core/src/io/anuke/mindustry/world/blocks/types/units/UnitFactory.java similarity index 99% rename from core/src/io/anuke/mindustry/world/blocks/types/production/UnitFactory.java rename to core/src/io/anuke/mindustry/world/blocks/types/units/UnitFactory.java index 3dd6f23a22..e4be3463e1 100644 --- a/core/src/io/anuke/mindustry/world/blocks/types/production/UnitFactory.java +++ b/core/src/io/anuke/mindustry/world/blocks/types/units/UnitFactory.java @@ -1,4 +1,4 @@ -package io.anuke.mindustry.world.blocks.types.production; +package io.anuke.mindustry.world.blocks.types.units; import com.badlogic.gdx.graphics.Colors; import com.badlogic.gdx.graphics.g2d.TextureRegion; diff --git a/core/src/io/anuke/mindustry/world/blocks/types/units/UnloadPoint.java b/core/src/io/anuke/mindustry/world/blocks/types/units/UnloadPoint.java new file mode 100644 index 0000000000..dd5e7c36c4 --- /dev/null +++ b/core/src/io/anuke/mindustry/world/blocks/types/units/UnloadPoint.java @@ -0,0 +1,4 @@ +package io.anuke.mindustry.world.blocks.types.units; + +public class UnloadPoint { +}