fix #29 player claimdata lost on death
This commit is contained in:
parent
6b59f18377
commit
07c3c1a69f
@ -15,6 +15,7 @@ import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
|||||||
|
|
||||||
@Mixin(ServerPlayerEntity.class)
|
@Mixin(ServerPlayerEntity.class)
|
||||||
public abstract class PlayerClaimMixin implements IClaimData {
|
public abstract class PlayerClaimMixin implements IClaimData {
|
||||||
|
|
||||||
@Unique
|
@Unique
|
||||||
private PlayerClaimData claimData;
|
private PlayerClaimData claimData;
|
||||||
|
|
||||||
@ -41,6 +42,11 @@ public abstract class PlayerClaimMixin implements IClaimData {
|
|||||||
this.claimData.tick();
|
this.claimData.tick();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Inject(method = "copyFrom", at = @At("RETURN"))
|
||||||
|
private void copyOld(ServerPlayerEntity oldPlayer, boolean alive, CallbackInfo info) {
|
||||||
|
this.claimData.clone(PlayerClaimData.get(oldPlayer));
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public PlayerClaimData getClaimData() {
|
public PlayerClaimData getClaimData() {
|
||||||
return this.claimData;
|
return this.claimData;
|
||||||
|
@ -213,6 +213,11 @@ public class PlayerClaimData {
|
|||||||
this.actionCooldown--;
|
this.actionCooldown--;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void clone(PlayerClaimData data) {
|
||||||
|
this.claimBlocks = data.claimBlocks;
|
||||||
|
this.additionalClaimBlocks = data.additionalClaimBlocks;
|
||||||
|
}
|
||||||
|
|
||||||
public void save(MinecraftServer server) {
|
public void save(MinecraftServer server) {
|
||||||
Flan.log("Saving player data for player {} with uuid {}", this.player.getName(), this.player.getUuid());
|
Flan.log("Saving player data for player {} with uuid {}", this.player.getName(), this.player.getUuid());
|
||||||
File dir = new File(server.getSavePath(WorldSavePath.PLAYERDATA).toFile(), "/claimData/");
|
File dir = new File(server.getSavePath(WorldSavePath.PLAYERDATA).toFile(), "/claimData/");
|
||||||
|
Loading…
Reference in New Issue
Block a user