Guest User

Untitled

a guest
Apr 4th, 2016
27
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.52 KB | None | 0 0
  1. package com.rs.game.player.content;
  2.  
  3. import java.io.IOException;
  4. import java.net.MalformedURLException;
  5. import java.net.URL;
  6. import java.text.DecimalFormat;
  7. import java.text.NumberFormat;
  8.  
  9. import com.rs.cores.CoresManager;
  10. import com.rs.game.player.Player;
  11.  
  12. /**
  13. * Handles highscores.
  14. *
  15. * @author Matrix
  16. * @edited by ARMAR X K1NG
  17. */
  18. public class Highscores2 {//
  19.  
  20. /**
  21. * The lock object variable.
  22. */
  23. private static Object lock = new Object();
  24.  
  25. /**
  26. * Update a player to the highscores.
  27. *
  28. * @param player
  29. * The player reference.
  30. * @param displayname
  31. * The player's display name.
  32. */
  33. public static void highscores(final Player player, final String displayname) {
  34. if (player == null) {
  35. return;
  36. }
  37. if (player.getRights() == 2) {
  38. return;
  39. }
  40. if (!requirements(player)) {
  41. return;
  42. }
  43. final short[] levels = getLevels(player);
  44. final double[] xp = getXp(player);
  45. final int total = getTotalLevel(player);
  46. final String totalxp = getTotalXp(player);
  47. final String hsWebsite = "http://armars.x10host.com/hs/";
  48. final String PASS = "pass";
  49. final int combatlvl = player.getSkills().getCombatLevelWithSummoning();
  50. final int titleid = 1;
  51. if (levels == null || xp == null || totalxp == null) {
  52. return;
  53. }
  54. final int game_mode = 0;
  55. final int prestige = 0;
  56. CoresManager.slowExecutor.execute(new Runnable() {
  57. @Override
  58. public void run() {
  59. try {
  60. synchronized (lock) {
  61. int rights = player.getRights() == 1 ? 1 : player
  62. .isForumModerator() ? 5
  63. : player.isSupporter() ? 7 : player
  64. .isGraphicDesigner() ? 4 : player
  65. .isExtremeDonator() ? 6 : player
  66. .isDonator() ? 3 : player.getRights();
  67. URL url = new URL(""
  68. + hsWebsite
  69. + "updatehighscores.php?pass="
  70. + PASS
  71. + "&username="
  72. + player.getDisplayName().replaceAll(" ", "_")
  73. + "&rights="
  74. + rights
  75. + "&total="
  76. + total
  77. + "&totalkills="
  78. + 1
  79. + "&gamemode="
  80. + game_mode
  81. + "prestige="
  82. + prestige
  83. + "&attack="
  84. + levels[0]
  85. + "&defence="
  86. + levels[1]
  87. + "&strength="
  88. + levels[2]
  89. + ""
  90. + "&constitution="
  91. + levels[3]
  92. + "&ranged="
  93. + levels[4]
  94. + "&prayer="
  95. + levels[5]
  96. + "&magic="
  97. + levels[6]
  98. + "&cooking="
  99. + levels[7]
  100. + "&woodcutting="
  101. + levels[8]
  102. + ""
  103. + "&fletching="
  104. + levels[9]
  105. + "&fishing="
  106. + levels[10]
  107. + "&firemaking="
  108. + levels[11]
  109. + "&crafting="
  110. + levels[12]
  111. + "&smithing="
  112. + levels[13]
  113. + "&mining="
  114. + levels[14]
  115. + ""
  116. + "&herblore="
  117. + levels[15]
  118. + "&agility="
  119. + levels[16]
  120. + "&thieving="
  121. + levels[17]
  122. + "&slayer="
  123. + levels[18]
  124. + "&farming="
  125. + levels[19]
  126. + "&runecrafting="
  127. + levels[20]
  128. + ""
  129. + "&construction="
  130. + levels[22]
  131. + "&hunter="
  132. + levels[21]
  133. + "&summoning="
  134. + levels[23]
  135. + "&titleid="
  136. + titleid
  137. + ""
  138. + "&combatlvl="
  139. + combatlvl
  140. + "&totalxp="
  141. + totalxp
  142. + "&attackxp="
  143. + xp[0]
  144. + "&defencexp="
  145. + xp[1]
  146. + "&strengthxp="
  147. + xp[2]
  148. + ""
  149. + "&dungeoneering="
  150. + levels[24]
  151. + "&dungeoneeringxp="
  152. + xp[24]
  153. + "&constitutionxp="
  154. + xp[3]
  155. + "&rangedxp="
  156. + xp[4]
  157. + "&prayerxp="
  158. + xp[5]
  159. + "&magicxp="
  160. + xp[6]
  161. + "&cookingxp="
  162. + xp[7]
  163. + "&woodcuttingxp="
  164. + xp[8]
  165. + ""
  166. + "&fletchingxp="
  167. + xp[9]
  168. + "&fishingxp="
  169. + xp[10]
  170. + "&firemakingxp="
  171. + xp[11]
  172. + "&craftingxp="
  173. + xp[12]
  174. + "&smithingxp="
  175. + xp[13]
  176. + "&miningxp="
  177. + xp[14]
  178. + ""
  179. + "&herblorexp="
  180. + xp[15]
  181. + "&agilityxp="
  182. + xp[16]
  183. + "&thievingxp="
  184. + xp[17]
  185. + "&slayerxp="
  186. + xp[18]
  187. + "&farmingxp="
  188. + xp[19]
  189. + "&runecraftingxp="
  190. + xp[20]
  191. + ""
  192. + "&constructionxp="
  193. + xp[22]
  194. + "&hunterxp="
  195. + xp[21]
  196. + "&summoningxp="
  197. + xp[23]
  198. + (displayname != null ? "&oldname="
  199. + displayname.replaceAll(" ", "_") + ""
  200. : "") + "");
  201. // System.out.println(url);
  202. url.openStream().close();
  203. }
  204. } catch (MalformedURLException e) {
  205. e.printStackTrace();
  206. } catch (IOException e) {
  207. e.printStackTrace();
  208. }
  209. }
  210. });
  211. }
  212.  
  213. /**
  214. * Check if the player has the requirements to be on the highscores.
  215. *
  216. * @param player
  217. * The player reference.
  218. * @return If the player has the requirements {@code true}.
  219. */
  220. private static boolean requirements(Player player) {
  221. /*
  222. * if(getTotalLevel(player) < 800) return false;
  223. */
  224. return true;
  225. }
  226.  
  227. /**
  228. * Get all the player's levels.
  229. *
  230. * @param player
  231. * The player refrence.
  232. * @return A short array containing all the player's levels.
  233. */
  234. private static short[] getLevels(Player player) {
  235. return player.getSkills().getLevelsByXP();
  236. }
  237.  
  238. /**
  239. * Get the player's total level.
  240. *
  241. * @param player
  242. * The player reference.
  243. * @return The player's total level.
  244. */
  245. private static int getTotalLevel(Player player) {
  246. int totallevel = 0;
  247. for (int i = 0; i <= 24; i++) {
  248. totallevel += player.getSkills().getLevelForXp(i);
  249. }
  250. return totallevel;
  251. }
  252.  
  253. /**
  254. * Get all the player's experience in a double array.
  255. *
  256. * @param player
  257. * The player reference.
  258. * @return All the player's experience in a double array.
  259. */
  260. private static double[] getXp(Player player) {
  261. return player.getSkills().getXp();
  262. }
  263.  
  264. /**
  265. * Get the player's total experience.
  266. *
  267. * @param player
  268. * The player reference.
  269. * @return The player's total experience.
  270. */
  271. private static String getTotalXp(Player player) {
  272. double totalxp = 0;
  273. for (double xp : player.getSkills().getXp()) {
  274. totalxp += xp;
  275. }
  276. NumberFormat formatter = new DecimalFormat("#######");
  277. return formatter.format(totalxp);
  278. }
  279. }
Add Comment
Please, Sign In to add comment