Class Turret.TurretBuild
java.lang.Object
mindustry.gen.Building
mindustry.world.blocks.defense.turrets.BaseTurret.BaseTurretBuild
mindustry.world.blocks.defense.turrets.ReloadTurret.ReloadTurretBuild
mindustry.world.blocks.defense.turrets.Turret.TurretBuild
- 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
,ControlBlock
,RotBlock
- Direct Known Subclasses:
ContinuousTurret.ContinuousTurretBuild
,ItemTurret.ItemTurretBuild
,LiquidTurret.LiquidTurretBuild
,PayloadAmmoTurret.PayloadTurretBuild
,PowerTurret.PowerTurretBuild
- Enclosing class:
- Turret
-
Field Summary
FieldsModifier and TypeFieldDescriptionarc.struct.Seq<Turret.AmmoEntry>
int
float
float
float[]
float
float
float
boolean
int
arc.math.geom.Vec2
Turret sprite offset, based on recoil.float
float[]
mindustry.gen.Posc
arc.math.geom.Vec2
int
int
mindustry.gen.BlockUnitc
float
boolean
Fields inherited from class mindustry.world.blocks.defense.turrets.ReloadTurret.ReloadTurretBuild
reloadCounter
Fields inherited from class mindustry.world.blocks.defense.turrets.BaseTurret.BaseTurretBuild
rotation
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, shouldConsumePower, sleeping, sleepingEntities, sleepTime, suppressColor, team, teamChangeEvent, tempBuilds, tile, timer, timeScale, timeScaleDuration, timeToSleep, tmpTiles, visibleFlags, visualLiquid, wasDamaged, wasVisible, x, y
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfloat
protected float
protected void
bullet
(BulletType type, float xOffset, float yOffset, float angleOffset, Mover mover) boolean
protected boolean
canHeal()
boolean
charging()
void
void
void
draw()
float
drawrot()
void
float
protected mindustry.gen.Posc
findEnemy
(float range) protected void
float
protected void
handleBullet
(mindustry.gen.Bullet bullet, float offsetX, float offsetY, float angleOffset) void
handleLiquid
(mindustry.gen.Building source, Liquid liquid, float amount) boolean
hasAmmo()
boolean
isActive()
boolean
boolean
float
minRange()
void
peekAmmo()
float
progress()
float
range()
void
read
(arc.util.io.Reads read, byte revision) void
readSync
(arc.util.io.Reads read, byte revision) void
remove()
double
protected void
shoot
(BulletType type) boolean
boolean
boolean
void
targetPosition
(mindustry.gen.Posc pos) float
protected void
turnToTarget
(float targetRot) mindustry.gen.Unit
unit()
void
protected void
protected void
void
useAmmo()
Consume ammo and return a type.protected boolean
byte
version()
float
warmup()
void
write
(arc.util.io.Writes write) Methods inherited from class mindustry.world.blocks.defense.turrets.ReloadTurret.ReloadTurretBuild
baseReloadSpeed, updateCooling
Methods inherited from class mindustry.world.blocks.defense.turrets.BaseTurret.BaseTurretBuild
buildRotation
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, buildConfiguration, buildOn, calculateHeat, calculateHeat, canBeReplaced, canConsume, canControlSelect, canDump, canDumpLiquid, canPickup, canResupply, canUnload, canWithdraw, changeTeam, cheating, checkAllowUpdate, checkSolid, checkSuppression, clampHealth, classId, closestCore, closestEnemyCore, collide, collision, conductsTo, config, configTapped, configure, configureAny, configured, consume, consumeTriggerValid, core, create, create, created, damage, damage, damage, damage, damageContinuous, damageContinuousPierce, damaged, damagePierce, damagePierce, dead, dead, delta, deselect, display, displayBars, displayConsumption, drawConfigure, drawCracks, drawDisabled, drawItemSelection, drawLight, drawLiquidLight, drawStatus, drawTeam, drawTeamTop, dropped, dump, dump, dumpAccumulate, dumpAccumulate, dumpLiquid, dumpLiquid, dumpLiquid, dumpPayload, eachEdge, edelta, efficiencyScale, explosionItemCap, findClosestEdge, floor, floorOn, flowItems, front, getCommandPosition, getCursor, getDisplayEfficiency, getDisplayIcon, getDisplayName, getLiquidDestination, getMaximumAccepted, getPayload, getPayloads, getPowerConnections, getPowerProduction, getProgressIncrease, getStackOffset, getX, getY, handleDamage, handleItem, 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, onConfigureBuildTapped, onConfigureClosed, onConfigureTapped, onControlSelect, onDeconstructed, onNearbyBuildAdded, onProximityAdded, onProximityRemoved, onProximityUpdate, onRemoved, onSolid, overwrote, payloadCheck, payloadDraw, pickedUp, placed, playerPlaced, pos, powerGraphRemoved, produced, produced, productionValid, puddleOn, put, read, readAll, readBase, recentlyHealed, relativeTo, relativeTo, relativeTo, relativeToEdge, removeFromProximity, removeStack, right, rotdeg, self, sense, senseObject, serialize, set, set, setIndex__all, setIndex__build, setProp, setProp, setProp, shouldAmbientSound, shouldHideConfigure, shouldShowConfigure, sleep, splashLiquid, status, takePayload, tapped, team, team, tileOn, tileX, tileY, timer, timer, timer, timeScale, toString, totalProgress, transferLiquid, trns, trns, unitOn, unitOnAny, unitRemoved, update, updateConsumption, updateFogVisibility, updateLastAccess, updatePayload, updatePowerGraph, updateProximity, updateTableAlign, 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.world.blocks.ControlBlock
isControlled, shouldAutoTarget
Methods inherited from interface mindustry.ui.Displayable
displayable
Methods inherited from interface mindustry.gen.Entityc
add, afterRead, afterReadAll, as, beforeWrite, classId, id, id, isAdded, isLocal, isRemote, read, 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
-
recoilOffset
public arc.math.geom.Vec2 recoilOffsetTurret sprite offset, based on recoil. Updated every frame. -
ammo
-
totalAmmo
public int totalAmmo -
curRecoil
public float curRecoil -
heat
public float heat -
logicControlTime
public float logicControlTime -
curRecoils
@Nullable public float[] curRecoils -
shootWarmup
public float shootWarmup -
charge
public float charge -
warmupHold
public float warmupHold -
totalShots
public int totalShots -
barrelCounter
public int barrelCounter -
logicShooting
public boolean logicShooting -
target
@Nullable public mindustry.gen.Posc target -
targetPos
public arc.math.geom.Vec2 targetPos -
unit
public mindustry.gen.BlockUnitc unit -
wasShooting
public boolean wasShooting -
queuedBullets
public int queuedBullets -
heatReq
public float heatReq -
sideHeat
public float[] sideHeat -
soundLoop
-
-
Constructor Details
-
TurretBuild
public TurretBuild()
-
-
Method Details
-
remove
public void remove()- Specified by:
remove
in interfacemindustry.gen.Entityc
- Overrides:
remove
in classmindustry.gen.Building
-
onDestroyed
public void onDestroyed()- Overrides:
onDestroyed
in classmindustry.gen.Building
-
estimateDps
public float estimateDps()- Overrides:
estimateDps
in classBaseTurret.BaseTurretBuild
-
minRange
public float minRange() -
range
public float range()- Specified by:
range
in interfaceRanged
- Overrides:
range
in classBaseTurret.BaseTurretBuild
-
trackingRange
public float trackingRange() -
warmup
public float warmup()- Overrides:
warmup
in classmindustry.gen.Building
-
drawrot
public float drawrot()- Overrides:
drawrot
in classmindustry.gen.Building
-
shouldConsume
public boolean shouldConsume()- Overrides:
shouldConsume
in classmindustry.gen.Building
-
canControl
public boolean canControl()- Specified by:
canControl
in interfaceControlBlock
- Returns:
- whether this block can be controlled at all.
-
control
- Specified by:
control
in interfaceControllable
- Overrides:
control
in classmindustry.gen.Building
-
control
- Specified by:
control
in interfaceControllable
- Overrides:
control
in classmindustry.gen.Building
-
sense
-
fogRadius
public float fogRadius()- Overrides:
fogRadius
in classmindustry.gen.Building
-
progress
public float progress()- Overrides:
progress
in classmindustry.gen.Building
-
isShooting
public boolean isShooting() -
unit
public mindustry.gen.Unit unit()- Specified by:
unit
in interfaceControlBlock
-
logicControlled
public boolean logicControlled() -
isActive
public boolean isActive() -
targetPosition
public void targetPosition(mindustry.gen.Posc pos) -
draw
public void draw()- Overrides:
draw
in classmindustry.gen.Building
-
drawSelect
public void drawSelect()- Overrides:
drawSelect
in classBaseTurret.BaseTurretBuild
-
updateTile
public void updateTile()- Overrides:
updateTile
in classmindustry.gen.Building
-
handleLiquid
- Overrides:
handleLiquid
in classmindustry.gen.Building
-
validateTarget
protected boolean validateTarget() -
canHeal
protected boolean canHeal() -
findEnemy
protected mindustry.gen.Posc findEnemy(float range) -
findTarget
protected void findTarget() -
turnToTarget
protected void turnToTarget(float targetRot) -
shouldTurn
public boolean shouldTurn() -
updateEfficiencyMultiplier
public void updateEfficiencyMultiplier()- Overrides:
updateEfficiencyMultiplier
in classmindustry.gen.Building
-
useAmmo
Consume ammo and return a type. -
peekAmmo
- Returns:
- the ammo type that will be returned if useAmmo is called.
-
hasAmmo
public boolean hasAmmo()- Returns:
- whether the turret has ammo.
-
charging
public boolean charging() -
updateReload
protected void updateReload() -
ammoReloadMultiplier
protected float ammoReloadMultiplier()- Overrides:
ammoReloadMultiplier
in classReloadTurret.ReloadTurretBuild
-
updateShooting
protected void updateShooting() -
shoot
-
bullet
protected void bullet(BulletType type, float xOffset, float yOffset, float angleOffset, Mover mover) -
handleBullet
protected void handleBullet(@Nullable mindustry.gen.Bullet bullet, float offsetX, float offsetY, float angleOffset) -
activeSoundVolume
public float activeSoundVolume() -
shouldActiveSound
public boolean shouldActiveSound() -
write
public void write(arc.util.io.Writes write) - Specified by:
write
in interfacemindustry.gen.Entityc
- Overrides:
write
in classmindustry.gen.Building
-
read
public void read(arc.util.io.Reads read, byte revision) - Overrides:
read
in classmindustry.gen.Building
-
version
public byte version()- Overrides:
version
in classmindustry.gen.Building
-
readSync
public void readSync(arc.util.io.Reads read, byte revision) - Overrides:
readSync
in classmindustry.gen.Building
-