vmc.java 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. import java.io.*;
  2. import java.lang.String;
  3. import java.util.ArrayList;
  4. import java.util.logging.Level;
  5. import java.util.logging.Logger;
  6. public class vmc {
  7. private static volatile vmc instance;
  8. protected static final Logger log = Logger.getLogger("Minecraft");
  9. private PropertiesFile properties;
  10. String location = "groups.txt";
  11. //Check if two players are in the same party
  12. public static boolean inSameParty(Player playera, Player playerb){
  13. if(vUsers.getProfile(playera).getParty().equals(vUsers.getProfile(playerb).getParty())){
  14. return true;
  15. } else {
  16. return false;
  17. }
  18. }
  19. //Get the distance between two players
  20. public static double getDistance(Player player1, Player player2)
  21. {
  22. return Math.sqrt(Math.pow(player1.getX() - player2.getX(), 2) + Math.pow(player1.getY() - player2.getY(), 2)
  23. + Math.pow(player1.getZ() - player2.getZ(), 2));
  24. }
  25. //Send the "invisibility" toggle to players near the hidden player
  26. public static void sendInvisible(Player player){
  27. for (Player p : etc.getServer().getPlayerList())
  28. {
  29. if (getDistance(player, p) <= vConfig.range && p.getUser() != player.getUser())
  30. {
  31. p.getUser().a.b(new dv(player.getUser().g));
  32. }
  33. }
  34. }
  35. //Send "visibility" toggle to invisible players turning them back to normal
  36. public static void sendNotInvisible(Player player){
  37. for (Player p : etc.getServer().getPlayerList())
  38. {
  39. if (getDistance(player, p) < vConfig.range && p.getUser() != player.getUser())
  40. {
  41. p.getUser().a.b(new d(player.getUser()));
  42. }
  43. }
  44. }
  45. public String[] getPartyMembers(Player player){
  46. int x = 0;
  47. String partyarray[] = null;
  48. ArrayList<String> partymembers = new ArrayList<String>();
  49. for(Player p : etc.getServer().getPlayerList()){
  50. if(vmc.inSameParty(player, p) && p != null){
  51. partymembers.add(p.getName());
  52. x++;
  53. }
  54. }
  55. partymembers.toArray(partyarray);
  56. return partyarray;
  57. }
  58. public static void informPartyMembers(Player player){
  59. int x = 0;
  60. for(Player p : etc.getServer().getPlayerList()){
  61. if(vmc.inSameParty(player, p) && !p.getName().equals(player.getName())){
  62. p.sendMessage(vUsers.getProfile(player).getTag() + player.getName() + Colors.Green + " has joined your party");
  63. x++;
  64. }
  65. }
  66. }
  67. public static void informPartyMembersQuit(Player player){
  68. int x = 0;
  69. for(Player p : etc.getServer().getPlayerList()){
  70. if(vmc.inSameParty(player, p) && !p.getName().equals(player.getName())){
  71. p.sendMessage(vUsers.getProfile(player).getTag() + player.getName() + Colors.Green + " has left your party");
  72. x++;
  73. }
  74. }
  75. }
  76. public String getGroupPrefix(Player player){
  77. String groups[] = player.getGroups();
  78. String groupline[] = null;
  79. String prefix = Colors.White;
  80. int x = 0;
  81. if(groups.length == 0 || groups == null)
  82. return prefix;
  83. if(vConfig.getInstance().groupcoloredbrackets()){
  84. //Read the file
  85. properties = new PropertiesFile(location);
  86. try {
  87. properties.load();
  88. } catch (IOException e) {
  89. log.log(Level.SEVERE, "Exception while loading " + location, e);
  90. }
  91. //Grab the line with the same group as the player
  92. for(String herp : groups){
  93. if(herp != null)
  94. x++;
  95. }
  96. if(x > 0)
  97. groupline = properties.getString(groups[0]).split(":");
  98. //Check if the prefix is null or not
  99. if(!groupline[0].isEmpty() && groupline != null)
  100. {
  101. //vChat.colorChange(groupline[0].charAt(0));
  102. prefix = groupline[0];
  103. prefix = vChat.colorChange(prefix.charAt(0));
  104. }
  105. }
  106. return prefix;
  107. }
  108. public static vmc getInstance() {
  109. if (instance == null) {
  110. instance = new vmc();
  111. }
  112. return instance;
  113. }
  114. }