TeamEntry class implementation

This commit is contained in:
Anuken
2021-12-03 10:28:34 -05:00
parent 8168d8a3be
commit 9c9d147b95
10 changed files with 40 additions and 6 deletions

View File

@@ -1056,7 +1056,7 @@ public class Blocks{
iconOverride = new String[]{"-bottom", "", "-top1"};
drawer = new DrawMulti(new DrawRegion("-bottom"), new DrawLiquidRegion(), new DrawBlock(), new DrawHeatOutput());
craftTime = 60f * 4f;
craftTime = 60f * 3f;
liquidCapacity = 30f;
heatOutput = 5f;
}};
@@ -1248,6 +1248,7 @@ public class Blocks{
}};
//TODO needs to be completely redone from the ground up
if(false)
cellSynthesisChamber = new LiquidConverter("cell-synthesis-chamber"){{
//TODO booster mechanics?
requirements(Category.crafting, with(Items.thorium, 100, Items.phaseFabric, 120, Items.titanium, 150, Items.surgeAlloy, 70));

View File

@@ -0,0 +1,13 @@
package mindustry.content;
public class TeamEntries{
public static void load(){
//more will be added later - do these need references?
//TODO
//new TeamEntry(Team.derelict);
//new TeamEntry(Team.sharded);
//new TeamEntry(Team.crux);
}
}

View File

@@ -40,6 +40,7 @@ public class ContentLoader{
/** Creates all base types. */
public void createBaseContent(){
TeamEntries.load();
Items.load();
StatusEffects.load();
Liquids.load();

View File

@@ -3,6 +3,7 @@ package mindustry.ctype;
import arc.*;
import arc.func.*;
import arc.graphics.g2d.*;
import arc.scene.ui.layout.*;
import arc.util.*;
import mindustry.annotations.Annotations.*;
import mindustry.content.TechTree.*;
@@ -88,6 +89,11 @@ public abstract class UnlockableContent extends MappableContent{
public void setStats(){
}
/** Display any extra info after details. */
public void displayExtra(Table table){
}
/**
* Generate any special icons for this content. Called synchronously.
* No regions are loaded at this point; grab pixmaps from the packer.

View File

@@ -14,7 +14,11 @@ import mindustry.game.*;
import mindustry.gen.*;
import mindustry.type.*;
/** A unit that can command other units. */
/**
* A unit that can command other units.
* @deprecated This mechanic is likely to be removed or completely reworked in the future.
* */
@Deprecated
@Component
abstract class CommanderComp implements Entityc, Posc{
private static final Seq<FormationMember> members = new Seq<>();

View File

@@ -241,7 +241,7 @@ public class ErekirPlanetGenerator extends PlanetGenerator{
Schematics.placeLaunchLoadout(spawnX, spawnY);
//TODO this is only for testing
state.rules.defaultTeam.items().add(Seq.with(ItemStack.with(Items.beryllium, 200, Items.graphite, 200)));
state.rules.defaultTeam.items().add(Seq.with(ItemStack.with(Items.beryllium, 300, Items.graphite, 300)));
//TODO proper waves
state.rules.waves = !OS.hasProp("mindustry.debug");

View File

@@ -1,10 +1,11 @@
package mindustry.type;
import arc.scene.ui.layout.*;
import mindustry.ctype.*;
import mindustry.game.*;
/** This class is only for displaying team lore in the content database. */
//TODO
//TODO more stuff, make unlockable, don't display in campaign at all
public class TeamEntry extends UnlockableContent{
public final Team team;
@@ -13,6 +14,11 @@ public class TeamEntry extends UnlockableContent{
this.team = team;
}
@Override
public void displayExtra(Table table){
table.add("@team." + name + ".log").pad(6).padTop(20).width(400f).wrap().fillX();
}
@Override
public ContentType getContentType(){
return ContentType.team;

View File

@@ -85,6 +85,8 @@ public class ContentInfoDialog extends BaseDialog{
table.row();
}
content.displayExtra(table);
ScrollPane pane = new ScrollPane(table);
cont.add(pane);