forked from ChestShop-authors/ChestShop-3
-
Notifications
You must be signed in to change notification settings - Fork 2
/
AlternativeItemNames.java
55 lines (44 loc) · 1.98 KB
/
AlternativeItemNames.java
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
package com.Acrobot.Breeze.Utils;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
import org.bukkit.Material;
public class AlternativeItemNames {
private static final HashMap<String, Material> nameToItem;
private static final HashMap<Material, String> itemToName;
public static final Map<String, Material> NAME_TO_ITEM;
static {
nameToItem = new HashMap<>();
itemToName = new HashMap<>();
NAME_TO_ITEM = Collections.unmodifiableMap(nameToItem);
addItem(Material.WITHER_SKELETON_SKULL, "WITHER_SKEL_HEAD");
addItem(Material.STRIPPED_DARK_OAK_LOG, "STR_DARK_OAK_LOG");
addItem(Material.STRIPPED_DARK_OAK_WOOD, "STR_DARK_OAK_WOOD");
addItem(Material.LIGHT_GRAY_CONCRETE_POWDER, "LIGHT_GRAY_CON_POWDER");
addItem(Material.LIGHT_BLUE_CONCRETE_POWDER, "LIGHT_BLUE_CON_POWDER");
addItem(Material.MAGENTA_CONCRETE_POWDER, "MAGENTA_CON_POWDER");
addItem(Material.TROPICAL_FISH_BUCKET, "TRO_FISH_BUCKET");
addItem(Material.PRISMARINE_BRICK_SLAB, "PRISMARINE_BR_SLAB");
for (Material mat : Material.values()) {
String name = mat.name();
if (!name.startsWith("LEGACY_")) {
if (name.endsWith("_STAINED_GLASS") || name.endsWith("_STAINED_GLASS_PANE")) {
addItem(mat, mat.name().replace("STAINED_", ""));
}
if (name.startsWith("DEAD_") && name.contains("_CORAL_")) { // DEAD_*_CORAL_*
addItem(mat, mat.name().replace("DEAD_", "DE_"));
}
}
}
}
private static void addItem(Material material, String name) {
itemToName.put(material, name);
nameToItem.put(name.toUpperCase().replace(" ", ""), material);
}
public static String getName(Material material) {
return itemToName.get(material);
}
public static Material getItem(String uppercaseName) {
return nameToItem.get(uppercaseName);
}
}