DemoltionsExpertiseEventHandler.java 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. package com.gmail.nossr50.skills.mining;
  2. import org.bukkit.event.entity.EntityDamageEvent;
  3. public class DemoltionsExpertiseEventHandler {
  4. private int skillLevel;
  5. private EntityDamageEvent event;
  6. private int damage;
  7. private double damageModifier;
  8. public DemoltionsExpertiseEventHandler(MiningManager manager, EntityDamageEvent event) {
  9. this.skillLevel = manager.getSkillLevel();
  10. this.event = event;
  11. this.damage = event.getDamage();
  12. }
  13. protected void calculateDamageModifier() {
  14. if (skillLevel < BlastMining.BLAST_MINING_RANK_4) {
  15. return;
  16. }
  17. if (skillLevel >= BlastMining.BLAST_MINING_RANK_8) {
  18. damageModifier = 0;
  19. }
  20. else if (skillLevel >= BlastMining.BLAST_MINING_RANK_6) {
  21. damageModifier = 0.5;
  22. }
  23. else if (skillLevel >= BlastMining.BLAST_MINING_RANK_4) {
  24. damageModifier = 0.25;
  25. }
  26. }
  27. protected void modifyEventDamage() {
  28. damage = (int) (damage * damageModifier);
  29. event.setDamage(damage);
  30. }
  31. }