210 lines
13 KiB
Diff
210 lines
13 KiB
Diff
--- a/net/minecraft/world/level/GameRules.java
|
|
+++ b/net/minecraft/world/level/GameRules.java
|
|
@@ -60,7 +60,7 @@
|
|
public static final GameRules.GameRuleKey<GameRules.GameRuleBoolean> RULE_REDUCEDDEBUGINFO = register("reducedDebugInfo", GameRules.GameRuleCategory.MISC, GameRules.GameRuleBoolean.create(false, (minecraftserver, gamerules_gameruleboolean) -> {
|
|
byte b0 = (byte) (gamerules_gameruleboolean.get() ? 22 : 23);
|
|
|
|
- for (EntityPlayer entityplayer : minecraftserver.getPlayerList().getPlayers()) {
|
|
+ for (EntityPlayer entityplayer : minecraftserver.players()) { // CraftBukkit - per-world
|
|
entityplayer.connection.send(new PacketPlayOutEntityStatus(entityplayer, b0));
|
|
}
|
|
|
|
@@ -72,7 +72,7 @@
|
|
public static final GameRules.GameRuleKey<GameRules.GameRuleInt> RULE_MAX_ENTITY_CRAMMING = register("maxEntityCramming", GameRules.GameRuleCategory.MOBS, GameRules.GameRuleInt.create(24));
|
|
public static final GameRules.GameRuleKey<GameRules.GameRuleBoolean> RULE_WEATHER_CYCLE = register("doWeatherCycle", GameRules.GameRuleCategory.UPDATES, GameRules.GameRuleBoolean.create(true));
|
|
public static final GameRules.GameRuleKey<GameRules.GameRuleBoolean> RULE_LIMITED_CRAFTING = register("doLimitedCrafting", GameRules.GameRuleCategory.PLAYER, GameRules.GameRuleBoolean.create(false, (minecraftserver, gamerules_gameruleboolean) -> {
|
|
- for (EntityPlayer entityplayer : minecraftserver.getPlayerList().getPlayers()) {
|
|
+ for (EntityPlayer entityplayer : minecraftserver.players()) { // CraftBukkit - per-world
|
|
entityplayer.connection.send(new PacketPlayOutGameStateChange(PacketPlayOutGameStateChange.LIMITED_CRAFTING, gamerules_gameruleboolean.get() ? 1.0F : 0.0F));
|
|
}
|
|
|
|
@@ -84,7 +84,7 @@
|
|
public static final GameRules.GameRuleKey<GameRules.GameRuleBoolean> RULE_DISABLE_RAIDS = register("disableRaids", GameRules.GameRuleCategory.MOBS, GameRules.GameRuleBoolean.create(false));
|
|
public static final GameRules.GameRuleKey<GameRules.GameRuleBoolean> RULE_DOINSOMNIA = register("doInsomnia", GameRules.GameRuleCategory.SPAWNING, GameRules.GameRuleBoolean.create(true));
|
|
public static final GameRules.GameRuleKey<GameRules.GameRuleBoolean> RULE_DO_IMMEDIATE_RESPAWN = register("doImmediateRespawn", GameRules.GameRuleCategory.PLAYER, GameRules.GameRuleBoolean.create(false, (minecraftserver, gamerules_gameruleboolean) -> {
|
|
- for (EntityPlayer entityplayer : minecraftserver.getPlayerList().getPlayers()) {
|
|
+ for (EntityPlayer entityplayer : minecraftserver.players()) { // CraftBukkit - per-world
|
|
entityplayer.connection.send(new PacketPlayOutGameStateChange(PacketPlayOutGameStateChange.IMMEDIATE_RESPAWN, gamerules_gameruleboolean.get() ? 1.0F : 0.0F));
|
|
}
|
|
|
|
@@ -113,7 +113,7 @@
|
|
public static final GameRules.GameRuleKey<GameRules.GameRuleInt> RULE_MINECART_MAX_SPEED = register("minecartMaxSpeed", GameRules.GameRuleCategory.MISC, GameRules.GameRuleInt.create(8, 1, 1000, FeatureFlagSet.of(FeatureFlags.MINECART_IMPROVEMENTS), (minecraftserver, gamerules_gameruleint) -> {
|
|
}));
|
|
public static final GameRules.GameRuleKey<GameRules.GameRuleInt> RULE_SPAWN_CHUNK_RADIUS = register("spawnChunkRadius", GameRules.GameRuleCategory.MISC, GameRules.GameRuleInt.create(2, 0, 32, FeatureFlagSet.of(), (minecraftserver, gamerules_gameruleint) -> {
|
|
- WorldServer worldserver = minecraftserver.overworld();
|
|
+ WorldServer worldserver = minecraftserver; // CraftBukkit - per-world
|
|
|
|
worldserver.setDefaultSpawnPos(worldserver.getSharedSpawnPos(), worldserver.getSharedSpawnAngle());
|
|
}));
|
|
@@ -127,12 +127,12 @@
|
|
|
|
public static <T extends GameRules.GameRuleValue<T>> Codec<GameRules.GameRuleKey<T>> keyCodec(Class<T> oclass) {
|
|
return Codec.STRING.comapFlatMap((s) -> {
|
|
- return (DataResult) GameRules.GAME_RULE_TYPES.entrySet().stream().filter((entry) -> {
|
|
+ return GameRules.GAME_RULE_TYPES.entrySet().stream().filter((entry) -> { // CraftBukkit - decompile error
|
|
return ((GameRules.GameRuleDefinition) entry.getValue()).valueClass == oclass;
|
|
}).map(Entry::getKey).filter((gamerules_gamerulekey) -> {
|
|
return gamerules_gamerulekey.getId().equals(s);
|
|
}).map((gamerules_gamerulekey) -> {
|
|
- return gamerules_gamerulekey;
|
|
+ return (GameRules.GameRuleKey<T>) gamerules_gamerulekey; // CraftBukkit - decompile error
|
|
}).findFirst().map(DataResult::success).orElseGet(() -> {
|
|
return DataResult.error(() -> {
|
|
return "Invalid game rule ID for type: " + s;
|
|
@@ -195,7 +195,7 @@
|
|
|
|
private void loadFromTag(DynamicLike<?> dynamiclike) {
|
|
this.rules.forEach((gamerules_gamerulekey, gamerules_gamerulevalue) -> {
|
|
- DataResult dataresult = dynamiclike.get(gamerules_gamerulekey.id).asString();
|
|
+ DataResult<String> dataresult = dynamiclike.get(gamerules_gamerulekey.id).asString(); // CraftBukkit - decompile error
|
|
|
|
Objects.requireNonNull(gamerules_gamerulevalue);
|
|
dataresult.ifSuccess(gamerules_gamerulevalue::deserialize);
|
|
@@ -216,19 +216,19 @@
|
|
|
|
private <T extends GameRules.GameRuleValue<T>> void callVisitorCap(GameRules.GameRuleVisitor gamerules_gamerulevisitor, GameRules.GameRuleKey<?> gamerules_gamerulekey, GameRules.GameRuleDefinition<?> gamerules_gameruledefinition) {
|
|
if (gamerules_gameruledefinition.requiredFeatures.isSubsetOf(this.enabledFeatures)) {
|
|
- gamerules_gamerulevisitor.visit(gamerules_gamerulekey, gamerules_gameruledefinition);
|
|
- gamerules_gameruledefinition.callVisitor(gamerules_gamerulevisitor, gamerules_gamerulekey);
|
|
+ gamerules_gamerulevisitor.visit((GameRules.GameRuleKey<T>) gamerules_gamerulekey, (GameRules.GameRuleDefinition<T>) gamerules_gameruledefinition); // CraftBukkit - decompile error
|
|
+ ((GameRules.GameRuleDefinition<T>) gamerules_gameruledefinition).callVisitor(gamerules_gamerulevisitor, (GameRules.GameRuleKey<T>) gamerules_gamerulekey); // CraftBukkit - decompile error
|
|
}
|
|
|
|
}
|
|
|
|
- public void assignFrom(GameRules gamerules, @Nullable MinecraftServer minecraftserver) {
|
|
+ public void assignFrom(GameRules gamerules, @Nullable WorldServer minecraftserver) { // CraftBukkit - per-world
|
|
gamerules.rules.keySet().forEach((gamerules_gamerulekey) -> {
|
|
this.assignCap(gamerules_gamerulekey, gamerules, minecraftserver);
|
|
});
|
|
}
|
|
|
|
- private <T extends GameRules.GameRuleValue<T>> void assignCap(GameRules.GameRuleKey<T> gamerules_gamerulekey, GameRules gamerules, @Nullable MinecraftServer minecraftserver) {
|
|
+ private <T extends GameRules.GameRuleValue<T>> void assignCap(GameRules.GameRuleKey<T> gamerules_gamerulekey, GameRules gamerules, @Nullable WorldServer minecraftserver) { // CraftBukkit - per-world
|
|
T t0 = gamerules.getRule(gamerules_gamerulekey);
|
|
|
|
this.getRule(gamerules_gamerulekey).setFrom(t0, minecraftserver);
|
|
@@ -305,12 +305,12 @@
|
|
|
|
final Supplier<ArgumentType<?>> argument;
|
|
private final Function<GameRules.GameRuleDefinition<T>, T> constructor;
|
|
- final BiConsumer<MinecraftServer, T> callback;
|
|
+ final BiConsumer<WorldServer, T> callback; // CraftBukkit - per-world
|
|
private final GameRules.h<T> visitorCaller;
|
|
final Class<T> valueClass;
|
|
final FeatureFlagSet requiredFeatures;
|
|
|
|
- GameRuleDefinition(Supplier<ArgumentType<?>> supplier, Function<GameRules.GameRuleDefinition<T>, T> function, BiConsumer<MinecraftServer, T> biconsumer, GameRules.h<T> gamerules_h, Class<T> oclass, FeatureFlagSet featureflagset) {
|
|
+ GameRuleDefinition(Supplier<ArgumentType<?>> supplier, Function<GameRules.GameRuleDefinition<T>, T> function, BiConsumer<WorldServer, T> biconsumer, GameRules.h<T> gamerules_h, Class<T> oclass, FeatureFlagSet featureflagset) { // CraftBukkit - per-world
|
|
this.argument = supplier;
|
|
this.constructor = function;
|
|
this.callback = biconsumer;
|
|
@@ -348,17 +348,17 @@
|
|
|
|
public void setFromArgument(CommandContext<CommandListenerWrapper> commandcontext, String s) {
|
|
this.updateFromArgument(commandcontext, s);
|
|
- this.onChanged(((CommandListenerWrapper) commandcontext.getSource()).getServer());
|
|
+ this.onChanged(((CommandListenerWrapper) commandcontext.getSource()).getLevel()); // CraftBukkit - per-world
|
|
}
|
|
|
|
- public void onChanged(@Nullable MinecraftServer minecraftserver) {
|
|
+ public void onChanged(@Nullable WorldServer minecraftserver) { // CraftBukkit - per-world
|
|
if (minecraftserver != null) {
|
|
this.type.callback.accept(minecraftserver, this.getSelf());
|
|
}
|
|
|
|
}
|
|
|
|
- protected abstract void deserialize(String s);
|
|
+ public abstract void deserialize(String s); // PAIL - private->public
|
|
|
|
public abstract String serialize();
|
|
|
|
@@ -372,20 +372,20 @@
|
|
|
|
protected abstract T copy();
|
|
|
|
- public abstract void setFrom(T t0, @Nullable MinecraftServer minecraftserver);
|
|
+ public abstract void setFrom(T t0, @Nullable WorldServer minecraftserver); // CraftBukkit - per-world
|
|
}
|
|
|
|
public static class GameRuleInt extends GameRules.GameRuleValue<GameRules.GameRuleInt> {
|
|
|
|
private int value;
|
|
|
|
- private static GameRules.GameRuleDefinition<GameRules.GameRuleInt> create(int i, BiConsumer<MinecraftServer, GameRules.GameRuleInt> biconsumer) {
|
|
+ private static GameRules.GameRuleDefinition<GameRules.GameRuleInt> create(int i, BiConsumer<WorldServer, GameRules.GameRuleInt> biconsumer) { // CraftBukkit - per-world
|
|
return new GameRules.GameRuleDefinition<GameRules.GameRuleInt>(IntegerArgumentType::integer, (gamerules_gameruledefinition) -> {
|
|
return new GameRules.GameRuleInt(gamerules_gameruledefinition, i);
|
|
}, biconsumer, GameRules.GameRuleVisitor::visitInteger, GameRules.GameRuleInt.class, FeatureFlagSet.of());
|
|
}
|
|
|
|
- static GameRules.GameRuleDefinition<GameRules.GameRuleInt> create(int i, int j, int k, FeatureFlagSet featureflagset, BiConsumer<MinecraftServer, GameRules.GameRuleInt> biconsumer) {
|
|
+ static GameRules.GameRuleDefinition<GameRules.GameRuleInt> create(int i, int j, int k, FeatureFlagSet featureflagset, BiConsumer<WorldServer, GameRules.GameRuleInt> biconsumer) { // CraftBukkit - per-world
|
|
return new GameRules.GameRuleDefinition<GameRules.GameRuleInt>(() -> {
|
|
return IntegerArgumentType.integer(j, k);
|
|
}, (gamerules_gameruledefinition) -> {
|
|
@@ -412,7 +412,7 @@
|
|
return this.value;
|
|
}
|
|
|
|
- public void set(int i, @Nullable MinecraftServer minecraftserver) {
|
|
+ public void set(int i, @Nullable WorldServer minecraftserver) { // CraftBukkit - per-world
|
|
this.value = i;
|
|
this.onChanged(minecraftserver);
|
|
}
|
|
@@ -423,7 +423,7 @@
|
|
}
|
|
|
|
@Override
|
|
- protected void deserialize(String s) {
|
|
+ public void deserialize(String s) { // PAIL - protected->public
|
|
this.value = safeParse(s);
|
|
}
|
|
|
|
@@ -465,7 +465,7 @@
|
|
return new GameRules.GameRuleInt(this.type, this.value);
|
|
}
|
|
|
|
- public void setFrom(GameRules.GameRuleInt gamerules_gameruleint, @Nullable MinecraftServer minecraftserver) {
|
|
+ public void setFrom(GameRules.GameRuleInt gamerules_gameruleint, @Nullable WorldServer minecraftserver) { // CraftBukkit - per-world
|
|
this.value = gamerules_gameruleint.value;
|
|
this.onChanged(minecraftserver);
|
|
}
|
|
@@ -475,7 +475,7 @@
|
|
|
|
private boolean value;
|
|
|
|
- static GameRules.GameRuleDefinition<GameRules.GameRuleBoolean> create(boolean flag, BiConsumer<MinecraftServer, GameRules.GameRuleBoolean> biconsumer) {
|
|
+ static GameRules.GameRuleDefinition<GameRules.GameRuleBoolean> create(boolean flag, BiConsumer<WorldServer, GameRules.GameRuleBoolean> biconsumer) { // CraftBukkit - per-world
|
|
return new GameRules.GameRuleDefinition<GameRules.GameRuleBoolean>(BoolArgumentType::bool, (gamerules_gameruledefinition) -> {
|
|
return new GameRules.GameRuleBoolean(gamerules_gameruledefinition, flag);
|
|
}, biconsumer, GameRules.GameRuleVisitor::visitBoolean, GameRules.GameRuleBoolean.class, FeatureFlagSet.of());
|
|
@@ -500,7 +500,7 @@
|
|
return this.value;
|
|
}
|
|
|
|
- public void set(boolean flag, @Nullable MinecraftServer minecraftserver) {
|
|
+ public void set(boolean flag, @Nullable WorldServer minecraftserver) { // CraftBukkit - per-world
|
|
this.value = flag;
|
|
this.onChanged(minecraftserver);
|
|
}
|
|
@@ -511,7 +511,7 @@
|
|
}
|
|
|
|
@Override
|
|
- protected void deserialize(String s) {
|
|
+ public void deserialize(String s) { // PAIL - protected->public
|
|
this.value = Boolean.parseBoolean(s);
|
|
}
|
|
|
|
@@ -530,7 +530,7 @@
|
|
return new GameRules.GameRuleBoolean(this.type, this.value);
|
|
}
|
|
|
|
- public void setFrom(GameRules.GameRuleBoolean gamerules_gameruleboolean, @Nullable MinecraftServer minecraftserver) {
|
|
+ public void setFrom(GameRules.GameRuleBoolean gamerules_gameruleboolean, @Nullable WorldServer minecraftserver) { // CraftBukkit - per-world
|
|
this.value = gamerules_gameruleboolean.value;
|
|
this.onChanged(minecraftserver);
|
|
}
|