contribStuff.java 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260
  1. package com.gmail.nossr50.contrib;
  2. import org.bukkit.ChatColor;
  3. import org.bukkit.Location;
  4. import org.bukkit.Material;
  5. import org.bukkit.entity.Player;
  6. import org.bukkitcontrib.BukkitContrib;
  7. import org.bukkitcontrib.player.ContribCraftPlayer;
  8. import org.bukkitcontrib.player.ContribPlayer;
  9. import org.bukkitcontrib.sound.SoundEffect;
  10. import org.bukkitcontrib.sound.SoundManager;
  11. import com.gmail.nossr50.Users;
  12. import com.gmail.nossr50.m;
  13. import com.gmail.nossr50.datatypes.PlayerProfile;
  14. import com.gmail.nossr50.datatypes.SkillType;
  15. public class contribStuff
  16. {
  17. public static void playSoundForPlayer(SoundEffect effect, Player player, Location location)
  18. {
  19. //Contrib stuff
  20. ContribPlayer cPlayer = ContribCraftPlayer.getContribPlayer(player);
  21. SoundManager SM = BukkitContrib.getSoundManager();
  22. SM.playSoundEffect(cPlayer, effect, location);
  23. }
  24. public static void levelUpNotification(SkillType skillType, ContribPlayer cPlayer)
  25. {
  26. PlayerProfile PP = Users.getProfile(cPlayer);
  27. Material mat = null;
  28. switch(skillType)
  29. {
  30. case SORCERY:
  31. mat = Material.PORTAL;
  32. break;
  33. case TAMING:
  34. switch(getNotificationTier(PP.getSkillLevel(skillType)))
  35. {
  36. case 1:
  37. mat = Material.PORK;
  38. break;
  39. case 2:
  40. mat = Material.PORK;
  41. break;
  42. case 3:
  43. mat = Material.GRILLED_PORK;
  44. break;
  45. case 4:
  46. mat = Material.GRILLED_PORK;
  47. break;
  48. case 5:
  49. mat = Material.BONE;
  50. break;
  51. }
  52. break;
  53. case MINING:
  54. switch(getNotificationTier(PP.getSkillLevel(skillType)))
  55. {
  56. case 1:
  57. mat = Material.COAL_ORE;
  58. break;
  59. case 2:
  60. mat = Material.IRON_ORE;
  61. break;
  62. case 3:
  63. mat = Material.GOLD_ORE;
  64. break;
  65. case 4:
  66. mat = Material.LAPIS_ORE;
  67. break;
  68. case 5:
  69. mat = Material.DIAMOND_ORE;
  70. break;
  71. }
  72. break;
  73. case WOODCUTTING:
  74. switch(getNotificationTier(PP.getSkillLevel(skillType)))
  75. {
  76. case 1:
  77. mat = Material.WOOD;
  78. break;
  79. case 2:
  80. mat = Material.WOOD;
  81. break;
  82. case 3:
  83. mat = Material.WOOD;
  84. break;
  85. case 4:
  86. mat = Material.LOG;
  87. break;
  88. case 5:
  89. mat = Material.LOG;
  90. break;
  91. }
  92. break;
  93. case REPAIR:
  94. switch(getNotificationTier(PP.getSkillLevel(skillType)))
  95. {
  96. case 1:
  97. mat = Material.COBBLESTONE;
  98. break;
  99. case 2:
  100. mat = Material.IRON_BLOCK;
  101. break;
  102. case 3:
  103. mat = Material.GOLD_BLOCK;
  104. break;
  105. case 4:
  106. mat = Material.LAPIS_BLOCK;
  107. break;
  108. case 5:
  109. mat = Material.DIAMOND_BLOCK;
  110. break;
  111. }
  112. break;
  113. case HERBALISM:
  114. switch(getNotificationTier(PP.getSkillLevel(skillType)))
  115. {
  116. case 1:
  117. mat = Material.YELLOW_FLOWER;
  118. break;
  119. case 2:
  120. mat = Material.RED_ROSE;
  121. break;
  122. case 3:
  123. mat = Material.BROWN_MUSHROOM;
  124. break;
  125. case 4:
  126. mat = Material.RED_MUSHROOM;
  127. break;
  128. case 5:
  129. mat = Material.PUMPKIN;
  130. break;
  131. }
  132. break;
  133. case ACROBATICS:
  134. switch(getNotificationTier(PP.getSkillLevel(skillType)))
  135. {
  136. case 1:
  137. mat = Material.LEATHER_BOOTS;
  138. break;
  139. case 2:
  140. mat = Material.CHAINMAIL_BOOTS;
  141. break;
  142. case 3:
  143. mat = Material.IRON_BOOTS;
  144. break;
  145. case 4:
  146. mat = Material.GOLD_BOOTS;
  147. break;
  148. case 5:
  149. mat = Material.DIAMOND_BOOTS;
  150. break;
  151. }
  152. break;
  153. case SWORDS:
  154. switch(getNotificationTier(PP.getSkillLevel(skillType)))
  155. {
  156. case 1:
  157. mat = Material.WOOD_SWORD;
  158. break;
  159. case 2:
  160. mat = Material.STONE_SWORD;
  161. break;
  162. case 3:
  163. mat = Material.IRON_SWORD;
  164. break;
  165. case 4:
  166. mat = Material.GOLD_SWORD;
  167. break;
  168. case 5:
  169. mat = Material.DIAMOND_SWORD;
  170. break;
  171. }
  172. break;
  173. case ARCHERY:
  174. mat = Material.ARROW;
  175. break;
  176. case UNARMED:
  177. switch(getNotificationTier(PP.getSkillLevel(skillType)))
  178. {
  179. case 1:
  180. mat = Material.LEATHER_HELMET;
  181. break;
  182. case 2:
  183. mat = Material.CHAINMAIL_HELMET;
  184. break;
  185. case 3:
  186. mat = Material.IRON_HELMET;
  187. break;
  188. case 4:
  189. mat = Material.GOLD_HELMET;
  190. break;
  191. case 5:
  192. mat = Material.DIAMOND_HELMET;
  193. break;
  194. }
  195. break;
  196. case EXCAVATION:
  197. switch(getNotificationTier(PP.getSkillLevel(skillType)))
  198. {
  199. case 1:
  200. mat = Material.WOOD_SPADE;
  201. break;
  202. case 2:
  203. mat = Material.STONE_SPADE;
  204. break;
  205. case 3:
  206. mat = Material.IRON_SPADE;
  207. break;
  208. case 4:
  209. mat = Material.GOLD_SPADE;
  210. break;
  211. case 5:
  212. mat = Material.DIAMOND_SPADE;
  213. break;
  214. }
  215. break;
  216. case AXES:
  217. switch(getNotificationTier(PP.getSkillLevel(skillType)))
  218. {
  219. case 1:
  220. mat = Material.WOOD_AXE;
  221. break;
  222. case 2:
  223. mat = Material.STONE_AXE;
  224. break;
  225. case 3:
  226. mat = Material.IRON_AXE;
  227. break;
  228. case 4:
  229. mat = Material.GOLD_AXE;
  230. break;
  231. case 5:
  232. mat = Material.DIAMOND_AXE;
  233. break;
  234. }
  235. break;
  236. default:
  237. mat = Material.WATCH;
  238. break;
  239. }
  240. cPlayer.sendNotification(ChatColor.GREEN+"Level Up!", ChatColor.YELLOW+m.getCapitalized(skillType.toString())+ChatColor.DARK_AQUA+" ("+ChatColor.GREEN+PP.getSkillLevel(skillType)+ChatColor.DARK_AQUA+")", mat);
  241. }
  242. public static Integer getNotificationTier(Integer level)
  243. {
  244. if(level < 200)
  245. return 1;
  246. else if (level >= 200 && level < 400)
  247. return 2;
  248. else if (level >= 400 && level < 600)
  249. return 3;
  250. else if (level >= 600 && level < 800)
  251. return 4;
  252. else
  253. return 5;
  254. }
  255. }