Class LogicBlock.LogicBuild

java.lang.Object
mindustry.gen.Building
mindustry.world.blocks.logic.LogicBlock.LogicBuild
All Implemented Interfaces:
arc.math.geom.Position, arc.math.geom.QuadTree.QuadTreeObject, Sized, mindustry.gen.Buildingc, mindustry.gen.Entityc, mindustry.gen.Healthc, mindustry.gen.Posc, mindustry.gen.Teamc, mindustry.gen.Timerc, Controllable, Ranged, Senseable, Settable, Displayable
Enclosing class:
LogicBlock

public class LogicBlock.LogicBuild extends mindustry.gen.Building implements Ranged
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    float
     
    boolean
     
    logic "source code" as list of asm statements
     
    char
     
    int
     
    arc.struct.Seq<LogicBlock.LogicLink>
     
    Block of code to run after load.
    Display name, for convenience.

    Fields inherited from class mindustry.gen.Building

    added, block, bulletDamageEvent, cdump, dead, dumpAccum, efficiency, enabled, healSuppressionTime, health, hitDuration, hitTime, id, index__all, index__build, initialized, items, lastAccessed, lastDamageTime, lastDisabler, lastHealTime, liquids, maxHealth, optionalEfficiency, payloadRotation, potentialEfficiency, power, proximity, recentDamageTime, rotation, shouldConsumePower, sleeping, sleepingEntities, sleepTime, suppressColor, team, teamChangeEvent, tempBuilds, tile, timer, timeScale, timeScaleDuration, timeToSleep, tmpTiles, visibleFlags, visualLiquid, wasDamaged, wasVisible, x, y

    Fields inherited from interface mindustry.logic.Senseable

    noSensed
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    buildConfiguration(arc.scene.ui.layout.Table table)
     
    boolean
     
    boolean
    collide(mindustry.gen.Bullet other)
     
    byte[]
     
    void
    damage(float damage)
     
    boolean
     
    void
     
    void
     
     
    arc.Graphics.Cursor
     
    boolean
    onConfigureBuildTapped(mindustry.gen.Building other)
     
    float
     
    void
    read(arc.util.io.Reads read, byte revision)
     
    void
    readCompressed(byte[] data, boolean relative)
     
    arc.struct.Seq<LogicBlock.LogicLink>
     
    void
     
    boolean
    shouldShowConfigure(mindustry.gen.Player player)
     
    void
     
    void
    showEditDialog(boolean forceEditor)
     
    void
     
    void
    updateCode(String str, boolean keep, arc.func.Cons<LAssembler> assemble)
     
    void
     
    boolean
    validLink(mindustry.gen.Building other)
     
    byte
     
    void
    write(arc.util.io.Writes write)
     

    Methods inherited from class mindustry.gen.Building

    absorbLasers, acceptItem, acceptLiquid, acceptPayload, acceptStack, add, addPlan, addPlan, afterDestroyed, afterPickedUp, afterRead, afterReadAll, allowUpdate, ambientVolume, applyBoost, applyHealSuppression, applyHealSuppression, applySlowdown, as, back, beforeWrite, blockOn, buildOn, calculateHeat, calculateHeat, canBeReplaced, canConsume, canControlSelect, canDump, canDumpLiquid, canResupply, canUnload, canWithdraw, changeTeam, cheating, checkAllowUpdate, checkSolid, checkSuppression, clampHealth, classId, closestCore, closestEnemyCore, collision, conductsTo, configTapped, configure, configureAny, configured, consume, consumeTriggerValid, control, control, core, create, create, created, damage, damage, damage, damageContinuous, damageContinuousPierce, damaged, damagePierce, damagePierce, dead, dead, delta, deselect, display, displayBars, displayConsumption, draw, drawCracks, drawDisabled, drawItemSelection, drawLight, drawLiquidLight, drawrot, drawStatus, drawTeam, drawTeamTop, dropped, dump, dump, dumpAccumulate, dumpAccumulate, dumpLiquid, dumpLiquid, dumpLiquid, dumpPayload, eachEdge, edelta, efficiencyScale, explosionItemCap, findClosestEdge, floor, floorOn, flowItems, fogRadius, front, getCommandPosition, getDisplayEfficiency, getDisplayIcon, getDisplayName, getLiquidDestination, getMaximumAccepted, getPayload, getPayloads, getPowerConnections, getPowerProduction, getProgressIncrease, getStackOffset, getX, getY, handleDamage, handleItem, handleLiquid, handlePayload, handleStack, handleString, handleUnitPayload, heal, heal, healFract, health, health, healthChanged, healthf, hitbox, hitSize, hitTime, hitTime, id, id, incrementDump, inFogTo, init, interactable, isAdded, isDiscovered, isHealSuppressed, isInsulated, isLocal, isPayload, isRemote, isValid, itemTaken, kill, killed, left, maxHealth, maxHealth, moduleBitmask, moveForward, moveLiquid, moveLiquidForward, movePayload, nearby, nearby, noSleep, offload, onCommand, onConfigureClosed, onConfigureTapped, onControlSelect, onDeconstructed, onDestroyed, onNearbyBuildAdded, onProximityAdded, onProximityRemoved, onProximityUpdate, onRemoved, onSolid, overwrote, payloadCheck, payloadDraw, pickedUp, placed, playerPlaced, pos, powerGraphRemoved, produced, produced, productionValid, progress, puddleOn, put, read, readAll, readBase, readSync, recentlyHealed, relativeTo, relativeTo, relativeTo, relativeToEdge, remove, removeStack, right, rotdeg, self, sense, sense, senseObject, serialize, set, set, setIndex__all, setIndex__build, setProp, setProp, setProp, shouldAmbientSound, shouldConsume, shouldHideConfigure, sleep, splashLiquid, status, takePayload, tapped, team, team, tileOn, tileX, tileY, timer, timer, timer, timeScale, toString, totalProgress, transferLiquid, trns, trns, unitOn, unitOnAny, unitRemoved, update, updateConsumption, updateEfficiencyMultiplier, updateFogVisibility, updateLastAccess, updatePayload, updatePowerGraph, updateProximity, updateTableAlign, warmup, wasRecentlyDamaged, wasRecentlyHealed, writeAll, writeBase, writeSync, x, x, y, y

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface mindustry.gen.Entityc

    add, afterRead, afterReadAll, as, beforeWrite, classId, id, id, isAdded, isLocal, isRemote, read, remove, self, serialize

    Methods inherited from interface mindustry.gen.Posc

    blockOn, buildOn, floorOn, getX, getY, onSolid, set, set, tileOn, tileX, tileY, trns, trns, x, x, y, y

    Methods inherited from interface arc.math.geom.Position

    angleTo, angleTo, dst, dst, dst2, dst2, within, within

    Methods inherited from interface mindustry.gen.Teamc

    cheating, closestCore, closestEnemyCore, core, inFogTo, team, team
  • Field Details

    • code

      public String code
      logic "source code" as list of asm statements
    • executor

      public LExecutor executor
    • accumulator

      public float accumulator
    • checkedDuplicates

      public boolean checkedDuplicates
    • ipt

      public int ipt
    • tag

      @Nullable public String tag
      Display name, for convenience. This is currently only available for world processors.
    • iconTag

      public char iconTag
    • loadBlock

      @Nullable public Runnable loadBlock
      Block of code to run after load.
  • Constructor Details

    • LogicBuild

      public LogicBuild()
  • Method Details

    • readCompressed

      public void readCompressed(byte[] data, boolean relative)
    • findLinkName

      public String findLinkName(Block block)
    • updateCode

      public void updateCode(String str)
    • updateCode

      public void updateCode(String str, boolean keep, arc.func.Cons<LAssembler> assemble)
    • collide

      public boolean collide(mindustry.gen.Bullet other)
      Overrides:
      collide in class mindustry.gen.Building
    • displayable

      public boolean displayable()
      Specified by:
      displayable in interface Displayable
    • damage

      public void damage(float damage)
      Specified by:
      damage in interface mindustry.gen.Healthc
      Overrides:
      damage in class mindustry.gen.Building
    • removeFromProximity

      public void removeFromProximity()
      Overrides:
      removeFromProximity in class mindustry.gen.Building
    • getCursor

      public arc.Graphics.Cursor getCursor()
      Overrides:
      getCursor in class mindustry.gen.Building
    • canPickup

      public boolean canPickup()
      Overrides:
      canPickup in class mindustry.gen.Building
    • range

      public float range()
      Specified by:
      range in interface Ranged
    • updateTile

      public void updateTile()
      Overrides:
      updateTile in class mindustry.gen.Building
    • config

      public byte[] config()
      Overrides:
      config in class mindustry.gen.Building
    • relativeConnections

      public arc.struct.Seq<LogicBlock.LogicLink> relativeConnections()
    • drawConfigure

      public void drawConfigure()
      Overrides:
      drawConfigure in class mindustry.gen.Building
    • drawSelect

      public void drawSelect()
      Overrides:
      drawSelect in class mindustry.gen.Building
    • validLink

      public boolean validLink(mindustry.gen.Building other)
    • shouldShowConfigure

      public boolean shouldShowConfigure(mindustry.gen.Player player)
      Overrides:
      shouldShowConfigure in class mindustry.gen.Building
    • buildConfiguration

      public void buildConfiguration(arc.scene.ui.layout.Table table)
      Overrides:
      buildConfiguration in class mindustry.gen.Building
    • showEditDialog

      public void showEditDialog()
    • showEditDialog

      public void showEditDialog(boolean forceEditor)
    • onConfigureBuildTapped

      public boolean onConfigureBuildTapped(mindustry.gen.Building other)
      Overrides:
      onConfigureBuildTapped in class mindustry.gen.Building
    • version

      public byte version()
      Overrides:
      version in class mindustry.gen.Building
    • write

      public void write(arc.util.io.Writes write)
      Specified by:
      write in interface mindustry.gen.Entityc
      Overrides:
      write in class mindustry.gen.Building
    • read

      public void read(arc.util.io.Reads read, byte revision)
      Overrides:
      read in class mindustry.gen.Building