This commit is contained in:
Anuken
2026-04-25 16:08:27 -04:00
parent 24d04ddebf
commit 8c81bdbe50
4 changed files with 16 additions and 3 deletions
+11
View File
@@ -651,6 +651,17 @@ public class NetServer implements ApplicationListener{
return Float.isInfinite(f) || Float.isNaN(f);
}
public static void syncBuilding(Building build){
if(build == null) return;
netServer.syncStream.reset();
netServer.dataStreamWrites.i(build.pos());
netServer.dataStreamWrites.s(build.block.id);
build.writeSync(netServer.dataStreamWrites);
Call.blockSnapshot((short)1, netServer.syncStream.toByteArray());
netServer.syncStream.reset();
}
@Remote(targets = Loc.client, priority = PacketPriority.low, unreliable = true)
public static void requestBlockSnapshot(Player player, int pos){
Building build = world.build(pos);
+2 -2
View File
@@ -732,7 +732,7 @@ public abstract class InputHandler implements InputProcessor, GestureListener{
Events.fire(new TapEvent(player, tile));
}
@Remote(targets = Loc.both, called = Loc.server, forward = true)
@Remote(targets = Loc.both, called = Loc.server)
public static void buildingControlSelect(Player player, Building build){
if(player == null || build == null || player.dead()) return;
@@ -744,7 +744,7 @@ public abstract class InputHandler implements InputProcessor, GestureListener{
if(player.team() == build.team && build.canControlSelect(player.unit())){
var before = player.unit();
build.onControlSelect(player.unit());
Call.unitBuildingControlSelect(player.unit(), build);
if(!before.dead && before.spawnedByCore && !before.isPlayer()){
Call.unitDespawn(before);
@@ -35,7 +35,7 @@ public class NoiseFilter extends GenerateFilter{
if(noise > threshold && (target == Blocks.air || in.floor == target || in.block == target)){
if(floor != Blocks.air) in.floor = floor;
if(block != Blocks.air && in.block != Blocks.air && !in.block.breakable) in.block = block;
if(block != Blocks.air && in.block != Blocks.air && !in.block.synthetic()) in.block = block;
}
}
}
@@ -7,6 +7,7 @@ import arc.math.geom.*;
import arc.util.*;
import arc.util.io.*;
import mindustry.annotations.Annotations.*;
import mindustry.core.*;
import mindustry.ctype.Content;
import mindustry.entities.*;
import mindustry.gen.*;
@@ -176,6 +177,7 @@ public class PayloadConveyor extends Block{
if(item.dump()){
item = null;
moved();
NetServer.syncBuilding(this);
}
}
}