Guest User

Untitled

a guest
Apr 19th, 2018
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.62 KB | None | 0 0
  1. import com.elmakers.mine.bukkit.action.BaseSpellAction;
  2. import com.elmakers.mine.bukkit.api.action.CastContext;
  3. import com.elmakers.mine.bukkit.api.spell.SpellResult;
  4. import org.bukkit.Bukkit;
  5. import org.bukkit.configuration.ConfigurationSection;
  6. import org.bukkit.entity.Entity;
  7. import org.bukkit.entity.Player;
  8.  
  9. public class ClearChatAction extends BaseSpellAction {
  10.  
  11. private boolean global, targetSource;
  12. private int repeat;
  13. private String message;
  14.  
  15. @Override
  16. public void prepare(CastContext context, ConfigurationSection parameters) {
  17. super.prepare(context, parameters);
  18.  
  19. this.global = parameters.getBoolean("global", false);
  20. this.targetSource = parameters.getBoolean("target_source", true);
  21. this.repeat = parameters.getInt("repeat", 100);
  22. this.message = parameters.getString("message", "");
  23. }
  24.  
  25. public SpellResult perform(CastContext castContext) {
  26. if (repeat < 1) return SpellResult.FAIL;
  27.  
  28. if (global) {
  29. for (Player player : Bukkit.getOnlinePlayers()) {
  30. if (!targetSource && player.getName().equals(castContext.getMage().getName())) continue;
  31.  
  32. for (int i = 0; i < repeat; i++) {
  33. player.sendMessage(message);
  34. }
  35. }
  36.  
  37. return SpellResult.CAST;
  38. }
  39.  
  40. Entity entity = castContext.getTargetEntity();
  41.  
  42. if (entity != null && entity instanceof Player) {
  43. Player player = (Player) entity;
  44.  
  45. for (int i = 0; i < repeat; i++) {
  46. player.sendMessage(message);
  47. }
  48. }
  49.  
  50. return SpellResult.CAST;
  51. }
  52. }
Add Comment
Please, Sign In to add comment