mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2024-11-22 21:26:46 +01:00
All changes up to 0.8.13! Sorry for being an airhead and not uploading the source right away :)
This commit is contained in:
parent
ffd71c42a7
commit
31ef094549
@ -1,5 +1,8 @@
|
|||||||
Changelog:
|
Changelog:
|
||||||
#Versions without changelogs probably had very small misc fixes, like tweaks to the source code#
|
#Versions without changelogs probably had very small misc fixes, like tweaks to the source code#
|
||||||
|
Version 0.8.13
|
||||||
|
Enemies no longer look like they have frozen when they die
|
||||||
|
Item duping fix
|
||||||
Version 0.8.11
|
Version 0.8.11
|
||||||
Performance improvements
|
Performance improvements
|
||||||
Memory leak fixed
|
Memory leak fixed
|
||||||
|
@ -14,6 +14,7 @@ import org.bukkit.entity.Squid;
|
|||||||
import org.bukkit.entity.Zombie;
|
import org.bukkit.entity.Zombie;
|
||||||
import org.bukkit.event.entity.EntityDamageByEntityEvent;
|
import org.bukkit.event.entity.EntityDamageByEntityEvent;
|
||||||
import org.bukkit.event.entity.EntityDamageByProjectileEvent;
|
import org.bukkit.event.entity.EntityDamageByProjectileEvent;
|
||||||
|
import org.bukkit.event.entity.EntityDamageEvent;
|
||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
import org.bukkit.plugin.Plugin;
|
import org.bukkit.plugin.Plugin;
|
||||||
|
|
||||||
@ -58,21 +59,21 @@ public class mcCombat {
|
|||||||
if(defender != null && mcPermissions.getInstance().unarmed(attacker) && attacker.getItemInHand().getTypeId() == 0){
|
if(defender != null && mcPermissions.getInstance().unarmed(attacker) && attacker.getItemInHand().getTypeId() == 0){
|
||||||
//DMG MODIFIER
|
//DMG MODIFIER
|
||||||
if(mcUsers.getProfile(attacker).getUnarmedInt() >= 50 && mcUsers.getProfile(attacker).getUnarmedInt() < 100){
|
if(mcUsers.getProfile(attacker).getUnarmedInt() >= 50 && mcUsers.getProfile(attacker).getUnarmedInt() < 100){
|
||||||
defender.setHealth(calculateDamage(defender, 1));
|
event.setDamage(calculateDamage(event, 1));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 100 && mcUsers.getProfile(attacker).getUnarmedInt() < 200){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 100 && mcUsers.getProfile(attacker).getUnarmedInt() < 200){
|
||||||
defender.setHealth(calculateDamage(defender, 2));
|
event.setDamage(calculateDamage(event, 2));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 200 && mcUsers.getProfile(attacker).getUnarmedInt() < 325){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 200 && mcUsers.getProfile(attacker).getUnarmedInt() < 325){
|
||||||
defender.setHealth(calculateDamage(defender, 3));
|
event.setDamage(calculateDamage(event, 3));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 325 && mcUsers.getProfile(attacker).getUnarmedInt() < 475){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 325 && mcUsers.getProfile(attacker).getUnarmedInt() < 475){
|
||||||
defender.setHealth(calculateDamage(defender, 4));
|
event.setDamage(calculateDamage(event, 4));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 475 && mcUsers.getProfile(attacker).getUnarmedInt() < 600){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 475 && mcUsers.getProfile(attacker).getUnarmedInt() < 600){
|
||||||
defender.setHealth(calculateDamage(defender, 5));
|
event.setDamage(calculateDamage(event, 5));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 600 && mcUsers.getProfile(attacker).getUnarmedInt() < 775){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 600 && mcUsers.getProfile(attacker).getUnarmedInt() < 775){
|
||||||
defender.setHealth(calculateDamage(defender, 6));
|
event.setDamage(calculateDamage(event, 6));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 775 && mcUsers.getProfile(attacker).getUnarmedInt() < 950){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 775 && mcUsers.getProfile(attacker).getUnarmedInt() < 950){
|
||||||
defender.setHealth(calculateDamage(defender, 7));
|
event.setDamage(calculateDamage(event, 7));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 950){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 950){
|
||||||
defender.setHealth(calculateDamage(defender, 8));
|
event.setDamage(calculateDamage(event, 8));
|
||||||
}
|
}
|
||||||
if(mcUsers.getProfile(defender).isDead())
|
if(mcUsers.getProfile(defender).isDead())
|
||||||
return;
|
return;
|
||||||
@ -91,21 +92,6 @@ public class mcCombat {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/*
|
|
||||||
* Make the defender drop items on death
|
|
||||||
*/
|
|
||||||
if(defender.getHealth()<= 0 && !mcUsers.getProfile(defender).isDead()){
|
|
||||||
mcUsers.getProfile(defender).setDead(true);
|
|
||||||
event.setCancelled(true); //SEE IF THIS HELPS
|
|
||||||
//If it only would've died from mcMMO damage modifiers
|
|
||||||
if(defender.getHealth() <= 0 && healthbefore - event.getDamage() >= 1){
|
|
||||||
mcm.getInstance().simulateNaturalDrops(defender);
|
|
||||||
}
|
|
||||||
for(ItemStack herp : defender.getInventory().getContents()){
|
|
||||||
if(herp != null && herp.getTypeId() != 0)
|
|
||||||
defender.getLocation().getWorld().dropItemNaturally(defender.getLocation(), herp);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
public void playerVersusSquidChecks(EntityDamageByEntityEvent event, Player attacker, Entity x, int type){
|
public void playerVersusSquidChecks(EntityDamageByEntityEvent event, Player attacker, Entity x, int type){
|
||||||
@ -144,10 +130,7 @@ public class mcCombat {
|
|||||||
if(defender.getHealth() <= 0)
|
if(defender.getHealth() <= 0)
|
||||||
return;
|
return;
|
||||||
if(mcUsers.getProfile(attacker).getAxesInt() >= 500){
|
if(mcUsers.getProfile(attacker).getAxesInt() >= 500){
|
||||||
defender.setHealth(calculateDamage(defender, (4 - axeNerf(attacker.getItemInHand().getTypeId()))));
|
event.setDamage(calculateDamage(event, (4 - axeNerf(attacker.getItemInHand().getTypeId()))));
|
||||||
}
|
|
||||||
if(defender.getHealth() <= 0){
|
|
||||||
mcm.getInstance().simulateNaturalDrops(defender);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/*
|
/*
|
||||||
@ -157,21 +140,21 @@ public class mcCombat {
|
|||||||
if(defender.getHealth() <= 0)
|
if(defender.getHealth() <= 0)
|
||||||
return;
|
return;
|
||||||
if(mcUsers.getProfile(attacker).getUnarmedInt() >= 50 && mcUsers.getProfile(attacker).getUnarmedInt() < 100){
|
if(mcUsers.getProfile(attacker).getUnarmedInt() >= 50 && mcUsers.getProfile(attacker).getUnarmedInt() < 100){
|
||||||
defender.setHealth(calculateDamage(defender, 1));
|
event.setDamage(calculateDamage(event, 1));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 100 && mcUsers.getProfile(attacker).getUnarmedInt() < 200){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 100 && mcUsers.getProfile(attacker).getUnarmedInt() < 200){
|
||||||
defender.setHealth(calculateDamage(defender, 2));
|
event.setDamage(calculateDamage(event, 2));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 200 && mcUsers.getProfile(attacker).getUnarmedInt() < 325){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 200 && mcUsers.getProfile(attacker).getUnarmedInt() < 325){
|
||||||
defender.setHealth(calculateDamage(defender, 3));
|
event.setDamage(calculateDamage(event, 3));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 325 && mcUsers.getProfile(attacker).getUnarmedInt() < 475){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 325 && mcUsers.getProfile(attacker).getUnarmedInt() < 475){
|
||||||
defender.setHealth(calculateDamage(defender, 4));
|
event.setDamage(calculateDamage(event, 4));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 475 && mcUsers.getProfile(attacker).getUnarmedInt() < 600){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 475 && mcUsers.getProfile(attacker).getUnarmedInt() < 600){
|
||||||
defender.setHealth(calculateDamage(defender, 5));
|
event.setDamage(calculateDamage(event, 5));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 600 && mcUsers.getProfile(attacker).getUnarmedInt() < 775){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 600 && mcUsers.getProfile(attacker).getUnarmedInt() < 775){
|
||||||
defender.setHealth(calculateDamage(defender, 6));
|
event.setDamage(calculateDamage(event, 6));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 775 && mcUsers.getProfile(attacker).getUnarmedInt() < 950){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 775 && mcUsers.getProfile(attacker).getUnarmedInt() < 950){
|
||||||
defender.setHealth(calculateDamage(defender, 7));
|
event.setDamage(calculateDamage(event, 7));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 950){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 950){
|
||||||
defender.setHealth(calculateDamage(defender, 8));
|
event.setDamage(calculateDamage(event, 8));
|
||||||
}
|
}
|
||||||
//XP
|
//XP
|
||||||
if(defender.getHealth() != 0){
|
if(defender.getHealth() != 0){
|
||||||
@ -186,9 +169,6 @@ public class mcCombat {
|
|||||||
attacker.sendMessage(ChatColor.YELLOW+"Unarmed skill increased by "+skillups+"."+" Total ("+mcUsers.getProfile(attacker).getUnarmed()+")");
|
attacker.sendMessage(ChatColor.YELLOW+"Unarmed skill increased by "+skillups+"."+" Total ("+mcUsers.getProfile(attacker).getUnarmed()+")");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(defender.getHealth() <= 0){
|
|
||||||
mcm.getInstance().simulateNaturalDrops(defender);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -202,34 +182,28 @@ public class mcCombat {
|
|||||||
if(defender.getHealth() <= 0)
|
if(defender.getHealth() <= 0)
|
||||||
return;
|
return;
|
||||||
if(mcUsers.getProfile(attacker).getAxesInt() >= 500){
|
if(mcUsers.getProfile(attacker).getAxesInt() >= 500){
|
||||||
defender.setHealth(calculateDamage(defender, (4 - axeNerf(attacker.getItemInHand().getTypeId()))));
|
event.setDamage(calculateDamage(event, (4 - axeNerf(attacker.getItemInHand().getTypeId()))));
|
||||||
}
|
|
||||||
if(defender.getHealth() <= 0){
|
|
||||||
mcm.getInstance().simulateNaturalDrops(defender);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(type == 0 && mcPermissions.getInstance().unarmed(attacker)){
|
if(type == 0 && mcPermissions.getInstance().unarmed(attacker)){
|
||||||
if(defender.getHealth() <= 0)
|
if(defender.getHealth() <= 0)
|
||||||
return;
|
return;
|
||||||
if(mcUsers.getProfile(attacker).getUnarmedInt() >= 50 && mcUsers.getProfile(attacker).getUnarmedInt() < 100){
|
if(mcUsers.getProfile(attacker).getUnarmedInt() >= 50 && mcUsers.getProfile(attacker).getUnarmedInt() < 100){
|
||||||
defender.setHealth(calculateDamage(defender, 1));
|
event.setDamage(calculateDamage(event, 1));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 100 && mcUsers.getProfile(attacker).getUnarmedInt() < 200){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 100 && mcUsers.getProfile(attacker).getUnarmedInt() < 200){
|
||||||
defender.setHealth(calculateDamage(defender, 2));
|
event.setDamage(calculateDamage(event, 2));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 200 && mcUsers.getProfile(attacker).getUnarmedInt() < 325){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 200 && mcUsers.getProfile(attacker).getUnarmedInt() < 325){
|
||||||
defender.setHealth(calculateDamage(defender, 3));
|
event.setDamage(calculateDamage(event, 3));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 325 && mcUsers.getProfile(attacker).getUnarmedInt() < 475){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 325 && mcUsers.getProfile(attacker).getUnarmedInt() < 475){
|
||||||
defender.setHealth(calculateDamage(defender, 4));
|
event.setDamage(calculateDamage(event, 4));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 475 && mcUsers.getProfile(attacker).getUnarmedInt() < 600){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 475 && mcUsers.getProfile(attacker).getUnarmedInt() < 600){
|
||||||
defender.setHealth(calculateDamage(defender, 5));
|
event.setDamage(calculateDamage(event, 5));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 600 && mcUsers.getProfile(attacker).getUnarmedInt() < 775){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 600 && mcUsers.getProfile(attacker).getUnarmedInt() < 775){
|
||||||
defender.setHealth(calculateDamage(defender, 6));
|
event.setDamage(calculateDamage(event, 6));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 775 && mcUsers.getProfile(attacker).getUnarmedInt() < 950){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 775 && mcUsers.getProfile(attacker).getUnarmedInt() < 950){
|
||||||
defender.setHealth(calculateDamage(defender, 7));
|
event.setDamage(calculateDamage(event, 7));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 950){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 950){
|
||||||
defender.setHealth(calculateDamage(defender, 8));
|
event.setDamage(calculateDamage(event, 8));
|
||||||
}
|
|
||||||
if(defender.getHealth() <= 0){
|
|
||||||
mcm.getInstance().simulateNaturalDrops(defender);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -302,31 +276,28 @@ public class mcCombat {
|
|||||||
if(defender.getHealth() <= 0)
|
if(defender.getHealth() <= 0)
|
||||||
return;
|
return;
|
||||||
if(mcUsers.getProfile(attacker).getAxesInt() >= 500){
|
if(mcUsers.getProfile(attacker).getAxesInt() >= 500){
|
||||||
defender.setHealth(calculateDamage(defender, (4 - axeNerf(attacker.getItemInHand().getTypeId()))));
|
event.setDamage(calculateDamage(event, (4 - axeNerf(attacker.getItemInHand().getTypeId()))));
|
||||||
}
|
|
||||||
if(defender.getHealth() <= 0 || defender.getHealth() - event.getDamage() <= 0){
|
|
||||||
mcm.getInstance().simulateNaturalDrops(defender);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(type == 0 && mcPermissions.getInstance().unarmed(attacker)){
|
if(type == 0 && mcPermissions.getInstance().unarmed(attacker)){
|
||||||
if(defender.getHealth() <= 0)
|
if(defender.getHealth() <= 0)
|
||||||
return;
|
return;
|
||||||
if(mcUsers.getProfile(attacker).getUnarmedInt() >= 50 && mcUsers.getProfile(attacker).getUnarmedInt() < 100){
|
if(mcUsers.getProfile(attacker).getUnarmedInt() >= 50 && mcUsers.getProfile(attacker).getUnarmedInt() < 100){
|
||||||
defender.setHealth(calculateDamage(defender, 1));
|
event.setDamage(calculateDamage(event, 1));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 100 && mcUsers.getProfile(attacker).getUnarmedInt() < 200){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 100 && mcUsers.getProfile(attacker).getUnarmedInt() < 200){
|
||||||
defender.setHealth(calculateDamage(defender, 2));
|
event.setDamage(calculateDamage(event, 2));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 200 && mcUsers.getProfile(attacker).getUnarmedInt() < 325){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 200 && mcUsers.getProfile(attacker).getUnarmedInt() < 325){
|
||||||
defender.setHealth(calculateDamage(defender, 3));
|
event.setDamage(calculateDamage(event, 3));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 325 && mcUsers.getProfile(attacker).getUnarmedInt() < 475){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 325 && mcUsers.getProfile(attacker).getUnarmedInt() < 475){
|
||||||
defender.setHealth(calculateDamage(defender, 4));
|
event.setDamage(calculateDamage(event, 4));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 475 && mcUsers.getProfile(attacker).getUnarmedInt() < 600){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 475 && mcUsers.getProfile(attacker).getUnarmedInt() < 600){
|
||||||
defender.setHealth(calculateDamage(defender, 5));
|
event.setDamage(calculateDamage(event, 5));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 600 && mcUsers.getProfile(attacker).getUnarmedInt() < 775){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 600 && mcUsers.getProfile(attacker).getUnarmedInt() < 775){
|
||||||
defender.setHealth(calculateDamage(defender, 6));
|
event.setDamage(calculateDamage(event, 6));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 775 && mcUsers.getProfile(attacker).getUnarmedInt() < 950){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 775 && mcUsers.getProfile(attacker).getUnarmedInt() < 950){
|
||||||
defender.setHealth(calculateDamage(defender, 7));
|
event.setDamage(calculateDamage(event, 7));
|
||||||
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 950){
|
} else if(mcUsers.getProfile(attacker).getUnarmedInt() >= 950){
|
||||||
defender.setHealth(calculateDamage(defender, 8));
|
event.setDamage(calculateDamage(event, 8));
|
||||||
}
|
}
|
||||||
//XP
|
//XP
|
||||||
if(!mcConfig.getInstance().isMobSpawnTracked(x)){
|
if(!mcConfig.getInstance().isMobSpawnTracked(x)){
|
||||||
@ -350,9 +321,6 @@ public class mcCombat {
|
|||||||
}
|
}
|
||||||
attacker.sendMessage(ChatColor.YELLOW+"Unarmed skill increased by "+skillups+"."+" Total ("+mcUsers.getProfile(attacker).getUnarmed()+")");
|
attacker.sendMessage(ChatColor.YELLOW+"Unarmed skill increased by "+skillups+"."+" Total ("+mcUsers.getProfile(attacker).getUnarmed()+")");
|
||||||
}
|
}
|
||||||
if(defender.getHealth() <= 0 || defender.getHealth() - event.getDamage() <= 0){
|
|
||||||
mcm.getInstance().simulateNaturalDrops(defender);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -419,19 +387,15 @@ public class mcCombat {
|
|||||||
*/
|
*/
|
||||||
int healthbefore = defender.getHealth();
|
int healthbefore = defender.getHealth();
|
||||||
if(mcUsers.getProfile(attacker).getArcheryInt() >= 50 && mcUsers.getProfile(attacker).getArcheryInt() < 250)
|
if(mcUsers.getProfile(attacker).getArcheryInt() >= 50 && mcUsers.getProfile(attacker).getArcheryInt() < 250)
|
||||||
defender.setHealth(calculateDamage(defender, 1));
|
event.setDamage(calculateDamage(event, 1));
|
||||||
if(mcUsers.getProfile(attacker).getArcheryInt() >= 250 && mcUsers.getProfile(attacker).getArcheryInt() < 575)
|
if(mcUsers.getProfile(attacker).getArcheryInt() >= 250 && mcUsers.getProfile(attacker).getArcheryInt() < 575)
|
||||||
defender.setHealth(calculateDamage(defender, 2));
|
event.setDamage(calculateDamage(event, 2));
|
||||||
if(mcUsers.getProfile(attacker).getArcheryInt() >= 575 && mcUsers.getProfile(attacker).getArcheryInt() < 725)
|
if(mcUsers.getProfile(attacker).getArcheryInt() >= 575 && mcUsers.getProfile(attacker).getArcheryInt() < 725)
|
||||||
defender.setHealth(calculateDamage(defender, 3));
|
event.setDamage(calculateDamage(event, 3));
|
||||||
if(mcUsers.getProfile(attacker).getArcheryInt() >= 725 && mcUsers.getProfile(attacker).getArcheryInt() < 1000)
|
if(mcUsers.getProfile(attacker).getArcheryInt() >= 725 && mcUsers.getProfile(attacker).getArcheryInt() < 1000)
|
||||||
defender.setHealth(calculateDamage(defender, 4));
|
event.setDamage(calculateDamage(event, 4));
|
||||||
if(mcUsers.getProfile(attacker).getArcheryInt() >= 1000)
|
if(mcUsers.getProfile(attacker).getArcheryInt() >= 1000)
|
||||||
defender.setHealth(calculateDamage(defender, 5));
|
event.setDamage(calculateDamage(event, 5));
|
||||||
//If it only would've died from mcMMO damage modifiers
|
|
||||||
if(defender.getHealth() <= 0 && healthbefore - event.getDamage() >= 1){
|
|
||||||
mcm.getInstance().simulateNaturalDrops(defender);
|
|
||||||
}
|
|
||||||
//XP
|
//XP
|
||||||
if(!mcConfig.getInstance().isMobSpawnTracked(x)){
|
if(!mcConfig.getInstance().isMobSpawnTracked(x)){
|
||||||
if(x instanceof Creeper)
|
if(x instanceof Creeper)
|
||||||
@ -462,19 +426,15 @@ public class mcCombat {
|
|||||||
Animals defender = (Animals)x;
|
Animals defender = (Animals)x;
|
||||||
int healthbefore = defender.getHealth();
|
int healthbefore = defender.getHealth();
|
||||||
if(mcUsers.getProfile(attacker).getArcheryInt() >= 50 && mcUsers.getProfile(attacker).getArcheryInt() < 250)
|
if(mcUsers.getProfile(attacker).getArcheryInt() >= 50 && mcUsers.getProfile(attacker).getArcheryInt() < 250)
|
||||||
defender.setHealth(calculateDamage(defender, 1));
|
event.setDamage(calculateDamage(event, 1));
|
||||||
if(mcUsers.getProfile(attacker).getArcheryInt() >= 250 && mcUsers.getProfile(attacker).getArcheryInt() < 575)
|
if(mcUsers.getProfile(attacker).getArcheryInt() >= 250 && mcUsers.getProfile(attacker).getArcheryInt() < 575)
|
||||||
defender.setHealth(calculateDamage(defender, 2));
|
event.setDamage(calculateDamage(event, 2));
|
||||||
if(mcUsers.getProfile(attacker).getArcheryInt() >= 575 && mcUsers.getProfile(attacker).getArcheryInt() < 725)
|
if(mcUsers.getProfile(attacker).getArcheryInt() >= 575 && mcUsers.getProfile(attacker).getArcheryInt() < 725)
|
||||||
defender.setHealth(calculateDamage(defender, 3));
|
event.setDamage(calculateDamage(event, 3));
|
||||||
if(mcUsers.getProfile(attacker).getArcheryInt() >= 725 && mcUsers.getProfile(attacker).getArcheryInt() < 1000)
|
if(mcUsers.getProfile(attacker).getArcheryInt() >= 725 && mcUsers.getProfile(attacker).getArcheryInt() < 1000)
|
||||||
defender.setHealth(calculateDamage(defender, 4));
|
event.setDamage(calculateDamage(event, 4));
|
||||||
if(mcUsers.getProfile(attacker).getArcheryInt() >= 1000)
|
if(mcUsers.getProfile(attacker).getArcheryInt() >= 1000)
|
||||||
defender.setHealth(calculateDamage(defender, 5));
|
event.setDamage(calculateDamage(event, 5));
|
||||||
//If it only would've died from mcMMO damage modifiers
|
|
||||||
if(defender.getHealth() <= 0 && healthbefore - event.getDamage() >= 1){
|
|
||||||
mcm.getInstance().simulateNaturalDrops(defender);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
/*
|
/*
|
||||||
* Defender is Squid
|
* Defender is Squid
|
||||||
@ -483,19 +443,15 @@ public class mcCombat {
|
|||||||
Squid defender = (Squid)x;
|
Squid defender = (Squid)x;
|
||||||
int healthbefore = defender.getHealth();
|
int healthbefore = defender.getHealth();
|
||||||
if(mcUsers.getProfile(attacker).getArcheryInt() >= 50 && mcUsers.getProfile(attacker).getArcheryInt() < 250)
|
if(mcUsers.getProfile(attacker).getArcheryInt() >= 50 && mcUsers.getProfile(attacker).getArcheryInt() < 250)
|
||||||
defender.setHealth(calculateDamage(defender, 1));
|
event.setDamage(calculateDamage(event, 1));
|
||||||
if(mcUsers.getProfile(attacker).getArcheryInt() >= 250 && mcUsers.getProfile(attacker).getArcheryInt() < 575)
|
if(mcUsers.getProfile(attacker).getArcheryInt() >= 250 && mcUsers.getProfile(attacker).getArcheryInt() < 575)
|
||||||
defender.setHealth(calculateDamage(defender, 2));
|
event.setDamage(calculateDamage(event, 2));
|
||||||
if(mcUsers.getProfile(attacker).getArcheryInt() >= 575 && mcUsers.getProfile(attacker).getArcheryInt() < 725)
|
if(mcUsers.getProfile(attacker).getArcheryInt() >= 575 && mcUsers.getProfile(attacker).getArcheryInt() < 725)
|
||||||
defender.setHealth(calculateDamage(defender, 3));
|
event.setDamage(calculateDamage(event, 3));
|
||||||
if(mcUsers.getProfile(attacker).getArcheryInt() >= 725 && mcUsers.getProfile(attacker).getArcheryInt() < 1000)
|
if(mcUsers.getProfile(attacker).getArcheryInt() >= 725 && mcUsers.getProfile(attacker).getArcheryInt() < 1000)
|
||||||
defender.setHealth(calculateDamage(defender, 4));
|
event.setDamage(calculateDamage(event, 4));
|
||||||
if(mcUsers.getProfile(attacker).getArcheryInt() >= 1000)
|
if(mcUsers.getProfile(attacker).getArcheryInt() >= 1000)
|
||||||
defender.setHealth(calculateDamage(defender, 5));
|
event.setDamage(calculateDamage(event, 5));
|
||||||
//If it only would've died from mcMMO damage modifiers
|
|
||||||
if(defender.getHealth() <= 0 && healthbefore - event.getDamage() >= 1){
|
|
||||||
mcm.getInstance().simulateNaturalDrops(defender);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
/*
|
/*
|
||||||
* Attacker is Player
|
* Attacker is Player
|
||||||
@ -540,19 +496,15 @@ public class mcCombat {
|
|||||||
}
|
}
|
||||||
int healthbefore = defender.getHealth();
|
int healthbefore = defender.getHealth();
|
||||||
if(mcUsers.getProfile(attacker).getArcheryInt() >= 50 && mcUsers.getProfile(attacker).getArcheryInt() < 250)
|
if(mcUsers.getProfile(attacker).getArcheryInt() >= 50 && mcUsers.getProfile(attacker).getArcheryInt() < 250)
|
||||||
defender.setHealth(calculateDamage(defender, 1));
|
event.setDamage(calculateDamage(event, 1));
|
||||||
if(mcUsers.getProfile(attacker).getArcheryInt() >= 250 && mcUsers.getProfile(attacker).getArcheryInt() < 575)
|
if(mcUsers.getProfile(attacker).getArcheryInt() >= 250 && mcUsers.getProfile(attacker).getArcheryInt() < 575)
|
||||||
defender.setHealth(calculateDamage(defender, 2));
|
event.setDamage(calculateDamage(event, 2));
|
||||||
if(mcUsers.getProfile(attacker).getArcheryInt() >= 575 && mcUsers.getProfile(attacker).getArcheryInt() < 725)
|
if(mcUsers.getProfile(attacker).getArcheryInt() >= 575 && mcUsers.getProfile(attacker).getArcheryInt() < 725)
|
||||||
defender.setHealth(calculateDamage(defender, 3));
|
event.setDamage(calculateDamage(event, 3));
|
||||||
if(mcUsers.getProfile(attacker).getArcheryInt() >= 725 && mcUsers.getProfile(attacker).getArcheryInt() < 1000)
|
if(mcUsers.getProfile(attacker).getArcheryInt() >= 725 && mcUsers.getProfile(attacker).getArcheryInt() < 1000)
|
||||||
defender.setHealth(calculateDamage(defender, 4));
|
event.setDamage(calculateDamage(event, 4));
|
||||||
if(mcUsers.getProfile(attacker).getArcheryInt() >= 1000)
|
if(mcUsers.getProfile(attacker).getArcheryInt() >= 1000)
|
||||||
defender.setHealth(calculateDamage(defender, 5));
|
event.setDamage(calculateDamage(event, 5));
|
||||||
//If it only would've died from mcMMO damage modifiers
|
|
||||||
if(defender.getHealth() <= 0 && healthbefore - event.getDamage() >= 1){
|
|
||||||
mcm.getInstance().simulateNaturalDrops(defender);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -622,41 +574,8 @@ public class mcCombat {
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
public int calculateDamage(Player player, int dmg){
|
public int calculateDamage(EntityDamageEvent event, int dmg){
|
||||||
int health = player.getHealth();
|
return event.getDamage() + dmg;
|
||||||
if(health - dmg <0){
|
|
||||||
return 0;
|
|
||||||
} else {
|
|
||||||
health-= dmg;
|
|
||||||
return health;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
public int calculateDamage(Squid squid, int dmg){
|
|
||||||
int health = squid.getHealth();
|
|
||||||
if(health - dmg <0){
|
|
||||||
return 0;
|
|
||||||
} else {
|
|
||||||
health-= dmg;
|
|
||||||
return health;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
public int calculateDamage(Monster monster, int dmg){
|
|
||||||
int health = monster.getHealth();
|
|
||||||
if(health - dmg <0){
|
|
||||||
return 0;
|
|
||||||
} else {
|
|
||||||
health-= dmg;
|
|
||||||
return health;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
public int calculateDamage(Animals animal, int dmg){
|
|
||||||
int health = animal.getHealth();
|
|
||||||
if(health - dmg <0){
|
|
||||||
return 0;
|
|
||||||
} else {
|
|
||||||
health-= dmg;
|
|
||||||
return health;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
public void axeCriticalCheckAnimals(Player attacker, EntityDamageByEntityEvent event, Entity x){
|
public void axeCriticalCheckAnimals(Player attacker, EntityDamageByEntityEvent event, Entity x){
|
||||||
if(mcm.getInstance().isAxes(attacker.getItemInHand()) && mcPermissions.getInstance().axes(attacker)){
|
if(mcm.getInstance().isAxes(attacker.getItemInHand()) && mcPermissions.getInstance().axes(attacker)){
|
||||||
@ -664,8 +583,7 @@ public class mcCombat {
|
|||||||
if(Math.random() * 100 > 95){
|
if(Math.random() * 100 > 95){
|
||||||
if(x instanceof Animals){
|
if(x instanceof Animals){
|
||||||
Animals animal = (Animals)x;
|
Animals animal = (Animals)x;
|
||||||
animal.setHealth(0);
|
event.setDamage(event.getDamage() + animal.getHealth() * 2);
|
||||||
mcm.getInstance().simulateNaturalDrops(x);
|
|
||||||
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -674,8 +592,7 @@ public class mcCombat {
|
|||||||
if(Math.random() * 10 > 9){
|
if(Math.random() * 10 > 9){
|
||||||
if(x instanceof Animals){
|
if(x instanceof Animals){
|
||||||
Animals animal = (Animals)x;
|
Animals animal = (Animals)x;
|
||||||
animal.setHealth(0);
|
event.setDamage(event.getDamage() + animal.getHealth() * 2);
|
||||||
mcm.getInstance().simulateNaturalDrops(x);
|
|
||||||
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -684,8 +601,7 @@ public class mcCombat {
|
|||||||
if(Math.random() * 10 > 8){
|
if(Math.random() * 10 > 8){
|
||||||
if(x instanceof Animals){
|
if(x instanceof Animals){
|
||||||
Animals animal = (Animals)x;
|
Animals animal = (Animals)x;
|
||||||
animal.setHealth(0);
|
event.setDamage(event.getDamage() + animal.getHealth() * 2);
|
||||||
mcm.getInstance().simulateNaturalDrops(x);
|
|
||||||
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -694,8 +610,7 @@ public class mcCombat {
|
|||||||
if(Math.random() * 10 > 7){
|
if(Math.random() * 10 > 7){
|
||||||
if(x instanceof Animals){
|
if(x instanceof Animals){
|
||||||
Animals animal = (Animals)x;
|
Animals animal = (Animals)x;
|
||||||
animal.setHealth(0);
|
event.setDamage(event.getDamage() + animal.getHealth() * 2);
|
||||||
mcm.getInstance().simulateNaturalDrops(x);
|
|
||||||
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -704,8 +619,7 @@ public class mcCombat {
|
|||||||
if(Math.random() * 10 > 6){
|
if(Math.random() * 10 > 6){
|
||||||
if(x instanceof Animals){
|
if(x instanceof Animals){
|
||||||
Animals animal = (Animals)x;
|
Animals animal = (Animals)x;
|
||||||
animal.setHealth(0);
|
event.setDamage(event.getDamage() + animal.getHealth() * 2);
|
||||||
mcm.getInstance().simulateNaturalDrops(x);
|
|
||||||
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -718,8 +632,7 @@ public class mcCombat {
|
|||||||
if(Math.random() * 100 > 95){
|
if(Math.random() * 100 > 95){
|
||||||
if(x instanceof Monster){
|
if(x instanceof Monster){
|
||||||
Monster monster = (Monster)x;
|
Monster monster = (Monster)x;
|
||||||
monster.setHealth(0);
|
event.setDamage(event.getDamage() + monster.getHealth() * 2);
|
||||||
mcm.getInstance().simulateNaturalDrops(x);
|
|
||||||
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -728,8 +641,7 @@ public class mcCombat {
|
|||||||
if(Math.random() * 10 > 9){
|
if(Math.random() * 10 > 9){
|
||||||
if(x instanceof Monster){
|
if(x instanceof Monster){
|
||||||
Monster monster = (Monster)x;
|
Monster monster = (Monster)x;
|
||||||
monster.setHealth(0);
|
event.setDamage(event.getDamage() + monster.getHealth() * 2);
|
||||||
mcm.getInstance().simulateNaturalDrops(x);
|
|
||||||
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -738,8 +650,7 @@ public class mcCombat {
|
|||||||
if(Math.random() * 10 > 8){
|
if(Math.random() * 10 > 8){
|
||||||
if(x instanceof Monster){
|
if(x instanceof Monster){
|
||||||
Monster monster = (Monster)x;
|
Monster monster = (Monster)x;
|
||||||
monster.setHealth(0);
|
event.setDamage(event.getDamage() + monster.getHealth() * 2);
|
||||||
mcm.getInstance().simulateNaturalDrops(x);
|
|
||||||
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -748,8 +659,7 @@ public class mcCombat {
|
|||||||
if(Math.random() * 10 > 7){
|
if(Math.random() * 10 > 7){
|
||||||
if(x instanceof Monster){
|
if(x instanceof Monster){
|
||||||
Monster monster = (Monster)x;
|
Monster monster = (Monster)x;
|
||||||
monster.setHealth(0);
|
event.setDamage(event.getDamage() + monster.getHealth() * 2);
|
||||||
mcm.getInstance().simulateNaturalDrops(x);
|
|
||||||
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -758,8 +668,7 @@ public class mcCombat {
|
|||||||
if(Math.random() * 10 > 6){
|
if(Math.random() * 10 > 6){
|
||||||
if(x instanceof Monster){
|
if(x instanceof Monster){
|
||||||
Monster monster = (Monster)x;
|
Monster monster = (Monster)x;
|
||||||
monster.setHealth(0);
|
event.setDamage(event.getDamage() + monster.getHealth() * 2);
|
||||||
mcm.getInstance().simulateNaturalDrops(x);
|
|
||||||
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -772,7 +681,7 @@ public class mcCombat {
|
|||||||
if(Math.random() * 100 > 95){
|
if(Math.random() * 100 > 95){
|
||||||
if(x instanceof Player){
|
if(x instanceof Player){
|
||||||
Player player = (Player)x;
|
Player player = (Player)x;
|
||||||
player.setHealth(calculateDamage(player, (player.getHealth() - event.getDamage())));
|
event.setDamage(event.getDamage() * 2);
|
||||||
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
||||||
player.sendMessage(ChatColor.DARK_RED + "You were CRITICALLY hit!");
|
player.sendMessage(ChatColor.DARK_RED + "You were CRITICALLY hit!");
|
||||||
}
|
}
|
||||||
@ -782,7 +691,7 @@ public class mcCombat {
|
|||||||
if(Math.random() * 10 > 9){
|
if(Math.random() * 10 > 9){
|
||||||
if(x instanceof Player){
|
if(x instanceof Player){
|
||||||
Player player = (Player)x;
|
Player player = (Player)x;
|
||||||
player.setHealth(calculateDamage(player, (player.getHealth() - event.getDamage())));
|
event.setDamage(event.getDamage() * 2);
|
||||||
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
||||||
player.sendMessage(ChatColor.DARK_RED + "You were CRITICALLY hit!");
|
player.sendMessage(ChatColor.DARK_RED + "You were CRITICALLY hit!");
|
||||||
}
|
}
|
||||||
@ -792,7 +701,7 @@ public class mcCombat {
|
|||||||
if(Math.random() * 10 > 8){
|
if(Math.random() * 10 > 8){
|
||||||
if(x instanceof Player){
|
if(x instanceof Player){
|
||||||
Player player = (Player)x;
|
Player player = (Player)x;
|
||||||
player.setHealth(calculateDamage(player, (player.getHealth() - event.getDamage())));
|
event.setDamage(event.getDamage() * 2);
|
||||||
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
||||||
player.sendMessage(ChatColor.DARK_RED + "You were CRITICALLY hit!");
|
player.sendMessage(ChatColor.DARK_RED + "You were CRITICALLY hit!");
|
||||||
}
|
}
|
||||||
@ -802,7 +711,7 @@ public class mcCombat {
|
|||||||
if(Math.random() * 10 > 7){
|
if(Math.random() * 10 > 7){
|
||||||
if(x instanceof Player){
|
if(x instanceof Player){
|
||||||
Player player = (Player)x;
|
Player player = (Player)x;
|
||||||
player.setHealth(calculateDamage(player, (player.getHealth() - event.getDamage())));
|
event.setDamage(event.getDamage() * 2);
|
||||||
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
||||||
player.sendMessage(ChatColor.DARK_RED + "You were CRITICALLY hit!");
|
player.sendMessage(ChatColor.DARK_RED + "You were CRITICALLY hit!");
|
||||||
}
|
}
|
||||||
@ -812,7 +721,7 @@ public class mcCombat {
|
|||||||
if(Math.random() * 10 > 6){
|
if(Math.random() * 10 > 6){
|
||||||
if(x instanceof Player){
|
if(x instanceof Player){
|
||||||
Player player = (Player)x;
|
Player player = (Player)x;
|
||||||
player.setHealth(calculateDamage(player, (player.getHealth() - event.getDamage())));
|
event.setDamage(event.getDamage() * 2);
|
||||||
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
attacker.sendMessage(ChatColor.RED+"CRITICAL HIT!");
|
||||||
player.sendMessage(ChatColor.DARK_RED + "You were CRITICALLY hit!");
|
player.sendMessage(ChatColor.DARK_RED + "You were CRITICALLY hit!");
|
||||||
}
|
}
|
||||||
|
@ -32,7 +32,7 @@ public class mcMMO extends JavaPlugin {
|
|||||||
|
|
||||||
//herp
|
//herp
|
||||||
public void onEnable() {
|
public void onEnable() {
|
||||||
mcMMO_Timer.schedule(new mcTimer(this), 0, (long)(2000));
|
//mcMMO_Timer.schedule(new mcTimer(this), 0, (long)(2000));
|
||||||
//Make the directory if it does not exist
|
//Make the directory if it does not exist
|
||||||
new File(maindirectory).mkdir();
|
new File(maindirectory).mkdir();
|
||||||
//Make the file if it does not exist
|
//Make the file if it does not exist
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
name: mcMMO
|
name: mcMMO
|
||||||
main: com.gmail.nossr50.mcMMO
|
main: com.gmail.nossr50.mcMMO
|
||||||
version: 0.8.11
|
version: 0.8.13
|
Loading…
Reference in New Issue
Block a user