diff --git a/build.gradle b/build.gradle index 142d38bb71..4ddfbb579e 100644 --- a/build.gradle +++ b/build.gradle @@ -80,7 +80,7 @@ project(":core") { dependencies { //compile fileTree(dir: '../core/lib', include: '*.jar') - compile 'com.github.anuken:ucore:309fbe900d' + compile 'com.github.anuken:ucore:627f0c756d' compile "com.badlogicgames.gdx:gdx:$gdxVersion" compile "com.badlogicgames.gdx:gdx-ai:1.8.1" } diff --git a/core/src/io/anuke/mindustry/Control.java b/core/src/io/anuke/mindustry/Control.java index 2e2b906e23..b82611d7c7 100644 --- a/core/src/io/anuke/mindustry/Control.java +++ b/core/src/io/anuke/mindustry/Control.java @@ -25,7 +25,6 @@ import io.anuke.ucore.entities.Entity; import io.anuke.ucore.graphics.Atlas; import io.anuke.ucore.modules.RendererModule; import io.anuke.ucore.util.Mathf; -import io.anuke.ucore.util.Timers; public class Control extends RendererModule{ public int rangex = 10, rangey = 10; @@ -49,7 +48,7 @@ public class Control extends RendererModule{ Vars.debug = true; } - cameraScale = baseCameraScale; + Core.cameraScale = baseCameraScale; pixelate(); Gdx.input.setCatchBackKey(true); @@ -59,7 +58,7 @@ public class Control extends RendererModule{ Inputs.addProcessor(new AndroidInput()); } - Draw.addSurface("shadow", cameraScale); + Draw.addSurface("shadow", Core.cameraScale); atlas = new Atlas("sprites.atlas"); @@ -91,11 +90,11 @@ public class Control extends RendererModule{ } public void setCameraScale(int scale){ - this.cameraScale = scale; + Core.cameraScale = scale; resize(Gdx.graphics.getWidth(), Gdx.graphics.getHeight()); setCamera(player.x, player.y); - Draw.getSurface("pixel").setScale(cameraScale); - Draw.getSurface("shadow").setScale(cameraScale); + Draw.getSurface("pixel").setScale(Core.cameraScale); + Draw.getSurface("shadow").setScale(Core.cameraScale); } public void reset(){ @@ -384,7 +383,7 @@ public class Control extends RendererModule{ if(android){ camera.position.set((int)camera.position.x, (int)camera.position.y, 0); - if(Gdx.graphics.getHeight()/cameraScale % 2 == 1){ + if(Gdx.graphics.getHeight()/Core.cameraScale % 2 == 1){ camera.position.add(0, -0.5f, 0); } } @@ -427,8 +426,8 @@ public class Control extends RendererModule{ public void resize(int width, int height){ super.resize(width, height); - rangex = (int) (width / tilesize / cameraScale/2)+2; - rangey = (int) (height / tilesize / cameraScale/2)+2; + rangex = (int) (width / tilesize / Core.cameraScale/2)+2; + rangey = (int) (height / tilesize / Core.cameraScale/2)+2; AndroidInput.mousex = Gdx.graphics.getWidth()/2; AndroidInput.mousey = Gdx.graphics.getHeight()/2; diff --git a/core/src/io/anuke/mindustry/Mindustry.java b/core/src/io/anuke/mindustry/Mindustry.java index ba1783eef6..473ee2e384 100644 --- a/core/src/io/anuke/mindustry/Mindustry.java +++ b/core/src/io/anuke/mindustry/Mindustry.java @@ -1,8 +1,8 @@ package io.anuke.mindustry; -import io.anuke.ucore.modules.Core; +import io.anuke.ucore.modules.ModuleCore; -public class Mindustry extends Core { +public class Mindustry extends ModuleCore { public static String[] args = {}; @Override diff --git a/core/src/io/anuke/mindustry/UI.java b/core/src/io/anuke/mindustry/UI.java index b7874af584..06fefb2da1 100644 --- a/core/src/io/anuke/mindustry/UI.java +++ b/core/src/io/anuke/mindustry/UI.java @@ -19,8 +19,7 @@ import io.anuke.mindustry.entities.Weapon; import io.anuke.mindustry.input.AndroidInput; import io.anuke.mindustry.resource.*; import io.anuke.mindustry.ui.*; -import io.anuke.ucore.core.Draw; -import io.anuke.ucore.core.Settings; +import io.anuke.ucore.core.*; import io.anuke.ucore.function.Listenable; import io.anuke.ucore.function.VisibilityProvider; import io.anuke.ucore.graphics.Hue; @@ -33,7 +32,6 @@ import io.anuke.ucore.scene.builders.*; import io.anuke.ucore.scene.event.InputEvent; import io.anuke.ucore.scene.ui.*; import io.anuke.ucore.scene.ui.layout.*; -import io.anuke.ucore.util.Timers; public class UI extends SceneModule{ Table itemtable, weapontable, tools, loadingtable; @@ -397,14 +395,14 @@ public class UI extends SceneModule{ int min = base-zoomScale*2; int max = base+zoomScale; new button("+", ()->{ - if(control.cameraScale < max){ - control.setCameraScale(control.cameraScale+zoomScale); + if(Core.cameraScale < max){ + control.setCameraScale(Core.cameraScale+zoomScale); } }).size(Unit.dp.inPixels(40)); new button("-", ()->{ - if(control.cameraScale > min){ - control.setCameraScale(control.cameraScale-zoomScale); + if(Core.cameraScale > min){ + control.setCameraScale(Core.cameraScale-zoomScale); } }).size(Unit.dp.inPixels(40)); @@ -522,7 +520,7 @@ public class UI extends SceneModule{ }); tools.update(()->{ - tools.setPosition(AndroidInput.mousex, Gdx.graphics.getHeight()-AndroidInput.mousey-15*control.cameraScale, Align.top); + tools.setPosition(AndroidInput.mousex, Gdx.graphics.getHeight()-AndroidInput.mousey-15*Core.cameraScale, Align.top); }); updateItems(); diff --git a/core/src/io/anuke/mindustry/entities/Player.java b/core/src/io/anuke/mindustry/entities/Player.java index e273ef7571..bb4978026f 100644 --- a/core/src/io/anuke/mindustry/entities/Player.java +++ b/core/src/io/anuke/mindustry/entities/Player.java @@ -11,7 +11,6 @@ import io.anuke.mindustry.resource.Recipe; import io.anuke.ucore.core.*; import io.anuke.ucore.entities.DestructibleEntity; import io.anuke.ucore.util.Angles; -import io.anuke.ucore.util.Timers; public class Player extends DestructibleEntity{ public Weapon weapon; diff --git a/core/src/io/anuke/mindustry/entities/enemies/Enemy.java b/core/src/io/anuke/mindustry/entities/enemies/Enemy.java index 3612ce47c4..6e88c176c9 100644 --- a/core/src/io/anuke/mindustry/entities/enemies/Enemy.java +++ b/core/src/io/anuke/mindustry/entities/enemies/Enemy.java @@ -11,9 +11,8 @@ import io.anuke.mindustry.entities.Player; import io.anuke.mindustry.world.Tile; import io.anuke.ucore.core.Draw; import io.anuke.ucore.core.Effects; +import io.anuke.ucore.core.Timers; import io.anuke.ucore.entities.*; -import io.anuke.ucore.util.Mathf; -import io.anuke.ucore.util.Timers; public class Enemy extends DestructibleEntity{ protected float speed = 0.3f; @@ -123,11 +122,11 @@ public class Enemy extends DestructibleEntity{ move(); - xvelocity = (x - lastx) / Mathf.delta(); - yvelocity = (y - lasty) / Mathf.delta(); + xvelocity = (x - lastx) / Timers.delta(); + yvelocity = (y - lasty) / Timers.delta(); if(target == null){ - direction.add(xvelocity * Mathf.delta(), yvelocity * Mathf.delta()); + direction.add(xvelocity * Timers.delta(), yvelocity * Timers.delta()); direction.limit(speed*rotatespeed); }else{ float angle = angleTo(target); diff --git a/core/src/io/anuke/mindustry/entities/enemies/TestEnemy.java b/core/src/io/anuke/mindustry/entities/enemies/TestEnemy.java index 1472577371..b7d10ca02c 100644 --- a/core/src/io/anuke/mindustry/entities/enemies/TestEnemy.java +++ b/core/src/io/anuke/mindustry/entities/enemies/TestEnemy.java @@ -1,7 +1,6 @@ package io.anuke.mindustry.entities.enemies; -import io.anuke.ucore.util.Mathf; -import io.anuke.ucore.util.Timers; +import io.anuke.ucore.core.Timers; public class TestEnemy extends Enemy{ boolean dir = false; @@ -17,6 +16,6 @@ public class TestEnemy extends Enemy{ dir = !dir; } - move(dir ? -0.3f * Mathf.delta() : 0.3f * Mathf.delta(), 0); + move(dir ? -0.3f * Timers.delta() : 0.3f * Timers.delta(), 0); } } diff --git a/core/src/io/anuke/mindustry/input/AndroidInput.java b/core/src/io/anuke/mindustry/input/AndroidInput.java index 3c43fe08bf..ce7d4153f4 100644 --- a/core/src/io/anuke/mindustry/input/AndroidInput.java +++ b/core/src/io/anuke/mindustry/input/AndroidInput.java @@ -13,9 +13,7 @@ import io.anuke.mindustry.resource.ItemStack; import io.anuke.mindustry.world.Tile; import io.anuke.mindustry.world.blocks.Blocks; import io.anuke.mindustry.world.blocks.ProductionBlocks; -import io.anuke.ucore.core.Effects; -import io.anuke.ucore.core.Graphics; -import io.anuke.ucore.core.Sounds; +import io.anuke.ucore.core.*; import io.anuke.ucore.scene.utils.Cursors; import io.anuke.ucore.util.Mathf; @@ -51,7 +49,7 @@ public class AndroidInput extends InputAdapter{ public static void breakBlock(){ Tile tile = selected(); - player.breaktime += Mathf.delta(); + player.breaktime += Timers.delta(); if(player.breaktime >= tile.block().breaktime){ if(tile.block().drops != null){ Inventory.addItem(tile.block().drops.item, tile.block().drops.amount); @@ -101,7 +99,7 @@ public class AndroidInput extends InputAdapter{ if(Gdx.input.isTouched(0) && Mathf.near2d(lmousex, lmousey, Gdx.input.getX(0), Gdx.input.getY(0), 50) && !ui.hasMouse() && player.recipe == null){ - warmup += Mathf.delta(); + warmup += Timers.delta(); mousex = Gdx.input.getX(0); mousey = Gdx.input.getY(0); @@ -111,7 +109,7 @@ public class AndroidInput extends InputAdapter{ if(sel == null) return; if(warmup > warmupDelay && sel.block() != ProductionBlocks.core && sel.breakable()){ - player.breaktime += Mathf.delta(); + player.breaktime += Timers.delta(); if(player.breaktime > selected().block().breaktime){ breakBlock(); diff --git a/core/src/io/anuke/mindustry/input/GestureHandler.java b/core/src/io/anuke/mindustry/input/GestureHandler.java index cc5c2cfc7f..722d3111aa 100644 --- a/core/src/io/anuke/mindustry/input/GestureHandler.java +++ b/core/src/io/anuke/mindustry/input/GestureHandler.java @@ -9,9 +9,7 @@ import com.badlogic.gdx.math.Vector2; import io.anuke.mindustry.World; import io.anuke.mindustry.world.Tile; import io.anuke.mindustry.world.blocks.Blocks; -import io.anuke.ucore.core.Effects; -import io.anuke.ucore.core.Sounds; -import io.anuke.ucore.util.Mathf; +import io.anuke.ucore.core.*; public class GestureHandler extends GestureAdapter{ Vector2 pinch1 = new Vector2(-1, -1), pinch2 = pinch1.cpy(); @@ -21,7 +19,7 @@ public class GestureHandler extends GestureAdapter{ @Override public boolean longPress(float x, float y){ Tile tile = World.cursorTile(); - player.breaktime += Mathf.delta(); + player.breaktime += Timers.delta(); if(player.breaktime >= tile.block().breaktime){ Effects.effect("break", tile.worldx(), tile.worldy()); Effects.shake(3f, 1f); @@ -35,8 +33,8 @@ public class GestureHandler extends GestureAdapter{ @Override public boolean pan(float x, float y, float deltaX, float deltaY){ if(player.recipe == null){ - player.x -= deltaX*control.camera.zoom/control.cameraScale; - player.y += deltaY*control.camera.zoom/control.cameraScale; + player.x -= deltaX*control.camera.zoom/Core.cameraScale; + player.y += deltaY*control.camera.zoom/Core.cameraScale; }else{ AndroidInput.mousex += deltaX; AndroidInput.mousey += deltaY; @@ -57,8 +55,8 @@ public class GestureHandler extends GestureAdapter{ Vector2 vec = (vector.set(pointer1).add(pointer2).scl(0.5f)).sub(pinch1.add(pinch2).scl(0.5f)); - player.x -= vec.x*control.camera.zoom/control.cameraScale; - player.y += vec.y*control.camera.zoom/control.cameraScale; + player.x -= vec.x*control.camera.zoom/Core.cameraScale; + player.y += vec.y*control.camera.zoom/Core.cameraScale; pinch1.set(pointer1); pinch2.set(pointer2); diff --git a/core/src/io/anuke/mindustry/input/Input.java b/core/src/io/anuke/mindustry/input/Input.java index 08ea557245..a32e2486c5 100644 --- a/core/src/io/anuke/mindustry/input/Input.java +++ b/core/src/io/anuke/mindustry/input/Input.java @@ -12,9 +12,7 @@ import io.anuke.mindustry.resource.ItemStack; import io.anuke.mindustry.world.Tile; import io.anuke.mindustry.world.blocks.Blocks; import io.anuke.mindustry.world.blocks.ProductionBlocks; -import io.anuke.ucore.core.Effects; -import io.anuke.ucore.core.Inputs; -import io.anuke.ucore.core.Sounds; +import io.anuke.ucore.core.*; import io.anuke.ucore.scene.utils.Cursors; import io.anuke.ucore.util.Mathf; @@ -84,7 +82,7 @@ public class Input{ if(Inputs.buttonDown(Buttons.RIGHT) && World.cursorNear() && cursor.breakable() && cursor.block() != ProductionBlocks.core){ Tile tile = cursor; - player.breaktime += Mathf.delta(); + player.breaktime += Timers.delta(); if(player.breaktime >= tile.block().breaktime){ if(tile.block().drops != null){ Inventory.addItem(tile.block().drops.item, tile.block().drops.amount); diff --git a/core/src/io/anuke/mindustry/ui/LevelDialog.java b/core/src/io/anuke/mindustry/ui/LevelDialog.java index bcbf87997b..4846ec7ff0 100644 --- a/core/src/io/anuke/mindustry/ui/LevelDialog.java +++ b/core/src/io/anuke/mindustry/ui/LevelDialog.java @@ -7,9 +7,9 @@ import com.badlogic.gdx.graphics.g2d.TextureRegion; import io.anuke.mindustry.Vars; import io.anuke.mindustry.World; import io.anuke.ucore.core.Settings; +import io.anuke.ucore.core.Timers; import io.anuke.ucore.scene.ui.*; import io.anuke.ucore.scene.ui.layout.Unit; -import io.anuke.ucore.util.Timers; public class LevelDialog extends Dialog{ Label[] scores = new Label[maps.length]; diff --git a/core/src/io/anuke/mindustry/world/blocks/Conveyor.java b/core/src/io/anuke/mindustry/world/blocks/Conveyor.java index 87893f2b2f..687aa3655f 100644 --- a/core/src/io/anuke/mindustry/world/blocks/Conveyor.java +++ b/core/src/io/anuke/mindustry/world/blocks/Conveyor.java @@ -14,8 +14,8 @@ import io.anuke.mindustry.resource.Item; import io.anuke.mindustry.world.Block; import io.anuke.mindustry.world.Tile; import io.anuke.ucore.core.Draw; +import io.anuke.ucore.core.Timers; import io.anuke.ucore.util.Mathf; -import io.anuke.ucore.util.Timers; public class Conveyor extends Block{ float speed = 0.02f; @@ -64,10 +64,10 @@ public class Conveyor extends Block{ } if(canmove){ - pos.pos += speed * Mathf.delta(); - pos.y = MathUtils.lerp(pos.y, 0, 0.14f * Mathf.delta()); + pos.pos += speed * Timers.delta(); + pos.y = MathUtils.lerp(pos.y, 0, 0.14f * Timers.delta()); }else{ - pos.y = MathUtils.lerp(pos.y, pos.seed/128f/3f, 0.1f * Mathf.delta()); + pos.y = MathUtils.lerp(pos.y, pos.seed/128f/3f, 0.1f * Timers.delta()); } if(pos.pos >= 1f && offloadDir(tile, pos.item)){ diff --git a/core/src/io/anuke/mindustry/world/blocks/Crafter.java b/core/src/io/anuke/mindustry/world/blocks/Crafter.java index 8a5516b75d..d0c82ed780 100644 --- a/core/src/io/anuke/mindustry/world/blocks/Crafter.java +++ b/core/src/io/anuke/mindustry/world/blocks/Crafter.java @@ -4,7 +4,7 @@ import io.anuke.mindustry.resource.Item; import io.anuke.mindustry.world.Block; import io.anuke.mindustry.world.Tile; import io.anuke.ucore.core.Effects; -import io.anuke.ucore.util.Timers; +import io.anuke.ucore.core.Timers; public class Crafter extends Block{ protected Item[] requirements; diff --git a/core/src/io/anuke/mindustry/world/blocks/Drill.java b/core/src/io/anuke/mindustry/world/blocks/Drill.java index d1f0ce4c46..2adc7e69e3 100644 --- a/core/src/io/anuke/mindustry/world/blocks/Drill.java +++ b/core/src/io/anuke/mindustry/world/blocks/Drill.java @@ -10,7 +10,7 @@ import io.anuke.mindustry.world.Block; import io.anuke.mindustry.world.Tile; import io.anuke.ucore.core.Draw; import io.anuke.ucore.core.Effects; -import io.anuke.ucore.util.Timers; +import io.anuke.ucore.core.Timers; public class Drill extends Block{ protected Block resource; diff --git a/core/src/io/anuke/mindustry/world/blocks/ProductionBlocks.java b/core/src/io/anuke/mindustry/world/blocks/ProductionBlocks.java index 1b55a223e9..4e2d257a4f 100644 --- a/core/src/io/anuke/mindustry/world/blocks/ProductionBlocks.java +++ b/core/src/io/anuke/mindustry/world/blocks/ProductionBlocks.java @@ -10,7 +10,7 @@ import io.anuke.mindustry.resource.Item; import io.anuke.mindustry.world.Block; import io.anuke.mindustry.world.Tile; import io.anuke.ucore.core.Effects; -import io.anuke.ucore.util.Timers; +import io.anuke.ucore.core.Timers; public class ProductionBlocks{ public static final Block diff --git a/core/src/io/anuke/mindustry/world/blocks/RepairTurret.java b/core/src/io/anuke/mindustry/world/blocks/RepairTurret.java index fdce540a7d..f0233f1663 100644 --- a/core/src/io/anuke/mindustry/world/blocks/RepairTurret.java +++ b/core/src/io/anuke/mindustry/world/blocks/RepairTurret.java @@ -5,10 +5,10 @@ import com.badlogic.gdx.math.MathUtils; import io.anuke.mindustry.World; import io.anuke.mindustry.world.Tile; import io.anuke.ucore.core.Draw; +import io.anuke.ucore.core.Timers; import io.anuke.ucore.graphics.Hue; import io.anuke.ucore.util.Angles; import io.anuke.ucore.util.Mathf; -import io.anuke.ucore.util.Timers; public class RepairTurret extends Turret{ @@ -24,7 +24,7 @@ public class RepairTurret extends Turret{ if(entity.target != null){ float target = entity.angleTo(entity.target); - entity.rotation = Mathf.slerp(entity.rotation, target, 0.16f*Mathf.delta()); + entity.rotation = Mathf.slerp(entity.rotation, target, 0.16f*Timers.delta()); if(Timers.get(tile, reload) && Angles.angleDist(target, entity.rotation) < 10){ entity.target.health++; diff --git a/core/src/io/anuke/mindustry/world/blocks/Turret.java b/core/src/io/anuke/mindustry/world/blocks/Turret.java index e859e407fb..b81b87156f 100644 --- a/core/src/io/anuke/mindustry/world/blocks/Turret.java +++ b/core/src/io/anuke/mindustry/world/blocks/Turret.java @@ -17,10 +17,10 @@ import io.anuke.mindustry.world.Block; import io.anuke.mindustry.world.Tile; import io.anuke.ucore.core.Draw; import io.anuke.ucore.core.Effects; +import io.anuke.ucore.core.Timers; import io.anuke.ucore.entities.Entities; import io.anuke.ucore.util.Angles; import io.anuke.ucore.util.Mathf; -import io.anuke.ucore.util.Timers; public class Turret extends Block{ protected float range = 50f; @@ -89,7 +89,7 @@ public class Turret extends Block{ if(enemy != null){ entity.rotation = MathUtils.lerpAngleDeg(entity.rotation, Angles.predictAngle(tile.worldx(), tile.worldy(), enemy.x, enemy.y, enemy.xvelocity, enemy.yvelocity, bullet.speed), - 0.2f*Mathf.delta()); + 0.2f*Timers.delta()); float reload = Vars.multiplier*this.reload; if(Timers.get(tile, reload)){ Effects.sound(shootsound, entity); diff --git a/core/src/io/anuke/mindustry/world/blocks/WeaponBlocks.java b/core/src/io/anuke/mindustry/world/blocks/WeaponBlocks.java index 0e6dc04621..29cc997d34 100644 --- a/core/src/io/anuke/mindustry/world/blocks/WeaponBlocks.java +++ b/core/src/io/anuke/mindustry/world/blocks/WeaponBlocks.java @@ -4,8 +4,8 @@ import io.anuke.mindustry.entities.BulletType; import io.anuke.mindustry.resource.Item; import io.anuke.mindustry.world.Block; import io.anuke.mindustry.world.Tile; +import io.anuke.ucore.core.Timers; import io.anuke.ucore.util.Mathf; -import io.anuke.ucore.util.Timers; public class WeaponBlocks{ public static Block diff --git a/core/src/io/anuke/ucore/function/CollisionMap.java b/core/src/io/anuke/ucore/function/CollisionMap.java deleted file mode 100644 index 4165664ca2..0000000000 --- a/core/src/io/anuke/ucore/function/CollisionMap.java +++ /dev/null @@ -1,7 +0,0 @@ -package io.anuke.ucore.function; - -import io.anuke.ucore.aabb.Collider; - -public interface CollisionMap{ - public boolean valid(Collider c, float x, float y); -} diff --git a/core/src/io/anuke/ucore/function/ContactFilter.java b/core/src/io/anuke/ucore/function/ContactFilter.java deleted file mode 100644 index 0502c9af26..0000000000 --- a/core/src/io/anuke/ucore/function/ContactFilter.java +++ /dev/null @@ -1,7 +0,0 @@ -package io.anuke.ucore.function; - -import io.anuke.ucore.aabb.Collider; - -public interface ContactFilter{ - public boolean collide(Collider a, Collider b); -} diff --git a/core/src/io/anuke/ucore/function/ContactListener.java b/core/src/io/anuke/ucore/function/ContactListener.java deleted file mode 100644 index 5f3ce4a2e5..0000000000 --- a/core/src/io/anuke/ucore/function/ContactListener.java +++ /dev/null @@ -1,7 +0,0 @@ -package io.anuke.ucore.function; - -import io.anuke.ucore.aabb.Collider; - -public interface ContactListener{ - public void onContact(Collider a, Collider b); -}