diff --git a/forge-gui-mobile/src/forge/adventure/stage/GameHUD.java b/forge-gui-mobile/src/forge/adventure/stage/GameHUD.java index 5b1c36f2755..d6c930b7877 100644 --- a/forge-gui-mobile/src/forge/adventure/stage/GameHUD.java +++ b/forge-gui-mobile/src/forge/adventure/stage/GameHUD.java @@ -36,7 +36,7 @@ import forge.gui.GuiBase; /** * Stage to handle everything rendered in the HUD */ -public class GameHUD extends Stage { +public class GameHUD extends Stage { static public GameHUD instance; private final GameStage gameStage; @@ -77,7 +77,7 @@ public class GameHUD extends Stage { avatarborder = ui.findActor("avatarborder"); deckActor = ui.findActor("deck"); openMapActor = ui.findActor("openmap"); - ui.onButtonPress("openmap", ()-> GameHUD.this.openMap()); + ui.onButtonPress("openmap", () -> GameHUD.this.openMap()); menuActor = ui.findActor("menu"); referenceX = menuActor.getX(); statsActor = ui.findActor("statistic"); @@ -92,11 +92,11 @@ public class GameHUD extends Stage { @Override public void changed(ChangeEvent changeEvent, Actor actor) { if (MapStage.getInstance().isInMap()) { - MapStage.getInstance().getPlayerSprite().getMovementDirection().x+=((Touchpad) actor).getKnobPercentX(); - MapStage.getInstance().getPlayerSprite().getMovementDirection().y+=((Touchpad) actor).getKnobPercentY(); + MapStage.getInstance().getPlayerSprite().getMovementDirection().x += ((Touchpad) actor).getKnobPercentX(); + MapStage.getInstance().getPlayerSprite().getMovementDirection().y += ((Touchpad) actor).getKnobPercentY(); } else { - WorldStage.getInstance().getPlayerSprite().getMovementDirection().x+=((Touchpad) actor).getKnobPercentX(); - WorldStage.getInstance().getPlayerSprite().getMovementDirection().y+=((Touchpad) actor).getKnobPercentY(); + WorldStage.getInstance().getPlayerSprite().getMovementDirection().x += ((Touchpad) actor).getKnobPercentX(); + WorldStage.getInstance().getPlayerSprite().getMovementDirection().y += ((Touchpad) actor).getKnobPercentY(); } } }); @@ -116,11 +116,11 @@ public class GameHUD extends Stage { AdventurePlayer.current().onLifeChange(() -> lifePoints.setText(AdventurePlayer.current().getLife() + "/" + AdventurePlayer.current().getMaxLife())); AdventurePlayer.current().onManaChange(() -> mana.setText(AdventurePlayer.current().getMana() + "/" + AdventurePlayer.current().getMaxMana())); - WorldSave.getCurrentSave().getPlayer().onGoldChange(() -> money.setText(String.valueOf(AdventurePlayer.current().getGold()))) ; + WorldSave.getCurrentSave().getPlayer().onGoldChange(() -> money.setText(String.valueOf(AdventurePlayer.current().getGold()))); addActor(ui); addActor(miniMapPlayer); - console=new Console(); - console.setBounds(0, GuiBase.isAndroid() ? getHeight() : 0, getWidth(),getHeight()/2); + console = new Console(); + console.setBounds(0, GuiBase.isAndroid() ? getHeight() : 0, getWidth(), getHeight() / 2); console.setVisible(false); ui.addActor(console); if (GuiBase.isAndroid()) { @@ -137,7 +137,7 @@ public class GameHUD extends Stage { eventTouchUp.setType(InputEvent.Type.touchUp); } - private void openMap() { + private void openMap() { Forge.switchScene(MapViewScene.instance()); } @@ -163,17 +163,17 @@ public class GameHUD extends Stage { @Override public boolean touchDragged(int screenX, int screenY, int pointer) { - Vector2 c=new Vector2(); + Vector2 c = new Vector2(); screenToStageCoordinates(c.set(screenX, screenY)); - float x=(c.x-miniMap.getX())/miniMap.getWidth(); - float y=(c.y-miniMap.getY())/miniMap.getHeight(); + float x = (c.x - miniMap.getX()) / miniMap.getWidth(); + float y = (c.y - miniMap.getY()) / miniMap.getHeight(); //map bounds - if (Controls.actorContainsVector(miniMap,c)) { + if (Controls.actorContainsVector(miniMap, c)) { touchpad.setVisible(false); - if(debugMap) - WorldStage.getInstance().getPlayerSprite().setPosition(x*WorldSave.getCurrentSave().getWorld().getWidthInPixels(),y*WorldSave.getCurrentSave().getWorld().getHeightInPixels()); + if (debugMap) + WorldStage.getInstance().getPlayerSprite().setPosition(x * WorldSave.getCurrentSave().getWorld().getWidthInPixels(), y * WorldSave.getCurrentSave().getWorld().getHeightInPixels()); return true; } @@ -181,37 +181,36 @@ public class GameHUD extends Stage { } @Override - public boolean touchDown(int screenX, int screenY, int pointer, int button) - { - Vector2 c=new Vector2(); - Vector2 touch =new Vector2(); + public boolean touchDown(int screenX, int screenY, int pointer, int button) { + Vector2 c = new Vector2(); + Vector2 touch = new Vector2(); screenToStageCoordinates(touch.set(screenX, screenY)); screenToStageCoordinates(c.set(screenX, screenY)); - float x=(c.x-miniMap.getX())/miniMap.getWidth(); - float y=(c.y-miniMap.getY())/miniMap.getHeight(); - if (Controls.actorContainsVector(gamehud,c)) { + float x = (c.x - miniMap.getX()) / miniMap.getWidth(); + float y = (c.y - miniMap.getY()) / miniMap.getHeight(); + if (Controls.actorContainsVector(gamehud, c)) { super.touchDown(screenX, screenY, pointer, button); return true; } - if (Controls.actorContainsVector(miniMap,c)) { - if(debugMap) - WorldStage.getInstance().getPlayerSprite().setPosition(x*WorldSave.getCurrentSave().getWorld().getWidthInPixels(),y*WorldSave.getCurrentSave().getWorld().getHeightInPixels()); - return true; + if (Controls.actorContainsVector(miniMap, c)) { + if (debugMap) + WorldStage.getInstance().getPlayerSprite().setPosition(x * WorldSave.getCurrentSave().getWorld().getWidthInPixels(), y * WorldSave.getCurrentSave().getWorld().getHeightInPixels()); + return true; } //auto follow touchpad if (GuiBase.isAndroid() && !MapStage.getInstance().getDialogOnlyInput() && !console.isVisible()) { - if (!(Controls.actorContainsVector(avatar,touch)) // not inside avatar bounds - && !(Controls.actorContainsVector(miniMap,touch)) // not inside map bounds - && !(Controls.actorContainsVector(gamehud,touch)) //not inside gamehud bounds - && !(Controls.actorContainsVector(menuActor,touch)) //not inside menu button - && !(Controls.actorContainsVector(deckActor,touch)) //not inside deck button - && !(Controls.actorContainsVector(openMapActor,touch)) //not inside openmap button - && !(Controls.actorContainsVector(statsActor,touch)) //not inside stats button - && !(Controls.actorContainsVector(inventoryActor,touch)) //not inside inventory button - && (Controls.actorContainsVector(ui,touch)) //inside display bounds + if (!(Controls.actorContainsVector(avatar, touch)) // not inside avatar bounds + && !(Controls.actorContainsVector(miniMap, touch)) // not inside map bounds + && !(Controls.actorContainsVector(gamehud, touch)) //not inside gamehud bounds + && !(Controls.actorContainsVector(menuActor, touch)) //not inside menu button + && !(Controls.actorContainsVector(deckActor, touch)) //not inside deck button + && !(Controls.actorContainsVector(openMapActor, touch)) //not inside openmap button + && !(Controls.actorContainsVector(statsActor, touch)) //not inside stats button + && !(Controls.actorContainsVector(inventoryActor, touch)) //not inside inventory button + && (Controls.actorContainsVector(ui, touch)) //inside display bounds && pointer < 1) { //not more than 1 pointer - touchpad.setBounds(touch.x-TOUCHPAD_SCALE/2, touch.y-TOUCHPAD_SCALE/2, TOUCHPAD_SCALE, TOUCHPAD_SCALE); + touchpad.setBounds(touch.x - TOUCHPAD_SCALE / 2, touch.y - TOUCHPAD_SCALE / 2, TOUCHPAD_SCALE, TOUCHPAD_SCALE); touchpad.setVisible(true); touchpad.setResetOnTouchUp(true); hideButtons(); @@ -230,9 +229,9 @@ public class GameHUD extends Stage { super.draw(); //draw the Hud int xPosMini = (int) (((float) xPos / (float) WorldSave.getCurrentSave().getWorld().getTileSize() / (float) WorldSave.getCurrentSave().getWorld().getWidthInTiles()) * miniMap.getWidth()); int yPosMini = (int) (((float) yPos / (float) WorldSave.getCurrentSave().getWorld().getTileSize() / (float) WorldSave.getCurrentSave().getWorld().getHeightInTiles()) * miniMap.getHeight()); - miniMapPlayer.setPosition(miniMap.getX() + xPosMini - miniMapPlayer.getWidth()/2, miniMap.getY() + yPosMini - miniMapPlayer.getHeight()/2); + miniMapPlayer.setPosition(miniMap.getX() + xPosMini - miniMapPlayer.getWidth() / 2, miniMap.getY() + yPosMini - miniMapPlayer.getHeight() / 2); if (GuiBase.isAndroid()) // prevent drawing on top of console - miniMapPlayer.setVisible(!console.isVisible()&&miniMap.isVisible()); + miniMapPlayer.setVisible(!console.isVisible() && miniMap.isVisible()); //colored lifepoints if (Current.player().getLife() >= Current.player().getMaxLife()) { //color green if max life @@ -248,17 +247,18 @@ public class GameHUD extends Stage { Texture miniMapTexture; Texture miniMapToolTipTexture; Pixmap miniMapToolTipPixmap; + public void enter() { - if(miniMapTexture!=null) + if (miniMapTexture != null) miniMapTexture.dispose(); - miniMapTexture=new Texture(WorldSave.getCurrentSave().getWorld().getBiomeImage()); - if(miniMapToolTipTexture!=null) + miniMapTexture = new Texture(WorldSave.getCurrentSave().getWorld().getBiomeImage()); + if (miniMapToolTipTexture != null) miniMapToolTipTexture.dispose(); - if(miniMapToolTipPixmap!=null) + if (miniMapToolTipPixmap != null) miniMapToolTipPixmap.dispose(); - miniMapToolTipPixmap=new Pixmap((int) (miniMap.getWidth()*3), (int) (miniMap.getHeight()*3), Pixmap.Format.RGBA8888); - miniMapToolTipPixmap.drawPixmap(WorldSave.getCurrentSave().getWorld().getBiomeImage(),0,0,WorldSave.getCurrentSave().getWorld().getBiomeImage().getWidth(),WorldSave.getCurrentSave().getWorld().getBiomeImage().getHeight(),0,0,miniMapToolTipPixmap.getWidth(),miniMapToolTipPixmap.getHeight()); - miniMapToolTipTexture=new Texture(miniMapToolTipPixmap); + miniMapToolTipPixmap = new Pixmap((int) (miniMap.getWidth() * 3), (int) (miniMap.getHeight() * 3), Pixmap.Format.RGBA8888); + miniMapToolTipPixmap.drawPixmap(WorldSave.getCurrentSave().getWorld().getBiomeImage(), 0, 0, WorldSave.getCurrentSave().getWorld().getBiomeImage().getWidth(), WorldSave.getCurrentSave().getWorld().getBiomeImage().getHeight(), 0, 0, miniMapToolTipPixmap.getWidth(), miniMapToolTipPixmap.getHeight()); + miniMapToolTipTexture = new Texture(miniMapToolTipPixmap); miniMap.setDrawable(new TextureRegionDrawable(miniMapTexture)); avatar.setDrawable(new TextureRegionDrawable(Current.player().avatar())); Deck deck = AdventurePlayer.current().getSelectedDeck(); @@ -277,43 +277,50 @@ public class GameHUD extends Stage { WorldSave.getCurrentSave().header.createPreview(); Forge.switchScene(InventoryScene.instance()); } + private void menu() { gameStage.openMenu(); } - public void showHideMap(boolean visible) { - miniMap.setVisible(visible); - mapborder.setVisible(visible); - openMapActor.setVisible(visible); - miniMapPlayer.setVisible(visible); - gamehud.setVisible(visible); - lifePoints.setVisible(visible); - mana.setVisible(visible); - money.setVisible(visible); - blank.setVisible(visible); - if (visible) { - avatarborder.getColor().a = 1f; - avatar.getColor().a = 1f; - deckActor.getColor().a = 1f; - menuActor.getColor().a = 1f; - statsActor.getColor().a = 1f; - inventoryActor.getColor().a = 1f; - opacity = 1f; - } else { - avatarborder.getColor().a = 0.4f; - avatar.getColor().a = 0.4f; - deckActor.getColor().a = 0.4f; - menuActor.getColor().a = 0.4f; - statsActor.getColor().a = 0.4f; - inventoryActor.getColor().a = 0.4f; - opacity = 0.4f; + + public void setVisibility(Actor actor, boolean visible) { + if (actor != null) + actor.setVisible(visible); + } + + public void setAlpha(Actor actor, boolean visible) { + if (actor != null) { + if (visible) + actor.getColor().a = 1f; + else + actor.getColor().a = 0.4f; } } + public void showHideMap(boolean visible) { + setVisibility(miniMap, visible); + setVisibility(mapborder, visible); + setVisibility(openMapActor, visible); + setVisibility(miniMapPlayer, visible); + setVisibility(gamehud, visible); + setVisibility(lifePoints, visible); + setVisibility(mana, visible); + setVisibility(money, visible); + setVisibility(blank, visible); + setAlpha(avatarborder, visible); + setAlpha(avatar, visible); + setAlpha(deckActor, visible); + setAlpha(menuActor, visible); + setAlpha(statsActor, visible); + setAlpha(inventoryActor, visible); + opacity = visible ? 1f : 0.4f; + } + @Override public boolean keyUp(int keycode) { ui.pressUp(keycode); return super.keyUp(keycode); } + @Override public boolean keyDown(int keycode) { ui.pressDown(keycode); @@ -333,13 +340,13 @@ public class GameHUD extends Stage { } if (console.isVisible()) return true; - Button pressedButton=ui.buttonPressed(keycode); - if(pressedButton!=null) - { + Button pressedButton = ui.buttonPressed(keycode); + if (pressedButton != null) { performTouch(pressedButton); } return super.keyDown(keycode); } + public void performTouch(Actor actor) { if (actor == null) return; @@ -351,18 +358,20 @@ public class GameHUD extends Stage { } }, 0.10f); } + public void hideButtons() { if (isShowing) return; if (isHiding) return; isHiding = true; - deckActor.addAction(Actions.sequence(Actions.fadeOut(0.10f), Actions.hide(), Actions.moveTo(deckActor.getX()+deckActor.getWidth(), deckActor.getY()))); - inventoryActor.addAction(Actions.sequence(Actions.fadeOut(0.15f), Actions.hide(), Actions.moveTo(inventoryActor.getX()+inventoryActor.getWidth(), inventoryActor.getY()))); - statsActor.addAction(Actions.sequence(Actions.fadeOut(0.20f), Actions.hide(), Actions.moveTo(statsActor.getX()+statsActor.getWidth(), statsActor.getY()))); + deckActor.addAction(Actions.sequence(Actions.fadeOut(0.10f), Actions.hide(), Actions.moveTo(deckActor.getX() + deckActor.getWidth(), deckActor.getY()))); + inventoryActor.addAction(Actions.sequence(Actions.fadeOut(0.15f), Actions.hide(), Actions.moveTo(inventoryActor.getX() + inventoryActor.getWidth(), inventoryActor.getY()))); + statsActor.addAction(Actions.sequence(Actions.fadeOut(0.20f), Actions.hide(), Actions.moveTo(statsActor.getX() + statsActor.getWidth(), statsActor.getY()))); menuActor.addAction(Actions.sequence(Actions.fadeOut(0.25f), Actions.hide(), Actions.moveTo(menuActor.getX() + menuActor.getWidth(), menuActor.getY()))); FThreads.delayInEDT(300, () -> isHiding = false); } + public void showButtons() { if (console.isVisible()) return; @@ -371,27 +380,29 @@ public class GameHUD extends Stage { if (isShowing) return; isShowing = true; - menuActor.addAction(Actions.sequence(Actions.delay(0.1f), Actions.parallel(Actions.show(), Actions.alpha(opacity,0.1f), Actions.moveTo(referenceX, menuActor.getY(), 0.25f)))); - statsActor.addAction(Actions.sequence(Actions.delay(0.15f), Actions.parallel(Actions.show(), Actions.alpha(opacity,0.1f), Actions.moveTo(referenceX, statsActor.getY(), 0.25f)))); - inventoryActor.addAction(Actions.sequence(Actions.delay(0.2f), Actions.parallel(Actions.show(), Actions.alpha(opacity,0.1f), Actions.moveTo(referenceX, inventoryActor.getY(), 0.25f)))); - deckActor.addAction(Actions.sequence(Actions.delay(0.25f), Actions.parallel(Actions.show(), Actions.alpha(opacity,0.1f), Actions.moveTo(referenceX, deckActor.getY(), 0.25f)))); + menuActor.addAction(Actions.sequence(Actions.delay(0.1f), Actions.parallel(Actions.show(), Actions.alpha(opacity, 0.1f), Actions.moveTo(referenceX, menuActor.getY(), 0.25f)))); + statsActor.addAction(Actions.sequence(Actions.delay(0.15f), Actions.parallel(Actions.show(), Actions.alpha(opacity, 0.1f), Actions.moveTo(referenceX, statsActor.getY(), 0.25f)))); + inventoryActor.addAction(Actions.sequence(Actions.delay(0.2f), Actions.parallel(Actions.show(), Actions.alpha(opacity, 0.1f), Actions.moveTo(referenceX, inventoryActor.getY(), 0.25f)))); + deckActor.addAction(Actions.sequence(Actions.delay(0.25f), Actions.parallel(Actions.show(), Actions.alpha(opacity, 0.1f), Actions.moveTo(referenceX, deckActor.getY(), 0.25f)))); FThreads.delayInEDT(300, () -> isShowing = false); } public void setDebug(boolean b) { - debugMap=b; + debugMap = b; } class ConsoleToggleListener extends ActorGestureListener { public ConsoleToggleListener() { getGestureDetector().setLongPressSeconds(0.6f); } + @Override public boolean longPress(Actor actor, float x, float y) { hideButtons(); console.toggle(); return super.longPress(actor, x, y); } + @Override public void tap(InputEvent event, float x, float y, int count, int button) { super.tap(event, x, y, count, button); diff --git a/forge-gui-mobile/src/forge/adventure/util/UIActor.java b/forge-gui-mobile/src/forge/adventure/util/UIActor.java index 1f34e07dae6..c1115b19975 100644 --- a/forge-gui-mobile/src/forge/adventure/util/UIActor.java +++ b/forge-gui-mobile/src/forge/adventure/util/UIActor.java @@ -30,10 +30,10 @@ import java.util.regex.Pattern; */ public class UIActor extends Group { UIData data; - Actor lastActor=null; - public Array selectActors=new Array<>(); - private HashMap keyMap=new HashMap<>(); - public Array keyLabels=new Array<>(); + Actor lastActor = null; + public Array selectActors = new Array<>(); + private HashMap keyMap = new HashMap<>(); + public Array keyLabels = new Array<>(); public UIActor(FileHandle handle) { data = (new Json()).fromJson(UIData.class, handle); @@ -89,7 +89,7 @@ public class UIActor extends Group { readCheckBoxProperties((CheckBox) newActor, new OrderedMap.OrderedMapEntries<>(element)); break; case "SelectBox": - newActor =Controls.newComboBox(); + newActor = Controls.newComboBox(); break; default: throw new IllegalStateException("Unexpected value: " + type); @@ -121,38 +121,32 @@ public class UIActor extends Group { newActor.setY(data.yDown ? data.height - yValue - newActor.getHeight() : yValue); break; case "yOffset": - if(data.yDown) - { - yValue = (Float)property.value+((lastActor!=null?(data.height-lastActor.getY()):0f)); - newActor.setY( data.height - yValue - newActor.getHeight() ); - } - else - { + if (data.yDown) { + yValue = (Float) property.value + ((lastActor != null ? (data.height - lastActor.getY()) : 0f)); + newActor.setY(data.height - yValue - newActor.getHeight()); + } else { - yValue = (Float)property.value+((lastActor!=null?(lastActor.getY()):0f)); + yValue = (Float) property.value + ((lastActor != null ? (lastActor.getY()) : 0f)); newActor.setY(yValue); } break; case "xOffset": - newActor.setX((Float)property.value+((lastActor!=null?lastActor.getX():0f))); + newActor.setX((Float) property.value + ((lastActor != null ? lastActor.getX() : 0f))); break; case "name": newActor.setName((String) property.value); break; } } - lastActor=newActor; + lastActor = newActor; addActor(newActor); } } - public Button buttonPressed(int key) - { - for(Map.Entry entry:keyMap.entrySet()) - { - if(entry.getKey().isPressed(key)) - { + public Button buttonPressed(int key) { + for (Map.Entry entry : keyMap.entrySet()) { + if (entry.getKey().isPressed(key)) { return entry.getValue(); } } @@ -195,13 +189,12 @@ public class UIActor extends Group { } public static String localize(String str) { - Pattern regex=Pattern.compile("tr\\([^\\)]*\\)"); - for(int i=0;i<100;i++) - { - Matcher matcher= regex.matcher(str); - if(!matcher.find()) - return str; - str=matcher.replaceFirst(Forge.getLocalizer().getMessage(matcher.group().substring(3,matcher.group().length()-1))); + Pattern regex = Pattern.compile("tr\\([^\\)]*\\)"); + for (int i = 0; i < 100; i++) { + Matcher matcher = regex.matcher(str); + if (!matcher.find()) + return str; + str = matcher.replaceFirst(Forge.getLocalizer().getMessage(matcher.group().substring(3, matcher.group().length() - 1))); } return str; } @@ -213,7 +206,7 @@ public class UIActor extends Group { newActor.setStyle(Controls.getSkin().get(property.value.toString(), ImageButton.ImageButtonStyle.class)); break; case "binding": - keyMap.put(KeyBinding.valueOf(property.value.toString()),newActor); + keyMap.put(KeyBinding.valueOf(property.value.toString()), newActor); break; } } @@ -227,11 +220,11 @@ public class UIActor extends Group { break; case "font": case "fontName": - if(!property.value.toString().equals("default")) + if (!property.value.toString().equals("default")) newActor.setFont(Controls.getTextraFont(property.value.toString())); break; case "style": - newActor.style=(Controls.getSkin().get(property.value.toString(), Label.LabelStyle.class)); + newActor.style = (Controls.getSkin().get(property.value.toString(), Label.LabelStyle.class)); break; case "color": case "fontColor": @@ -280,8 +273,8 @@ public class UIActor extends Group { newActor.setStyle(Controls.getSkin().get(property.value.toString(), TextButton.TextButtonStyle.class)); break; case "binding": - keyMap.put(KeyBinding.valueOf(property.value.toString()),newActor); - KeyHintLabel label=new KeyHintLabel(KeyBinding.valueOf(property.value.toString())); + keyMap.put(KeyBinding.valueOf(property.value.toString()), newActor); + KeyHintLabel label = new KeyHintLabel(KeyBinding.valueOf(property.value.toString())); keyLabels.add(label); newActor.add(label); break; @@ -305,42 +298,40 @@ public class UIActor extends Group { public void onButtonPress(String name, Runnable func) { Actor button = findActor(name); - assert button != null; - button.addListener(new ClickListener() { - @Override - public void clicked(InputEvent event, float x, float y) { - if(button instanceof Button) - { - if(((Button)button).isDisabled()) - return; + if (button != null) { + button.addListener(new ClickListener() { + @Override + public void clicked(InputEvent event, float x, float y) { + if (button instanceof Button) { + if (((Button) button).isDisabled()) + return; + } + func.run(); } - func.run(); - } - }); + }); + } } - public void controllerDisconnected( ) { - for(KeyHintLabel label:keyLabels) - { + public void controllerDisconnected() { + for (KeyHintLabel label : keyLabels) { label.disconnected(); } } - public void controllerConnected( ) { - for(KeyHintLabel label:keyLabels) - { + + public void controllerConnected() { + for (KeyHintLabel label : keyLabels) { label.connected(); } } + public void pressUp(int code) { - for(KeyHintLabel label:keyLabels) - { + for (KeyHintLabel label : keyLabels) { label.buttonUp(code); } } public void pressDown(int code) { - for(KeyHintLabel label:keyLabels) - { + for (KeyHintLabel label : keyLabels) { label.buttonDown(code); } } @@ -348,11 +339,13 @@ public class UIActor extends Group { private class KeyHintLabel extends TextraLabel { public KeyHintLabel(KeyBinding keyBinding) { - super(keyBinding.getLabelText(false),Controls.getKeysFont()); - this.keyBinding=keyBinding; + super(keyBinding.getLabelText(false), Controls.getKeysFont()); + this.keyBinding = keyBinding; } + KeyBinding keyBinding; - public void connected( ) { + + public void connected() { updateText(); } @@ -366,14 +359,14 @@ public class UIActor extends Group { } public boolean buttonDown(int i) { - if(keyBinding.isPressed(i)) + if (keyBinding.isPressed(i)) setText(keyBinding.getLabelText(true)); layout(); return false; } - public boolean buttonUp( int i) { - if(keyBinding.isPressed(i)) + public boolean buttonUp(int i) { + if (keyBinding.isPressed(i)) updateText(); return false; } diff --git a/forge-gui/res/skins/default/adv_bg_texture.jpg b/forge-gui/res/skins/default/adv_bg_texture.jpg index e4c7c2061b7..5ea4ad54c16 100644 Binary files a/forge-gui/res/skins/default/adv_bg_texture.jpg and b/forge-gui/res/skins/default/adv_bg_texture.jpg differ diff --git a/forge-gui/res/skins/default/sprite_adv_buttons.png b/forge-gui/res/skins/default/sprite_adv_buttons.png index 68f95c21419..0f7bb9214ab 100644 Binary files a/forge-gui/res/skins/default/sprite_adv_buttons.png and b/forge-gui/res/skins/default/sprite_adv_buttons.png differ