Class package refactoring
This commit is contained in:
@@ -26,7 +26,7 @@ import io.anuke.kryonet.KryoServer;
|
|||||||
import io.anuke.mindustry.core.Platform;
|
import io.anuke.mindustry.core.Platform;
|
||||||
import io.anuke.mindustry.core.ThreadHandler.ThreadProvider;
|
import io.anuke.mindustry.core.ThreadHandler.ThreadProvider;
|
||||||
import io.anuke.mindustry.io.SaveIO;
|
import io.anuke.mindustry.io.SaveIO;
|
||||||
import io.anuke.mindustry.io.Saves.SaveSlot;
|
import io.anuke.mindustry.game.Saves.SaveSlot;
|
||||||
import io.anuke.mindustry.net.Net;
|
import io.anuke.mindustry.net.Net;
|
||||||
import io.anuke.mindustry.ui.dialogs.FileChooser;
|
import io.anuke.mindustry.ui.dialogs.FileChooser;
|
||||||
import io.anuke.ucore.function.Consumer;
|
import io.anuke.ucore.function.Consumer;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
<source path="io/anuke/mindustry"/>
|
<source path="io/anuke/mindustry"/>
|
||||||
<extend-configuration-property name="gdx.reflect.include" value="io.anuke.mindustry.world.Tile"/>
|
<extend-configuration-property name="gdx.reflect.include" value="io.anuke.mindustry.world.Tile"/>
|
||||||
<extend-configuration-property name="gdx.reflect.include" value="io.anuke.mindustry.game.Content"/>
|
<extend-configuration-property name="gdx.reflect.include" value="io.anuke.mindustry.game.Content"/>
|
||||||
<extend-configuration-property name="gdx.reflect.include" value="io.anuke.mindustry.io.Maps"/>
|
<extend-configuration-property name="gdx.reflect.include" value="io.anuke.mindustry.maps.Maps"/>
|
||||||
<extend-configuration-property name="gdx.reflect.include" value="io.anuke.mindustry.world.Map"/>
|
<extend-configuration-property name="gdx.reflect.include" value="io.anuke.mindustry.world.Map"/>
|
||||||
<extend-configuration-property name="gdx.reflect.include" value="io.anuke.mindustry.game.SpawnGroup"/>
|
<extend-configuration-property name="gdx.reflect.include" value="io.anuke.mindustry.game.SpawnGroup"/>
|
||||||
<extend-configuration-property name="gdx.reflect.include" value="io.anuke.mindustry.core.GameState"/>
|
<extend-configuration-property name="gdx.reflect.include" value="io.anuke.mindustry.core.GameState"/>
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ import io.anuke.mindustry.entities.effect.Shield;
|
|||||||
import io.anuke.mindustry.entities.traits.SyncTrait;
|
import io.anuke.mindustry.entities.traits.SyncTrait;
|
||||||
import io.anuke.mindustry.entities.units.BaseUnit;
|
import io.anuke.mindustry.entities.units.BaseUnit;
|
||||||
import io.anuke.mindustry.game.Team;
|
import io.anuke.mindustry.game.Team;
|
||||||
import io.anuke.mindustry.io.Version;
|
import io.anuke.mindustry.game.Version;
|
||||||
import io.anuke.mindustry.net.Net;
|
import io.anuke.mindustry.net.Net;
|
||||||
import io.anuke.ucore.entities.Entities;
|
import io.anuke.ucore.entities.Entities;
|
||||||
import io.anuke.ucore.entities.EntityGroup;
|
import io.anuke.ucore.entities.EntityGroup;
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import io.anuke.mindustry.entities.units.Squad;
|
|||||||
import io.anuke.mindustry.game.EventType.WorldLoadEvent;
|
import io.anuke.mindustry.game.EventType.WorldLoadEvent;
|
||||||
import io.anuke.mindustry.game.SpawnGroup;
|
import io.anuke.mindustry.game.SpawnGroup;
|
||||||
import io.anuke.mindustry.game.Team;
|
import io.anuke.mindustry.game.Team;
|
||||||
import io.anuke.mindustry.game.WaveCreator;
|
import io.anuke.mindustry.game.Waves;
|
||||||
import io.anuke.mindustry.world.Tile;
|
import io.anuke.mindustry.world.Tile;
|
||||||
import io.anuke.ucore.core.Events;
|
import io.anuke.ucore.core.Events;
|
||||||
import io.anuke.ucore.util.Mathf;
|
import io.anuke.ucore.util.Mathf;
|
||||||
@@ -169,7 +169,7 @@ public class WaveSpawner{
|
|||||||
quadrants = new Bits(quadWidth() * quadHeight());
|
quadrants = new Bits(quadWidth() * quadHeight());
|
||||||
|
|
||||||
if(groups == null){
|
if(groups == null){
|
||||||
groups = WaveCreator.getSpawns();
|
groups = Waves.getSpawns();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -17,8 +17,8 @@ import io.anuke.mindustry.input.DefaultKeybinds;
|
|||||||
import io.anuke.mindustry.input.DesktopInput;
|
import io.anuke.mindustry.input.DesktopInput;
|
||||||
import io.anuke.mindustry.input.InputHandler;
|
import io.anuke.mindustry.input.InputHandler;
|
||||||
import io.anuke.mindustry.input.MobileInput;
|
import io.anuke.mindustry.input.MobileInput;
|
||||||
import io.anuke.mindustry.io.Map;
|
import io.anuke.mindustry.maps.Map;
|
||||||
import io.anuke.mindustry.io.Saves;
|
import io.anuke.mindustry.game.Saves;
|
||||||
import io.anuke.mindustry.net.Net;
|
import io.anuke.mindustry.net.Net;
|
||||||
import io.anuke.mindustry.type.Recipe;
|
import io.anuke.mindustry.type.Recipe;
|
||||||
import io.anuke.mindustry.ui.dialogs.FloatingDialog;
|
import io.anuke.mindustry.ui.dialogs.FloatingDialog;
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ import io.anuke.mindustry.entities.Player;
|
|||||||
import io.anuke.mindustry.entities.traits.SyncTrait;
|
import io.anuke.mindustry.entities.traits.SyncTrait;
|
||||||
import io.anuke.mindustry.gen.Call;
|
import io.anuke.mindustry.gen.Call;
|
||||||
import io.anuke.mindustry.gen.RemoteReadServer;
|
import io.anuke.mindustry.gen.RemoteReadServer;
|
||||||
import io.anuke.mindustry.io.Version;
|
import io.anuke.mindustry.game.Version;
|
||||||
import io.anuke.mindustry.net.*;
|
import io.anuke.mindustry.net.*;
|
||||||
import io.anuke.mindustry.net.Administration.PlayerInfo;
|
import io.anuke.mindustry.net.Administration.PlayerInfo;
|
||||||
import io.anuke.mindustry.net.Packets.*;
|
import io.anuke.mindustry.net.Packets.*;
|
||||||
|
|||||||
@@ -256,7 +256,7 @@ public class Renderer extends RendererModule{
|
|||||||
private void drawFlyerShadows(){
|
private void drawFlyerShadows(){
|
||||||
Graphics.surface(effectSurface, true, false);
|
Graphics.surface(effectSurface, true, false);
|
||||||
|
|
||||||
float trnsX = 12, trnsY = -13;
|
float trnsX = -12, trnsY = -13;
|
||||||
|
|
||||||
Graphics.end();
|
Graphics.end();
|
||||||
Core.batch.getTransformMatrix().translate(trnsX, trnsY, 0);
|
Core.batch.getTransformMatrix().translate(trnsX, trnsY, 0);
|
||||||
|
|||||||
@@ -11,10 +11,10 @@ import io.anuke.mindustry.core.GameState.State;
|
|||||||
import io.anuke.mindustry.game.EventType.TileChangeEvent;
|
import io.anuke.mindustry.game.EventType.TileChangeEvent;
|
||||||
import io.anuke.mindustry.game.EventType.WorldLoadEvent;
|
import io.anuke.mindustry.game.EventType.WorldLoadEvent;
|
||||||
import io.anuke.mindustry.game.Team;
|
import io.anuke.mindustry.game.Team;
|
||||||
import io.anuke.mindustry.io.Map;
|
import io.anuke.mindustry.maps.Map;
|
||||||
import io.anuke.mindustry.io.MapIO;
|
import io.anuke.mindustry.io.MapIO;
|
||||||
import io.anuke.mindustry.io.MapMeta;
|
import io.anuke.mindustry.maps.MapMeta;
|
||||||
import io.anuke.mindustry.io.Maps;
|
import io.anuke.mindustry.maps.Maps;
|
||||||
import io.anuke.mindustry.world.Block;
|
import io.anuke.mindustry.world.Block;
|
||||||
import io.anuke.mindustry.world.Tile;
|
import io.anuke.mindustry.world.Tile;
|
||||||
import io.anuke.mindustry.world.mapgen.WorldGenerator;
|
import io.anuke.mindustry.world.mapgen.WorldGenerator;
|
||||||
|
|||||||
@@ -2,8 +2,8 @@ package io.anuke.mindustry.editor;
|
|||||||
|
|
||||||
import com.badlogic.gdx.utils.Array;
|
import com.badlogic.gdx.utils.Array;
|
||||||
import com.badlogic.gdx.utils.IntSet;
|
import com.badlogic.gdx.utils.IntSet;
|
||||||
import io.anuke.mindustry.io.MapTileData;
|
import io.anuke.mindustry.maps.MapTileData;
|
||||||
import io.anuke.mindustry.io.MapTileData.TileDataMarker;
|
import io.anuke.mindustry.maps.MapTileData.TileDataMarker;
|
||||||
import io.anuke.ucore.util.Bits;
|
import io.anuke.ucore.util.Bits;
|
||||||
|
|
||||||
public class DrawOperation{
|
public class DrawOperation{
|
||||||
|
|||||||
@@ -3,8 +3,8 @@ package io.anuke.mindustry.editor;
|
|||||||
import com.badlogic.gdx.utils.IntArray;
|
import com.badlogic.gdx.utils.IntArray;
|
||||||
import com.badlogic.gdx.utils.IntSet;
|
import com.badlogic.gdx.utils.IntSet;
|
||||||
import io.anuke.mindustry.content.blocks.Blocks;
|
import io.anuke.mindustry.content.blocks.Blocks;
|
||||||
import io.anuke.mindustry.io.MapTileData.DataPosition;
|
import io.anuke.mindustry.maps.MapTileData.DataPosition;
|
||||||
import io.anuke.mindustry.io.MapTileData.TileDataMarker;
|
import io.anuke.mindustry.maps.MapTileData.TileDataMarker;
|
||||||
import io.anuke.mindustry.world.Block;
|
import io.anuke.mindustry.world.Block;
|
||||||
import io.anuke.mindustry.world.blocks.Floor;
|
import io.anuke.mindustry.world.blocks.Floor;
|
||||||
import io.anuke.ucore.util.Bits;
|
import io.anuke.ucore.util.Bits;
|
||||||
|
|||||||
@@ -5,9 +5,9 @@ import io.anuke.mindustry.Vars;
|
|||||||
import io.anuke.mindustry.content.blocks.Blocks;
|
import io.anuke.mindustry.content.blocks.Blocks;
|
||||||
import io.anuke.mindustry.editor.DrawOperation.TileOperation;
|
import io.anuke.mindustry.editor.DrawOperation.TileOperation;
|
||||||
import io.anuke.mindustry.game.Team;
|
import io.anuke.mindustry.game.Team;
|
||||||
import io.anuke.mindustry.io.MapTileData;
|
import io.anuke.mindustry.maps.MapTileData;
|
||||||
import io.anuke.mindustry.io.MapTileData.DataPosition;
|
import io.anuke.mindustry.maps.MapTileData.DataPosition;
|
||||||
import io.anuke.mindustry.io.MapTileData.TileDataMarker;
|
import io.anuke.mindustry.maps.MapTileData.TileDataMarker;
|
||||||
import io.anuke.mindustry.world.Block;
|
import io.anuke.mindustry.world.Block;
|
||||||
import io.anuke.mindustry.world.blocks.Floor;
|
import io.anuke.mindustry.world.blocks.Floor;
|
||||||
import io.anuke.ucore.util.Bits;
|
import io.anuke.ucore.util.Bits;
|
||||||
|
|||||||
@@ -11,10 +11,10 @@ import com.badlogic.gdx.utils.ObjectMap;
|
|||||||
import io.anuke.mindustry.content.blocks.StorageBlocks;
|
import io.anuke.mindustry.content.blocks.StorageBlocks;
|
||||||
import io.anuke.mindustry.core.Platform;
|
import io.anuke.mindustry.core.Platform;
|
||||||
import io.anuke.mindustry.game.Team;
|
import io.anuke.mindustry.game.Team;
|
||||||
import io.anuke.mindustry.io.Map;
|
import io.anuke.mindustry.maps.Map;
|
||||||
import io.anuke.mindustry.io.MapIO;
|
import io.anuke.mindustry.io.MapIO;
|
||||||
import io.anuke.mindustry.io.MapMeta;
|
import io.anuke.mindustry.maps.MapMeta;
|
||||||
import io.anuke.mindustry.io.MapTileData;
|
import io.anuke.mindustry.maps.MapTileData;
|
||||||
import io.anuke.mindustry.type.Recipe;
|
import io.anuke.mindustry.type.Recipe;
|
||||||
import io.anuke.mindustry.ui.dialogs.FloatingDialog;
|
import io.anuke.mindustry.ui.dialogs.FloatingDialog;
|
||||||
import io.anuke.mindustry.world.Block;
|
import io.anuke.mindustry.world.Block;
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
package io.anuke.mindustry.editor;
|
package io.anuke.mindustry.editor;
|
||||||
|
|
||||||
import io.anuke.mindustry.io.Map;
|
import io.anuke.mindustry.maps.Map;
|
||||||
import io.anuke.mindustry.ui.BorderImage;
|
import io.anuke.mindustry.ui.BorderImage;
|
||||||
import io.anuke.mindustry.ui.dialogs.FloatingDialog;
|
import io.anuke.mindustry.ui.dialogs.FloatingDialog;
|
||||||
import io.anuke.ucore.core.Core;
|
import io.anuke.ucore.core.Core;
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import com.badlogic.gdx.utils.Disposable;
|
|||||||
import com.badlogic.gdx.utils.IntSet;
|
import com.badlogic.gdx.utils.IntSet;
|
||||||
import com.badlogic.gdx.utils.IntSet.IntSetIterator;
|
import com.badlogic.gdx.utils.IntSet.IntSetIterator;
|
||||||
import io.anuke.mindustry.game.Team;
|
import io.anuke.mindustry.game.Team;
|
||||||
import io.anuke.mindustry.io.MapTileData.DataPosition;
|
import io.anuke.mindustry.maps.MapTileData.DataPosition;
|
||||||
import io.anuke.mindustry.world.Block;
|
import io.anuke.mindustry.world.Block;
|
||||||
import io.anuke.ucore.core.Core;
|
import io.anuke.ucore.core.Core;
|
||||||
import io.anuke.ucore.core.Graphics;
|
import io.anuke.ucore.core.Graphics;
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
package io.anuke.mindustry.editor;
|
package io.anuke.mindustry.editor;
|
||||||
|
|
||||||
import io.anuke.mindustry.io.MapTileData;
|
import io.anuke.mindustry.maps.MapTileData;
|
||||||
import io.anuke.mindustry.ui.dialogs.FloatingDialog;
|
import io.anuke.mindustry.ui.dialogs.FloatingDialog;
|
||||||
import io.anuke.ucore.function.BiConsumer;
|
import io.anuke.ucore.function.BiConsumer;
|
||||||
import io.anuke.ucore.scene.ui.ButtonGroup;
|
import io.anuke.ucore.scene.ui.ButtonGroup;
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
package io.anuke.mindustry.editor;
|
package io.anuke.mindustry.editor;
|
||||||
|
|
||||||
import io.anuke.mindustry.core.Platform;
|
import io.anuke.mindustry.core.Platform;
|
||||||
import io.anuke.mindustry.io.Map;
|
import io.anuke.mindustry.maps.Map;
|
||||||
import io.anuke.mindustry.ui.dialogs.FloatingDialog;
|
import io.anuke.mindustry.ui.dialogs.FloatingDialog;
|
||||||
import io.anuke.ucore.function.Consumer;
|
import io.anuke.ucore.function.Consumer;
|
||||||
import io.anuke.ucore.scene.ui.TextButton;
|
import io.anuke.ucore.scene.ui.TextButton;
|
||||||
|
|||||||
@@ -276,7 +276,7 @@ public class Player extends Unit implements BuilderTrait, CarryTrait, ShooterTra
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void drawShadow(){
|
public void drawShadow(){
|
||||||
Draw.rect(mech.iconRegion, x + elevation * elevationScale, y - elevation * elevationScale, rotation - 90);
|
Draw.rect(mech.iconRegion, x - elevation * elevationScale, y - elevation * elevationScale, rotation - 90);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -125,7 +125,7 @@ public abstract class FlyingUnit extends BaseUnit implements CarryTrait{
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void drawShadow(){
|
public void drawShadow(){
|
||||||
Draw.rect(type.region, x + elevation * elevationScale, y - elevation * elevationScale, rotation - 90);
|
Draw.rect(type.region, x - elevation * elevationScale, y - elevation * elevationScale, rotation - 90);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -1,11 +1,12 @@
|
|||||||
package io.anuke.mindustry.io;
|
package io.anuke.mindustry.game;
|
||||||
|
|
||||||
import com.badlogic.gdx.files.FileHandle;
|
import com.badlogic.gdx.files.FileHandle;
|
||||||
import com.badlogic.gdx.utils.Array;
|
import com.badlogic.gdx.utils.Array;
|
||||||
import io.anuke.mindustry.core.GameState.State;
|
import io.anuke.mindustry.core.GameState.State;
|
||||||
import io.anuke.mindustry.game.Difficulty;
|
|
||||||
import io.anuke.mindustry.game.EventType.StateChangeEvent;
|
import io.anuke.mindustry.game.EventType.StateChangeEvent;
|
||||||
import io.anuke.mindustry.game.GameMode;
|
import io.anuke.mindustry.maps.Map;
|
||||||
|
import io.anuke.mindustry.io.SaveIO;
|
||||||
|
import io.anuke.mindustry.io.SaveMeta;
|
||||||
import io.anuke.ucore.core.Events;
|
import io.anuke.ucore.core.Events;
|
||||||
import io.anuke.ucore.core.Settings;
|
import io.anuke.ucore.core.Settings;
|
||||||
import io.anuke.ucore.core.Timers;
|
import io.anuke.ucore.core.Timers;
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
package io.anuke.mindustry.io;
|
package io.anuke.mindustry.game;
|
||||||
|
|
||||||
import com.badlogic.gdx.Gdx;
|
import com.badlogic.gdx.Gdx;
|
||||||
import com.badlogic.gdx.files.FileHandle;
|
import com.badlogic.gdx.files.FileHandle;
|
||||||
@@ -1,190 +0,0 @@
|
|||||||
package io.anuke.mindustry.game;
|
|
||||||
|
|
||||||
import com.badlogic.gdx.utils.Array;
|
|
||||||
import io.anuke.mindustry.content.Items;
|
|
||||||
import io.anuke.mindustry.content.StatusEffects;
|
|
||||||
import io.anuke.mindustry.content.UnitTypes;
|
|
||||||
import io.anuke.mindustry.content.Weapons;
|
|
||||||
import io.anuke.mindustry.type.ItemStack;
|
|
||||||
|
|
||||||
public class WaveCreator{
|
|
||||||
|
|
||||||
public static Array<SpawnGroup> getSpawns(){
|
|
||||||
return Array.with(
|
|
||||||
new SpawnGroup(UnitTypes.scout){{
|
|
||||||
end = 8;
|
|
||||||
unitScaling = 2;
|
|
||||||
}},
|
|
||||||
|
|
||||||
new SpawnGroup(UnitTypes.vtol){{
|
|
||||||
begin = 12;
|
|
||||||
end = 14;
|
|
||||||
}},
|
|
||||||
|
|
||||||
new SpawnGroup(UnitTypes.scout){{
|
|
||||||
begin = 11;
|
|
||||||
unitScaling = 2;
|
|
||||||
spacing = 2;
|
|
||||||
max = 4;
|
|
||||||
}},
|
|
||||||
|
|
||||||
new SpawnGroup(UnitTypes.titan){{
|
|
||||||
begin = 9;
|
|
||||||
spacing = 3;
|
|
||||||
unitScaling = 2;
|
|
||||||
|
|
||||||
end = 30;
|
|
||||||
}},
|
|
||||||
|
|
||||||
new SpawnGroup(UnitTypes.scout){{
|
|
||||||
begin = 10;
|
|
||||||
unitScaling = 2;
|
|
||||||
unitAmount = 1;
|
|
||||||
spacing = 2;
|
|
||||||
ammoItem = Items.tungsten;
|
|
||||||
end = 30;
|
|
||||||
}},
|
|
||||||
|
|
||||||
new SpawnGroup(UnitTypes.titan){{
|
|
||||||
begin = 28;
|
|
||||||
spacing = 3;
|
|
||||||
unitScaling = 2;
|
|
||||||
weapon = Weapons.flamethrower;
|
|
||||||
end = 40;
|
|
||||||
}},
|
|
||||||
|
|
||||||
new SpawnGroup(UnitTypes.titan){{
|
|
||||||
begin = 45;
|
|
||||||
spacing = 3;
|
|
||||||
unitScaling = 2;
|
|
||||||
weapon = Weapons.flamethrower;
|
|
||||||
effect = StatusEffects.overdrive;
|
|
||||||
}},
|
|
||||||
|
|
||||||
new SpawnGroup(UnitTypes.titan){{
|
|
||||||
begin = 120;
|
|
||||||
spacing = 2;
|
|
||||||
unitScaling = 3;
|
|
||||||
unitAmount = 5;
|
|
||||||
weapon = Weapons.flakgun;
|
|
||||||
effect = StatusEffects.overdrive;
|
|
||||||
}},
|
|
||||||
|
|
||||||
new SpawnGroup(UnitTypes.vtol){{
|
|
||||||
begin = 16;
|
|
||||||
unitScaling = 2;
|
|
||||||
spacing = 2;
|
|
||||||
|
|
||||||
end = 39;
|
|
||||||
max = 7;
|
|
||||||
}},
|
|
||||||
|
|
||||||
new SpawnGroup(UnitTypes.scout){{
|
|
||||||
begin = 82;
|
|
||||||
spacing = 3;
|
|
||||||
unitAmount = 4;
|
|
||||||
groupAmount = 2;
|
|
||||||
unitScaling = 3;
|
|
||||||
effect = StatusEffects.overdrive;
|
|
||||||
ammoItem = Items.silicon;
|
|
||||||
}},
|
|
||||||
|
|
||||||
new SpawnGroup(UnitTypes.scout){{
|
|
||||||
begin = 41;
|
|
||||||
spacing = 5;
|
|
||||||
unitAmount = 1;
|
|
||||||
unitScaling = 3;
|
|
||||||
effect = StatusEffects.shielded;
|
|
||||||
ammoItem = Items.thorium;
|
|
||||||
max = 10;
|
|
||||||
}},
|
|
||||||
|
|
||||||
new SpawnGroup(UnitTypes.scout){{
|
|
||||||
begin = 35;
|
|
||||||
spacing = 3;
|
|
||||||
unitAmount = 4;
|
|
||||||
groupAmount = 2;
|
|
||||||
effect = StatusEffects.overdrive;
|
|
||||||
items = new ItemStack(Items.blastCompound, 60);
|
|
||||||
end = 60;
|
|
||||||
}},
|
|
||||||
|
|
||||||
new SpawnGroup(UnitTypes.scout){{
|
|
||||||
begin = 42;
|
|
||||||
spacing = 3;
|
|
||||||
unitAmount = 4;
|
|
||||||
groupAmount = 2;
|
|
||||||
effect = StatusEffects.overdrive;
|
|
||||||
items = new ItemStack(Items.pyratite, 100);
|
|
||||||
end = 130;
|
|
||||||
}},
|
|
||||||
|
|
||||||
new SpawnGroup(UnitTypes.monsoon){{
|
|
||||||
begin = 40;
|
|
||||||
ammoItem = Items.blastCompound;
|
|
||||||
unitAmount = 2;
|
|
||||||
spacing = 2;
|
|
||||||
unitScaling = 3;
|
|
||||||
max = 8;
|
|
||||||
}},
|
|
||||||
|
|
||||||
new SpawnGroup(UnitTypes.vtol){{
|
|
||||||
begin = 50;
|
|
||||||
unitAmount = 4;
|
|
||||||
unitScaling = 3;
|
|
||||||
spacing = 5;
|
|
||||||
groupAmount = 2;
|
|
||||||
effect = StatusEffects.overdrive;
|
|
||||||
max = 8;
|
|
||||||
}},
|
|
||||||
|
|
||||||
new SpawnGroup(UnitTypes.monsoon){{
|
|
||||||
begin = 53;
|
|
||||||
ammoItem = Items.pyratite;
|
|
||||||
unitAmount = 2;
|
|
||||||
unitScaling = 3;
|
|
||||||
spacing = 4;
|
|
||||||
max = 8;
|
|
||||||
end = 74;
|
|
||||||
}},
|
|
||||||
|
|
||||||
new SpawnGroup(UnitTypes.monsoon){{
|
|
||||||
begin = 53;
|
|
||||||
ammoItem = Items.coal;
|
|
||||||
unitAmount = 2;
|
|
||||||
unitScaling = 3;
|
|
||||||
spacing = 4;
|
|
||||||
max = 8;
|
|
||||||
end = 74;
|
|
||||||
}}
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void testWaves(int from, int to){
|
|
||||||
Array<SpawnGroup> spawns = getSpawns();
|
|
||||||
for(int i = from; i <= to; i++){
|
|
||||||
System.out.print(i + ": ");
|
|
||||||
int total = 0;
|
|
||||||
for(SpawnGroup spawn : spawns){
|
|
||||||
int a = spawn.getUnitsSpawned(i) * spawn.getGroupsSpawned(i);
|
|
||||||
total += a;
|
|
||||||
|
|
||||||
if(a > 0){
|
|
||||||
System.out.print(a + "x" + spawn.type.name);
|
|
||||||
|
|
||||||
if(spawn.weapon != null){
|
|
||||||
System.out.print(":" + spawn.weapon.name);
|
|
||||||
}
|
|
||||||
|
|
||||||
if(spawn.ammoItem != null){
|
|
||||||
System.out.print(":" + spawn.ammoItem.name);
|
|
||||||
}
|
|
||||||
|
|
||||||
System.out.print(" ");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
System.out.print(" (" + total + ")");
|
|
||||||
System.out.println();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
190
core/src/io/anuke/mindustry/game/Waves.java
Normal file
190
core/src/io/anuke/mindustry/game/Waves.java
Normal file
@@ -0,0 +1,190 @@
|
|||||||
|
package io.anuke.mindustry.game;
|
||||||
|
|
||||||
|
import com.badlogic.gdx.utils.Array;
|
||||||
|
import io.anuke.mindustry.content.Items;
|
||||||
|
import io.anuke.mindustry.content.StatusEffects;
|
||||||
|
import io.anuke.mindustry.content.UnitTypes;
|
||||||
|
import io.anuke.mindustry.content.Weapons;
|
||||||
|
import io.anuke.mindustry.type.ItemStack;
|
||||||
|
|
||||||
|
public class Waves{
|
||||||
|
|
||||||
|
public static Array<SpawnGroup> getSpawns(){
|
||||||
|
return Array.with(
|
||||||
|
new SpawnGroup(UnitTypes.scout){{
|
||||||
|
end = 8;
|
||||||
|
unitScaling = 2;
|
||||||
|
}},
|
||||||
|
|
||||||
|
new SpawnGroup(UnitTypes.vtol){{
|
||||||
|
begin = 12;
|
||||||
|
end = 14;
|
||||||
|
}},
|
||||||
|
|
||||||
|
new SpawnGroup(UnitTypes.scout){{
|
||||||
|
begin = 11;
|
||||||
|
unitScaling = 2;
|
||||||
|
spacing = 2;
|
||||||
|
max = 4;
|
||||||
|
}},
|
||||||
|
|
||||||
|
new SpawnGroup(UnitTypes.titan){{
|
||||||
|
begin = 9;
|
||||||
|
spacing = 3;
|
||||||
|
unitScaling = 2;
|
||||||
|
|
||||||
|
end = 30;
|
||||||
|
}},
|
||||||
|
|
||||||
|
new SpawnGroup(UnitTypes.scout){{
|
||||||
|
begin = 10;
|
||||||
|
unitScaling = 2;
|
||||||
|
unitAmount = 1;
|
||||||
|
spacing = 2;
|
||||||
|
ammoItem = Items.tungsten;
|
||||||
|
end = 30;
|
||||||
|
}},
|
||||||
|
|
||||||
|
new SpawnGroup(UnitTypes.titan){{
|
||||||
|
begin = 28;
|
||||||
|
spacing = 3;
|
||||||
|
unitScaling = 2;
|
||||||
|
weapon = Weapons.flamethrower;
|
||||||
|
end = 40;
|
||||||
|
}},
|
||||||
|
|
||||||
|
new SpawnGroup(UnitTypes.titan){{
|
||||||
|
begin = 45;
|
||||||
|
spacing = 3;
|
||||||
|
unitScaling = 2;
|
||||||
|
weapon = Weapons.flamethrower;
|
||||||
|
effect = StatusEffects.overdrive;
|
||||||
|
}},
|
||||||
|
|
||||||
|
new SpawnGroup(UnitTypes.titan){{
|
||||||
|
begin = 120;
|
||||||
|
spacing = 2;
|
||||||
|
unitScaling = 3;
|
||||||
|
unitAmount = 5;
|
||||||
|
weapon = Weapons.flakgun;
|
||||||
|
effect = StatusEffects.overdrive;
|
||||||
|
}},
|
||||||
|
|
||||||
|
new SpawnGroup(UnitTypes.vtol){{
|
||||||
|
begin = 16;
|
||||||
|
unitScaling = 2;
|
||||||
|
spacing = 2;
|
||||||
|
|
||||||
|
end = 39;
|
||||||
|
max = 7;
|
||||||
|
}},
|
||||||
|
|
||||||
|
new SpawnGroup(UnitTypes.scout){{
|
||||||
|
begin = 82;
|
||||||
|
spacing = 3;
|
||||||
|
unitAmount = 4;
|
||||||
|
groupAmount = 2;
|
||||||
|
unitScaling = 3;
|
||||||
|
effect = StatusEffects.overdrive;
|
||||||
|
ammoItem = Items.silicon;
|
||||||
|
}},
|
||||||
|
|
||||||
|
new SpawnGroup(UnitTypes.scout){{
|
||||||
|
begin = 41;
|
||||||
|
spacing = 5;
|
||||||
|
unitAmount = 1;
|
||||||
|
unitScaling = 3;
|
||||||
|
effect = StatusEffects.shielded;
|
||||||
|
ammoItem = Items.thorium;
|
||||||
|
max = 10;
|
||||||
|
}},
|
||||||
|
|
||||||
|
new SpawnGroup(UnitTypes.scout){{
|
||||||
|
begin = 35;
|
||||||
|
spacing = 3;
|
||||||
|
unitAmount = 4;
|
||||||
|
groupAmount = 2;
|
||||||
|
effect = StatusEffects.overdrive;
|
||||||
|
items = new ItemStack(Items.blastCompound, 60);
|
||||||
|
end = 60;
|
||||||
|
}},
|
||||||
|
|
||||||
|
new SpawnGroup(UnitTypes.scout){{
|
||||||
|
begin = 42;
|
||||||
|
spacing = 3;
|
||||||
|
unitAmount = 4;
|
||||||
|
groupAmount = 2;
|
||||||
|
effect = StatusEffects.overdrive;
|
||||||
|
items = new ItemStack(Items.pyratite, 100);
|
||||||
|
end = 130;
|
||||||
|
}},
|
||||||
|
|
||||||
|
new SpawnGroup(UnitTypes.monsoon){{
|
||||||
|
begin = 40;
|
||||||
|
ammoItem = Items.blastCompound;
|
||||||
|
unitAmount = 2;
|
||||||
|
spacing = 2;
|
||||||
|
unitScaling = 3;
|
||||||
|
max = 8;
|
||||||
|
}},
|
||||||
|
|
||||||
|
new SpawnGroup(UnitTypes.vtol){{
|
||||||
|
begin = 50;
|
||||||
|
unitAmount = 4;
|
||||||
|
unitScaling = 3;
|
||||||
|
spacing = 5;
|
||||||
|
groupAmount = 2;
|
||||||
|
effect = StatusEffects.overdrive;
|
||||||
|
max = 8;
|
||||||
|
}},
|
||||||
|
|
||||||
|
new SpawnGroup(UnitTypes.monsoon){{
|
||||||
|
begin = 53;
|
||||||
|
ammoItem = Items.pyratite;
|
||||||
|
unitAmount = 2;
|
||||||
|
unitScaling = 3;
|
||||||
|
spacing = 4;
|
||||||
|
max = 8;
|
||||||
|
end = 74;
|
||||||
|
}},
|
||||||
|
|
||||||
|
new SpawnGroup(UnitTypes.monsoon){{
|
||||||
|
begin = 53;
|
||||||
|
ammoItem = Items.coal;
|
||||||
|
unitAmount = 2;
|
||||||
|
unitScaling = 3;
|
||||||
|
spacing = 4;
|
||||||
|
max = 8;
|
||||||
|
end = 74;
|
||||||
|
}}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void testWaves(int from, int to){
|
||||||
|
Array<SpawnGroup> spawns = getSpawns();
|
||||||
|
for(int i = from; i <= to; i++){
|
||||||
|
System.out.print(i + ": ");
|
||||||
|
int total = 0;
|
||||||
|
for(SpawnGroup spawn : spawns){
|
||||||
|
int a = spawn.getUnitsSpawned(i) * spawn.getGroupsSpawned(i);
|
||||||
|
total += a;
|
||||||
|
|
||||||
|
if(a > 0){
|
||||||
|
System.out.print(a + "x" + spawn.type.name);
|
||||||
|
|
||||||
|
if(spawn.weapon != null){
|
||||||
|
System.out.print(":" + spawn.weapon.name);
|
||||||
|
}
|
||||||
|
|
||||||
|
if(spawn.ammoItem != null){
|
||||||
|
System.out.print(":" + spawn.ammoItem.name);
|
||||||
|
}
|
||||||
|
|
||||||
|
System.out.print(" ");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
System.out.print(" (" + total + ")");
|
||||||
|
System.out.println();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -8,8 +8,11 @@ import com.badlogic.gdx.utils.ObjectMap;
|
|||||||
import com.badlogic.gdx.utils.ObjectMap.Entry;
|
import com.badlogic.gdx.utils.ObjectMap.Entry;
|
||||||
import io.anuke.mindustry.content.blocks.Blocks;
|
import io.anuke.mindustry.content.blocks.Blocks;
|
||||||
import io.anuke.mindustry.game.Team;
|
import io.anuke.mindustry.game.Team;
|
||||||
import io.anuke.mindustry.io.MapTileData.DataPosition;
|
import io.anuke.mindustry.maps.Map;
|
||||||
import io.anuke.mindustry.io.MapTileData.TileDataMarker;
|
import io.anuke.mindustry.maps.MapMeta;
|
||||||
|
import io.anuke.mindustry.maps.MapTileData;
|
||||||
|
import io.anuke.mindustry.maps.MapTileData.DataPosition;
|
||||||
|
import io.anuke.mindustry.maps.MapTileData.TileDataMarker;
|
||||||
import io.anuke.mindustry.world.Block;
|
import io.anuke.mindustry.world.Block;
|
||||||
import io.anuke.mindustry.world.ColorMapper;
|
import io.anuke.mindustry.world.ColorMapper;
|
||||||
|
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ package io.anuke.mindustry.io;
|
|||||||
import io.anuke.mindustry.core.Platform;
|
import io.anuke.mindustry.core.Platform;
|
||||||
import io.anuke.mindustry.game.Difficulty;
|
import io.anuke.mindustry.game.Difficulty;
|
||||||
import io.anuke.mindustry.game.GameMode;
|
import io.anuke.mindustry.game.GameMode;
|
||||||
|
import io.anuke.mindustry.maps.Map;
|
||||||
|
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
|
||||||
|
|||||||
@@ -27,9 +27,7 @@ import java.nio.ByteBuffer;
|
|||||||
|
|
||||||
import static io.anuke.mindustry.Vars.*;
|
import static io.anuke.mindustry.Vars.*;
|
||||||
|
|
||||||
/**
|
/** Class for specifying read/write methods for code generation.*/
|
||||||
* Class for specifying read/write methods for code generation.
|
|
||||||
*/
|
|
||||||
public class TypeIO{
|
public class TypeIO{
|
||||||
|
|
||||||
@WriteClass(Player.class)
|
@WriteClass(Player.class)
|
||||||
|
|||||||
@@ -9,9 +9,9 @@ import io.anuke.mindustry.entities.traits.TypeTrait;
|
|||||||
import io.anuke.mindustry.game.Difficulty;
|
import io.anuke.mindustry.game.Difficulty;
|
||||||
import io.anuke.mindustry.game.GameMode;
|
import io.anuke.mindustry.game.GameMode;
|
||||||
import io.anuke.mindustry.game.Team;
|
import io.anuke.mindustry.game.Team;
|
||||||
import io.anuke.mindustry.io.Map;
|
import io.anuke.mindustry.maps.Map;
|
||||||
import io.anuke.mindustry.io.SaveFileVersion;
|
import io.anuke.mindustry.io.SaveFileVersion;
|
||||||
import io.anuke.mindustry.io.Version;
|
import io.anuke.mindustry.game.Version;
|
||||||
import io.anuke.mindustry.world.Block;
|
import io.anuke.mindustry.world.Block;
|
||||||
import io.anuke.mindustry.world.Tile;
|
import io.anuke.mindustry.world.Tile;
|
||||||
import io.anuke.mindustry.world.blocks.BlockPart;
|
import io.anuke.mindustry.world.blocks.BlockPart;
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package io.anuke.mindustry.io;
|
package io.anuke.mindustry.maps;
|
||||||
|
|
||||||
import com.badlogic.gdx.graphics.Texture;
|
import com.badlogic.gdx.graphics.Texture;
|
||||||
import com.badlogic.gdx.utils.ObjectMap;
|
import com.badlogic.gdx.utils.ObjectMap;
|
||||||
@@ -7,25 +7,15 @@ import io.anuke.ucore.function.Supplier;
|
|||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
|
|
||||||
public class Map{
|
public class Map{
|
||||||
/**
|
/** Internal map name. This is the filename, without any extensions.*/
|
||||||
* Internal map name. This is the filename, without any extensions.
|
|
||||||
*/
|
|
||||||
public final String name;
|
public final String name;
|
||||||
/**
|
/** Whether this is a custom map.*/
|
||||||
* Whether this is a custom map.
|
|
||||||
*/
|
|
||||||
public final boolean custom;
|
public final boolean custom;
|
||||||
/**
|
/** Metadata. Author description, display name, etc.*/
|
||||||
* Metadata. Author description, display name, etc.
|
|
||||||
*/
|
|
||||||
public final MapMeta meta;
|
public final MapMeta meta;
|
||||||
/**
|
/** Supplies a new input stream with the data of this map.*/
|
||||||
* Supplies a new input stream with the data of this map.
|
|
||||||
*/
|
|
||||||
public final Supplier<InputStream> stream;
|
public final Supplier<InputStream> stream;
|
||||||
/**
|
/** Preview texture.*/
|
||||||
* Preview texture.
|
|
||||||
*/
|
|
||||||
public Texture texture;
|
public Texture texture;
|
||||||
|
|
||||||
public Map(String name, MapMeta meta, boolean custom, Supplier<InputStream> streamSupplier){
|
public Map(String name, MapMeta meta, boolean custom, Supplier<InputStream> streamSupplier){
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
package io.anuke.mindustry.io;
|
package io.anuke.mindustry.maps;
|
||||||
|
|
||||||
import com.badlogic.gdx.utils.IntIntMap;
|
import com.badlogic.gdx.utils.IntIntMap;
|
||||||
import com.badlogic.gdx.utils.ObjectMap;
|
import com.badlogic.gdx.utils.ObjectMap;
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
package io.anuke.mindustry.io;
|
package io.anuke.mindustry.maps;
|
||||||
|
|
||||||
import com.badlogic.gdx.utils.IntIntMap;
|
import com.badlogic.gdx.utils.IntIntMap;
|
||||||
import io.anuke.ucore.util.Bits;
|
import io.anuke.ucore.util.Bits;
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
package io.anuke.mindustry.io;
|
package io.anuke.mindustry.maps;
|
||||||
|
|
||||||
import com.badlogic.gdx.Gdx;
|
import com.badlogic.gdx.Gdx;
|
||||||
import com.badlogic.gdx.files.FileHandle;
|
import com.badlogic.gdx.files.FileHandle;
|
||||||
@@ -7,6 +7,7 @@ import com.badlogic.gdx.utils.Array;
|
|||||||
import com.badlogic.gdx.utils.Base64Coder;
|
import com.badlogic.gdx.utils.Base64Coder;
|
||||||
import com.badlogic.gdx.utils.Disposable;
|
import com.badlogic.gdx.utils.Disposable;
|
||||||
import com.badlogic.gdx.utils.ObjectMap;
|
import com.badlogic.gdx.utils.ObjectMap;
|
||||||
|
import io.anuke.mindustry.io.MapIO;
|
||||||
import io.anuke.ucore.core.Settings;
|
import io.anuke.ucore.core.Settings;
|
||||||
import io.anuke.ucore.function.Supplier;
|
import io.anuke.ucore.function.Supplier;
|
||||||
import io.anuke.ucore.util.Log;
|
import io.anuke.ucore.util.Log;
|
||||||
@@ -17,46 +18,30 @@ import java.io.*;
|
|||||||
import static io.anuke.mindustry.Vars.*;
|
import static io.anuke.mindustry.Vars.*;
|
||||||
|
|
||||||
public class Maps implements Disposable{
|
public class Maps implements Disposable{
|
||||||
/**
|
/**List of all built-in maps.*/
|
||||||
* List of all built-in maps.
|
|
||||||
*/
|
|
||||||
private static final String[] defaultMapNames = {};
|
private static final String[] defaultMapNames = {};
|
||||||
/**
|
/**Tile format version.*/
|
||||||
* Tile format version.
|
|
||||||
*/
|
|
||||||
private static final int version = 0;
|
private static final int version = 0;
|
||||||
|
|
||||||
/**
|
/**Maps map names to the real maps.*/
|
||||||
* Maps map names to the real maps.
|
|
||||||
*/
|
|
||||||
private ObjectMap<String, Map> maps = new ObjectMap<>();
|
private ObjectMap<String, Map> maps = new ObjectMap<>();
|
||||||
/**
|
/**All maps stored in an ordered array.*/
|
||||||
* All maps stored in an ordered array.
|
|
||||||
*/
|
|
||||||
private Array<Map> allMaps = new ThreadArray<>();
|
private Array<Map> allMaps = new ThreadArray<>();
|
||||||
/**
|
/**Temporary array used for returning things.*/
|
||||||
* Temporary array used for returning things.
|
|
||||||
*/
|
|
||||||
private Array<Map> returnArray = new ThreadArray<>();
|
private Array<Map> returnArray = new ThreadArray<>();
|
||||||
/**
|
/**Used for storing a list of custom map names for GWT.*/
|
||||||
* Used for storing a list of custom map names for GWT.
|
|
||||||
*/
|
|
||||||
private Array<String> customMapNames;
|
private Array<String> customMapNames;
|
||||||
|
|
||||||
public Maps(){
|
public Maps(){
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**Returns a list of all maps, including custom ones.*/
|
||||||
* Returns a list of all maps, including custom ones.
|
|
||||||
*/
|
|
||||||
public Array<Map> all(){
|
public Array<Map> all(){
|
||||||
return allMaps;
|
return allMaps;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**Returns a list of only custom maps.*/
|
||||||
* Returns a list of only custom maps.
|
|
||||||
*/
|
|
||||||
public Array<Map> customMaps(){
|
public Array<Map> customMaps(){
|
||||||
returnArray.clear();
|
returnArray.clear();
|
||||||
for(Map map : allMaps){
|
for(Map map : allMaps){
|
||||||
@@ -65,9 +50,7 @@ public class Maps implements Disposable{
|
|||||||
return returnArray;
|
return returnArray;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**Returns a list of only default maps.*/
|
||||||
* Returns a list of only default maps.
|
|
||||||
*/
|
|
||||||
public Array<Map> defaultMaps(){
|
public Array<Map> defaultMaps(){
|
||||||
returnArray.clear();
|
returnArray.clear();
|
||||||
for(Map map : allMaps){
|
for(Map map : allMaps){
|
||||||
@@ -76,16 +59,12 @@ public class Maps implements Disposable{
|
|||||||
return returnArray;
|
return returnArray;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**Returns map by internal name.*/
|
||||||
* Returns map by internal name.
|
|
||||||
*/
|
|
||||||
public Map getByName(String name){
|
public Map getByName(String name){
|
||||||
return maps.get(name);
|
return maps.get(name);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**Load all maps. Should be called at application start.*/
|
||||||
* Load all maps. Should be called at application start.
|
|
||||||
*/
|
|
||||||
public void load(){
|
public void load(){
|
||||||
try {
|
try {
|
||||||
for (String name : defaultMapNames) {
|
for (String name : defaultMapNames) {
|
||||||
@@ -99,9 +78,7 @@ public class Maps implements Disposable{
|
|||||||
loadCustomMaps();
|
loadCustomMaps();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**Save a map. This updates all values and stored data necessary.*/
|
||||||
* Save a map. This updates all values and stored data necessary.
|
|
||||||
*/
|
|
||||||
public void saveMap(String name, MapTileData data, ObjectMap<String, String> tags){
|
public void saveMap(String name, MapTileData data, ObjectMap<String, String> tags){
|
||||||
try {
|
try {
|
||||||
if (!gwt) {
|
if (!gwt) {
|
||||||
@@ -138,9 +115,7 @@ public class Maps implements Disposable{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**Removes a map completely.*/
|
||||||
* Removes a map completely.
|
|
||||||
*/
|
|
||||||
public void removeMap(Map map){
|
public void removeMap(Map map){
|
||||||
if(map.texture != null){
|
if(map.texture != null){
|
||||||
map.texture.dispose();
|
map.texture.dispose();
|
||||||
@@ -203,9 +178,7 @@ public class Maps implements Disposable{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**Returns an input stream supplier for a given map name.*/
|
||||||
* Returns an input stream supplier for a given map name.
|
|
||||||
*/
|
|
||||||
private Supplier<InputStream> getStreamFor(String name){
|
private Supplier<InputStream> getStreamFor(String name){
|
||||||
if(!gwt){
|
if(!gwt){
|
||||||
return customMapDirectory.child(name + "." + mapExtension)::read;
|
return customMapDirectory.child(name + "." + mapExtension)::read;
|
||||||
4
core/src/io/anuke/mindustry/maps/Sector.java
Normal file
4
core/src/io/anuke/mindustry/maps/Sector.java
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
package io.anuke.mindustry.maps;
|
||||||
|
|
||||||
|
public class Sector{
|
||||||
|
}
|
||||||
19
core/src/io/anuke/mindustry/maps/Sectors.java
Normal file
19
core/src/io/anuke/mindustry/maps/Sectors.java
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
package io.anuke.mindustry.maps;
|
||||||
|
|
||||||
|
import io.anuke.ucore.util.GridMap;
|
||||||
|
|
||||||
|
public class Sectors{
|
||||||
|
private GridMap<Sector> grid = new GridMap<>();
|
||||||
|
|
||||||
|
public Sectors(){
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void load(){
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void save(){
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -9,9 +9,9 @@ import io.anuke.mindustry.game.GameMode;
|
|||||||
import io.anuke.mindustry.game.Team;
|
import io.anuke.mindustry.game.Team;
|
||||||
import io.anuke.mindustry.game.TeamInfo;
|
import io.anuke.mindustry.game.TeamInfo;
|
||||||
import io.anuke.mindustry.game.TeamInfo.TeamData;
|
import io.anuke.mindustry.game.TeamInfo.TeamData;
|
||||||
import io.anuke.mindustry.io.Map;
|
import io.anuke.mindustry.maps.Map;
|
||||||
import io.anuke.mindustry.io.MapMeta;
|
import io.anuke.mindustry.maps.MapMeta;
|
||||||
import io.anuke.mindustry.io.Version;
|
import io.anuke.mindustry.game.Version;
|
||||||
import io.anuke.mindustry.world.Tile;
|
import io.anuke.mindustry.world.Tile;
|
||||||
import io.anuke.mindustry.world.blocks.BlockPart;
|
import io.anuke.mindustry.world.blocks.BlockPart;
|
||||||
import io.anuke.ucore.core.Core;
|
import io.anuke.ucore.core.Core;
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import io.anuke.mindustry.Vars;
|
|||||||
import io.anuke.mindustry.entities.Player;
|
import io.anuke.mindustry.entities.Player;
|
||||||
import io.anuke.mindustry.entities.Unit;
|
import io.anuke.mindustry.entities.Unit;
|
||||||
import io.anuke.mindustry.entities.traits.BuilderTrait.BuildRequest;
|
import io.anuke.mindustry.entities.traits.BuilderTrait.BuildRequest;
|
||||||
import io.anuke.mindustry.io.Version;
|
import io.anuke.mindustry.game.Version;
|
||||||
import io.anuke.mindustry.type.Recipe;
|
import io.anuke.mindustry.type.Recipe;
|
||||||
import io.anuke.mindustry.world.Tile;
|
import io.anuke.mindustry.world.Tile;
|
||||||
import io.anuke.ucore.io.IOUtils;
|
import io.anuke.ucore.io.IOUtils;
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import com.badlogic.gdx.utils.Array;
|
|||||||
import io.anuke.mindustry.Vars;
|
import io.anuke.mindustry.Vars;
|
||||||
import io.anuke.mindustry.io.Changelogs;
|
import io.anuke.mindustry.io.Changelogs;
|
||||||
import io.anuke.mindustry.io.Changelogs.VersionInfo;
|
import io.anuke.mindustry.io.Changelogs.VersionInfo;
|
||||||
import io.anuke.mindustry.io.Version;
|
import io.anuke.mindustry.game.Version;
|
||||||
import io.anuke.ucore.core.Settings;
|
import io.anuke.ucore.core.Settings;
|
||||||
import io.anuke.ucore.scene.ui.ScrollPane;
|
import io.anuke.ucore.scene.ui.ScrollPane;
|
||||||
import io.anuke.ucore.scene.ui.layout.Table;
|
import io.anuke.ucore.scene.ui.layout.Table;
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import com.badlogic.gdx.utils.Array;
|
|||||||
import io.anuke.mindustry.Vars;
|
import io.anuke.mindustry.Vars;
|
||||||
import io.anuke.mindustry.core.Platform;
|
import io.anuke.mindustry.core.Platform;
|
||||||
import io.anuke.mindustry.entities.Player;
|
import io.anuke.mindustry.entities.Player;
|
||||||
import io.anuke.mindustry.io.Version;
|
import io.anuke.mindustry.game.Version;
|
||||||
import io.anuke.mindustry.net.Host;
|
import io.anuke.mindustry.net.Host;
|
||||||
import io.anuke.mindustry.net.Net;
|
import io.anuke.mindustry.net.Net;
|
||||||
import io.anuke.ucore.core.Settings;
|
import io.anuke.ucore.core.Settings;
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import com.badlogic.gdx.graphics.g2d.TextureRegion;
|
|||||||
import com.badlogic.gdx.utils.Align;
|
import com.badlogic.gdx.utils.Align;
|
||||||
import io.anuke.mindustry.game.Difficulty;
|
import io.anuke.mindustry.game.Difficulty;
|
||||||
import io.anuke.mindustry.game.GameMode;
|
import io.anuke.mindustry.game.GameMode;
|
||||||
import io.anuke.mindustry.io.Map;
|
import io.anuke.mindustry.maps.Map;
|
||||||
import io.anuke.mindustry.ui.BorderImage;
|
import io.anuke.mindustry.ui.BorderImage;
|
||||||
import io.anuke.ucore.core.Settings;
|
import io.anuke.ucore.core.Settings;
|
||||||
import io.anuke.ucore.core.Timers;
|
import io.anuke.ucore.core.Timers;
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import io.anuke.mindustry.Vars;
|
|||||||
import io.anuke.mindustry.core.GameState.State;
|
import io.anuke.mindustry.core.GameState.State;
|
||||||
import io.anuke.mindustry.core.Platform;
|
import io.anuke.mindustry.core.Platform;
|
||||||
import io.anuke.mindustry.io.SaveIO;
|
import io.anuke.mindustry.io.SaveIO;
|
||||||
import io.anuke.mindustry.io.Saves.SaveSlot;
|
import io.anuke.mindustry.game.Saves.SaveSlot;
|
||||||
import io.anuke.ucore.core.Core;
|
import io.anuke.ucore.core.Core;
|
||||||
import io.anuke.ucore.core.Timers;
|
import io.anuke.ucore.core.Timers;
|
||||||
import io.anuke.ucore.scene.ui.ScrollPane;
|
import io.anuke.ucore.scene.ui.ScrollPane;
|
||||||
|
|||||||
@@ -4,10 +4,10 @@ import com.badlogic.gdx.graphics.Color;
|
|||||||
import com.badlogic.gdx.utils.Scaling;
|
import com.badlogic.gdx.utils.Scaling;
|
||||||
import io.anuke.mindustry.Vars;
|
import io.anuke.mindustry.Vars;
|
||||||
import io.anuke.mindustry.core.Platform;
|
import io.anuke.mindustry.core.Platform;
|
||||||
import io.anuke.mindustry.io.Map;
|
import io.anuke.mindustry.maps.Map;
|
||||||
import io.anuke.mindustry.io.MapIO;
|
import io.anuke.mindustry.io.MapIO;
|
||||||
import io.anuke.mindustry.io.MapMeta;
|
import io.anuke.mindustry.maps.MapMeta;
|
||||||
import io.anuke.mindustry.io.MapTileData;
|
import io.anuke.mindustry.maps.MapTileData;
|
||||||
import io.anuke.mindustry.ui.BorderImage;
|
import io.anuke.mindustry.ui.BorderImage;
|
||||||
import io.anuke.ucore.scene.event.Touchable;
|
import io.anuke.ucore.scene.event.Touchable;
|
||||||
import io.anuke.ucore.scene.ui.Image;
|
import io.anuke.ucore.scene.ui.Image;
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ package io.anuke.mindustry.ui.dialogs;
|
|||||||
|
|
||||||
import com.badlogic.gdx.utils.reflect.ClassReflection;
|
import com.badlogic.gdx.utils.reflect.ClassReflection;
|
||||||
import io.anuke.mindustry.core.GameState.State;
|
import io.anuke.mindustry.core.GameState.State;
|
||||||
import io.anuke.mindustry.io.Saves.SaveSlot;
|
import io.anuke.mindustry.game.Saves.SaveSlot;
|
||||||
import io.anuke.ucore.core.Timers;
|
import io.anuke.ucore.core.Timers;
|
||||||
import io.anuke.ucore.scene.ui.TextButton;
|
import io.anuke.ucore.scene.ui.TextButton;
|
||||||
import io.anuke.ucore.util.Bundles;
|
import io.anuke.ucore.util.Bundles;
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import com.badlogic.gdx.Gdx;
|
|||||||
import io.anuke.mindustry.core.GameState.State;
|
import io.anuke.mindustry.core.GameState.State;
|
||||||
import io.anuke.mindustry.core.Platform;
|
import io.anuke.mindustry.core.Platform;
|
||||||
import io.anuke.mindustry.game.EventType.ResizeEvent;
|
import io.anuke.mindustry.game.EventType.ResizeEvent;
|
||||||
import io.anuke.mindustry.io.Version;
|
import io.anuke.mindustry.game.Version;
|
||||||
import io.anuke.mindustry.ui.MenuButton;
|
import io.anuke.mindustry.ui.MenuButton;
|
||||||
import io.anuke.mindustry.ui.MobileButton;
|
import io.anuke.mindustry.ui.MobileButton;
|
||||||
import io.anuke.mindustry.ui.dialogs.FloatingDialog;
|
import io.anuke.mindustry.ui.dialogs.FloatingDialog;
|
||||||
|
|||||||
@@ -259,16 +259,12 @@ public abstract class BaseBlock{
|
|||||||
tile.setDump((byte) ((tile.getDump() + 1) % prox));
|
tile.setDump((byte) ((tile.getDump() + 1) % prox));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/** Used for dumping items.*/
|
||||||
* Used for dumping items.
|
|
||||||
*/
|
|
||||||
public boolean canDump(Tile tile, Tile to, Item item){
|
public boolean canDump(Tile tile, Tile to, Item item){
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/** Try offloading an item to a nearby container in its facing direction. Returns true if success.*/
|
||||||
* Try offloading an item to a nearby container in its facing direction. Returns true if success.
|
|
||||||
*/
|
|
||||||
public boolean offloadDir(Tile tile, Item item){
|
public boolean offloadDir(Tile tile, Item item){
|
||||||
Tile other = tile.getNearby(tile.getRotation());
|
Tile other = tile.getNearby(tile.getRotation());
|
||||||
if(other != null && other.block().acceptItem(item, other, tile)){
|
if(other != null && other.block().acceptItem(item, other, tile)){
|
||||||
|
|||||||
@@ -11,8 +11,8 @@ import io.anuke.mindustry.content.blocks.Blocks;
|
|||||||
import io.anuke.mindustry.content.blocks.OreBlocks;
|
import io.anuke.mindustry.content.blocks.OreBlocks;
|
||||||
import io.anuke.mindustry.content.blocks.StorageBlocks;
|
import io.anuke.mindustry.content.blocks.StorageBlocks;
|
||||||
import io.anuke.mindustry.game.Team;
|
import io.anuke.mindustry.game.Team;
|
||||||
import io.anuke.mindustry.io.MapTileData;
|
import io.anuke.mindustry.maps.MapTileData;
|
||||||
import io.anuke.mindustry.io.MapTileData.TileDataMarker;
|
import io.anuke.mindustry.maps.MapTileData.TileDataMarker;
|
||||||
import io.anuke.mindustry.type.Item;
|
import io.anuke.mindustry.type.Item;
|
||||||
import io.anuke.mindustry.world.Block;
|
import io.anuke.mindustry.world.Block;
|
||||||
import io.anuke.mindustry.world.Tile;
|
import io.anuke.mindustry.world.Tile;
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
package io.anuke.mindustry.desktop;
|
package io.anuke.mindustry.desktop;
|
||||||
|
|
||||||
import io.anuke.mindustry.io.Version;
|
import io.anuke.mindustry.game.Version;
|
||||||
import io.anuke.mindustry.net.Net;
|
import io.anuke.mindustry.net.Net;
|
||||||
import io.anuke.ucore.core.Settings;
|
import io.anuke.ucore.core.Settings;
|
||||||
import io.anuke.ucore.util.Strings;
|
import io.anuke.ucore.util.Strings;
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ import io.anuke.kryonet.KryoServer;
|
|||||||
import io.anuke.mindustry.Mindustry;
|
import io.anuke.mindustry.Mindustry;
|
||||||
import io.anuke.mindustry.core.Platform;
|
import io.anuke.mindustry.core.Platform;
|
||||||
import io.anuke.mindustry.io.SaveIO;
|
import io.anuke.mindustry.io.SaveIO;
|
||||||
import io.anuke.mindustry.io.Saves.SaveSlot;
|
import io.anuke.mindustry.game.Saves.SaveSlot;
|
||||||
import io.anuke.mindustry.net.Net;
|
import io.anuke.mindustry.net.Net;
|
||||||
import io.anuke.ucore.io.BinaryPreferences;
|
import io.anuke.ucore.io.BinaryPreferences;
|
||||||
import io.anuke.ucore.util.Bundles;
|
import io.anuke.ucore.util.Bundles;
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ import io.anuke.kryonet.KryoServer;
|
|||||||
import io.anuke.mindustry.core.Platform;
|
import io.anuke.mindustry.core.Platform;
|
||||||
import io.anuke.mindustry.core.ThreadHandler;
|
import io.anuke.mindustry.core.ThreadHandler;
|
||||||
import io.anuke.mindustry.io.SaveIO;
|
import io.anuke.mindustry.io.SaveIO;
|
||||||
import io.anuke.mindustry.io.Saves.SaveSlot;
|
import io.anuke.mindustry.game.Saves.SaveSlot;
|
||||||
import io.anuke.mindustry.net.Net;
|
import io.anuke.mindustry.net.Net;
|
||||||
import io.anuke.ucore.scene.ui.TextField;
|
import io.anuke.ucore.scene.ui.TextField;
|
||||||
import io.anuke.ucore.scene.ui.layout.Unit;
|
import io.anuke.ucore.scene.ui.layout.Unit;
|
||||||
|
|||||||
@@ -10,9 +10,9 @@ import io.anuke.mindustry.game.EventType.GameOverEvent;
|
|||||||
import io.anuke.mindustry.game.GameMode;
|
import io.anuke.mindustry.game.GameMode;
|
||||||
import io.anuke.mindustry.game.Team;
|
import io.anuke.mindustry.game.Team;
|
||||||
import io.anuke.mindustry.gen.Call;
|
import io.anuke.mindustry.gen.Call;
|
||||||
import io.anuke.mindustry.io.Map;
|
import io.anuke.mindustry.maps.Map;
|
||||||
import io.anuke.mindustry.io.SaveIO;
|
import io.anuke.mindustry.io.SaveIO;
|
||||||
import io.anuke.mindustry.io.Version;
|
import io.anuke.mindustry.game.Version;
|
||||||
import io.anuke.mindustry.net.*;
|
import io.anuke.mindustry.net.*;
|
||||||
import io.anuke.mindustry.net.Administration.PlayerInfo;
|
import io.anuke.mindustry.net.Administration.PlayerInfo;
|
||||||
import io.anuke.mindustry.net.Packets.KickReason;
|
import io.anuke.mindustry.net.Packets.KickReason;
|
||||||
|
|||||||
Reference in New Issue
Block a user