diff --git a/android/src/io/anuke/mindustry/DonationsActivity.java b/android/src/io/anuke/mindustry/DonationsActivity.java index 42dc2fad08..690ccc3413 100644 --- a/android/src/io/anuke/mindustry/DonationsActivity.java +++ b/android/src/io/anuke/mindustry/DonationsActivity.java @@ -32,7 +32,6 @@ public class DonationsActivity extends FragmentActivity { setTheme(R.style.GdxTheme); - //TODO setContentView(R.layout.donations_activity); FragmentTransaction ft = getSupportFragmentManager().beginTransaction(); @@ -74,7 +73,7 @@ public class DonationsActivity extends FragmentActivity { Fragment fragment = fragmentManager.findFragmentByTag("donationsFragment"); if (fragment != null) { fragment.onActivityResult(requestCode, resultCode, data); - //TODO donation event, set settings + //TODO donation event, set settings? } } } diff --git a/core/src/io/anuke/mindustry/Vars.java b/core/src/io/anuke/mindustry/Vars.java index 7c89f9cabf..89b8f38e3a 100644 --- a/core/src/io/anuke/mindustry/Vars.java +++ b/core/src/io/anuke/mindustry/Vars.java @@ -20,7 +20,7 @@ public class Vars{ //respawn time in frames public static final float respawnduration = 60*4; //time between waves in frames (on normal mode) - public static final float wavespace = 60*60*(android ? 1 : 1); //TODO revert + public static final float wavespace = 60*60*(android ? 1 : 1); //waves can last no longer than 3 minutes, otherwise the next one spawns public static final float maxwavespace = 60*60*4f; //advance time the pathfinding starts at diff --git a/core/src/io/anuke/mindustry/ai/MHueristic.java b/core/src/io/anuke/mindustry/ai/MHueristic.java index fed6e45b61..05bb2267ee 100644 --- a/core/src/io/anuke/mindustry/ai/MHueristic.java +++ b/core/src/io/anuke/mindustry/ai/MHueristic.java @@ -16,7 +16,7 @@ public class MHueristic implements Heuristic{ public static float estimateStatic(Tile node, Tile other){ float cost = Math.abs(node.worldx() - other.worldx()) + Math.abs(node.worldy() - other.worldy()); - + //TODO balance multiplier if(node.breakable() && node.block().solid) cost += Vars.tilesize*multiplier; if(other.breakable() && other.block().solid) cost += Vars.tilesize*multiplier; diff --git a/core/src/io/anuke/mindustry/entities/Bullet.java b/core/src/io/anuke/mindustry/entities/Bullet.java index 999ccd9ab4..b26181b407 100644 --- a/core/src/io/anuke/mindustry/entities/Bullet.java +++ b/core/src/io/anuke/mindustry/entities/Bullet.java @@ -1,7 +1,5 @@ package io.anuke.mindustry.entities; -import static io.anuke.mindustry.Vars.tilesize; - import io.anuke.mindustry.Vars; import io.anuke.mindustry.world.Tile; import io.anuke.ucore.entities.BulletEntity; @@ -9,6 +7,8 @@ import io.anuke.ucore.entities.Entity; import io.anuke.ucore.entities.SolidEntity; import io.anuke.ucore.util.Mathf; +import static io.anuke.mindustry.Vars.tilesize; + public class Bullet extends BulletEntity{ BulletType type; @@ -39,7 +39,6 @@ public class Bullet extends BulletEntity{ targetEntity = tile.entity; }else{ //make sure to check for linked block collisions - //TODO move this to the block class? Tile linked = tile.getLinked(); if(linked != null && linked.entity != null && linked.entity.collide(this) && !linked.entity.dead){ diff --git a/core/src/io/anuke/mindustry/entities/effect/Shield.java b/core/src/io/anuke/mindustry/entities/effect/Shield.java index 8f6219c88f..907be667dc 100644 --- a/core/src/io/anuke/mindustry/entities/effect/Shield.java +++ b/core/src/io/anuke/mindustry/entities/effect/Shield.java @@ -20,7 +20,6 @@ public class Shield extends Entity{ private float uptime = 0f; private final Tile tile; - //TODO public Shield(Tile tile){ this.tile = tile; diff --git a/core/src/io/anuke/mindustry/entities/effect/TeslaOrb.java b/core/src/io/anuke/mindustry/entities/effect/TeslaOrb.java index fd6e1c7541..97020f75cd 100644 --- a/core/src/io/anuke/mindustry/entities/effect/TeslaOrb.java +++ b/core/src/io/anuke/mindustry/entities/effect/TeslaOrb.java @@ -63,7 +63,6 @@ public class TeslaOrb extends Entity{ } void damageEnemy(Enemy enemy){ - //TODO enemy.damage(damage); Effects.effect(Fx.laserhit, enemy.x + Mathf.range(2f), enemy.y + Mathf.range(2f)); } diff --git a/core/src/io/anuke/mindustry/entities/enemies/types/FortressType.java b/core/src/io/anuke/mindustry/entities/enemies/types/FortressType.java index bcbab930e0..08f3ecc340 100644 --- a/core/src/io/anuke/mindustry/entities/enemies/types/FortressType.java +++ b/core/src/io/anuke/mindustry/entities/enemies/types/FortressType.java @@ -36,7 +36,7 @@ public class FortressType extends EnemyType { if(Timers.get(this, "spawn", spawnTime) && enemy.spawned < maxSpawn){ Angles.translation(enemy.angle, 20f); - Enemy s = new Enemy(EnemyTypes.fast); //TODO assign type! + Enemy s = new Enemy(EnemyTypes.fast); s.lane = enemy.lane; s.tier = enemy.tier; s.spawner = enemy; diff --git a/core/src/io/anuke/mindustry/io/Maps.java b/core/src/io/anuke/mindustry/io/Maps.java index d97ea76009..7acce3984e 100644 --- a/core/src/io/anuke/mindustry/io/Maps.java +++ b/core/src/io/anuke/mindustry/io/Maps.java @@ -91,8 +91,6 @@ public class Maps implements Disposable{ saveCustomMap(map); Vars.ui.levels.reload(); - //TODO reload map dialog - } public void saveMaps(Array array, FileHandle file){ diff --git a/core/src/io/anuke/mindustry/io/SaveIO.java b/core/src/io/anuke/mindustry/io/SaveIO.java index c5181d1d1d..3f123e505b 100644 --- a/core/src/io/anuke/mindustry/io/SaveIO.java +++ b/core/src/io/anuke/mindustry/io/SaveIO.java @@ -150,8 +150,7 @@ public class SaveIO{ public static void load(FileHandle file){ load(file.read()); } - - //TODO GWT support + public static void load(InputStream is){ DataInputStream stream; diff --git a/core/src/io/anuke/mindustry/net/Net.java b/core/src/io/anuke/mindustry/net/Net.java index 4c13940593..382d49f014 100644 --- a/core/src/io/anuke/mindustry/net/Net.java +++ b/core/src/io/anuke/mindustry/net/Net.java @@ -15,7 +15,6 @@ import io.anuke.ucore.function.Consumer; import java.io.IOException; -//TODO stub public class Net{ private static boolean server; private static boolean active; diff --git a/core/src/io/anuke/mindustry/ui/PressGroup.java b/core/src/io/anuke/mindustry/ui/PressGroup.java index f20713c314..c2e7add8e2 100644 --- a/core/src/io/anuke/mindustry/ui/PressGroup.java +++ b/core/src/io/anuke/mindustry/ui/PressGroup.java @@ -9,7 +9,7 @@ public class PressGroup{ private boolean active = true; public void add(Button button){ - //TODO make only one button in the group be clickable + //TODO make only one button in the group be clickable, add implementation buttons.add(button); } diff --git a/core/src/io/anuke/mindustry/ui/dialogs/HostDialog.java b/core/src/io/anuke/mindustry/ui/dialogs/HostDialog.java index 072bc53d98..38f07ba697 100644 --- a/core/src/io/anuke/mindustry/ui/dialogs/HostDialog.java +++ b/core/src/io/anuke/mindustry/ui/dialogs/HostDialog.java @@ -10,7 +10,7 @@ import io.anuke.ucore.util.Strings; import java.io.IOException; -//TODO +//TODO add port specification public class HostDialog extends Dialog{ float w = 300; diff --git a/core/src/io/anuke/mindustry/ui/dialogs/SettingsMenuDialog.java b/core/src/io/anuke/mindustry/ui/dialogs/SettingsMenuDialog.java index 2a0b1ccdd1..b5ea1471e5 100644 --- a/core/src/io/anuke/mindustry/ui/dialogs/SettingsMenuDialog.java +++ b/core/src/io/anuke/mindustry/ui/dialogs/SettingsMenuDialog.java @@ -46,7 +46,6 @@ public class SettingsMenuDialog extends SettingsDialog{ wasPaused = ((PausedDialog)menu).wasPaused; } if(!Net.active()) GameState.set(State.paused); - //TODO hide menu Vars.ui.paused.hide(); } }); diff --git a/core/src/io/anuke/mindustry/ui/fragments/ChatFragment.java b/core/src/io/anuke/mindustry/ui/fragments/ChatFragment.java index bcc9d00eca..fd60b08f8f 100644 --- a/core/src/io/anuke/mindustry/ui/fragments/ChatFragment.java +++ b/core/src/io/anuke/mindustry/ui/fragments/ChatFragment.java @@ -25,7 +25,6 @@ import io.anuke.ucore.scene.ui.layout.Unit; import static io.anuke.ucore.core.Core.scene; import static io.anuke.ucore.core.Core.skin; -//TODO show chat even when not toggled public class ChatFragment extends Table implements Fragment{ private final static int messagesShown = 10; private final static int maxLength = 150; @@ -49,7 +48,7 @@ public class ChatFragment extends Table implements Fragment{ setVisible(() -> !GameState.is(State.menu) && Net.active()); - //TODO put it input + //TODO put it in input? update(() -> { if(Net.active() && Inputs.keyTap("chat")){ toggle(); @@ -154,7 +153,7 @@ public class ChatFragment extends Table implements Fragment{ scene.setKeyboardFocus(null); chatOpen = !chatOpen; sendMessage(); - fadetime = messagesShown + 1; //TODO? + fadetime = messagesShown + 1; } } diff --git a/core/src/io/anuke/mindustry/world/Tile.java b/core/src/io/anuke/mindustry/world/Tile.java index eb42890d1d..729cf3310d 100644 --- a/core/src/io/anuke/mindustry/world/Tile.java +++ b/core/src/io/anuke/mindustry/world/Tile.java @@ -70,7 +70,6 @@ public class Tile{ } public void damageNearby(int rad, int amount, float falloff){ - //TODO damage falloff? for(int dx = -rad; dx <= rad; dx ++){ for(int dy = -rad; dy <= rad; dy ++){ float dst = Vector2.dst(dx, dy, 0, 0); diff --git a/core/src/io/anuke/mindustry/world/blocks/WeaponBlocks.java b/core/src/io/anuke/mindustry/world/blocks/WeaponBlocks.java index 69d491b2ae..d178b4196a 100644 --- a/core/src/io/anuke/mindustry/world/blocks/WeaponBlocks.java +++ b/core/src/io/anuke/mindustry/world/blocks/WeaponBlocks.java @@ -173,8 +173,7 @@ public class WeaponBlocks{ shots = 2; shootEffect = Fx.chainshot; } - - //TODO specify turret shootInternal effect in turret instead of doing it manually + @Override protected void shoot(Tile tile){ TurretEntity entity = tile.entity(); diff --git a/core/src/io/anuke/mindustry/world/blocks/types/distribution/Conveyor.java b/core/src/io/anuke/mindustry/world/blocks/types/distribution/Conveyor.java index 5f5feba780..0b4648fa03 100644 --- a/core/src/io/anuke/mindustry/world/blocks/types/distribution/Conveyor.java +++ b/core/src/io/anuke/mindustry/world/blocks/types/distribution/Conveyor.java @@ -100,7 +100,7 @@ public class Conveyor extends Block{ !(pos2.set(entity.convey.get(i + 1)).y - pos.y < itemSpace * Timers.delta()); if(canmove){ - pos.y += Math.max(speed * Timers.delta(), 1f/252f); //TODO fix precision issues? + pos.y += Math.max(speed * Timers.delta(), 1f/252f); //TODO fix precision issues when at high FPS? pos.x = Mathf.lerpDelta(pos.x, 0, 0.06f); }else{ pos.x = Mathf.lerpDelta(pos.x, pos.seed/offsetScl, 0.1f); diff --git a/core/src/io/anuke/mindustry/world/blocks/types/distribution/Router.java b/core/src/io/anuke/mindustry/world/blocks/types/distribution/Router.java index 3162acde1c..6d42db8391 100644 --- a/core/src/io/anuke/mindustry/world/blocks/types/distribution/Router.java +++ b/core/src/io/anuke/mindustry/world/blocks/types/distribution/Router.java @@ -33,7 +33,6 @@ public class Router extends Block{ @Override public void update(Tile tile){ - //TODO fix, check issue tile.setRotation((byte)Mathf.mod(tile.getRotation(), 4)); if(tile.entity.totalItems() > 0){ diff --git a/core/src/io/anuke/mindustry/world/blocks/types/production/LiquidItemPowerGenerator.java b/core/src/io/anuke/mindustry/world/blocks/types/production/LiquidItemPowerGenerator.java deleted file mode 100644 index c60c87ea46..0000000000 --- a/core/src/io/anuke/mindustry/world/blocks/types/production/LiquidItemPowerGenerator.java +++ /dev/null @@ -1,60 +0,0 @@ -package io.anuke.mindustry.world.blocks.types.production; - -import com.badlogic.gdx.graphics.Color; -import com.badlogic.gdx.math.Vector2; - -import io.anuke.mindustry.Vars; -import io.anuke.mindustry.entities.TileEntity; -import io.anuke.mindustry.resource.Item; -import io.anuke.mindustry.world.Tile; -import io.anuke.ucore.core.Draw; - -public class LiquidItemPowerGenerator extends LiquidPowerGenerator{ - public Item generateItem; - public int itemInput = 5; - public int itemCapacity = 30; - - public LiquidItemPowerGenerator(String name) { - super(name); - } - - @Override - public void drawSelect(Tile tile){ - super.drawSelect(tile); - - TileEntity entity = tile.entity(); - - Vector2 offset = getPlaceOffset(); - - Vars.renderer.drawBar(Color.GREEN, tile.worldx() + offset.x, tile.worldy() + 6 + - offset.y + height*Vars.tilesize/2f, (float)entity.getItem(generateItem) / itemCapacity); - Draw.reset(); - } - - //TODO implement? - /* - @Override - public void update(Tile tile){ - LiquidPowerEntity entity = tile.entity(); - - //TODO don't generate when full of energy - if(entity.liquidAmount >= inputLiquid && entity.hasItem(generateItem, itemInput) - && entity.power + generatePower < powerCapacity - && Timers.get(tile, "consume", generateTime)){ - entity.liquidAmount -= inputLiquid; - entity.power += generatePower; - - Vector2 offset = getPlaceOffset(); - Effects.effect(generateEffect, tile.worldx() + offset.x, tile.worldy() + offset.y); - } - - distributeLaserPower(tile); - - }*/ - - @Override - public boolean acceptItem(Item item, Tile tile, Tile source){ - return item == generateItem && tile.entity.getItem(generateItem) < itemCapacity; - } - -} diff --git a/core/src/io/anuke/mindustry/world/blocks/types/production/NuclearReactor.java b/core/src/io/anuke/mindustry/world/blocks/types/production/NuclearReactor.java index ae91c0e4a7..2ff9f45c9d 100644 --- a/core/src/io/anuke/mindustry/world/blocks/types/production/NuclearReactor.java +++ b/core/src/io/anuke/mindustry/world/blocks/types/production/NuclearReactor.java @@ -20,12 +20,10 @@ import java.io.DataInputStream; import java.io.DataOutputStream; import java.io.IOException; -//TODO possibly proken public class NuclearReactor extends LiquidPowerGenerator{ protected final int timerFuel = timers++; protected Item generateItem; - protected int itemInput = 5; protected int itemCapacity = 30; protected Color coolColor = new Color(1, 1, 1, 0f); protected Color hotColor = Color.valueOf("ff9575a3"); diff --git a/desktop/src/io/anuke/mindustry/desktop/DesktopLauncher.java b/desktop/src/io/anuke/mindustry/desktop/DesktopLauncher.java index 09de35415b..23bed2e035 100644 --- a/desktop/src/io/anuke/mindustry/desktop/DesktopLauncher.java +++ b/desktop/src/io/anuke/mindustry/desktop/DesktopLauncher.java @@ -46,7 +46,7 @@ public class DesktopLauncher { }; handlers.joinRequest = request -> { - //TODO actual text + //TODO actual text, implementation of discord join dialog, possibly move it to Dialogs Vars.ui.showConfirmListen("$text.join.discord.title", "$text.join.discord", b -> { if(b){ lib.Discord_Respond(request.userId, DiscordRPC.DISCORD_REPLY_YES);