mirror of
https://github.com/Anuken/Mindustry.git
synced 2024-09-23 06:18:00 +03:00
Display current ammo type in turret info
This commit is contained in:
parent
b812fcddf8
commit
69ee5257f2
Binary file not shown.
Before Width: | Height: | Size: 206 B After Width: | Height: | Size: 3.4 KiB |
Binary file not shown.
Binary file not shown.
Before Width: | Height: | Size: 677 KiB After Width: | Height: | Size: 677 KiB |
@ -1577,7 +1577,7 @@ public class Blocks implements ContentList{
|
||||
shootCone = 24f;
|
||||
|
||||
health = 155 * size * size;
|
||||
consumes.add(new ConsumeLiquidFilter(liquid -> liquid.temperature <= 0.5f && liquid.flammability < 0.1f, 2f)).update(false).optional(true, false);
|
||||
consumes.add(new ConsumeLiquidFilter(liquid -> liquid.temperature <= 0.5f && liquid.flammability < 0.1f, 2f)).update(false).optional(true, true);
|
||||
}};
|
||||
|
||||
meltdown = new LaserTurret("meltdown"){{
|
||||
|
@ -17,6 +17,13 @@ public class ItemImage extends Stack{
|
||||
add(t);
|
||||
}
|
||||
|
||||
public ItemImage(TextureRegion region){
|
||||
Table t = new Table().left().bottom();
|
||||
|
||||
add(new Image(region));
|
||||
add(t);
|
||||
}
|
||||
|
||||
public ItemImage(ItemStack stack){
|
||||
add(new Image(stack.item.icon(Icon.large)));
|
||||
|
||||
|
@ -16,6 +16,8 @@ import io.anuke.mindustry.world.meta.values.*;
|
||||
|
||||
import java.io.*;
|
||||
|
||||
import static io.anuke.mindustry.Vars.*;
|
||||
|
||||
public class ItemTurret extends CooledTurret{
|
||||
protected int maxAmmo = 30;
|
||||
protected ObjectMap<Item, BulletType> ammo = new ObjectMap<>();
|
||||
@ -37,6 +39,15 @@ public class ItemTurret extends CooledTurret{
|
||||
stats.remove(BlockStat.itemCapacity);
|
||||
stats.add(BlockStat.ammo, new AmmoListValue<>(ammo));
|
||||
consumes.add(new ConsumeItemFilter(i -> ammo.containsKey(i)){
|
||||
@Override
|
||||
public void build(Tile tile, Table table){
|
||||
MultiReqImage image = new MultiReqImage();
|
||||
content.items().each(i -> filter.test(i) && (!world.isZone() || data.isUnlocked(i)), item -> image.add(new ReqImage(new ItemImage(item.icon(Item.Icon.large)),
|
||||
() -> tile.entity != null && !((ItemTurretEntity)tile.entity).ammo.isEmpty() && ((ItemEntry)tile.<ItemTurretEntity>entity().ammo.peek()).item == item)));
|
||||
|
||||
table.add(image).size(8 * 4);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean valid(TileEntity entity){
|
||||
//valid when there's any ammo in the turret
|
||||
|
@ -7,7 +7,6 @@ import io.anuke.mindustry.entities.effect.*;
|
||||
import io.anuke.mindustry.entities.type.*;
|
||||
import io.anuke.mindustry.type.*;
|
||||
import io.anuke.mindustry.world.*;
|
||||
import io.anuke.mindustry.world.blocks.defense.turrets.ItemTurret.*;
|
||||
import io.anuke.mindustry.world.consumers.*;
|
||||
import io.anuke.mindustry.world.meta.*;
|
||||
import io.anuke.mindustry.world.meta.values.*;
|
||||
|
Loading…
Reference in New Issue
Block a user