48
48
import de .derfrzocker .custom .ore .generator .impl .v1_20_R3 .customdata .AutoApplier_v1_20_R3 ;
49
49
import de .derfrzocker .custom .ore .generator .impl .v1_9_R1 .customdata .AutoApplier_v1_9_R1 ;
50
50
import de .derfrzocker .custom .ore .generator .impl .v_1_9_R2 .customdata .AutoApplier_v1_9_R2 ;
51
- import de .derfrzocker .spigot .utils .Version ;
51
+ import de .derfrzocker .spigot .utils .version .InternalVersion ;
52
+ import de .derfrzocker .spigot .utils .version .ServerVersion ;
53
+ import java .util .HashSet ;
54
+ import java .util .Set ;
55
+ import java .util .function .Function ;
52
56
import org .apache .commons .lang .Validate ;
53
57
import org .bukkit .Bukkit ;
54
58
import org .bukkit .Material ;
55
59
import org .bukkit .block .BlockState ;
56
60
import org .jetbrains .annotations .NotNull ;
57
61
58
- import java .util .HashSet ;
59
- import java .util .Set ;
60
- import java .util .function .Function ;
61
-
62
62
public class AutoCustomData extends AbstractAutoCustomData {
63
63
64
64
private static final Set <Material > MATERIALS = new HashSet <>();
65
65
66
66
static {
67
- switch (Version .getServerVersion (Bukkit .getServer ())) {
68
- case v1_20_R4 :
69
- case v1_20_R3 :
70
- case v1_20_R2 :
71
- case v1_20_R1 :
72
- case v1_19_R3 :
73
- case v1_19_R2 :
74
- case v1_19_R1 :
75
- case v1_18_R2 :
76
- case v1_18_R1 :
77
- case v1_17_R1 :
78
- case v1_16_R3 :
79
- case v1_16_R2 :
80
- case v1_16_R1 :
81
- case v1_15_R1 :
82
- case v1_14_R1 :
83
- case v1_13_R2 :
84
- case v1_13_R1 :
85
- MATERIALS .add (Material .valueOf ("COMMAND_BLOCK" ));
86
- MATERIALS .add (Material .valueOf ("CHAIN_COMMAND_BLOCK" ));
87
- MATERIALS .add (Material .valueOf ("REPEATING_COMMAND_BLOCK" ));
88
- break ;
89
- case v1_12_R1 :
90
- case v1_11_R1 :
91
- case v1_10_R1 :
92
- case v1_9_R2 :
93
- case v1_9_R1 :
94
- MATERIALS .add (Material .valueOf ("COMMAND" ));
95
- MATERIALS .add (Material .valueOf ("COMMAND_REPEATING" ));
96
- MATERIALS .add (Material .valueOf ("COMMAND_CHAIN" ));
97
- break ;
67
+ ServerVersion version = ServerVersion .getCurrentVersion (Bukkit .getServer ());
68
+ if (version .isNewerThanOrSameAs (InternalVersion .v1_13_R1 .getServerVersionRange ().minInclusive ())) {
69
+ MATERIALS .add (Material .valueOf ("COMMAND_BLOCK" ));
70
+ MATERIALS .add (Material .valueOf ("CHAIN_COMMAND_BLOCK" ));
71
+ MATERIALS .add (Material .valueOf ("REPEATING_COMMAND_BLOCK" ));
72
+ } else if (version .isNewerThanOrSameAs (InternalVersion .v1_9_R1 .getServerVersionRange ().minInclusive ())) {
73
+ MATERIALS .add (Material .valueOf ("COMMAND" ));
74
+ MATERIALS .add (Material .valueOf ("COMMAND_REPEATING" ));
75
+ MATERIALS .add (Material .valueOf ("COMMAND_CHAIN" ));
98
76
}
99
77
}
100
78
@@ -117,51 +95,51 @@ public boolean hasCustomData(@NotNull final BlockState blockState) {
117
95
@ NotNull
118
96
@ Override
119
97
protected AutoApplier getCustomDataApplier0 () {
120
- switch ( Version . getServerVersion (Bukkit .getServer ())) {
121
- case v1_20_R4 :
122
- return new AutoApplier_v1_20_R1 (this );
123
- case v1_20_R3 :
124
- return new AutoApplier_v1_20_R3 (this );
125
- case v1_20_R2 :
126
- return new AutoApplier_v1_20_R2 (this );
127
- case v1_20_R1 :
128
- return new AutoApplier_v1_20_R1 (this );
129
- case v1_19_R3 :
130
- return new AutoApplier_v1_19_R3 (this );
131
- case v1_19_R2 :
132
- return new AutoApplier_v1_19_R2 (this );
133
- case v1_19_R1 :
134
- return new AutoApplier_v1_19_R1 (this );
135
- case v1_18_R2 :
136
- return new AutoApplier_v1_18_R2 (this );
137
- case v1_18_R1 :
138
- return new AutoApplier_v1_18_R1 (this );
139
- case v1_17_R1 :
140
- return new AutoApplier_v1_17_R1 (this );
141
- case v1_16_R3 :
142
- return new AutoApplier_v1_16_R3 (this );
143
- case v1_16_R2 :
144
- return new AutoApplier_v1_16_R2 (this );
145
- case v1_16_R1 :
146
- return new AutoApplier_v1_16_R1 (this );
147
- case v1_15_R1 :
148
- return new AutoApplier_v1_15_R1 (this );
149
- case v1_14_R1 :
150
- return new AutoApplier_v1_14_R1 (this );
151
- case v1_13_R2 :
152
- return new AutoApplier_v1_13_R2 (this );
153
- case v1_13_R1 :
154
- return new AutoApplier_v1_13_R1 (this );
155
- case v1_12_R1 :
156
- return new AutoApplier_v1_12_R1 (this );
157
- case v1_11_R1 :
158
- return new AutoApplier_v1_11_R1 (this );
159
- case v1_10_R1 :
160
- return new AutoApplier_v1_10_R1 (this );
161
- case v1_9_R2 :
162
- return new AutoApplier_v1_9_R2 (this );
163
- case v1_9_R1 :
164
- return new AutoApplier_v1_9_R1 (this );
98
+ ServerVersion version = ServerVersion . getCurrentVersion (Bukkit .getServer ());
99
+ if ( InternalVersion . v1_20_R4 . getServerVersionRange (). isInRange ( version )) {
100
+ return new AutoApplier_v1_20_R1 (this );
101
+ } else if ( InternalVersion . v1_20_R3 . getServerVersionRange (). isInRange ( version )) {
102
+ return new AutoApplier_v1_20_R3 (this );
103
+ } else if ( InternalVersion . v1_20_R2 . getServerVersionRange (). isInRange ( version )) {
104
+ return new AutoApplier_v1_20_R2 (this );
105
+ } else if ( InternalVersion . v1_20_R1 . getServerVersionRange (). isInRange ( version )) {
106
+ return new AutoApplier_v1_20_R1 (this );
107
+ } else if ( InternalVersion . v1_19_R3 . getServerVersionRange (). isInRange ( version )) {
108
+ return new AutoApplier_v1_19_R3 (this );
109
+ } else if ( InternalVersion . v1_19_R2 . getServerVersionRange (). isInRange ( version )) {
110
+ return new AutoApplier_v1_19_R2 (this );
111
+ } else if ( InternalVersion . v1_19_R1 . getServerVersionRange (). isInRange ( version )) {
112
+ return new AutoApplier_v1_19_R1 (this );
113
+ } else if ( InternalVersion . v1_18_R2 . getServerVersionRange (). isInRange ( version )) {
114
+ return new AutoApplier_v1_18_R2 (this );
115
+ } else if ( InternalVersion . v1_18_R1 . getServerVersionRange (). isInRange ( version )) {
116
+ return new AutoApplier_v1_18_R1 (this );
117
+ } else if ( InternalVersion . v1_17_R1 . getServerVersionRange (). isInRange ( version )) {
118
+ return new AutoApplier_v1_17_R1 (this );
119
+ } else if ( InternalVersion . v1_16_R3 . getServerVersionRange (). isInRange ( version )) {
120
+ return new AutoApplier_v1_16_R3 (this );
121
+ } else if ( InternalVersion . v1_16_R2 . getServerVersionRange (). isInRange ( version )) {
122
+ return new AutoApplier_v1_16_R2 (this );
123
+ } else if ( InternalVersion . v1_16_R1 . getServerVersionRange (). isInRange ( version )) {
124
+ return new AutoApplier_v1_16_R1 (this );
125
+ } else if ( InternalVersion . v1_15_R1 . getServerVersionRange (). isInRange ( version )) {
126
+ return new AutoApplier_v1_15_R1 (this );
127
+ } else if ( InternalVersion . v1_14_R1 . getServerVersionRange (). isInRange ( version )) {
128
+ return new AutoApplier_v1_14_R1 (this );
129
+ } else if ( InternalVersion . v1_13_R2 . getServerVersionRange (). isInRange ( version )) {
130
+ return new AutoApplier_v1_13_R2 (this );
131
+ } else if ( InternalVersion . v1_13_R1 . getServerVersionRange (). isInRange ( version )) {
132
+ return new AutoApplier_v1_13_R1 (this );
133
+ } else if ( InternalVersion . v1_12_R1 . getServerVersionRange (). isInRange ( version )) {
134
+ return new AutoApplier_v1_12_R1 (this );
135
+ } else if ( InternalVersion . v1_11_R1 . getServerVersionRange (). isInRange ( version )) {
136
+ return new AutoApplier_v1_11_R1 (this );
137
+ } else if ( InternalVersion . v1_10_R1 . getServerVersionRange (). isInRange ( version )) {
138
+ return new AutoApplier_v1_10_R1 (this );
139
+ } else if ( InternalVersion . v1_9_R2 . getServerVersionRange (). isInRange ( version )) {
140
+ return new AutoApplier_v1_9_R2 (this );
141
+ } else if ( InternalVersion . v1_9_R1 . getServerVersionRange (). isInRange ( version )) {
142
+ return new AutoApplier_v1_9_R1 (this );
165
143
}
166
144
167
145
throw new UnsupportedOperationException ("Version not supported jet!" );
0 commit comments