@@ -149,43 +149,50 @@ class Texture(
149
149
val data = split.getOrNull(1 )?.toIntOrNull() ? : 0
150
150
val id = split[0 ].toIntOrNull() ? : split[0 ].uppercase().replace(" [ _]" .toRegex(), " _" )
151
151
152
- return buildItem(XMaterial .matchXMaterial(FALL_BACK )) {
153
- if (id is Int ) {
154
- try {
155
- this .material = Material ::class .java.invokeMethod<Material >(" getMaterial" , id.toInt(), fixed = true )!!
156
- this .damage = data
157
- } catch (t: Throwable ) {
158
- t.printStackTrace()
159
- XMaterial .matchXMaterial(id, - 1 ).let {
160
- if (it.isPresent) {
161
- setMaterial(it.get())
162
- this .damage = data
163
- } else {
164
- XMaterial .STONE
152
+
153
+ val item = try {
154
+ buildItem(XMaterial .matchXMaterial(FALL_BACK )) {
155
+ if (id is Int ) {
156
+ try {
157
+ this .material = Material ::class .java.invokeMethod<Material >(
158
+ " getMaterial" ,
159
+ id.toInt(),
160
+ fixed = true
161
+ )!!
162
+ this .damage = data
163
+ } catch (t: Throwable ) {
164
+ t.printStackTrace()
165
+ XMaterial .matchXMaterial(id, - 1 ).let {
166
+ if (it.isPresent) {
167
+ setMaterial(it.get())
168
+ this .damage = data
169
+ } else {
170
+ XMaterial .STONE
171
+ }
165
172
}
166
173
}
174
+ /* XMaterial.matchXMaterial(id, (-1).toByte()).let {
175
+ if (it.isPresent) {
176
+ setMaterial(it.get())
177
+ this.damage = data
178
+ } else {
179
+ XMaterial.STONE
167
180
}
168
- /* XMaterial.matchXMaterial(id, (-1).toByte()).let {
169
- if (it.isPresent) {
170
- setMaterial(it.get())
171
- this.damage = data
172
- } else {
173
- XMaterial.STONE
174
- }
175
- }*/
176
- } else {
177
- val name = id.toString()
178
- try {
181
+ }*/
182
+ } else {
183
+ val name = id.toString()
179
184
this .material = Material .getMaterial(name)!!
180
- } catch (e: Throwable ) {
181
- return kotlin.runCatching { XMaterial .values().find { it.name.equals(name, true ) }
182
- ? : XMaterial .values()
183
- .find { it -> it.legacy.any { it == name } }
184
- ? : XMaterial .values()
185
- .maxByOrNull { similarDegree(name, it.name) } }.getOrNull()?.parseItem() ? : FALL_BACK
186
185
}
187
186
}
187
+ } catch (e: Throwable ) {
188
+ runCatching { XMaterial .values().find { it.name.equals(id.toString(), true ) }
189
+ ? : XMaterial .values().find { it -> it.legacy.any { it == id.toString() } }
190
+ ? : XMaterial .values().maxByOrNull { similarDegree(id.toString(), it.name) } }.getOrNull()?.parseItem()
191
+ ? : FALL_BACK
188
192
}
193
+
194
+ return item
195
+
189
196
}
190
197
191
198
}
0 commit comments