99 lines
3.9 KiB
Java
99 lines
3.9 KiB
Java
package com.me.pacman;
|
|
|
|
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.audio.Music;
|
|
import com.badlogic.gdx.audio.Sound;
|
|
import com.badlogic.gdx.graphics.Texture;
|
|
import com.badlogic.gdx.graphics.g2d.BitmapFont;
|
|
import com.badlogic.gdx.graphics.g2d.TextureRegion;
|
|
import com.badlogic.gdx.graphics.g2d.freetype.FreeTypeFontGenerator;
|
|
import com.badlogic.gdx.graphics.g2d.freetype.FreeTypeFontGeneratorLoader;
|
|
import com.badlogic.gdx.graphics.g2d.freetype.FreetypeFontLoader;
|
|
|
|
public class Assets {
|
|
|
|
private AssetManager manager;
|
|
|
|
public TextureRegion[][] level;
|
|
public TextureRegion[][] chase;
|
|
public TextureRegion[][] death;
|
|
public TextureRegion[][] ghosts;
|
|
public TextureRegion[][] pacman;
|
|
public TextureRegion[][] points;
|
|
public TextureRegion[][] volume;
|
|
|
|
public Sound chomp_1;
|
|
public Sound chomp_2;
|
|
public Sound siren;
|
|
public Sound beginning;
|
|
|
|
public Assets() {
|
|
this.manager = new AssetManager();
|
|
}
|
|
|
|
public void loadAssets() {
|
|
manager.load("level_background.png", Texture.class);
|
|
manager.load("logo.png", Texture.class);
|
|
|
|
manager.load("sprites/level.png", Texture.class);
|
|
manager.load("sprites/chase.png", Texture.class);
|
|
manager.load("sprites/death.png", Texture.class);
|
|
manager.load("sprites/ghosts.png", Texture.class);
|
|
manager.load("sprites/pacman.png", Texture.class);
|
|
manager.load("sprites/points.png", Texture.class);
|
|
manager.load("sprites/volume.png", Texture.class);
|
|
|
|
manager.load("sounds/chomp_1.wav", Sound.class);
|
|
manager.load("sounds/chomp_2.wav", Sound.class);
|
|
manager.load("sounds/siren.wav", Sound.class);
|
|
manager.load("sounds/beginning.wav", Sound.class);
|
|
|
|
// Yayyy! all of this to load a font
|
|
FileHandleResolver resolver = new InternalFileHandleResolver();
|
|
manager.setLoader(FreeTypeFontGenerator.class, new FreeTypeFontGeneratorLoader(resolver));
|
|
manager.setLoader(BitmapFont.class, ".ttf", new FreetypeFontLoader(resolver));
|
|
FreetypeFontLoader.FreeTypeFontLoaderParameter font = new FreetypeFontLoader.FreeTypeFontLoaderParameter();
|
|
font.fontFileName = "fonts/joystix.ttf";
|
|
font.fontParameters.size = 10;
|
|
font.fontParameters.mono = true;
|
|
manager.load("fonts/joystix.ttf", BitmapFont.class, font);
|
|
|
|
// finish loading assets from disk
|
|
manager.finishLoading();
|
|
|
|
// cache our texture regions
|
|
level = TextureRegion.split(manager.get("sprites/level.png", Texture.class), 8, 8);
|
|
chase = TextureRegion.split(manager.get("sprites/chase.png", Texture.class), 16, 16);
|
|
death = TextureRegion.split(manager.get("sprites/death.png", Texture.class), 16, 16);
|
|
ghosts = TextureRegion.split(manager.get("sprites/ghosts.png", Texture.class), 16, 16);
|
|
pacman = TextureRegion.split(manager.get("sprites/pacman.png", Texture.class), 16, 16);
|
|
points = TextureRegion.split(manager.get("sprites/points.png", Texture.class), 16, 16);
|
|
volume = TextureRegion.split(manager.get("sprites/volume.png", Texture.class), 16, 16);
|
|
|
|
// all our sounds
|
|
chomp_1 = manager.get("sounds/chomp_1.wav", Sound.class);
|
|
chomp_2 = manager.get("sounds/chomp_2.wav", Sound.class);
|
|
siren = manager.get("sounds/siren.wav", Sound.class);
|
|
beginning = manager.get("sounds/beginning.wav", Sound.class);
|
|
}
|
|
|
|
public Texture getLevelBackground() {
|
|
return manager.get("level_background.png", Texture.class);
|
|
}
|
|
|
|
public Texture getLogo() {
|
|
return manager.get("logo.png", Texture.class);
|
|
}
|
|
|
|
public BitmapFont getFont() {
|
|
return manager.get("fonts/joystix.ttf", BitmapFont.class);
|
|
}
|
|
|
|
public void dispose() {
|
|
manager.dispose();
|
|
}
|
|
|
|
}
|