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>intfloatfloatfloat[]floatfloatfloatbooleanintarc.math.geom.Vec2Turret sprite offset, based on recoil.floatfloat[]mindustry.gen.Poscarc.math.geom.Vec2intintmindustry.gen.BlockUnitcfloatbooleanFields inherited from class mindustry.world.blocks.defense.turrets.ReloadTurret.ReloadTurretBuild
reloadCounterFields inherited from class mindustry.world.blocks.defense.turrets.BaseTurret.BaseTurretBuild
rotationFields 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 TypeMethodDescriptionfloatprotected floatprotected voidbullet(BulletType type, float xOffset, float yOffset, float angleOffset, Mover mover) booleanprotected booleancanHeal()booleancharging()voidvoidvoiddraw()floatdrawrot()voidfloatprotected mindustry.gen.PoscfindEnemy(float range) protected voidfloatprotected voidhandleBullet(mindustry.gen.Bullet bullet, float offsetX, float offsetY, float angleOffset) voidhandleLiquid(mindustry.gen.Building source, Liquid liquid, float amount) booleanhasAmmo()booleanisActive()booleanbooleanfloatminRange()voidpeekAmmo()floatprogress()floatrange()voidread(arc.util.io.Reads read, byte revision) voidreadSync(arc.util.io.Reads read, byte revision) voidremove()doubleprotected voidshoot(BulletType type) booleanbooleanbooleanvoidtargetPosition(mindustry.gen.Posc pos) floatprotected voidturnToTarget(float targetRot) mindustry.gen.Unitunit()voidprotected voidprotected voidvoiduseAmmo()Consume ammo and return a type.protected booleanbyteversion()floatwarmup()voidwrite(arc.util.io.Writes write) Methods inherited from class mindustry.world.blocks.defense.turrets.ReloadTurret.ReloadTurretBuild
baseReloadSpeed, updateCoolingMethods inherited from class mindustry.world.blocks.defense.turrets.BaseTurret.BaseTurretBuild
buildRotationMethods 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, isCommandable, 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, onRepaired, 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, yMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface mindustry.world.blocks.ControlBlock
isControlled, shouldAutoTargetMethods inherited from interface mindustry.ui.Displayable
displayableMethods inherited from interface mindustry.gen.Entityc
add, afterRead, afterReadAll, as, beforeWrite, classId, id, id, isAdded, isLocal, isRemote, read, self, serializeMethods inherited from interface mindustry.gen.Posc
blockOn, buildOn, floorOn, getX, getY, onSolid, set, set, tileOn, tileX, tileY, trns, trns, x, x, y, yMethods inherited from interface arc.math.geom.Position
angleTo, angleTo, dst, dst, dst2, dst2, within, withinMethods 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:
removein interfacemindustry.gen.Entityc- Overrides:
removein classmindustry.gen.Building
-
onDestroyed
public void onDestroyed()- Overrides:
onDestroyedin classmindustry.gen.Building
-
estimateDps
public float estimateDps()- Overrides:
estimateDpsin classBaseTurret.BaseTurretBuild
-
minRange
public float minRange() -
range
public float range()- Specified by:
rangein interfaceRanged- Overrides:
rangein classBaseTurret.BaseTurretBuild
-
trackingRange
public float trackingRange() -
warmup
public float warmup()- Overrides:
warmupin classmindustry.gen.Building
-
drawrot
public float drawrot()- Overrides:
drawrotin classmindustry.gen.Building
-
shouldConsume
public boolean shouldConsume()- Overrides:
shouldConsumein classmindustry.gen.Building
-
canControl
public boolean canControl()- Specified by:
canControlin interfaceControlBlock- Returns:
- whether this block can be controlled at all.
-
control
- Specified by:
controlin interfaceControllable- Overrides:
controlin classmindustry.gen.Building
-
control
- Specified by:
controlin interfaceControllable- Overrides:
controlin classmindustry.gen.Building
-
sense
-
fogRadius
public float fogRadius()- Overrides:
fogRadiusin classmindustry.gen.Building
-
progress
public float progress()- Overrides:
progressin classmindustry.gen.Building
-
isShooting
public boolean isShooting() -
unit
public mindustry.gen.Unit unit()- Specified by:
unitin interfaceControlBlock
-
logicControlled
public boolean logicControlled() -
isActive
public boolean isActive() -
targetPosition
public void targetPosition(mindustry.gen.Posc pos) -
draw
public void draw()- Overrides:
drawin classmindustry.gen.Building
-
drawSelect
public void drawSelect()- Overrides:
drawSelectin classBaseTurret.BaseTurretBuild
-
updateTile
public void updateTile()- Overrides:
updateTilein classmindustry.gen.Building
-
handleLiquid
- Overrides:
handleLiquidin 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:
updateEfficiencyMultiplierin 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:
ammoReloadMultiplierin 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:
writein interfacemindustry.gen.Entityc- Overrides:
writein classmindustry.gen.Building
-
read
public void read(arc.util.io.Reads read, byte revision) - Overrides:
readin classmindustry.gen.Building
-
version
public byte version()- Overrides:
versionin classmindustry.gen.Building
-
readSync
public void readSync(arc.util.io.Reads read, byte revision) - Overrides:
readSyncin classmindustry.gen.Building
-