6
6
import dev .architectury .event .EventResult ;
7
7
import dev .architectury .event .events .common .*;
8
8
import dev .architectury .hooks .level .entity .PlayerHooks ;
9
+ import dev .architectury .networking .NetworkManager ;
9
10
import dev .architectury .registry .registries .Registrar ;
10
11
import dev .architectury .registry .registries .RegistrarManager ;
11
12
import dev .architectury .utils .Env ;
18
19
import dev .ftb .mods .ftbchunks .client .FTBChunksClient ;
19
20
import dev .ftb .mods .ftbchunks .data .*;
20
21
import dev .ftb .mods .ftbchunks .net .*;
22
+ import dev .ftb .mods .ftbchunks .data .ChunkSyncInfo ;
21
23
import dev .ftb .mods .ftblibrary .integration .stages .StageHelper ;
22
24
import dev .ftb .mods .ftblibrary .math .ChunkDimPos ;
23
25
import dev .ftb .mods .ftblibrary .math .MathUtils ;
@@ -181,7 +183,7 @@ private void serverLevelLoad(ServerLevel level) {
181
183
if (ClaimedChunkManagerImpl .getInstance () != null ) {
182
184
ClaimedChunkManagerImpl .getInstance ().initForceLoadedChunks (level );
183
185
} else {
184
- FTBChunks .LOGGER .warn ("Level " + level . dimension (). location () + " loaded before FTB Chunks manager was initialized! Unable to force-load chunks" );
186
+ FTBChunks .LOGGER .warn ("Level {} loaded before FTB Chunks manager was initialized! Unable to force-load chunks" , level . dimension (). location () );
185
187
}
186
188
}
187
189
@@ -205,24 +207,24 @@ private void loggedIn(PlayerLoggedInAfterTeamEvent event) {
205
207
SNBTCompoundTag config = new SNBTCompoundTag ();
206
208
FTBChunksWorldConfig .CONFIG .write (config );
207
209
UUID managerId = FTBTeamsAPI .api ().getManager ().getId ();
208
- new LoginDataPacket (managerId , config ). sendTo ( player );
210
+ NetworkManager . sendToPlayer ( player , new LoginDataPacket (managerId , config ));
209
211
SendGeneralDataPacket .send (data , player );
210
212
FTBChunks .LOGGER .debug ("server config and team data sent to {}" , playerId );
211
213
212
214
long now = System .currentTimeMillis ();
213
- Map <Pair <ResourceKey <Level >, UUID >, List <SendChunkPacket . SingleChunk >> chunksToSend = new HashMap <>();
215
+ Map <Pair <ResourceKey <Level >, UUID >, List <ChunkSyncInfo >> chunksToSend = new HashMap <>();
214
216
215
217
for (ClaimedChunkImpl chunk : ClaimedChunkManagerImpl .getInstance ().getAllClaimedChunks ()) {
216
218
chunksToSend .computeIfAbsent (Pair .of (chunk .getPos ().dimension (), chunk .getTeamData ().getTeamId ()), s -> new ArrayList <>())
217
- .add (new SendChunkPacket . SingleChunk (now , chunk .getPos ().x (), chunk .getPos ().z (), chunk ));
219
+ .add (ChunkSyncInfo . create (now , chunk .getPos ().x (), chunk .getPos ().z (), chunk ));
218
220
}
219
221
220
222
chunksToSend .forEach ((dimensionAndId , chunkPackets ) -> {
221
223
FTBTeamsAPI .api ().getManager ().getTeamByID (dimensionAndId .getRight ()).ifPresent (team -> {
222
224
ChunkTeamDataImpl teamData = ClaimedChunkManagerImpl .getInstance ().getOrCreateData (team );
223
225
if (teamData .canPlayerUse (player , FTBChunksProperties .CLAIM_VISIBILITY )) {
224
226
SendManyChunksPacket packet = new SendManyChunksPacket (dimensionAndId .getLeft (), dimensionAndId .getRight (), chunkPackets );
225
- packet . sendTo (player );
227
+ NetworkManager . sendToPlayer (player , packet );
226
228
}
227
229
});
228
230
});
@@ -414,7 +416,7 @@ private void playerCloned(ServerPlayer oldPlayer, ServerPlayer newPlayer, boolea
414
416
if (!wonGame ) {
415
417
newPlayer .getLastDeathLocation ().ifPresent (loc -> {
416
418
int num = newPlayer .getStats ().getValue (Stats .CUSTOM .get (Stats .DEATHS ));
417
- new PlayerDeathPacket (loc , num ). sendTo ( newPlayer );
419
+ NetworkManager . sendToPlayer ( newPlayer , new PlayerDeathPacket (loc , num ));
418
420
});
419
421
}
420
422
}
@@ -425,7 +427,8 @@ private void playerChangedDimension(ServerPlayer serverPlayer, ResourceKey<Level
425
427
StageHelper .INSTANCE .getProvider ().sync (serverPlayer );
426
428
}
427
429
428
- private void teamConfig (TeamCollectPropertiesEvent event ) {
430
+ @ SuppressWarnings ("UnreachableCode" )
431
+ private void teamConfig (TeamCollectPropertiesEvent event ) {
429
432
event .add (FTBChunksProperties .ALLOW_EXPLOSIONS );
430
433
event .add (FTBChunksProperties .ALLOW_MOB_GRIEFING );
431
434
event .add (FTBChunksProperties .ALLOW_ALL_FAKE_PLAYERS );
@@ -484,7 +487,8 @@ private void playerLeftParty(PlayerLeftPartyTeamEvent event) {
484
487
});
485
488
}
486
489
487
- private void transferClaims (ChunkTeamDataImpl transferFrom , ChunkTeamDataImpl transferTo , Collection <ClaimedChunkImpl > chunksToTransfer ) {
490
+ @ SuppressWarnings ("UnreachableCode" )
491
+ private void transferClaims (ChunkTeamDataImpl transferFrom , ChunkTeamDataImpl transferTo , Collection <ClaimedChunkImpl > chunksToTransfer ) {
488
492
CommandSourceStack sourceStack = ClaimedChunkManagerImpl .getInstance ().getMinecraftServer ().createCommandSourceStack ();
489
493
490
494
String fromName = transferFrom .getTeam ().getShortName ();
@@ -495,8 +499,8 @@ private void transferClaims(ChunkTeamDataImpl transferFrom, ChunkTeamDataImpl tr
495
499
496
500
int nChunks = transferTo .getClaimedChunks ().size ();
497
501
498
- Map <ResourceKey <Level >, List <SendChunkPacket . SingleChunk >> chunksToSend = new HashMap <>();
499
- Map <ResourceKey <Level >, List <SendChunkPacket . SingleChunk >> chunksToUnclaim = new HashMap <>();
502
+ Map <ResourceKey <Level >, List <ChunkSyncInfo >> chunksToSend = new HashMap <>();
503
+ Map <ResourceKey <Level >, List <ChunkSyncInfo >> chunksToUnclaim = new HashMap <>();
500
504
int transferred = 0 ;
501
505
int unclaimed = 0 ;
502
506
long now = System .currentTimeMillis ();
@@ -508,11 +512,11 @@ private void transferClaims(ChunkTeamDataImpl transferFrom, ChunkTeamDataImpl tr
508
512
ChunkDimPos cdp = chunk .getPos ();
509
513
if (total >= transferTo .getMaxClaimChunks ()) {
510
514
chunk .unclaim (sourceStack , false );
511
- chunksToUnclaim .computeIfAbsent (cdp .dimension (), s -> new ArrayList <>()).add (new SendChunkPacket . SingleChunk (now , cdp .x (), cdp .z (), null ));
515
+ chunksToUnclaim .computeIfAbsent (cdp .dimension (), s -> new ArrayList <>()).add (ChunkSyncInfo . create (now , cdp .x (), cdp .z (), null ));
512
516
unclaimed ++;
513
517
} else {
514
518
chunk .setTeamData (transferTo );
515
- chunksToSend .computeIfAbsent (cdp .dimension (), s -> new ArrayList <>()).add (new SendChunkPacket . SingleChunk (now , cdp .x (), cdp .z (), chunk ));
519
+ chunksToSend .computeIfAbsent (cdp .dimension (), s -> new ArrayList <>()).add (ChunkSyncInfo . create (now , cdp .x (), cdp .z (), chunk ));
516
520
transferred ++;
517
521
}
518
522
@@ -536,13 +540,14 @@ private void transferClaims(ChunkTeamDataImpl transferFrom, ChunkTeamDataImpl tr
536
540
if (transferred > 0 || unclaimed > 0 ) {
537
541
chunksToSend .forEach ((dimension , chunkPackets ) -> {
538
542
if (!chunkPackets .isEmpty ()) {
539
- ChunkSendingUtils .sendManyChunksToAll (sourceStack .getServer (), transferTo , new SendManyChunksPacket (dimension , transferTo .getTeamId (), chunkPackets ));
543
+ new SendManyChunksPacket (dimension , transferTo .getTeamId (), chunkPackets )
544
+ .sendToAll (sourceStack .getServer (), transferTo );
540
545
}
541
546
});
542
547
543
548
chunksToUnclaim .forEach ((dimension , chunkPackets ) -> {
544
549
if (!chunkPackets .isEmpty ()) {
545
- new SendManyChunksPacket (dimension , Util .NIL_UUID , chunkPackets ). sendToAll ( sourceStack . getServer ( ));
550
+ NetworkManager . sendToPlayers ( sourceStack . getServer (). getPlayerList (). getPlayers (), new SendManyChunksPacket (dimension , Util .NIL_UUID , chunkPackets ));
546
551
}
547
552
});
548
553
}
0 commit comments