mirror of
https://github.com/Anuken/Mindustry.git
synced 2026-01-26 06:22:17 -08:00
Block cleanup
This commit is contained in:
parent
3c963fb1bc
commit
324e5151aa
8 changed files with 28 additions and 27 deletions
|
|
@ -18,7 +18,7 @@ abstract class BlockUnitComp implements Unitc{
|
|||
|
||||
//sets up block stats
|
||||
maxHealth(tile.block.health);
|
||||
health(tile.health());
|
||||
health(tile.health);
|
||||
hitSize(tile.block.size * tilesize * 0.7f);
|
||||
set(tile);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1062,7 +1062,7 @@ abstract class BuildingComp implements Posc, Teamc, Healthc, Buildingc, Timerc,
|
|||
|
||||
for(int i = 0; i < Mathf.clamp(amount / 5, 0, 30); i++){
|
||||
Time.run(i / 2f, () -> {
|
||||
Tile other = world.tile(tileX() + Mathf.range(block.size / 2), tileY() + Mathf.range(block.size / 2));
|
||||
Tile other = world.tileWorld(x + Mathf.range(block.size * tilesize / 2), y + Mathf.range(block.size * tilesize / 2));
|
||||
if(other != null){
|
||||
Puddles.deposit(other, liquid, splash);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -91,9 +91,7 @@ public class LiquidTurret extends Turret{
|
|||
|
||||
@Override
|
||||
public void updateTile(){
|
||||
if(unit != null){
|
||||
unit.ammo(unit.type().ammoCapacity * liquids.currentAmount() / liquidCapacity);
|
||||
}
|
||||
unit.ammo(unit.type().ammoCapacity * liquids.currentAmount() / liquidCapacity);
|
||||
|
||||
super.updateTile();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -31,9 +31,7 @@ public class PowerTurret extends Turret{
|
|||
|
||||
@Override
|
||||
public void updateTile(){
|
||||
if(unit != null){
|
||||
unit.ammo(power.status * unit.type().ammoCapacity);
|
||||
}
|
||||
unit.ammo(power.status * unit.type().ammoCapacity);
|
||||
|
||||
super.updateTile();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -149,15 +149,9 @@ public class Turret extends ReloadTurret{
|
|||
public boolean logicShooting = false;
|
||||
public @Nullable Posc target;
|
||||
public Vec2 targetPos = new Vec2();
|
||||
public @Nullable BlockUnitc unit;
|
||||
public BlockUnitc unit = (BlockUnitc)UnitTypes.block.create(team);
|
||||
public boolean wasShooting, charging;
|
||||
|
||||
@Override
|
||||
public void created(){
|
||||
unit = (BlockUnitc)UnitTypes.block.create(team);
|
||||
unit.tile(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean canControl(){
|
||||
return playerControllable;
|
||||
|
|
@ -165,7 +159,7 @@ public class Turret extends ReloadTurret{
|
|||
|
||||
@Override
|
||||
public void control(LAccess type, double p1, double p2, double p3, double p4){
|
||||
if(type == LAccess.shoot && (unit == null || !unit.isPlayer())){
|
||||
if(type == LAccess.shoot && !unit.isPlayer()){
|
||||
targetPos.set(World.unconv((float)p1), World.unconv((float)p2));
|
||||
logicControlTime = logicControlCooldown;
|
||||
logicShooting = !Mathf.zero(p3);
|
||||
|
|
@ -203,15 +197,14 @@ public class Turret extends ReloadTurret{
|
|||
}
|
||||
|
||||
public boolean isShooting(){
|
||||
return (isControlled() ? (unit != null && unit.isShooting()) : logicControlled() ? logicShooting : target != null);
|
||||
return (isControlled() ? unit.isShooting() : logicControlled() ? logicShooting : target != null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Unit unit(){
|
||||
if(unit == null){
|
||||
unit = (BlockUnitc)UnitTypes.block.create(team);
|
||||
unit.tile(this);
|
||||
}
|
||||
//make sure stats are correct
|
||||
unit.tile(this);
|
||||
unit.team(team);
|
||||
return (Unit)unit;
|
||||
}
|
||||
|
||||
|
|
@ -267,12 +260,9 @@ public class Turret extends ReloadTurret{
|
|||
recoil = Mathf.lerpDelta(recoil, 0f, restitution);
|
||||
heat = Mathf.lerpDelta(heat, 0f, cooldown);
|
||||
|
||||
if(unit != null){
|
||||
unit.health(health);
|
||||
unit.rotation(rotation);
|
||||
unit.team(team);
|
||||
unit.set(x, y);
|
||||
}
|
||||
unit.tile(this);
|
||||
unit.rotation(rotation);
|
||||
unit.team(team);
|
||||
|
||||
if(logicControlTime > 0){
|
||||
logicControlTime -= Time.delta;
|
||||
|
|
|
|||
|
|
@ -52,6 +52,11 @@ public class AttributeCrafter extends GenericCrafter{
|
|||
return baseEfficiency + Math.min(maxBoost, boostScale * attrsum) + attribute.env();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void pickedUp(){
|
||||
attrsum = 0f;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onProximityUpdate(){
|
||||
super.onProximityUpdate();
|
||||
|
|
|
|||
|
|
@ -91,6 +91,11 @@ public class Pump extends LiquidBlock{
|
|||
Drawf.liquid(liquidRegion, x, y, liquids.currentAmount() / liquidCapacity, liquids.current().color);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void pickedUp(){
|
||||
amount = 0f;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onProximityUpdate(){
|
||||
super.onProximityUpdate();
|
||||
|
|
|
|||
|
|
@ -95,6 +95,11 @@ public class SolidPump extends Pump{
|
|||
@Override
|
||||
public void drawCracks(){}
|
||||
|
||||
@Override
|
||||
public void pickedUp(){
|
||||
boost = validTiles = 0f;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void draw(){
|
||||
Draw.rect(region, x, y);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue