Class Modifier

All Implemented Interfaces:
Disposable, KryoSerializable, ScheduledUpdater.Updatable
Direct Known Subclasses:
AttackSpeedModifier, BalanceModifier, BountyModifier, DamageModifier, ExperienceModifier, MiningSpeedModifier, PowerModifier, SearchModifier

public abstract class Modifier extends Building implements Disposable, ScheduledUpdater.Updatable
  • Field Details

    • PENALTY_SELL_PRICE

      public static final float PENALTY_SELL_PRICE
      See Also:
    • WIRES_TEXTURES_CONFIG

      public static final float[][] WIRES_TEXTURES_CONFIG
    • id

      public int id
    • type

      public ModifierType type
    • timeSinceBuilt

      public float timeSinceBuilt
    • connectedSides

      public boolean[] connectedSides
    • moneySpentOn

      public int moneySpentOn
  • Method Details

    • write

      public void write(Kryo kryo, Output output)
      Specified by:
      write in interface KryoSerializable
      Overrides:
      write in class Building
    • read

      public void read(Kryo kryo, Input input)
      Specified by:
      read in interface KryoSerializable
      Overrides:
      read in class Building
    • getWalkCost

      public float getWalkCost()
      Specified by:
      getWalkCost in class Building
    • setSideConnected

      public void setSideConnected(Modifier.ConnectionSide side, boolean connected)
    • connectsToTowers

      public boolean connectsToTowers()
    • connectsToMiners

      public boolean connectsToMiners()
    • getSellDelay

      public float getSellDelay()
      For how long it will not be possible to sell the modifier
    • getTimeTillSellAvailable

      public float getTimeTillSellAvailable()
    • isSellAvailable

      public boolean isSellAvailable()
    • getSellPrice

      public int getSellPrice()
    • updateCache

      public void updateCache()
      Specified by:
      updateCache in class Building
    • fillModifierMenu

      public void fillModifierMenu(Group container, ObjectMap<String,Object> elements)
      Добавить / обновить элементы в меню Вызывается каждый кадр, когда видно меню elements сохраняется между вызовами метода, чтобы не создавать актеров заново. Если он пустой - значит, вызвали первый раз и надо создать Можно не обновлять ничего, если состояние устраивает (можно хранить любые данные в elements, например хэш состояния или предыдущие значения)
    • hasCustomButton

      public boolean hasCustomButton()
    • isCustomButtonNeedMapPoint

      public boolean isCustomButtonNeedMapPoint()
    • customButtonAction

      public void customButtonAction(int mapX, int mapY)
    • updateCustomButton

      public void updateCustomButton(ComplexButton complexButton, boolean isPointing)
    • toJson

      public void toJson(Json json)
      Overrides:
      toJson in class Building
    • drawBatch

      public void drawBatch(Batch batch, float deltaTime, MapRenderingSystem.DrawMode drawMode)
    • drawBatchAdditive

      public void drawBatchAdditive(Batch batch, float deltaTime, MapRenderingSystem.DrawMode drawMode)
    • sameAs

      public boolean sameAs(Building otherBuilding)
      Overrides:
      sameAs in class Building
    • cloneBuilding

      public Modifier cloneBuilding()
      Specified by:
      cloneBuilding in class Building
    • update

      public void update(float deltaTime)
    • dispose

      public void dispose()
      Description copied from interface: com.badlogic.gdx.utils.Disposable
      Releases all resources of this object.
      Specified by:
      dispose in interface Disposable
    • scheduledUpdate

      public void scheduledUpdate(float deltaTime)
      Specified by:
      scheduledUpdate in interface ScheduledUpdater.Updatable
    • scheduledUpdatableSetId

      public final void scheduledUpdatableSetId(int id)
      Specified by:
      scheduledUpdatableSetId in interface ScheduledUpdater.Updatable
    • scheduledUpdatableGetId

      public final int scheduledUpdatableGetId()
      Specified by:
      scheduledUpdatableGetId in interface ScheduledUpdater.Updatable
    • loadFromJson

      public void loadFromJson(JsonValue value)