Skip to content
Snippets Groups Projects
Commit ce74ad0a authored by Sander Østrem Fagernes's avatar Sander Østrem Fagernes
Browse files

feat: Simple AssetManager set up

Issue #19
parent 858ee25d
No related branches found
No related tags found
1 merge request!16Resolve "Login screen setup (without backend)"
Pipeline #204616 passed
package com.game.tankwars;
import com.badlogic.gdx.assets.AssetManager;
import com.badlogic.gdx.assets.loaders.FileHandleResolver;
import com.badlogic.gdx.assets.loaders.resolvers.InternalFileHandleResolver;
import com.badlogic.gdx.graphics.Texture;
import com.badlogic.gdx.graphics.g2d.BitmapFont;
import com.badlogic.gdx.graphics.g2d.freetype.FreeTypeFontGenerator;
import com.badlogic.gdx.graphics.g2d.freetype.FreeTypeFontGeneratorLoader;
import com.badlogic.gdx.graphics.g2d.freetype.FreetypeFontLoader;
import java.util.HashMap;
public class MenuAssetManager {
private final AssetManager manager;
private final HashMap<String, String> textures;
private final HashMap<String, String> fonts;
public MenuAssetManager() {
manager = new AssetManager();
textures = new HashMap<>();
textures.put("menu-background", "menu-background.png");
textures.put("logo", "tankwars-logo.png");
textures.put("menu-header-box", "main-menu-welcome-box.png");
textures.put("dialog-box", "menu-button.png");
textures.put("menu-button", "menu-button-2.png");
fonts = new HashMap<>();
fonts.put("menu-regular", "RollAccurate-mvrx.ttf");
FileHandleResolver resolver = new InternalFileHandleResolver();
manager.setLoader(FreeTypeFontGenerator.class, new FreeTypeFontGeneratorLoader(resolver));
manager.setLoader(BitmapFont.class, ".ttf", new FreetypeFontLoader(resolver));
}
public void loadTextures() {
for (String internalPath : textures.keySet()) {
manager.load(internalPath, Texture.class);
}
}
public void loadFonts() {
// First, let's define the params and then load our smaller font
FreetypeFontLoader.FreeTypeFontLoaderParameter mySmallFont = new FreetypeFontLoader.FreeTypeFontLoaderParameter();
mySmallFont.fontFileName = "arial.ttf";
mySmallFont.fontParameters.size = 10;
manager.load("arial.ttf", BitmapFont.class, mySmallFont);
}
public void finishLoading() {
manager.finishLoading();
}
}
package com.game.tankwars.model;
import com.badlogic.gdx.graphics.Texture;
public class MenuHeader {
private final Texture texture;
public MenuHeader() {
texture = new Texture("main-menu-welcome-box.png");
}
public Texture getTexture() {
return texture;
}
}
......@@ -15,6 +15,7 @@ import com.badlogic.gdx.utils.viewport.Viewport;
import com.game.tankwars.TankWarsGame;
import com.game.tankwars.controller.LoginController;
import com.game.tankwars.model.FontGeneratorTTF;
import com.game.tankwars.model.MenuHeader;
public class LoginScreen extends InputAdapter implements Screen {
......@@ -27,6 +28,7 @@ public class LoginScreen extends InputAdapter implements Screen {
private final Texture background;
private final Sprite logo;
private final Texture headerBox;
private final MenuHeader menuHeader;
private final GlyphLayout title;
......@@ -51,6 +53,7 @@ public class LoginScreen extends InputAdapter implements Screen {
logo.setScale(1.3f);
logo.setPosition(-logo.getWidth() / 2, 32 * heightPercentile);
menuHeader = new MenuHeader();
headerBox = new Texture("main-menu-welcome-box.png");
font.getData().setScale(1f);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment