Batched building health update packet
This commit is contained in:
@@ -306,24 +306,26 @@ public class BlockIndexer{
|
||||
return breturnArray;
|
||||
}
|
||||
|
||||
public void notifyBuildHealed(Building build){
|
||||
if(build.wasDamaged && !build.damaged() && damagedTiles[build.team.id] != null){
|
||||
damagedTiles[build.team.id].remove(build);
|
||||
build.wasDamaged = false;
|
||||
public void notifyHealthChanged(Building build){
|
||||
boolean damaged = build.damaged();
|
||||
|
||||
if(build.wasDamaged != damaged){
|
||||
if(damagedTiles[build.team.id] == null){
|
||||
damagedTiles[build.team.id] = new Seq<>(false);
|
||||
}
|
||||
|
||||
if(damaged){
|
||||
//is now damaged, add to array
|
||||
damagedTiles[build.team.id].add(build);
|
||||
}else{
|
||||
//no longer damaged, remove
|
||||
damagedTiles[build.team.id].remove(build);
|
||||
}
|
||||
|
||||
build.wasDamaged = damaged;
|
||||
}
|
||||
}
|
||||
|
||||
public void notifyBuildDamaged(Building build){
|
||||
if(build.wasDamaged || !build.damaged()) return;
|
||||
|
||||
if(damagedTiles[build.team.id] == null){
|
||||
damagedTiles[build.team.id] = new Seq<>(false);
|
||||
}
|
||||
|
||||
damagedTiles[build.team.id].add(build);
|
||||
build.wasDamaged = true;
|
||||
}
|
||||
|
||||
public void allBuildings(float x, float y, float range, Cons<Building> cons){
|
||||
breturnArray.clear();
|
||||
for(int i = 0; i < activeTeams.size; i++){
|
||||
@@ -473,7 +475,7 @@ public class BlockIndexer{
|
||||
data.turretTree.insert(tile.build);
|
||||
}
|
||||
|
||||
notifyBuildDamaged(tile.build);
|
||||
notifyHealthChanged(tile.build);
|
||||
}
|
||||
|
||||
if(blocksPresent != null){
|
||||
|
||||
Reference in New Issue
Block a user