mirror of
https://github.com/AtlasMediaGroup/Scissors.git
synced 2024-11-18 03:06:11 +00:00
33 lines
2.2 KiB
Diff
33 lines
2.2 KiB
Diff
|
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||
|
From: Video <videogamesm12@gmail.com>
|
||
|
Date: Sun, 13 Mar 2022 21:56:29 -0600
|
||
|
Subject: [PATCH] Validate BlockState and SoundEvent values
|
||
|
|
||
|
|
||
|
diff --git a/src/main/java/net/minecraft/nbt/NbtUtils.java b/src/main/java/net/minecraft/nbt/NbtUtils.java
|
||
|
index 5dda064813a0eb00438a7df909d51a4b2d48942e..29b8519a1dd954f004bf04145e7246e3d2592b77 100644
|
||
|
--- a/src/main/java/net/minecraft/nbt/NbtUtils.java
|
||
|
+++ b/src/main/java/net/minecraft/nbt/NbtUtils.java
|
||
|
@@ -229,7 +229,7 @@ public final class NbtUtils {
|
||
|
if (!nbt.contains("Name", 8)) {
|
||
|
return Blocks.AIR.defaultBlockState();
|
||
|
} else {
|
||
|
- Block block = Registry.BLOCK.get(new ResourceLocation(nbt.getString("Name")));
|
||
|
+ Block block = Registry.BLOCK.get(ResourceLocation.tryParse(nbt.getString("Name"))); // Scissors - Validate BlockState
|
||
|
BlockState blockState = block.defaultBlockState();
|
||
|
if (nbt.contains("Properties", 10)) {
|
||
|
CompoundTag compoundTag = nbt.getCompound("Properties");
|
||
|
diff --git a/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java b/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java
|
||
|
index bc01e5014e1355a225bdf5c47f2965290b45e2d2..8eba392e567afb069ae11b8e94ff72f0aa148ee9 100644
|
||
|
--- a/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java
|
||
|
+++ b/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java
|
||
|
@@ -551,7 +551,7 @@ public abstract class AbstractArrow extends Projectile {
|
||
|
this.setCritArrow(nbt.getBoolean("crit"));
|
||
|
this.setPierceLevel(nbt.getByte("PierceLevel"));
|
||
|
if (nbt.contains("SoundEvent", 8)) {
|
||
|
- this.soundEvent = (SoundEvent) Registry.SOUND_EVENT.getOptional(new ResourceLocation(nbt.getString("SoundEvent"))).orElse(this.getDefaultHitGroundSoundEvent());
|
||
|
+ this.soundEvent = (SoundEvent) Registry.SOUND_EVENT.getOptional(ResourceLocation.tryParse(nbt.getString("SoundEvent"))).orElse(this.getDefaultHitGroundSoundEvent()); // Scissors - Validate SoundEvents before trying to play them
|
||
|
}
|
||
|
|
||
|
this.setShotFromCrossbow(nbt.getBoolean("ShotFromCrossbow"));
|