Advertisement
Guest User

PointSYS

a guest
Nov 1st, 2014
154
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.88 KB | None | 0 0
  1. main.java :
  2.  
  3. package main;
  4.  
  5. import org.bukkit.Bukkit;
  6. import org.bukkit.command.Command;
  7. import org.bukkit.command.CommandSender;
  8. import org.bukkit.entity.Player;
  9. import org.bukkit.event.EventHandler;
  10. import org.bukkit.event.Listener;
  11. import org.bukkit.event.entity.PlayerDeathEvent;
  12. import org.bukkit.event.player.PlayerJoinEvent;
  13. import org.bukkit.plugin.java.JavaPlugin;
  14.  
  15. public class main extends JavaPlugin implements Listener {
  16.  
  17. public void onEnable() {
  18. Bukkit.getServer().getPluginManager().registerEvents(this, this);
  19. System.out.println("[PointSystem] Plugin wurde aktiviert");
  20. new SignShop(this);
  21. getConfig().options().copyDefaults(true);
  22. saveConfig();
  23. }
  24. public void onDisable(){
  25. System.out.println("[PointSystem] Plugin wurde deaktiviert");
  26. }
  27.  
  28. public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
  29. Player s = (Player) sender;
  30.  
  31. if(cmd.getName().equalsIgnoreCase("stats")) {
  32. if(args.length == 1) {
  33. Player target = Bukkit.getPlayer(args[0]);
  34. s.sendMessage("§7[§6Stats§7] §cStats von §a" + target.getName());
  35. s.sendMessage("§7[§6Stats§7] §cPunkte: §b" + getConfig().getInt(target.getName() + ".points"));
  36. s.sendMessage("§7[§6Stats§7] §cKills: §b" + getConfig().getInt(target.getName() + ".kills"));
  37. s.sendMessage("§7[§6Stats§7] §cTode: §b" + getConfig().getInt(target.getName() + ".deaths"));
  38. if(getConfig().getInt(target.getName()+ ".deaths") > 0) {
  39. double a = getConfig().getInt(target.getName() + ".kills");
  40. double b = getConfig().getInt(target.getName() + ".deaths");
  41. double i = a/b;
  42. s.sendMessage("§7§6Stats§7] §cKillstreak: §b" + i);
  43. }else {
  44. s.sendMessage("§7[§6Stats§7] §cDu hast noch §ekeine §cTode aus der die §eKD §cErechnet werden kann");
  45. }
  46.  
  47. return true;
  48. } else {
  49. if(args.length == 0) {
  50. s.sendMessage("§7[§6Stats§7] §cStats von §a" + s.getName());
  51. s.sendMessage("§7[§6Stats§7] §cPunkte: §b" + getConfig().getInt(s.getName() + ".points"));
  52. s.sendMessage("§7[§6Stats§7] §cKills: §b" + getConfig().getInt(s.getName() + ".kills"));
  53. s.sendMessage("§7[§6Stats§7] §cTode: §b" + getConfig().getInt(s.getName() + ".deaths"));
  54. if(getConfig().getInt(s.getName()+ ".deaths") > 0) {
  55. double a = getConfig().getInt(s.getName() + ".kills");
  56. double b = getConfig().getInt(s.getName() + ".deaths");
  57. double i = a / b;
  58. s.sendMessage("§7[§6Stats§7] §cKD:" + i);
  59. }else {
  60. s.sendMessage("§7[§6Stats§7] §cDu hast noch §ekeine §cTode aus der die §eKD §cErechnet werden kann");
  61. }
  62.  
  63. return true;
  64. }else {
  65. s.sendMessage("§7[§6Stats§7] §eBenutze /stats Spieler");
  66. return true;
  67. }
  68. }
  69. }
  70. return false;
  71.  
  72. }
  73.  
  74.  
  75.  
  76. @EventHandler
  77. public void onJoin(PlayerJoinEvent e) {
  78. Player p = e.getPlayer();
  79. if(getConfig().contains(p.getName())) {
  80. getConfig().set(p.getName() + ".points", 0);
  81. getConfig().set(p.getName() + ".kills", 0);
  82. getConfig().set(p.getName() + ".deaths", 0);
  83. saveConfig();
  84.  
  85. }
  86. }
  87.  
  88. @EventHandler
  89. public void onDeath(PlayerDeathEvent e) {
  90. Player v = e.getEntity();
  91. Player k = v.getKiller();
  92. if(v instanceof Player && k instanceof Player) {
  93. getConfig().set(v.getName() + ".deaths", getConfig().getInt(v.getName() + ".deaths") + 1);
  94. getConfig().set(k.getName() + ".kills", getConfig().getInt(k.getName() + ".kills") + 1);
  95. getConfig().set(k.getName() + ".points", getConfig().getInt(k.getName() + ".points") + 20);
  96. saveConfig();
  97. }
  98. }
  99. }
  100.  
  101.  
  102. SignShop.java :
  103.  
  104. package main;
  105.  
  106. import org.bukkit.Material;
  107. import org.bukkit.Sound;
  108. import org.bukkit.block.Sign;
  109. import org.bukkit.entity.Player;
  110. import org.bukkit.event.EventHandler;
  111. import org.bukkit.event.Listener;
  112. import org.bukkit.event.block.Action;
  113. import org.bukkit.event.block.SignChangeEvent;
  114. import org.bukkit.event.player.PlayerInteractEvent;
  115. import org.bukkit.inventory.ItemStack;
  116.  
  117. public class SignShop implements Listener {
  118.  
  119. private main pl;
  120.  
  121. public SignShop(main pl) {
  122. pl.getServer().getPluginManager().registerEvents(this, pl);
  123. this.pl = pl;
  124. }
  125.  
  126. @EventHandler
  127. public void onSignPlace(SignChangeEvent e) {
  128. Player p = e.getPlayer();
  129. if(e.getLine(0).equalsIgnoreCase("[shop]")) {
  130. if(!e.getLine(1).isEmpty() || !e.getLine(2).isEmpty() || !e.getLine(3).isEmpty()) {
  131. e.setLine(0, "§7[§6Shop§7]");
  132.  
  133. } else {
  134. p.sendMessage("§7[§6Stats§7] §cKonfiguriere das schild richtig!");
  135. }
  136. }
  137. }
  138.  
  139. @SuppressWarnings("deprecation")
  140. @EventHandler
  141. public void onSignClick(PlayerInteractEvent e) {
  142. Player p = e.getPlayer();
  143. if(e.getAction() == Action.RIGHT_CLICK_BLOCK) {
  144. if(e.getClickedBlock().getType() == Material.WALL_SIGN || e.getClickedBlock().getType() == Material.SIGN) {
  145. Sign s = (Sign) e.getClickedBlock().getState();
  146. if(s.getLine(0).equalsIgnoreCase("§7[§6Shop§7]")) {
  147. String line2 = s.getLine(1);
  148. int itemid = Integer.parseInt(line2);
  149. String line3 = s.getLine(2);
  150. int anzahl = Integer.parseInt(line3);
  151. String line4 = s.getLine(3);
  152. int preis = Integer.parseInt(line4);
  153. if(pl.getConfig().getInt(p.getName() + ".points") >= preis) {
  154. p.getInventory().addItem(new ItemStack(itemid, anzahl));
  155. p.updateInventory();
  156. p.sendMessage("§7[§6Shop§7] §aDu hast denn kauf erfolgreich abgeschlossen");
  157. p.playSound(p.getLocation(), Sound.LEVEL_UP, 3, 2);
  158. pl.getConfig().set(p.getName() + ".points", pl.getConfig().getInt(p.getName() + ".points") - preis);
  159. }else {
  160. p.sendMessage("§7[§6Shop§7] §cDu hast nicht genügent Punkte auf LeviMC.net");
  161. }
  162. }
  163. }
  164. }
  165. }
  166.  
  167. }
  168.  
  169.  
  170. plugin.yml :
  171.  
  172. name: Point
  173. version: 1.0
  174. author: Leviplays
  175. main: main.main
  176. commands:
  177. stats:
  178. usage: /<command>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement