1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
|
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jake Potrebic <jake.m.potrebic@gmail.com>
Date: Fri, 9 Dec 2022 01:34:03 -0800
Subject: [PATCH] fix Instruments
Add missing instrument enums
fix some wrong javadocs
diff --git a/src/main/java/org/bukkit/Instrument.java b/src/main/java/org/bukkit/Instrument.java
index de976be7132d05506fde7a839cac3954b0dd8da4..642feb8b4578e6dbd2bf78d859283d20f877051f 100644
--- a/src/main/java/org/bukkit/Instrument.java
+++ b/src/main/java/org/bukkit/Instrument.java
@@ -7,7 +7,7 @@ import org.jetbrains.annotations.Nullable;
public enum Instrument {
/**
- * Piano is the standard instrument for a note block.
+ * Piano (Harp) is the standard instrument for a note block.
*/
PIANO(0x0),
/**
@@ -21,7 +21,7 @@ public enum Instrument {
*/
SNARE_DRUM(0x2),
/**
- * Sticks are normally played when a note block is on top of a glass
+ * Sticks (Hat) are normally played when a note block is on top of a glass
* block.
*/
STICKS(0x3),
@@ -78,38 +78,36 @@ public enum Instrument {
/**
* Zombie is normally played when a Zombie Head is on top of the note block.
*/
- ZOMBIE,
+ ZOMBIE(0x10), // Paper
/**
* Skeleton is normally played when a Skeleton Head is on top of the note block.
*/
- SKELETON,
+ SKELETON(0x11), // Paper
/**
* Creeper is normally played when a Creeper Head is on top of the note block.
*/
- CREEPER,
+ CREEPER(0x12), // Paper
/**
* Dragon is normally played when a Dragon Head is on top of the note block.
*/
- DRAGON,
+ DRAGON(0x13), // Paper
/**
* Wither Skeleton is normally played when a Wither Skeleton Head is on top of the note block.
*/
- WITHER_SKELETON,
+ WITHER_SKELETON(0x14), // Paper
/**
* Piglin is normally played when a Piglin Head is on top of the note block.
*/
- PIGLIN,
+ PIGLIN(0x15), // Paper
/**
* Custom Sound is normally played when a Player Head with the required data is on top of the note block.
*/
- CUSTOM_HEAD;
+ CUSTOM_HEAD(0x16); // Paper
private final byte type;
private static final Map<Byte, Instrument> BY_DATA = Maps.newHashMap();
- private Instrument() {
- this(-1);
- }
+ // Paper - remove ctor (the server still uses the byte magic value)
private Instrument(final int type) {
this.type = (byte) type;
@@ -117,9 +115,8 @@ public enum Instrument {
/**
* @return The type ID of this instrument.
- * @deprecated Magic value
*/
- @Deprecated
+ @org.jetbrains.annotations.ApiStatus.Internal // Paper
public byte getType() {
return this.type;
}
@@ -129,9 +126,8 @@ public enum Instrument {
*
* @param type The type ID
* @return The instrument
- * @deprecated Magic value
*/
- @Deprecated
+ @org.jetbrains.annotations.ApiStatus.Internal // Paper
@Nullable
public static Instrument getByType(final byte type) {
return BY_DATA.get(type);
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
index 4d1d81ddc7638e958f9cd1b10fd26227efc1578d..fdb0b8b81e53c85c865c4a3a895719f5afbffd17 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -511,9 +511,7 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
public void playNote(@NotNull Location loc, byte instrument, byte note);
/**
- * Play a note for a player at a location. This requires a note block
- * at the particular location (as far as the client is concerned). This
- * will not work without a note block. This will not work with cake.
+ * Play a note for a player at a location.
*
* @param loc The location of a note block
* @param instrument The instrument
diff --git a/src/test/java/org/bukkit/InstrumentTest.java b/src/test/java/org/bukkit/InstrumentTest.java
index 8c1d88885de7d56c1b7c78d2e6e059b0648c982a..b177a47a5bda05bfe3598ec5e6771b92a73f0edf 100644
--- a/src/test/java/org/bukkit/InstrumentTest.java
+++ b/src/test/java/org/bukkit/InstrumentTest.java
@@ -8,9 +8,7 @@ public class InstrumentTest {
@Test
public void getByType() {
for (Instrument instrument : Instrument.values()) {
- if (instrument.getType() < 0) {
- continue;
- }
+ // Paper - byte magic values are still used
assertThat(Instrument.getByType(instrument.getType()), is(instrument));
}
|