package kz.ilotterytea.frogartha; import com.badlogic.gdx.Application; import com.badlogic.gdx.Game; import com.badlogic.gdx.Gdx; import com.badlogic.gdx.Input; import com.badlogic.gdx.assets.AssetManager; import kz.ilotterytea.frogartha.assets.AssetUtils; import kz.ilotterytea.frogartha.screens.SplashScreen; import kz.ilotterytea.frogartha.sessions.IdentityClient; import kz.ilotterytea.frogartha.sessions.SessionClient; /** * {@link com.badlogic.gdx.ApplicationListener} implementation shared by all platforms. */ public class FrogarthaGame extends Game { private static FrogarthaGame instance; private AssetManager assetManager; private IdentityClient identityClient; private SessionClient sessionClient; @Override public void create() { assetManager = new AssetManager(); AssetUtils.setup(assetManager); AssetUtils.queue(assetManager); identityClient = new IdentityClient(Gdx.app.getPreferences("kz.ilotterytea.SigninIdentity")); sessionClient = new SessionClient(); // preventing space key from triggering scrolling if (Gdx.app.getType() == Application.ApplicationType.WebGL) { Gdx.input.setCatchKey(Input.Keys.SPACE, true); Gdx.input.setCatchKey(Input.Keys.F3, true); } setScreen(new SplashScreen()); } @Override public void dispose() { super.dispose(); assetManager.dispose(); sessionClient.close(); } public static FrogarthaGame getInstance() { if (instance == null) instance = new FrogarthaGame(); return instance; } public SessionClient getSessionClient() { return sessionClient; } public IdentityClient getIdentityClient() { return identityClient; } public AssetManager getAssetManager() { return assetManager; } }