diff --git a/TwosideKeeper.jar b/TwosideKeeper.jar index 6b04d07..46d2b1b 100644 Binary files a/TwosideKeeper.jar and b/TwosideKeeper.jar differ diff --git a/src/sig/plugin/TwosideKeeper/AwakenedArtifact.java b/src/sig/plugin/TwosideKeeper/AwakenedArtifact.java index 8cb27d6..08f67e2 100644 --- a/src/sig/plugin/TwosideKeeper/AwakenedArtifact.java +++ b/src/sig/plugin/TwosideKeeper/AwakenedArtifact.java @@ -98,7 +98,7 @@ public class AwakenedArtifact { item = setEXP(item,totalval%1000); item = addAP(item,totalval/1000); double potentialred = 10.0d; - potentialred *= 1 - GenericFunctions.getAbilityValue(ArtifactAbility.PRESERVATION, artifact)/100d; + potentialred *= 1 - (5+GenericFunctions.getAbilityValue(ArtifactAbility.PRESERVATION, artifact))/100d; TwosideKeeper.log("Potential reduction is reduced by "+(10-potentialred), 4); if (getPotential(item)>potentialred) { item = setPotential(item,(int)(getPotential(item)-potentialred)); diff --git a/src/sig/plugin/TwosideKeeper/CustomDamage.java b/src/sig/plugin/TwosideKeeper/CustomDamage.java index c5e60e7..994cf1d 100644 --- a/src/sig/plugin/TwosideKeeper/CustomDamage.java +++ b/src/sig/plugin/TwosideKeeper/CustomDamage.java @@ -1292,7 +1292,7 @@ public class CustomDamage { //double finaldmg = CalculateDamageReduction(GenericFunctions.getAbilityValue(ArtifactAbility.ERUPTION, p.getEquipment().getItemInMainHand()),mon,null); //GenericFunctions.DealDamageToMob(finaldmg, mon, p, p.getEquipment().getItemInMainHand()); TwosideKeeperAPI.removeNoDamageTick(p, (LivingEntity)mon); - CustomDamage.ApplyDamage(GenericFunctions.getAbilityValue(ArtifactAbility.ERUPTION, weapon), + CustomDamage.ApplyDamage(35+GenericFunctions.getAbilityValue(ArtifactAbility.ERUPTION, weapon), p,mon,null,"Eruption",CustomDamage.NONE); mon.addPotionEffect(new PotionEffect(PotionEffectType.LEVITATION,20,15)); //Attempt to dig out the blocks below. @@ -1522,7 +1522,7 @@ public class CustomDamage { static List getAOEList(ItemStack weapon, LivingEntity target) { List list = new ArrayList(); if (ArtifactAbility.containsEnchantment(ArtifactAbility.AOE, weapon)) { - double aoerange = GenericFunctions.getAbilityValue(ArtifactAbility.AOE, weapon); + double aoerange = 1+GenericFunctions.getAbilityValue(ArtifactAbility.AOE, weapon); if (target!=null) { List nearbylist=target.getNearbyEntities(aoerange,aoerange,aoerange); list = trimNonLivingEntities(nearbylist); @@ -1702,7 +1702,7 @@ public class CustomDamage { double duration = 0.0; for (int i=0;i getEnchantments(ItemStack item) { @@ -639,6 +642,11 @@ public enum ArtifactAbility { msg=msg.replace("[REPAIRCHANCE]", ChatColor.BLUE+df.format(tier/3)+ChatColor.RESET); msg=msg.replace("[DODGEVAL]", ChatColor.BLUE+df.format(tier)+ChatColor.RESET); msg=msg.replace("[GREEDCHANCE]", ChatColor.BLUE+df.format(8-(tier/2d))+ChatColor.RESET); + msg=msg.replace("[ERUPTIONVAL]", ChatColor.BLUE+df.format(35+calculateValue(ability,tier,abilitylv))+ChatColor.RESET); + msg=msg.replace("[EARTHWAVEVAL]", ChatColor.BLUE+df.format(20+calculateValue(ability,tier,abilitylv))+ChatColor.RESET); + msg=msg.replace("[AOEVAL]", ChatColor.BLUE+df.format(1+calculateValue(ability,tier,abilitylv))+ChatColor.RESET); + msg=msg.replace("[POTVAL]", ChatColor.BLUE+df.format(5+calculateValue(ability,tier,abilitylv))+ChatColor.RESET); + msg=msg.replace("[GRACEFULVAL]", ChatColor.BLUE+df.format(0.1+calculateValue(ability,tier,abilitylv))+ChatColor.RESET); return msg; } public static String displayDescriptionUpgrade(ArtifactAbility ability, int tier, int fromlv, int tolv, double playerdmgval) { //Level to display information for. @@ -652,6 +660,11 @@ public enum ArtifactAbility { msg=msg.replace("[REPAIRCHANCE]", df.format(tier/3)); msg=msg.replace("[DODGEVAL]", df.format(tier)); msg=msg.replace("[GREEDCHANCE]", ChatColor.BLUE+df.format(8-(tier/2d))+ChatColor.RESET); + msg=msg.replace("[ERUPTIONVAL]", DisplayChangedValue(df.format(35+calculateValue(ability,tier,fromlv))+ChatColor.RESET,df.format(35+calculateValue(ability,tier,tolv))+ChatColor.RESET)); + msg=msg.replace("[EARTHWAVEVAL]", DisplayChangedValue(df.format(20+calculateValue(ability,tier,fromlv))+ChatColor.RESET,df.format(20+calculateValue(ability,tier,tolv))+ChatColor.RESET)); + msg=msg.replace("[AOEVAL]", DisplayChangedValue(df.format(1+calculateValue(ability,tier,fromlv))+ChatColor.RESET,df.format(1+calculateValue(ability,tier,tolv))+ChatColor.RESET)); + msg=msg.replace("[POTVAL]", DisplayChangedValue(df.format(5+calculateValue(ability,tier,fromlv))+ChatColor.RESET,df.format(5+calculateValue(ability,tier,tolv))+ChatColor.RESET)); + msg=msg.replace("[GRACEFULVAL]", DisplayChangedValue(df.format(0.1+calculateValue(ability,tier,fromlv))+ChatColor.RESET,df.format(0.1+calculateValue(ability,tier,tolv))+ChatColor.RESET)); return msg; } diff --git a/src/sig/plugin/TwosideKeeper/TwosideKeeper.java b/src/sig/plugin/TwosideKeeper/TwosideKeeper.java index 5689256..ac48533 100644 --- a/src/sig/plugin/TwosideKeeper/TwosideKeeper.java +++ b/src/sig/plugin/TwosideKeeper/TwosideKeeper.java @@ -491,6 +491,11 @@ public class TwosideKeeper extends JavaPlugin implements Listener { public static long lastTimingReport=0; public static List weather_watch_users = new ArrayList(); + + public final static int MAX_PIGMEN_AGGRO_AT_ONCE = 4; + + public static long lastPigmanAggroTime = 0; + public static long pigmanAggroCount = 0; public static Plugin plugin; public int sleepingPlayers=0; @@ -1664,6 +1669,9 @@ public class TwosideKeeper extends JavaPlugin implements Listener { case "TIMINGSREPORT":{ runServerHeartbeat.performTimingsReport(true); }break; + case "SETTIER":{ + ItemUtils.ModifyLoreLineContainingSubstring(p.getEquipment().getItemInMainHand(), ChatColor.GOLD+""+ChatColor.BOLD+"T", ChatColor.GOLD+""+ChatColor.BOLD+"T"+Integer.parseInt(args[1])+" Artifact"); + } } } //LivingEntity m = MonsterController.convertMonster((Monster)p.getWorld().spawnEntity(p.getLocation(),EntityType.ZOMBIE), MonsterDifficulty.ELITE); @@ -1755,12 +1763,12 @@ public class TwosideKeeper extends JavaPlugin implements Listener { //Arrow newar = p.getWorld().spawnArrow(p.getLocation(), p.getLocation().getDirection(), 1f, 12f); //GenericFunctions.setBowMode(p.getEquipment().getItemInMainHand(), BowMode.SNIPE); //p.sendMessage("This is bow mode "+GenericFunctions.getBowMode(p.getEquipment().getItemInMainHand())); - /*for (int i=0;i