Class UpgradeDisplay

java.lang.Object
com.badlogic.gdx.scenes.scene2d.Actor
com.badlogic.gdx.scenes.scene2d.Group
com.badlogic.gdx.scenes.scene2d.ui.WidgetGroup
com.badlogic.gdx.scenes.scene2d.ui.Table
com.badlogic.gdx.scenes.scene2d.ui.Window
com.csse3200.game.components.upgradetree.UpgradeDisplay
All Implemented Interfaces:
com.badlogic.gdx.scenes.scene2d.utils.Cullable, com.badlogic.gdx.scenes.scene2d.utils.Layout

public class UpgradeDisplay extends com.badlogic.gdx.scenes.scene2d.ui.Window
The UpgradeDisplay class represents a GUI component for displaying upgrades. The display visualizes upgrade trees where each item can be upgraded based on available materials.

The class extends the Window class from libGDX to represent a pop-up or overlay menu in the game.

  • Nested Class Summary

    Nested classes/interfaces inherited from class com.badlogic.gdx.scenes.scene2d.ui.Window

    com.badlogic.gdx.scenes.scene2d.ui.Window.WindowStyle

    Nested classes/interfaces inherited from class com.badlogic.gdx.scenes.scene2d.ui.Table

    com.badlogic.gdx.scenes.scene2d.ui.Table.Debug, com.badlogic.gdx.scenes.scene2d.ui.Table.DebugRect
  • Field Summary

    Fields inherited from class com.badlogic.gdx.scenes.scene2d.ui.Window

    dragging, edge

    Fields inherited from class com.badlogic.gdx.scenes.scene2d.ui.Table

    backgroundBottom, backgroundLeft, backgroundRight, backgroundTop, debugActorColor, debugCellColor, debugTableColor
  • Constructor Summary

    Constructors
    Constructor
    Description
    UpgradeDisplay(com.badlogic.gdx.graphics.Texture background)
    Constructor for UpgradeDisplay.
  • Method Summary

    Modifier and Type
    Method
    Description
    com.badlogic.gdx.scenes.scene2d.ui.TextButton
    createCostButtons(UpgradeNode node, com.badlogic.gdx.scenes.scene2d.ui.ImageButton weaponButton)
    Creates a cost button for a given upgrade node.
    Factory method for creating an instance of UpgradeDisplay.
    protected void
    drawBackground(com.badlogic.gdx.graphics.g2d.Batch batch, float parentAlpha, float x, float y)
    Renders the background, the connection lines, and the ImageButtons for the upgrade tree.
    void
    Draws lines connecting parent nodes to their child nodes.
    boolean
    Override the removal process to unregister input overrides.

    Methods inherited from class com.badlogic.gdx.scenes.scene2d.ui.Window

    draw, drawStageBackground, getPrefWidth, getStyle, getTitleLabel, getTitleTable, hit, isDragging, isModal, isMovable, isResizable, keepWithinStage, newLabel, setKeepWithinStage, setModal, setMovable, setResizable, setResizeBorder, setStyle

    Methods inherited from class com.badlogic.gdx.scenes.scene2d.ui.Table

    add, add, add, add, add, add, add, align, background, background, bottom, center, clearChildren, clip, clip, columnDefaults, debug, debug, debugActor, debugAll, debugCell, debugTable, defaults, drawDebug, drawDebugBounds, getAlign, getBackground, getCell, getCells, getClip, getColumnMinWidth, getColumnPrefWidth, getColumns, getColumnWidth, getMinHeight, getMinWidth, getPadBottom, getPadBottomValue, getPadLeft, getPadLeftValue, getPadRight, getPadRightValue, getPadTop, getPadTopValue, getPadX, getPadY, getPrefHeight, getRow, getRowHeight, getRowMinHeight, getRowPrefHeight, getRows, getSkin, getTableDebug, invalidate, layout, left, pad, pad, pad, pad, padBottom, padBottom, padLeft, padLeft, padRight, padRight, padTop, padTop, removeActor, removeActor, removeActorAt, reset, right, row, setBackground, setBackground, setClip, setDebug, setRound, setSkin, stack, top

    Methods inherited from class com.badlogic.gdx.scenes.scene2d.ui.WidgetGroup

    childrenChanged, getMaxHeight, getMaxWidth, invalidateHierarchy, needsLayout, pack, setFillParent, setLayoutEnabled, sizeChanged, validate

    Methods inherited from class com.badlogic.gdx.scenes.scene2d.Group

    act, addActor, addActorAfter, addActorAt, addActorBefore, applyTransform, applyTransform, clear, clear, clearChildren, computeTransform, drawChildren, drawDebugChildren, findActor, getChild, getChildren, getCullingArea, hasChildren, isTransform, localToDescendantCoordinates, resetTransform, resetTransform, setCullingArea, setDebug, setStage, setTransform, swapActor, swapActor, toString

    Methods inherited from class com.badlogic.gdx.scenes.scene2d.Actor

    addAction, addCaptureListener, addListener, ancestorsVisible, ascendantsVisible, clearActions, clearListeners, clipBegin, clipBegin, clipEnd, fire, firstAscendant, getActions, getCaptureListeners, getColor, getDebug, getHeight, getListeners, getName, getOriginX, getOriginY, getParent, getRight, getRotation, getScaleX, getScaleY, getStage, getTop, getTouchable, getUserObject, getWidth, getX, getX, getY, getY, getZIndex, hasActions, hasKeyboardFocus, hasParent, hasScrollFocus, isAscendantOf, isDescendantOf, isTouchable, isTouchFocusListener, isTouchFocusTarget, isVisible, localToActorCoordinates, localToAscendantCoordinates, localToParentCoordinates, localToScreenCoordinates, localToStageCoordinates, moveBy, notify, parentToLocalCoordinates, positionChanged, removeAction, removeCaptureListener, removeListener, rotateBy, rotationChanged, scaleBy, scaleBy, scaleChanged, screenToLocalCoordinates, setBounds, setColor, setColor, setHeight, setName, setOrigin, setOrigin, setOriginX, setOriginY, setParent, setPosition, setPosition, setRotation, setScale, setScale, setScaleX, setScaleY, setSize, setTouchable, setUserObject, setVisible, setWidth, setX, setX, setY, setY, setZIndex, sizeBy, sizeBy, stageToLocalCoordinates, toBack, toFront

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • UpgradeDisplay

      public UpgradeDisplay(com.badlogic.gdx.graphics.Texture background)
      Constructor for UpgradeDisplay.
      Parameters:
      background - The texture to be used for the background of the upgrade display.
  • Method Details

    • createUpgradeDisplay

      public static UpgradeDisplay createUpgradeDisplay()
      Factory method for creating an instance of UpgradeDisplay.
      Returns:
      A new instance of UpgradeDisplay.
    • drawLines

      public void drawLines(UpgradeNode node)
      Draws lines connecting parent nodes to their child nodes.
      Parameters:
      node - The current node from which lines will be drawn to its children.
    • createCostButtons

      public com.badlogic.gdx.scenes.scene2d.ui.TextButton createCostButtons(UpgradeNode node, com.badlogic.gdx.scenes.scene2d.ui.ImageButton weaponButton)
      Creates a cost button for a given upgrade node. This button displays the cost of the upgrade node.
      Parameters:
      node - The upgrade node for which the cost button is to be created.
      weaponButton - The button representing the weapon. The cost button's position is determined relative to this.
      Returns:
      A TextButton displaying the cost of the upgrade node or null if the weapon is already unlocked.
    • remove

      public boolean remove()
      Override the removal process to unregister input overrides.
      Overrides:
      remove in class com.badlogic.gdx.scenes.scene2d.Actor
      Returns:
      Returns true if the actor was removed.
    • drawBackground

      protected void drawBackground(com.badlogic.gdx.graphics.g2d.Batch batch, float parentAlpha, float x, float y)
      Renders the background, the connection lines, and the ImageButtons for the upgrade tree.
      Overrides:
      drawBackground in class com.badlogic.gdx.scenes.scene2d.ui.Window
      Parameters:
      batch - The batch used for rendering.
      parentAlpha - The parent alpha value, for transparency.
      x - The x-coordinate of the bottom left corner of the background.
      y - The y-coordinate of the bottom left corner of the background.