Skip to content

Commit

Permalink
Configurable block blast resistance
Browse files Browse the repository at this point in the history
  • Loading branch information
MelnCat authored and granny committed Jan 14, 2025
1 parent e13b74d commit 81194a0
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 43 deletions.
1 change: 1 addition & 0 deletions build-data/purpur.at
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,4 @@ public net.minecraft.world.entity.monster.Shulker MAX_SCALE
public net.minecraft.world.entity.player.Player canGlide()Z
public net.minecraft.world.level.block.entity.FuelValues values
public-f net.minecraft.world.entity.EntityType dimensions
public-f net.minecraft.world.level.block.state.BlockBehaviour explosionResistance
43 changes: 0 additions & 43 deletions patches/server/0256-Configurable-block-blast-resistance.patch

This file was deleted.

18 changes: 18 additions & 0 deletions purpur-server/src/main/java/org/purpurmc/purpur/PurpurConfig.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,19 +3,22 @@
import com.google.common.base.Throwables;
import com.google.common.collect.ImmutableMap;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashSet;
import java.util.Set;
import java.util.regex.Pattern;
import net.kyori.adventure.bossbar.BossBar;
import net.kyori.adventure.text.minimessage.MiniMessage;
import net.minecraft.core.Registry;
import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.core.registries.Registries;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.server.MinecraftServer;
import net.minecraft.world.entity.EntityDimensions;
import net.minecraft.world.entity.EntityType;
import net.minecraft.world.item.enchantment.Enchantment;
import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.block.Blocks;
import net.minecraft.world.level.block.state.BlockBehaviour;
import org.bukkit.Bukkit;
import org.bukkit.command.Command;
Expand Down Expand Up @@ -491,4 +494,19 @@ private static void usernameValidationSettings() {
String setPattern = getString("settings.username-valid-characters", defaultPattern);
usernameValidCharactersPattern = Pattern.compile(setPattern == null || setPattern.isBlank() ? defaultPattern : setPattern);
}

private static void blastResistanceSettings() {
getMap("settings.blast-resistance-overrides", Collections.emptyMap()).forEach((blockId, value) -> {
Block block = BuiltInRegistries.BLOCK.getValue(ResourceLocation.parse(blockId));
if (block == Blocks.AIR) {
log(Level.SEVERE, "Invalid block for `settings.blast-resistance-overrides`: " + blockId);
return;
}
if (!(value instanceof Number blastResistance)) {
log(Level.SEVERE, "Invalid blast resistance for `settings.blast-resistance-overrides." + blockId + "`: " + value);
return;
}
block.explosionResistance = blastResistance.floatValue();
});
}
}

0 comments on commit 81194a0

Please sign in to comment.