NMSConstants.java 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. package com.gmail.nossr50.util.nms;
  2. import org.jetbrains.annotations.Nullable;
  3. public class NMSConstants {
  4. public final static String BUKKIT_PACKAGE_PATH = "org.bukkit";
  5. public final static String CRAFT_BUKKIT_PACKAGE_PATH = "org.bukkit.craftbukkit";
  6. public final static String NET_MINECRAFT_SERVER = "net.minecraft.server";
  7. private final static String CRAFT_PLAYER_CLASS_PATH = "entity.CraftPlayer";
  8. private final static String ENTITY_HUMAN_CLASS_PATH = "EntityHuman";
  9. /**
  10. * Grabs the fully qualified path of a class from CB
  11. * @param targetClass source root path
  12. * @return the fully qualified path of a CB class
  13. */
  14. protected static String getFullyQualifiedCraftBukkitPath(String cbVersionPackage, String targetClass) {
  15. return CRAFT_BUKKIT_PACKAGE_PATH + "." + cbVersionPackage + "." + targetClass;
  16. }
  17. protected static String getFullQualifiedBukkitPath(String fromSourceRoot) {
  18. return BUKKIT_PACKAGE_PATH + "." + fromSourceRoot;
  19. }
  20. protected static String getFullyQualifiedNMSPath(String cbVersionPackage, String fromSourceRoot) {
  21. return NET_MINECRAFT_SERVER + "." +cbVersionPackage + "." + fromSourceRoot;
  22. }
  23. public static String getCraftPlayerClassPath(String cbVersionPackage) {
  24. return getFullyQualifiedCraftBukkitPath(cbVersionPackage, CRAFT_PLAYER_CLASS_PATH);
  25. }
  26. public static String getEntityHumanClassPath(String cbVersionPackage) {
  27. return getFullyQualifiedNMSPath(cbVersionPackage, ENTITY_HUMAN_CLASS_PATH);
  28. }
  29. public static @Nullable String getCraftBukkitVersionPath(NMSVersion nmsVersion) {
  30. switch (nmsVersion) {
  31. case NMS_1_8_8:
  32. break;
  33. case NMS_1_12_2:
  34. return "v1_12_R1";
  35. case NMS_1_13_2:
  36. return "v1_13_R2";
  37. case NMS_1_14_4:
  38. return "v1_14_R1";
  39. case NMS_1_15_2:
  40. return "v1_15_R1";
  41. case NMS_1_16_1:
  42. return "v1_16_R1";
  43. case UNSUPPORTED:
  44. break;
  45. }
  46. return null;
  47. }
  48. }