diff --git a/core/src/mindustry/core/UI.java b/core/src/mindustry/core/UI.java index 6b316c1975..544a9c9229 100644 --- a/core/src/mindustry/core/UI.java +++ b/core/src/mindustry/core/UI.java @@ -85,7 +85,7 @@ public class UI implements ApplicationListener, Loadable{ Fonts.def.getData().markupEnabled = true; Fonts.def.setOwnsTexture(false); - Core.assets.getAll(BitmapFont.class, new Seq<>()).each(font -> font.setUseIntegerPositions(true)); + Core.assets.getAll(Font.class, new Seq<>()).each(font -> font.setUseIntegerPositions(true)); Core.scene = new Scene(); Core.input.addProcessor(Core.scene); @@ -118,7 +118,7 @@ public class UI implements ApplicationListener, Loadable{ @Override public Seq getDependencies(){ - return Seq.with(new AssetDescriptor<>(Control.class), new AssetDescriptor<>("outline", BitmapFont.class), new AssetDescriptor<>("default", BitmapFont.class), new AssetDescriptor<>("chat", BitmapFont.class)); + return Seq.with(new AssetDescriptor<>(Control.class), new AssetDescriptor<>("outline", Font.class), new AssetDescriptor<>("default", Font.class), new AssetDescriptor<>("chat", Font.class)); } @Override diff --git a/core/src/mindustry/editor/WaveGraph.java b/core/src/mindustry/editor/WaveGraph.java index c1c65cbb62..cde70aa861 100644 --- a/core/src/mindustry/editor/WaveGraph.java +++ b/core/src/mindustry/editor/WaveGraph.java @@ -35,7 +35,7 @@ public class WaveGraph extends Table{ Lines.precise(true); GlyphLayout lay = Pools.obtain(GlyphLayout.class, GlyphLayout::new); - BitmapFont font = Fonts.outline; + Font font = Fonts.outline; lay.setText(font, "1"); diff --git a/core/src/mindustry/entities/comp/PlayerComp.java b/core/src/mindustry/entities/comp/PlayerComp.java index 4f4800daa7..6ec9c2abe9 100644 --- a/core/src/mindustry/entities/comp/PlayerComp.java +++ b/core/src/mindustry/entities/comp/PlayerComp.java @@ -205,7 +205,7 @@ abstract class PlayerComp implements UnitController, Entityc, Syncc, Timerc, Dra Draw.z(Layer.playerName); float z = Drawf.text(); - BitmapFont font = Fonts.def; + Font font = Fonts.def; GlyphLayout layout = Pools.obtain(GlyphLayout.class, GlyphLayout::new); final float nameHeight = 11; final float textHeight = 15; diff --git a/core/src/mindustry/graphics/LoadRenderer.java b/core/src/mindustry/graphics/LoadRenderer.java index 12ffe9af40..9dcb08fa5e 100644 --- a/core/src/mindustry/graphics/LoadRenderer.java +++ b/core/src/mindustry/graphics/LoadRenderer.java @@ -172,7 +172,7 @@ public class LoadRenderer implements Disposable{ Lines.poly(w/2, h/2, 4, rad2); if(assets.isLoaded("tech")){ - BitmapFont font = assets.get("tech"); + Font font = assets.get("tech"); font.getData().markupEnabled = true; int panei = 0; @@ -461,7 +461,7 @@ public class LoadRenderer implements Disposable{ String key = name.contains("script") ? "scripts" : name.contains("content") ? "content" : name.contains("mod") ? "mods" : name.contains("msav") || name.contains("maps") ? "map" : name.contains("ogg") || name.contains("mp3") ? "sound" : name.contains("png") ? "image" : "system"; - BitmapFont font = assets.get("tech"); + Font font = assets.get("tech"); font.setColor(Pal.accent); Draw.color(Color.black); font.draw(red + "[[[[ " +key + " ]]\n\n"+orange+"<" + Version.modifier + " " + (Version.build == 0 ? " [init]" : Version.build == -1 ? " custom" : " " + Version.build) + ">", w/2f, h/2f + 110*s, Align.center); diff --git a/core/src/mindustry/graphics/MinimapRenderer.java b/core/src/mindustry/graphics/MinimapRenderer.java index ab95e0f260..e0cd9c7a50 100644 --- a/core/src/mindustry/graphics/MinimapRenderer.java +++ b/core/src/mindustry/graphics/MinimapRenderer.java @@ -172,7 +172,7 @@ public class MinimapRenderer implements Disposable{ } public void drawLabel(float x, float y, String text, Color color){ - BitmapFont font = Fonts.outline; + Font font = Fonts.outline; GlyphLayout l = Pools.obtain(GlyphLayout.class, GlyphLayout::new); boolean ints = font.usesIntegerPositions(); font.getData().setScale(1 / 1.5f / Scl.scl(1f)); diff --git a/core/src/mindustry/type/ItemStack.java b/core/src/mindustry/type/ItemStack.java index dad33a338b..a8a765c4df 100644 --- a/core/src/mindustry/type/ItemStack.java +++ b/core/src/mindustry/type/ItemStack.java @@ -59,15 +59,6 @@ public class ItemStack implements Comparable{ return stacks; } - public static void insert(Seq stacks, Item item, int amount){ - ItemStack stack = stacks.find(i -> i.item == item); - if(stack == null){ - stacks.add(new ItemStack(item, amount)); - }else{ - stack.amount += amount; - } - } - @Override public int compareTo(ItemStack itemStack){ return item.compareTo(itemStack.item); diff --git a/core/src/mindustry/ui/Bar.java b/core/src/mindustry/ui/Bar.java index d72d602497..5cc23d27ca 100644 --- a/core/src/mindustry/ui/Bar.java +++ b/core/src/mindustry/ui/Bar.java @@ -91,7 +91,7 @@ public class Bar extends Element{ Draw.color(); - BitmapFont font = Fonts.outline; + Font font = Fonts.outline; GlyphLayout lay = Pools.obtain(GlyphLayout.class, GlyphLayout::new); lay.setText(font, name); diff --git a/core/src/mindustry/ui/Fonts.java b/core/src/mindustry/ui/Fonts.java index ef10ba3f54..be8c33e3e8 100644 --- a/core/src/mindustry/ui/Fonts.java +++ b/core/src/mindustry/ui/Fonts.java @@ -13,7 +13,7 @@ import arc.graphics.*; import arc.graphics.Pixmap.*; import arc.graphics.Texture.*; import arc.graphics.g2d.*; -import arc.graphics.g2d.BitmapFont.*; +import arc.graphics.g2d.Font.*; import arc.graphics.g2d.PixmapPacker.*; import arc.graphics.g2d.TextureAtlas.*; import arc.math.*; @@ -30,11 +30,11 @@ public class Fonts{ private static ObjectIntMap unicodeIcons = new ObjectIntMap<>(); private static ObjectMap stringIcons = new ObjectMap<>(); - public static BitmapFont def; - public static BitmapFont outline; - public static BitmapFont chat; - public static BitmapFont icon; - public static BitmapFont tech; + public static Font def; + public static Font outline; + public static Font chat; + public static Font icon; + public static Font tech; public static int getUnicode(String content){ return unicodeIcons.get(content, 0); @@ -62,17 +62,17 @@ public class Fonts{ FreeTypeFontParameter param = fontParameter(); - Core.assets.load("default", BitmapFont.class, new FreeTypeFontLoaderParameter(fontName, param)).loaded = f -> Fonts.def = (BitmapFont)f; - Core.assets.load("chat", BitmapFont.class, new FreeTypeFontLoaderParameter(fontName, param)).loaded = f -> Fonts.chat = (BitmapFont)f; - Core.assets.load("icon", BitmapFont.class, new FreeTypeFontLoaderParameter("fonts/icon.ttf", new FreeTypeFontParameter(){{ + Core.assets.load("default", Font.class, new FreeTypeFontLoaderParameter(fontName, param)).loaded = f -> Fonts.def = (Font)f; + Core.assets.load("chat", Font.class, new FreeTypeFontLoaderParameter(fontName, param)).loaded = f -> Fonts.chat = (Font)f; + Core.assets.load("icon", Font.class, new FreeTypeFontLoaderParameter("fonts/icon.ttf", new FreeTypeFontParameter(){{ size = 30; incremental = true; characters = "\0"; - }})).loaded = f -> Fonts.icon = (BitmapFont)f; + }})).loaded = f -> Fonts.icon = (Font)f; } public static void loadContentIcons(){ - Seq fonts = Seq.with(Fonts.chat, Fonts.def, Fonts.outline); + Seq fonts = Seq.with(Fonts.chat, Fonts.def, Fonts.outline); Texture uitex = Core.atlas.find("logo").getTexture(); int size = (int)(Fonts.def.getData().lineHeight/Fonts.def.getData().scaleY); @@ -119,11 +119,11 @@ public class Fonts{ UI.packer = new PixmapPacker(2048, 2048, Format.rgba8888, 2, true); FileHandleResolver resolver = new InternalFileHandleResolver(); Core.assets.setLoader(FreeTypeFontGenerator.class, new FreeTypeFontGeneratorLoader(resolver)); - Core.assets.setLoader(BitmapFont.class, null, new FreetypeFontLoader(resolver){ + Core.assets.setLoader(Font.class, null, new FreetypeFontLoader(resolver){ ObjectSet scaled = new ObjectSet<>(); @Override - public BitmapFont loadSync(AssetManager manager, String fileName, Fi file, FreeTypeFontLoaderParameter parameter){ + public Font loadSync(AssetManager manager, String fileName, Fi file, FreeTypeFontLoaderParameter parameter){ if(fileName.equals("outline")){ parameter.fontParameters.borderWidth = Scl.scl(2f); parameter.fontParameters.spaceX -= parameter.fontParameters.borderWidth; @@ -146,11 +146,11 @@ public class Fonts{ size = 18; }}; - Core.assets.load("outline", BitmapFont.class, new FreeTypeFontLoaderParameter("fonts/font.ttf", param)).loaded = t -> Fonts.outline = (BitmapFont)t; + Core.assets.load("outline", Font.class, new FreeTypeFontLoaderParameter("fonts/font.ttf", param)).loaded = t -> Fonts.outline = (Font)t; - Core.assets.load("tech", BitmapFont.class, new FreeTypeFontLoaderParameter("fonts/tech.ttf", new FreeTypeFontParameter(){{ + Core.assets.load("tech", Font.class, new FreeTypeFontLoaderParameter("fonts/tech.ttf", new FreeTypeFontParameter(){{ size = 18; - }})).loaded = f -> Fonts.tech = (BitmapFont)f; + }})).loaded = f -> Fonts.tech = (Font)f; } /** Merges the UI and font atlas together for better performance. */ @@ -184,7 +184,7 @@ public class Fonts{ page.updateTexture(TextureFilter.linear, TextureFilter.linear, false); } - public static TextureRegionDrawable getGlyph(BitmapFont font, char glyph){ + public static TextureRegionDrawable getGlyph(Font font, char glyph){ Glyph g = font.getData().getGlyph(glyph); if(g == null) throw new IllegalArgumentException("No glyph: " + glyph + " (" + (int)glyph + ")"); diff --git a/core/src/mindustry/ui/fragments/ChatFragment.java b/core/src/mindustry/ui/fragments/ChatFragment.java index 71709a9173..55cb2af28d 100644 --- a/core/src/mindustry/ui/fragments/ChatFragment.java +++ b/core/src/mindustry/ui/fragments/ChatFragment.java @@ -27,7 +27,7 @@ public class ChatFragment extends Table{ private boolean shown = false; private TextField chatfield; private Label fieldlabel = new Label(">"); - private BitmapFont font; + private Font font; private GlyphLayout layout = new GlyphLayout(); private float offsetx = Scl.scl(4), offsety = Scl.scl(4), fontoffsetx = Scl.scl(2), chatspace = Scl.scl(50); private Color shadowColor = new Color(0, 0, 0, 0.4f); diff --git a/core/src/mindustry/ui/fragments/LoadingFragment.java b/core/src/mindustry/ui/fragments/LoadingFragment.java index da666cbf98..881b80b019 100644 --- a/core/src/mindustry/ui/fragments/LoadingFragment.java +++ b/core/src/mindustry/ui/fragments/LoadingFragment.java @@ -14,6 +14,7 @@ public class LoadingFragment extends Fragment{ private Table table; private TextButton button; private Bar bar; + private Label nameLabel; @Override public void build(Group parent){ @@ -23,11 +24,13 @@ public class LoadingFragment extends Fragment{ t.add().height(133f).row(); t.add(new WarningBar()).growX().height(24f); t.row(); - t.add("$loading").name("namelabel").pad(10f).style(Styles.techLabel); + nameLabel = t.add("$loading").pad(10f).style(Styles.techLabel).get(); t.row(); t.add(new WarningBar()).growX().height(24f); t.row(); + text("$loading"); + bar = t.add(new Bar()).pad(3).size(500f, 40f).visible(false).get(); t.row(); button = t.button("$cancel", () -> {}).pad(20).size(250f, 70f).visible(false).get(); @@ -48,8 +51,8 @@ public class LoadingFragment extends Fragment{ } public void setText(String text){ - table.