Advertisement
Guest User

Untitled

a guest
May 23rd, 2017
51
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.60 KB | None | 0 0
  1. package org.hyperion.rs2.event.impl;
  2.  
  3. import org.hyperion.rs2.content.minigames.FightPits;
  4. import org.hyperion.rs2.content.minigames.PestControl;
  5. import org.hyperion.rs2.event.Event;
  6. import org.hyperion.rs2.model.Player;
  7. import org.hyperion.rs2.model.World;
  8.  
  9. public class FightPitsEvent extends Event {
  10. private static final int WAITING_TIME = 30; //2 minutes. 120
  11. private static final int MINIMUM_PLAYERS_PER_GAME = 2;
  12. private static int time = WAITING_TIME;
  13. public static String timeToLeave = "[Not enough players to start game]";
  14. private boolean beenNotified = false;
  15.  
  16. public FightPitsEvent() {
  17. super(1000); //Once every second to make stuff easy xD.
  18. }
  19.  
  20. @Override
  21. public void execute() {
  22. /*/*
  23. * First, we handle the waitroom part.
  24. */
  25. final Player[] list = FightPits.getWaitingRoomList().toArray(new Player[0]);
  26. if(list.length < MINIMUM_PLAYERS_PER_GAME) {
  27. /*
  28. * If there's not enough players playing
  29. */
  30. time = WAITING_TIME;
  31. } else {
  32. /*
  33. * We decrease the time
  34. */
  35. if(!FightPits.isGameGoingOn()) {
  36. time = time - 1;
  37. timeToLeave = secondsToMinutesAndSeconds(time);
  38. }
  39. /*
  40. * If the time is 0, we start the game.
  41. */
  42. if(time == 0) {
  43. beenNotified = false;
  44. FightPits.startGame();
  45. }
  46. /*
  47. * Then we handle the in game part.
  48. */
  49. if(FightPits.isGameGoingOn() && FightPits.gameTime != 0) {
  50. FightPits.decreaseGameTime();
  51. }
  52.  
  53. if(FightPits.decreaseGameTime() == 0) {
  54. FightPits.sendMonster();
  55. }
  56.  
  57. World.getWorld().submit(new Event(500) {
  58.  
  59. @Override
  60. public void execute() {
  61. if(FightPits.isGameGoingOn()) {
  62. final Player[] gameList = FightPits.getGameList().toArray(new Player[0]);
  63. for(Player player : FightPits.getGameList().toArray(new Player[0])) {
  64. if(gameList.length == 0) {
  65. FightPits.gameGoingOn = false;;
  66. }
  67. if(!beenNotified) {
  68. if(gameList.length == 1) {
  69. FightPits.FightPitsWinner(player);
  70. time = WAITING_TIME;
  71. beenNotified = true;
  72. }
  73. }
  74. if(FightPits.canFight()) {
  75. player.getActionSender().sendString("Foes Remaining: "+((gameList.length)-1), 373, 1); //Enemies Remaining
  76. } else {
  77. player.getActionSender().sendString("", 373, 1); //Enemies Remaining
  78. }
  79. }
  80. }
  81. }
  82.  
  83. });
  84. }
  85. }
  86.  
  87. private static String secondsToMinutesAndSeconds(int seconds) {
  88. int minutes = (int)(seconds / 60);
  89. String time = ""+minutes + " min " + (seconds - (minutes * 60)) + " seconds";
  90. return time;
  91. }
  92.  
  93. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement