Files
Mindustry/core/src/mindustry/entities/comp/BlockUnitComp.java
Anuken fdf7c88083 argh
2020-06-26 14:27:26 -04:00

62 lines
1.2 KiB
Java

package mindustry.entities.comp;
import mindustry.annotations.Annotations.*;
import mindustry.game.*;
import mindustry.gen.*;
import static mindustry.Vars.tilesize;
@Component
abstract class BlockUnitComp implements Unitc{
@Import Team team;
@ReadOnly transient Building tile;
public void tile(Building tile){
this.tile = tile;
//sets up block stats
maxHealth(tile.block().health);
health(tile.health());
hitSize(tile.block().size * tilesize * 0.7f);
set(tile);
}
@Override
public void update(){
if(tile != null){
team = tile.team();
}
}
@Override
public void killed(){
tile.kill();
}
@Replace
public void damage(float v, boolean b){
tile.damage(v, b);
}
@Replace
public boolean dead(){
return tile == null || tile.dead();
}
@Replace
public boolean isValid(){
return tile != null && tile.isValid();
}
@Replace
public void team(Team team){
if(tile != null && this.team != team){
this.team = team;
if(tile.team() != team){
tile.team(team);
}
}
}
}