package com.digitalwolf.screens; import com.badlogic.gdx.Game; import com.badlogic.gdx.Screen; import com.badlogic.gdx.scenes.scene2d.InputEvent; import com.badlogic.gdx.scenes.scene2d.actions.Actions; import com.badlogic.gdx.scenes.scene2d.ui.ScrollPane; import com.badlogic.gdx.scenes.scene2d.utils.ActorGestureListener; import com.digitalwolf.assets.Assets; import com.moribitotech.mtx.AbstractScreen; import com.moribitotech.mtx.ButtonGame; import com.moribitotech.mtx.MenuCreator; import com.moribitotech.mtx.models.base.EmptyAbstractActor; import com.moribitotech.mtx.models.base.TableModel; import com.moribitotech.mtx.settings.AppSettings; public class CreditsScreen extends AbstractScreen implements Screen{ private EmptyAbstractActor testActor; private TableModel tableMenu; public CreditsScreen(Game game, String screenName) { super(game, screenName); // TODO Auto-generated constructor stub setUpScreenElements(); setUpInfoPanel(); setUpActors(); setUpMenu(); } private void setUpMenu() { // TODO Auto-generated method stub testActor = new EmptyAbstractActor(Assets.transparent_credit.getRegionWidth(), Assets.transparent_credit.getRegionHeight(), true); testActor.setTextureRegion(Assets.transparent_credit, true); tableMenu = new TableModel(null, AppSettings.WORLD_WIDTH , AppSettings.WORLD_HEIGHT); tableMenu.defaults().space(100); tableMenu.add(testActor); // put the table inside a scrollpane ScrollPane scrollPane = new ScrollPane(tableMenu); scrollPane.setBounds(0, 0, AppSettings.SCREEN_W, AppSettings.SCREEN_H-80); scrollPane.setScrollingDisabled(true, false); scrollPane.setOverscroll(false, false); scrollPane.invalidate(); getStage().addActor(scrollPane); } private void setUpActors() { // TODO Auto-generated method stub } private void setUpInfoPanel() { // Add the Back Button // Back Button final ButtonGame btnBack = MenuCreator.createCustomGameButton(null, Assets.left_button, Assets.left_button, 64, 64, true); btnBack.setPosition(AppSettings.WORLD_WIDTH - btnBack.getWidth(), AppSettings.WORLD_HEIGHT - btnBack.getHeight()); btnBack.addListener(new ActorGestureListener() { @Override public void touchUp(InputEvent event, float x, float y, int pointer, int button) { super.touchUp(event, x, y, pointer, button); tableMenu.addAction(Actions.moveTo(0, -tableMenu.getHeight(), 0.3f)); getGame().setScreen(new MainMenuScreen(getGame(), "MainMenu")); } }); getStage().addActor(btnBack); } private void setUpScreenElements() { // SET UP THE BACKGROUND AND MAKE THE BACK BUTTON ACTIVE setBackgroundTexture(Assets.bg); setBackButtonActive(true); } @Override public void render(float delta) { getStage().act(delta); getStage().draw(); } }