List of usage examples for com.badlogic.gdx.scenes.scene2d.ui ImageButton ImageButton
public ImageButton(Drawable imageUp, Drawable imageDown)
From source file:com.andgate.ikou.utility.Icon.java
License:Open Source License
public static ImageButton createIconButton(Ikou game, String upFilename, String downFilename, ClickListener listener) {//from www .j a v a2 s . c om Texture buttonTexture = new Texture(Gdx.files.internal(upFilename), true); buttonTexture.setFilter(TextureFilter.MipMapLinearLinear, TextureFilter.Linear); Texture buttonDownTexture = new Texture(Gdx.files.internal(downFilename), true); buttonDownTexture.setFilter(TextureFilter.MipMapLinearLinear, TextureFilter.Linear); TextureRegionDrawable buttonDrawable = new TextureRegionDrawable(new TextureRegion(buttonTexture)); TextureRegionDrawable buttonDownDrawable = new TextureRegionDrawable(new TextureRegion(buttonDownTexture)); ImageButton button = new ImageButton(buttonDrawable, buttonDownDrawable); button.getImageCell().width(Constants.BUTTON_LENGTH * game.ppm); button.getImageCell().height(Constants.BUTTON_LENGTH * game.ppm); button.addListener(listener); return button; }
From source file:com.andgate.pokeadot.PokeADot.java
License:Open Source License
public ImageButton createIconButton(String upFilename, String downFilename, ClickListener listener) { Texture buttonTexture = new Texture(upFilename); buttonTexture.setFilter(TextureFilter.Linear, TextureFilter.Linear); Texture buttonDownTexture = new Texture(upFilename); buttonDownTexture.setFilter(TextureFilter.Linear, TextureFilter.Linear); TextureRegionDrawable buttonDrawable = new TextureRegionDrawable(new TextureRegion(buttonTexture)); TextureRegionDrawable buttonDownDrawable = new TextureRegionDrawable(new TextureRegion(buttonDownTexture)); ImageButton button = new ImageButton(buttonDrawable, buttonDownDrawable); button.getImageCell().width(Constants.BUTTON_LENGTH * ppm); button.getImageCell().height(Constants.BUTTON_LENGTH * ppm); button.addListener(listener);/*from w w w . j av a 2 s.c o m*/ return button; }
From source file:com.badlogic.gdx.spriter.demo.SpriterDemoApp.java
@Override public void create() { // Initialize object batch = new SpriteBatch(); camera = new OrthographicCamera(); FileHandleResolver resolver = new InternalFileHandleResolver(); assetManager = new AssetManager(resolver); assetManager.setLoader(SpriterData.class, new SpriterDataLoader(resolver)); resolver = new AbsoluteFileHandleResolver(); externalAssetManager = new AssetManager(resolver); externalAssetManager.setLoader(SpriterData.class, new SpriterDataLoader(resolver)); assetManager.load("uiskin.json", Skin.class); assetManager.finishLoading();/*from w w w.jav a 2 s.co m*/ skin = assetManager.get("uiskin.json"); // Create widgets stage = new Stage(new ScreenViewport(camera), batch); Label titleLabel = new Label("gdx-spriter", skin); titleLabel.setFontScale(3f); Label fpsLabel = new Label("FPS", skin) { @Override public void act(float delta) { this.setText(Gdx.graphics.getFramesPerSecond() + " FPS"); super.act(delta); } }; fileChooser = new SelectBox<SpriterDemoFileHandle>(skin); fileChooser.setName("Files"); fileChooser.addListener(new ChangeListener() { @Override public void changed(ChangeEvent event, Actor actor) { changeSpriterFile(fileChooser.getSelected()); lastUsedSelectBox = fileChooser; } }); Button fileFinder = new TextButton("Browse", skin); fileFinder.addListener(new ChangeListener() { @Override public void changed(ChangeEvent event, Actor actor) { FileDialog fileDialog = new FileDialog((java.awt.Frame) null, "Choose Spriter file", FileDialog.LOAD); fileDialog.setDirectory(lastFolderBrowsed); fileDialog.setResizable(true); fileDialog.setVisible(true); String file = fileDialog.getFile(); String directory = fileDialog.getDirectory(); if (directory != null) { lastFolderBrowsed = directory; } if (file != null) { String path = directory + file; addFile(Gdx.files.absolute(path), externalAssetManager); fileChooser.setItems(files); fileChooser.setSelectedIndex(fileChooser.getItems().size - 1); } } }); entityChooser = new SelectBox<SpriterAnimator>(skin); entityChooser.setName("Entities"); entityChooser.addListener(new ChangeListener() { @Override public void changed(ChangeEvent event, Actor actor) { changeAnimator(entityChooser.getSelected()); lastUsedSelectBox = entityChooser; } }); animationChooser = new SelectBox<String>(skin); animationChooser.setName("Animations"); animationChooser.addListener(new ChangeListener() { @Override public void changed(ChangeEvent event, Actor actor) { changeAnimation(animationChooser.getSelected()); lastUsedSelectBox = animationChooser; } }); final CheckBox transitionCheckbox = new CheckBox("Transition", skin); transitionCheckbox.setChecked(transition); transitionCheckbox.addListener(new ChangeListener() { @Override public void changed(ChangeEvent event, Actor actor) { transition = transitionCheckbox.isChecked(); } }); charmapChooser = new List<SpriterCharacterMap>(skin); ArraySelection<SpriterCharacterMap> selection = charmapChooser.getSelection(); selection.setMultiple(true); selection.setRangeSelect(false); selection.setToggle(false); selection.setRequired(false); charmapChooser.setName("Charmaps"); charmapChooser.addListener(new ChangeListener() { @Override public void changed(ChangeEvent event, Actor actor) { changeCharacterMaps(charmapChooser.getSelection().items().orderedItems()); } }); angleSlider = new SpriterDemoAnimatorSlider(0, 360, 1f, skin, "%.0f") { @Override public void setValue(SpriterAnimator animator, float value) { spriterAnimator.setRotation(value); } @Override protected float getValue(SpriterAnimator animator) { return spriterAnimator.getRotation(); } }; pivotXSlider = new SpriterDemoAnimatorSlider(-1000f, 1000f, 1f, skin, "%.0f") { @Override public void setValue(SpriterAnimator animator, float value) { animator.setPivotX(value); } @Override protected float getValue(SpriterAnimator animator) { return animator.getPivotX(); } }; pivotYSlider = new SpriterDemoAnimatorSlider(-1000f, 1000f, 1f, skin, "%.0f") { @Override public void setValue(SpriterAnimator animator, float value) { animator.setPivotY(value); } @Override protected float getValue(SpriterAnimator animator) { return animator.getPivotY(); } }; scaleXSlider = new SpriterDemoAnimatorSlider(-10f, 10f, 0.1f, skin) { @Override public void setValue(SpriterAnimator animator, float value) { spriterAnimator.setScaleX(value); } @Override protected float getValue(SpriterAnimator animator) { return spriterAnimator.getScaleX(); } }; scaleYSlider = new SpriterDemoAnimatorSlider(-10f, 10f, 0.1f, skin) { @Override public void setValue(SpriterAnimator animator, float value) { spriterAnimator.setScaleY(value); } @Override protected float getValue(SpriterAnimator animator) { return spriterAnimator.getScaleY(); } }; alphaSlider = new SpriterDemoAnimatorSlider(0f, 1f, 0.01f, skin, "%.2f") { @Override public void setValue(SpriterAnimator animator, float value) { animator.setAlpha(value); } @Override protected float getValue(SpriterAnimator animator) { return animator.getAlpha(); } }; speedSlider = new SpriterDemoAnimatorSlider(0f, 10f, 0.1f, skin) { @Override public void setValue(SpriterAnimator animator, float value) { animator.setSpeed(value); } @Override protected float getValue(SpriterAnimator animator) { return animator.getSpeed(); } }; allAnimatorSliders = new SpriterDemoAnimatorSlider[] { scaleXSlider, scaleYSlider, pivotXSlider, pivotYSlider, angleSlider, alphaSlider, speedSlider }; metaLabel = new Label("Meta: ", skin); metaLabel.setWrap(true); metaLabel.setAlignment(Align.topLeft); spriterPlaceholder = new Label("No animator", skin); spriterPlaceholder.setAlignment(Align.center); spriterAnimator = new SpriterAnimatorActor(animator); spriterAnimator.debug(); playPauseButton = new ImageButton(skin, "play"); playPauseButton.setChecked(true); playPauseButton.addListener(new ChangeListener() { @Override public void changed(ChangeEvent event, Actor actor) { boolean playing = playPauseButton.isChecked(); spriterAnimator.setDisabled(!playing); } }); timeSlider = new Slider(0f, 2000f, 1, false, skin); timeSlider.addListener(timeSliderListener = new ChangeListener() { @Override public void changed(ChangeEvent event, Actor actor) { if (animator == null) return; animator.setTime(timeSlider.getValue()); animator.update(0f); } }); timeLabel = new Label("---", skin); // Put everything in place Table titleTable = new Table(skin); titleTable.add(titleLabel).pad(6f); titleTable.add().expandX(); titleTable.add(fpsLabel).padRight(10f); Table selectionTable = new Table(skin); selectionTable.defaults().pad(3f); Table filesTable = new Table(skin); filesTable.row(); filesTable.add(fileChooser).expand().fillX(); filesTable.add(fileFinder).padLeft(2f).padRight(1f); Table animationsTable = new Table(skin); animationsTable.row(); animationsTable.add(animationChooser).expand().fill(); animationsTable.add(transitionCheckbox).fillX().padLeft(2f); ScrollPane scrollableCharmapChooser = new ScrollPane(charmapChooser); Table menuTable = new Table(skin); menuTable.defaults().pad(3f).expandX().fillX(); menuTable.row(); menuTable.add(titleTable).colspan(2); menuTable.row(); menuTable.add("File"); menuTable.add(filesTable).pad(4f); menuTable.row(); menuTable.add("Entity"); menuTable.add(entityChooser).pad(4f); menuTable.row(); menuTable.add("Animation"); menuTable.add(animationsTable).pad(4f); menuTable.row(); menuTable.add("Maps"); menuTable.add(scrollableCharmapChooser).pad(4f); menuTable.row(); menuTable.add("Angle"); menuTable.add(angleSlider); menuTable.row(); menuTable.add("Pivot X"); menuTable.add(pivotXSlider); menuTable.row(); menuTable.add("Pivot Y"); menuTable.add(pivotYSlider); menuTable.row(); menuTable.add("Scale X"); menuTable.add(scaleXSlider); menuTable.row(); menuTable.add("Scale Y"); menuTable.add(scaleYSlider); menuTable.row(); menuTable.add("Alpha"); menuTable.add(alphaSlider); menuTable.row(); menuTable.add("Speed"); menuTable.add(speedSlider); menuTable.row(); menuTable.add().expandY(); Table contentTable = new Table(skin); contentTable.row(); contentTable.add(metaLabel).left().expandX().maxHeight(1f); contentTable.row(); contentTable.stack(spriterPlaceholder, spriterAnimator).expand(); Table timelineTable = new Table(skin); timelineTable.row(); timelineTable.add("Timeline").expandX().align(Align.bottom); timelineTable.row(); timelineTable.add(timeSlider).expandX().fillX(); timelineTable.row(); timelineTable.add(timeLabel).expandX().align(Align.top); Table controlTable = new Table(skin); controlTable.add(playPauseButton).space(5f).expandY().fillY(); controlTable.add(timelineTable).expandX().fillX(); rootTable = new Table(skin); rootTable.setFillParent(true); rootTable.row(); rootTable.add(menuTable).expandY().fill(); rootTable.add(contentTable).expand().fill(); rootTable.row(); rootTable.add(controlTable).colspan(2).expandX().fillX(); stage.addActor(rootTable); // Bring input processing to the party InputProcessor globalInput = new InputProcessor() { @Override public boolean keyDown(int keycode) { switch (keycode) { case Keys.UP: case Keys.Z: case Keys.W: if (lastUsedSelectBox != null) lastUsedSelectBox.setSelectedIndex(Math.max(lastUsedSelectBox.getSelectedIndex() - 1, 0)); break; case Keys.DOWN: case Keys.S: if (lastUsedSelectBox != null) lastUsedSelectBox.setSelectedIndex(Math.min(lastUsedSelectBox.getSelectedIndex() + 1, lastUsedSelectBox.getItems().size - 1)); break; default: break; } return true; } @Override public boolean keyUp(int keycode) { return false; } @Override public boolean keyTyped(char character) { return false; } @Override public boolean touchDown(int screenX, int screenY, int pointer, int button) { return false; } @Override public boolean touchUp(int screenX, int screenY, int pointer, int button) { return false; } @Override public boolean touchDragged(int screenX, int screenY, int pointer) { return false; } @Override public boolean mouseMoved(int screenX, int screenY) { return false; } @Override public boolean scrolled(int amount) { amount *= 0.05f; // Zoom coefficient scaleXSlider.setValue(scaleXSlider.getValue() + amount); scaleYSlider.setValue(scaleYSlider.getValue() + amount); return false; } }; Gdx.input.setInputProcessor(new InputMultiplexer(stage, globalInput)); // Add default test resources Array<String> testResources = new Array<String>(SpriterTestData.scml); testResources.addAll(SpriterTestData.scon); testResources.sort(); for (String path : testResources) addFile(Gdx.files.internal(path.replaceFirst("/", "")), assetManager); // Also go discover some unknown exotic resources! (won't work in jar though) Array<FileHandle> spriterFiles = SpriterDemoUtils.findFiles(new String[] { "scml", "scon" }); for (FileHandle f : spriterFiles) addFile(f, assetManager); fileChooser.setItems(files); lastUsedSelectBox = fileChooser; if (playPauseButton.isChecked()) animator.play(animator.getAnimations().iterator().next()); }
From source file:com.bsencan.openchess.view.GameRenderer.java
License:Apache License
private void initUI() { this.hud = new Table(); this.hud2 = new Table(); this.resetButton = new ImageButton(Assets.skin, "reset"); this.undoButton = new ImageButton(Assets.skin, "undo"); Label resetLabel = new Label("Reset", Assets.skin); Label undoLabel = new Label("Undo", Assets.skin); this.resetButton.addListener(new ClickListener() { @Override//from w w w .j a v a2s . c om public void clicked(InputEvent event, float x, float y) { OpenChess.game.setScreen(new GameScreen()); } }); this.undoButton.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { board.undo(); } }); this.hud.setTransform(true); this.hud.setScale(1 / this.resetButton.getHeight()); this.hud.setPosition(1f, 1f); this.hud.add(this.resetButton); this.hud.row(); this.hud.add(resetLabel).expandX(); this.hud2.setTransform(true); this.hud2.setScale(1 / this.resetButton.getHeight()); this.hud2.setPosition(VIEWPORT_WIDTH - 1, 1f); this.hud2.add(this.undoButton); this.hud2.row(); this.hud2.add(undoLabel).expandX(); this.stage.addActor(this.hud); this.stage.addActor(this.hud2); }
From source file:com.dongbat.game.screen.DynamicMenuScreen.java
public DynamicMenuScreen() { stage = new Stage(); InputUtil.addProcessor(stage, 0);/*from ww w . j av a 2 s.co m*/ stage.setViewport(new ExtendViewport(800, 480)); stage.getViewport().update(Gdx.graphics.getWidth(), Gdx.graphics.getHeight(), false); buttonSinglePlayer = new ImageButton(new SpriteDrawable(new Sprite(AssetUtil.singleButton)), new SpriteDrawable(new Sprite(AssetUtil.pressedSingleButton))); buttonSinglePlayer.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { ScreenUtil.setScreen(new GameScreen()); } }); buttonSinglePlayer.setSize(270, 62); buttonSinglePlayer.setPosition(-135, -90); buttonMultiPlayer = new ImageButton(new SpriteDrawable(new Sprite(AssetUtil.multiButton))); buttonMultiPlayer.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { } }); buttonMultiPlayer.setDisabled(true); buttonMultiPlayer.setSize(270, 62); buttonMultiPlayer.setPosition(-135, -180); title = new Image(new SpriteDrawable(new Sprite(AssetUtil.title))); title.setSize(230, 100); title.setPosition(-115, 60); stage.addActor(title); stage.addActor(buttonSinglePlayer); stage.addActor(buttonMultiPlayer); WorldConfiguration config = new WorldConfiguration(); config.setSystem(new Box2dSystem(2), false); config.setSystem(new AiControlledSystem(5), false); config.setSystem(new BuffSystem(), false); config.setSystem(new DetectionCleanupSystem(1), false); config.setSystem(new DetectionSystem(1), false); config.setSystem(new ConsumingSystem(), false); config.setSystem(new InputProcessorSystem(), false); config.setSystem(new MovementSystem(), false); config.setSystem(new SpriteRenderSystem(), true); config.setSystem(new GridRendererSystem(), true); config.setSystem(new ParallaxBackgroundSystem(), true); config.setSystem(new DisplayUpdateSystem(), true); config.setSystem(new FoodAnimationSystem(), true); config.setSystem(new AnimationRenderSystem(), true); // config.setSystem(new Shaperenderer1(), true); config.setManager(new UuidEntityManager()); world = new World(config); UnitRegistry.load(); BuffRegistry.load(); AbilityRegistry.load(); ECSUtil.init(world); worldProgress = new WorldProgress(0.015f); worldProgressMap.put(world, worldProgress); world.getSystem(DetectionSystem.class).setModifier(3); PhysicsUtil.init(world); PhysicsCameraUtil.getCamera().zoom = 5; PhysicsCameraUtil.getCamera().position.set(new Vector2(80, -70), 0); PhysicsCameraUtil.getCamera().update(); Entity queen = UnitFactory.createQueen(world, new Vector2(100, -80), 8); BuffComponent queenBuff = EntityUtil.getComponent(world, queen, BuffComponent.class); queenBuff.getBuffs().remove("QueenTeleportSchedule"); queenBuff.getBuffs().remove("SelfDefense"); queenBuff.getBuffs().remove("FeedSmaller"); queenBuff.getBuffs().remove("ProduceFoodSchedule"); BuffUtil.addBuff(world, queen, queen, "SelfDefense", -1, 1, "framePerFood", 15); UnitMovement queenMove = EntityUtil.getComponent(world, queen, UnitMovement.class); queenMove.setDirectionVelocity(new Vector2()); // PhysicsUtil.setPosition(world, queen, new Vector2(500, -500)); Entity createUnit = UnitFactory.createUnit(world, "bao", new Vector2(0, 30)); PhysicsUtil.setRadius(world, createUnit, 1); UnitFactory.createUnit(world, "bao", new Vector2(10, 30)); UnitFactory.createUnit(world, "bao", new Vector2(100, 100)); UnitFactory.createUnit(world, "bao", new Vector2(50, -40)); // UnitFactory.createUnit(world, "bao", new Vector2(30, 30)); // UnitFactory.createUnit(world, "bao", new Vector2(0, -30)); // UnitFactory.createUnit(world, "bao", new Vector2(-10, -30)); // UnitFactory.createUnit(world, "bao", new Vector2(-20, -30)); }
From source file:com.dongbat.game.screen.MenuScreen.java
public MenuScreen() { AdUtil.showAd();//from w ww . ja v a 2s .co m stage = new Stage(); InputUtil.addProcessor(stage, 0); stage.setViewport(new ExtendViewport(800, 480)); stage.getViewport().update(Gdx.graphics.getWidth(), Gdx.graphics.getHeight(), false); buttonSinglePlayer = new ImageButton(new SpriteDrawable(new Sprite(AssetUtil.singleButton)), new SpriteDrawable(new Sprite(AssetUtil.pressedSingleButton))); buttonSinglePlayer.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { ScreenUtil.setScreen(new GameScreen()); } }); buttonSinglePlayer.setSize(270, 62); buttonSinglePlayer.setPosition(-135, -50); buttonMultiPlayer = new ImageButton(new SpriteDrawable(new Sprite(AssetUtil.multiButton))); buttonMultiPlayer.setDisabled(true); buttonMultiPlayer.setSize(270, 62); buttonMultiPlayer.setPosition(-135, -130); buttonStory = new ImageButton(new SpriteDrawable(new Sprite(AssetUtil.storyButton))); buttonStory.setDisabled(true); buttonStory.setSize(270, 62); buttonStory.setPosition(-135, -210); title = new Image(new SpriteDrawable(new Sprite(AssetUtil.title))); title.setSize(230, 100); title.setPosition(-115, 60); stage.addActor(title); stage.addActor(buttonSinglePlayer); stage.addActor(buttonMultiPlayer); stage.addActor(buttonStory); WorldConfiguration config = new WorldConfiguration(); config.setSystem(new Box2dSystem(2), false); config.setSystem(new AiControlledSystem(5), false); config.setSystem(new BuffSystem(), false); config.setSystem(new DetectionCleanupSystem(1), false); config.setSystem(new DetectionSystem(1), false); config.setSystem(new ConsumingSystem(), false); config.setSystem(new InputProcessorSystem(), false); config.setSystem(new MovementSystem(), false); config.setSystem(new GridRendererSystem(), true); config.setSystem(new ParallaxBackgroundSystem(), true); config.setSystem(new DisplayUpdateSystem(), true); config.setSystem(new FoodAnimationSystem(), true); config.setSystem(new AnimationRenderSystem(), true); // config.setSystem(new Shaperenderer1(), true); config.setManager(new UuidEntityManager()); world = new World(config); UnitRegistry.load(); BuffRegistry.load(); AbilityRegistry.load(); ECSUtil.init(world); worldProgress = new WorldProgress(0.015f); worldProgressMap.put(world, worldProgress); world.getSystem(DetectionSystem.class).setModifier(3); PhysicsUtil.init(world); PhysicsCameraUtil.getCamera().zoom = 5; PhysicsCameraUtil.getCamera().position.set(new Vector2(80, -70), 0); PhysicsCameraUtil.getCamera().update(); Entity queen = UnitFactory.createQueen(world, new Vector2(100, -80), 15); BuffComponent queenBuff = EntityUtil.getComponent(world, queen, BuffComponent.class); queenBuff.getBuffs().remove("QueenTeleportSchedule"); queenBuff.getBuffs().remove("SelfDefense"); queenBuff.getBuffs().remove("FeedSmaller"); queenBuff.getBuffs().remove("ProduceFoodSchedule"); queenBuff.getBuffs().remove("QueenGrowth"); BuffUtil.addBuff(world, queen, queen, "SelfDefense", -1, 1, "framePerFood", 15); UnitMovement queenMove = EntityUtil.getComponent(world, queen, UnitMovement.class); queenMove.setDirectionVelocity(new Vector2()); // PhysicsUtil.setPosition(world, queen, new Vector2(500, -500)); Entity createUnit = UnitFactory.createUnit(world, "bao", new Vector2(0, 30)); PhysicsUtil.setRadius(world, createUnit, 1); UnitFactory.createUnit(world, "bao", new Vector2(10, 30)); UnitFactory.createUnit(world, "bao", new Vector2(100, 100)); UnitFactory.createUnit(world, "bao", new Vector2(50, -40)); // UnitFactory.createUnit(world, "bao", new Vector2(30, 30)); // UnitFactory.createUnit(world, "bao", new Vector2(0, -30)); // UnitFactory.createUnit(world, "bao", new Vector2(-10, -30)); // UnitFactory.createUnit(world, "bao", new Vector2(-20, -30)); }
From source file:com.dongbat.game.stage.AbilityButton.java
public ImageButton createNormalButton() { Sprite s = new Sprite(AssetUtil.getAbilityTexture(texture)); Sprite pressedS = new Sprite(AssetUtil.getAbilityTexture(texture, true)); imageButton = new ImageButton(new SpriteDrawable(s), new SpriteDrawable(pressedS)); imageButton.setFillParent(true);/*from ww w . j a v a 2 s. co m*/ imageButton.getImageCell().fill().expand(); imageButton.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { UUID localPlayerId = LocalPlayerUtil.getLocalPlayer(); World world = LocalPlayerUtil.getLocalWorld(); Entity e = UuidUtil.getEntityByUuid(world, localPlayerId); if (e == null || localPlayerId == null) { return; } UnitMovement move = EntityUtil.getComponent(world, e, UnitMovement.class); Vector2 destination = move.getDirectionVelocity(); AbilityUtil.use(world, e, ability, destination); } }); return imageButton; }
From source file:com.roterballon.balloonburster.scenes.AboutHUD.java
License:Common Public License
public AboutHUD(com.roterballon.balloonburster.BalloonBursterGame game) { this.game = game; this.assetmanager = game.getAssetManager(); this.skin = new Skin(Gdx.files.internal("skin/uiskin.json")); this.viewport = new FitViewport(com.roterballon.balloonburster.BalloonBursterGame.V_WIDTH, com.roterballon.balloonburster.BalloonBursterGame.V_HEIGHT, new OrthographicCamera()); this.stage = new Stage(this.viewport, game.getSpriteBatch()); // create wrapper table Table wrapper = new Table(); wrapper.top();//from w w w . j a va2s. co m wrapper.setWidth(com.roterballon.balloonburster.BalloonBursterGame.V_WIDTH * 0.8f); wrapper.setHeight(com.roterballon.balloonburster.BalloonBursterGame.V_HEIGHT * 0.65f); Label aboutLabel = new Label("About", skin, "logo"); wrapper.add(aboutLabel).expandX().align(Align.left); wrapper.row(); // create scroll wrapper table Table scrollWrapper = new Table(); //scrollWrapper.debug(); scrollWrapper.top(); // create content for scrollWrapper Label graphicsLabel = new Label("Graphics", skin, "bold"); scrollWrapper.add(graphicsLabel).width(wrapper.getWidth() * 0.9f); scrollWrapper.row(); //cloud 1 attribution Label cloud1LinkLabel = new Label("Clouds", skin, "link"); cloud1LinkLabel.setAlignment(Align.center); cloud1LinkLabel.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { Gdx.net.openURI("https://www.flickr.com/photos/craightonmiller/5944377614/"); } }); scrollWrapper.add(cloud1LinkLabel).width(wrapper.getWidth() * 0.9f); scrollWrapper.row(); String cloud1Text = "by Craighton Miller is licensed under CC BY 2.0"; Label cloud1TextLabel = new Label(cloud1Text, skin); cloud1TextLabel.setWrap(true); scrollWrapper.add(cloud1TextLabel).width(wrapper.getWidth() * 0.9f); scrollWrapper.row(); //cloud 2 attribution Label cloud2LinkLabel = new Label("Single white cloud on a clear blue sky", skin, "link"); cloud2LinkLabel.setWrap(true); cloud2LinkLabel.setAlignment(Align.center); cloud2LinkLabel.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { Gdx.net.openURI("https://www.flickr.com/photos/horiavarlan/4777129318"); } }); scrollWrapper.add(cloud2LinkLabel).width(wrapper.getWidth() * 0.9f).padTop(30); scrollWrapper.row(); String cloud2Text = "by Horia Varlan is licensed under CC BY 2.0"; Label cloud2TextLabel = new Label(cloud2Text, skin); cloud2TextLabel.setWrap(true); scrollWrapper.add(cloud2TextLabel).width(wrapper.getWidth() * 0.9f); scrollWrapper.row(); //balloons attribution Label balloonsTextLabel = new Label("Balloons created by", skin); balloonsTextLabel.setWrap(true); balloonsTextLabel.setAlignment(Align.center); scrollWrapper.add(balloonsTextLabel).width(wrapper.getWidth() * 0.9f).padTop(30); scrollWrapper.row(); Label balloonsLinkLabel = new Label("Marius Nolden", skin, "link"); balloonsLinkLabel.setAlignment(Align.center); balloonsLinkLabel.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { Gdx.net.openURI("https://www.youtube.com/user/HydriasLP"); } }); scrollWrapper.add(balloonsLinkLabel).width(wrapper.getWidth() * 0.9f); scrollWrapper.row(); //sound attribution Label soundLabel = new Label("Sound", skin, "bold"); scrollWrapper.add(soundLabel).width(wrapper.getWidth() * 0.9f).padTop(30); scrollWrapper.row(); //music attribution Label musicLinkLabel = new Label("Flight", skin, "link"); musicLinkLabel.setAlignment(Align.center); musicLinkLabel.addListener(new ClickListener() { public void clicked(InputEvent e, float x, float y) { Gdx.net.openURI("https://soundcloud.com/iamhydra/flight"); } }); scrollWrapper.add(musicLinkLabel).width(wrapper.getWidth() * 0.9f); scrollWrapper.row(); String musicText = "by Hydra and LucienMusique is used as background music."; Label musicTextLabel = new Label(musicText, skin); musicTextLabel.setWrap(true); scrollWrapper.add(musicTextLabel).width(wrapper.getWidth() * 0.9f); scrollWrapper.row(); //balloon pop attribution Label balloonPopLinkLabel = new Label("Balloon Pop", skin, "link"); balloonPopLinkLabel.setAlignment(Align.center); balloonPopLinkLabel.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { Gdx.net.openURI("http://www.freesound.org/people/qubodup/sounds/222373/"); } }); scrollWrapper.add(balloonPopLinkLabel).width(wrapper.getWidth() * 0.9f).padTop(30); scrollWrapper.row(); String balloonPopText = "by qubodup is licensed under CC BY 3.0"; Label balloonPopTextLabel = new Label(balloonPopText, skin); balloonPopTextLabel.setWrap(true); scrollWrapper.add(balloonPopTextLabel).width(wrapper.getWidth() * 0.9f); scrollWrapper.row(); String dev = "A game developed by roterballon.com"; Label devLabel = new Label(dev, skin, "bold-outline"); devLabel.setWrap(true); devLabel.setAlignment(Align.center); scrollWrapper.add(devLabel).width(wrapper.getWidth() * 0.9f).padTop(30); scrollWrapper.pack(); // create scroll pane ScrollPane scrollContainer = new ScrollPane(scrollWrapper); scrollContainer.setOverscroll(false, true); wrapper.add(scrollContainer).expandX().align(Align.left); // set Background wrapper.setBackground(new NinePatchDrawable( new NinePatch(assetmanager.get("img/bg_ninepatch.png", Texture.class), 10, 10, 10, 10))); wrapper.pack(); wrapper.setWidth(com.roterballon.balloonburster.BalloonBursterGame.V_WIDTH * 0.8f); wrapper.setHeight(com.roterballon.balloonburster.BalloonBursterGame.V_HEIGHT * 0.65f); wrapper.setPosition(com.roterballon.balloonburster.BalloonBursterGame.V_WIDTH / 2, com.roterballon.balloonburster.BalloonBursterGame.V_HEIGHT - wrapper.getHeight() / 2 - 220, Align.center); // padTop of 220 ImageButton menu = new ImageButton( new TextureRegionDrawable( assetmanager.get("img/buttons/buttons.atlas", TextureAtlas.class).findRegion("btn_menu")), new TextureRegionDrawable(assetmanager.get("img/buttons/buttons.atlas", TextureAtlas.class) .findRegion("btn_menu_pressed"))); menu.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { AboutHUD.this.game.transition(new MenuScreen(AboutHUD.this.game)); } }); menu.setSize(400, 70); menu.setPosition(com.roterballon.balloonburster.BalloonBursterGame.V_WIDTH / 2, wrapper.getY() - 50, Align.top | Align.center); stage.addActor(wrapper); stage.addActor(menu); Gdx.input.setInputProcessor(stage); }
From source file:com.theosirian.ppioo.controllers.MenuController.java
License:Open Source License
@Override protected void createComponents() { titleScreen = new Texture(Gdx.files.internal("puno-title-screen.png")); rootLayout = new Table(); rootLayout.setFillParent(true);//from ww w .jav a 2 s . c o m playButton = new TextButton("Play", game.skin, "default.big"); shopButton = new TextButton("Shop", game.skin, "default.big"); quitButton = new TextButton("Quit", game.skin, "default.big"); if (game.getSoundController().isPlaying(0)) soundButton = new ImageButton(game.skin, "sound-on"); else soundButton = new ImageButton(game.skin, "sound-off"); playButton.pad(16f); shopButton.pad(16f); quitButton.pad(16f); playButton.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { if (game.data.getOwnedPlayers().size >= game.data.getTeamSize()) { game.getSoundController().soundPlay(1); game.changeController = PlayerSelectionController.class; } else { Dialog info = new Dialog("Insufficient Players!", game.skin); info.text( "You don't have enough players to form a team.\nPlease go to the shop to buy more players."); info.button("Close", false); info.key(Input.Keys.ENTER, false); info.show(game.stage); } } }); shopButton.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { game.getSoundController().soundPlay(1); game.changeController = ShopController.class; } }); quitButton.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { game.getSoundController().soundPlay(1); game.data.save(); Gdx.app.exit(); } }); soundButton.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { game.getSoundController().toggleSound(0); if (game.getSoundController().isPlaying(0)) soundButton.setStyle(game.skin.get("sound-off", ImageButtonStyle.class)); else soundButton.setStyle(game.skin.get("sound-on", ImageButtonStyle.class)); } }); }
From source file:com.turbogerm.suchyblocks.screens.GameOverScreen.java
License:Open Source License
public GameOverScreen(SuchyBlocks game) { super(game);/*from w ww . ja va 2s.com*/ mGuiStage.addListener(getStageInputListener(this)); LabelStyle labelStyle = new LabelStyle(mGuiSkin.get(LabelStyle.class)); labelStyle.font = mGuiSkin.get("xxxl-font", BitmapFont.class); // mResources.getFont("xxxl"); final float gameOverLabelY = 600.0f; final float gameOverLabelHeight = 135.0f; mGameOverLabel = new Label("", mGuiSkin); mGameOverLabel.setBounds(0.0f, gameOverLabelY, SuchyBlocks.VIEWPORT_WIDTH, gameOverLabelHeight); mGameOverLabel.setStyle(labelStyle); mGameOverLabel.setAlignment(Align.center); mGuiStage.addActor(mGameOverLabel); final float placementLabelY = gameOverLabelY - gameOverLabelHeight; final float placementLabelHeight = 90.0f; mPlacementLabel = new Label("", mGuiSkin); mPlacementLabel.setBounds(0.0f, placementLabelY, SuchyBlocks.VIEWPORT_WIDTH, placementLabelHeight); mPlacementLabel.setStyle(labelStyle); mPlacementLabel.setAlignment(Align.center); mGuiStage.addActor(mPlacementLabel); // TextFieldStyle textFieldStyle = new TextFieldStyle(mGuiSkin.get(TextFieldStyle.class)); // textFieldStyle.font = mGuiSkin.get("xl-font", BitmapFont.class); //mResources.getFont("xl"); final float nameTextFieldY = placementLabelY - placementLabelHeight; final float nameTextFieldWidth = 360.0f; final float nameTextFieldHeight = 50.0f; final float nameTextFieldX = (SuchyBlocks.VIEWPORT_WIDTH - nameTextFieldWidth) / 2.0f; mNameTextField = new TextField("Enter Name", mGuiSkin); mNameTextField.setBounds(nameTextFieldX, nameTextFieldY, nameTextFieldWidth, nameTextFieldHeight); // mNameTextField.setStyle(textFieldStyle); mNameTextField.setMaxLength(NAME_MAX_LENGTH); mGuiStage.addActor(mNameTextField); final float buttonWidth = 360.0f; final float buttonHeight = 80.0f; final float buttonX = (SuchyBlocks.VIEWPORT_WIDTH - buttonWidth) / 2.0f; final float buttonY = buttonX; TextureRegion continueUpTextureRegion = new TextureRegion( (Texture) mAssetManager.get(ResourceNames.GUI_BUTTON_CONTINUE_UP_TEXTURE)); Drawable continueUpDrawable = new TextureRegionDrawable(continueUpTextureRegion); TextureRegion continueDownTextureRegion = new TextureRegion( (Texture) mAssetManager.get(ResourceNames.GUI_BUTTON_CONTINUE_DOWN_TEXTURE)); Drawable continueDownDrawable = new TextureRegionDrawable(continueDownTextureRegion); ImageButton continueButton = new ImageButton(continueUpDrawable, continueDownDrawable); continueButton.setBounds(buttonX, buttonY, buttonWidth, buttonHeight); continueButton.addListener(getContinueInputListener(continueButton)); mGuiStage.addActor(continueButton); }