9
0
mirror of https://github.com/LeavesMC/Leaves.git synced 2026-01-06 15:51:33 +00:00

Stick can change ArmorStand arm status

This commit is contained in:
violetc
2022-06-25 19:56:18 +08:00
parent fa64d2528d
commit 55d5a646bb
2 changed files with 43 additions and 2 deletions

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Spectator dont get Advancement
diff --git a/src/main/java/net/minecraft/server/PlayerAdvancements.java b/src/main/java/net/minecraft/server/PlayerAdvancements.java
index 6de539d8819b9c25fbf96cd2ac8ef4a87c0fb231..d724564d5dcbcf4a46656b2c93129ba5be63b9a7 100644
index 6de539d8819b9c25fbf96cd2ac8ef4a87c0fb231..d8ae25c5c012b18f5b2ca7d5ec92b0965fb2087a 100644
--- a/src/main/java/net/minecraft/server/PlayerAdvancements.java
+++ b/src/main/java/net/minecraft/server/PlayerAdvancements.java
@@ -49,6 +49,7 @@ import net.minecraft.server.level.ServerPlayer;
@@ -16,13 +16,15 @@ index 6de539d8819b9c25fbf96cd2ac8ef4a87c0fb231..d724564d5dcbcf4a46656b2c93129ba5
import org.slf4j.Logger;
import top.leavesmc.leaves.bot.Bot;
@@ -280,6 +281,9 @@ public class PlayerAdvancements {
@@ -280,6 +281,11 @@ public class PlayerAdvancements {
return false;
}
// Leaves end - bot can't get advancement
+ // Leaves start - spectator don't get advancement
+ if (top.leavesmc.leaves.LeavesConfig.spectatorDontGetAdvancement && player.gameMode.getGameModeForPlayer() == GameType.SPECTATOR) {
+ return false;
+ }
+ // Leaves end - spectator don't get advancement
boolean flag = false;
AdvancementProgress advancementprogress = this.getOrStartProgress(advancement);
boolean flag1 = advancementprogress.isDone();

View File

@@ -0,0 +1,39 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: violetc <58360096+s-yh-china@users.noreply.github.com>
Date: Sat, 25 Jun 2022 19:54:23 +0800
Subject: [PATCH] Stick can change ArmorStand arm status
diff --git a/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java b/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java
index 150afceb491cfd254c0f1b84800e6df14cf26676..e108e757a6dab69784324625e9be00afbef6689e 100644
--- a/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java
+++ b/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java
@@ -384,6 +384,12 @@ public class ArmorStand extends LivingEntity {
return InteractionResult.SUCCESS;
}
} else {
+ // Leaves start - stick can change ArmorStand arm status
+ if (top.leavesmc.leaves.LeavesConfig.stickChangeArmorStandArmStatus && itemstack.is(Items.STICK) && player.isShiftKeyDown()) {
+ setShowArms(!isShowArms());
+ }
+ // Leaves end - stick can change ArmorStand arm status
+
if (this.isDisabled(enumitemslot)) {
return InteractionResult.FAIL;
}
diff --git a/src/main/java/top/leavesmc/leaves/LeavesConfig.java b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
index 17f5bc4b4197868bf571c3bb53525dd21e6d0a46..6b5551df69952d57006c2303e5f13224b22c5d95 100644
--- a/src/main/java/top/leavesmc/leaves/LeavesConfig.java
+++ b/src/main/java/top/leavesmc/leaves/LeavesConfig.java
@@ -180,6 +180,11 @@ public final class LeavesConfig {
private static void spectatorDontGetAdvancement() {
spectatorDontGetAdvancement = getBoolean("settings.spectator-dont-get-advancement", spectatorDontGetAdvancement);
}
+
+ public static boolean stickChangeArmorStandArmStatus = true;
+ private static void stickChangeArmorStandHasArm() {
+ stickChangeArmorStandArmStatus = getBoolean("settings.stick-change-armorstand-arm-status", stickChangeArmorStandArmStatus);
+ }
public static final class WorldConfig {