Bugfixes / Direct payload support
This commit is contained in:
@@ -18,10 +18,17 @@ abstract class BlockUnitComp implements Unitc{
|
||||
//sets up block stats
|
||||
maxHealth(tile.block().health);
|
||||
health(tile.health());
|
||||
hitSize(tile.block().size * tilesize);
|
||||
hitSize(tile.block().size * tilesize * 0.7f);
|
||||
set(tile);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void update(){
|
||||
if(tile != null){
|
||||
team = tile.team();
|
||||
}
|
||||
}
|
||||
|
||||
@Replace
|
||||
public void kill(){
|
||||
tile.kill();
|
||||
|
||||
@@ -50,6 +50,15 @@ abstract class PayloadComp implements Posc, Rotc{
|
||||
}
|
||||
|
||||
boolean tryDropPayload(Payload payload){
|
||||
Tile on = tileOn();
|
||||
|
||||
//drop off payload on an acceptor if possible
|
||||
if(on != null && on.entity != null && on.entity.acceptPayload(on.entity, payload)){
|
||||
Fx.unitDrop.at(on.entity);
|
||||
on.entity.handlePayload(on.entity, payload);
|
||||
return true;
|
||||
}
|
||||
|
||||
if(payload instanceof BlockPayload){
|
||||
return dropBlock((BlockPayload)payload);
|
||||
}else if(payload instanceof UnitPayload){
|
||||
|
||||
Reference in New Issue
Block a user