diff --git a/TwosideKeeper.jar b/TwosideKeeper.jar index e25b914..613b60b 100644 Binary files a/TwosideKeeper.jar and b/TwosideKeeper.jar differ diff --git a/src/sig/plugin/TwosideKeeper/CustomDamage.java b/src/sig/plugin/TwosideKeeper/CustomDamage.java index 84a5c04..9fe9082 100644 --- a/src/sig/plugin/TwosideKeeper/CustomDamage.java +++ b/src/sig/plugin/TwosideKeeper/CustomDamage.java @@ -1568,7 +1568,8 @@ public class CustomDamage { case LIGHTNING: if (damager instanceof Creeper) { Creeper c = (Creeper)damager; - double damage_mult = 2.0d/(c.getLocation().distance(target.getLocation())+1.0); + //double damage_mult = 2.0d/(c.getLocation().distance(target.getLocation())+1.0); + double damage_mult = Math.max(0d, 1 - damager.getLocation().distanceSquared(target.getLocation())/49); damage_mult*=TwosideKeeper.EXPLOSION_DMG_MULT; difficulty_damage = (c.isPowered())?new double[]{48.0*damage_mult,72.0*damage_mult,98.0*damage_mult}:new double[]{24.0*damage_mult,36.0*damage_mult,49.0*damage_mult}; } else { diff --git a/src/sig/plugin/TwosideKeeper/HelperStructures/Common/GenericFunctions.java b/src/sig/plugin/TwosideKeeper/HelperStructures/Common/GenericFunctions.java index eda2613..63c2d0e 100644 --- a/src/sig/plugin/TwosideKeeper/HelperStructures/Common/GenericFunctions.java +++ b/src/sig/plugin/TwosideKeeper/HelperStructures/Common/GenericFunctions.java @@ -39,6 +39,7 @@ import org.bukkit.inventory.Inventory; import org.bukkit.inventory.ItemFlag; import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.ItemMeta; +import org.bukkit.inventory.meta.LeatherArmorMeta; import org.bukkit.inventory.meta.PotionMeta; import org.bukkit.inventory.meta.SkullMeta; import org.bukkit.material.MaterialData; @@ -3224,6 +3225,7 @@ public class GenericFunctions { } int tier = 1; UpdateSetLore(set,tier,item); + rangerarmor=true; /*List currentlore = item.getItemMeta().getLore(); ItemMeta m = item.getItemMeta(); currentlore.add(0,ChatColor.LIGHT_PURPLE+"Ranger Gear"); @@ -3236,6 +3238,24 @@ public class GenericFunctions { lore.add(); lore.add();*/ } + if (rangerarmor && item.getType().name().contains("LEATHER")) { + LeatherArmorMeta lm = (LeatherArmorMeta)item.getItemMeta(); + if (lm.getColor()==null) { + if (item.getItemMeta().getLore().contains(ChatColor.GOLD+""+ChatColor.BOLD+"Jamdak Set")) { + lm.setColor(org.bukkit.Color.fromRGB(128, 64, 0)); + } + if (item.getItemMeta().getLore().contains(ChatColor.GOLD+""+ChatColor.BOLD+"Darnys Set")) { + lm.setColor(org.bukkit.Color.fromRGB(224, 224, 224)); + } + if (item.getItemMeta().getLore().contains(ChatColor.GOLD+""+ChatColor.BOLD+"Alikahn Set")) { + lm.setColor(org.bukkit.Color.fromRGB(64, 0, 64)); + } + if (item.getItemMeta().getLore().contains(ChatColor.GOLD+""+ChatColor.BOLD+"Lorasaadi Set")) { + lm.setColor(org.bukkit.Color.fromRGB(0, 64, 0)); + } + } + item.setItemMeta(lm); + } } } @@ -3300,7 +3320,7 @@ public class GenericFunctions { damage_mult*=CalculateBlastResistance((LivingEntity)ent); TwosideKeeper.log("dmg mult is "+damage_mult,2); dmg = basedmg * damage_mult; - if (ent instanceof Player) {TwosideKeeper.log("Damage is "+dmg, 2);} + if (ent instanceof Player) {TwosideKeeper.log("Damage is "+dmg, 5);} CustomDamage.ApplyDamage(dmg, null, (LivingEntity)ent, null, "Explosion", CustomDamage.NONE); //subtractHealth((LivingEntity)nearbyentities.get(i),null,NewCombat.CalculateDamageReduction(dmg, (LivingEntity)nearbyentities.get(i), null)); } diff --git a/src/sig/plugin/TwosideKeeper/HelperStructures/Loot.java b/src/sig/plugin/TwosideKeeper/HelperStructures/Loot.java index e46a21a..194ce06 100644 --- a/src/sig/plugin/TwosideKeeper/HelperStructures/Loot.java +++ b/src/sig/plugin/TwosideKeeper/HelperStructures/Loot.java @@ -147,6 +147,7 @@ public class Loot { switch (type) { case 0:{ set = ItemSet.PANROS; + tierbonus = modifyTierBonus(item,tierbonus); set_name = prefix+"Panros Striker "+GenericFunctions.UserFriendlyMaterialName(item.getType()); //Striker set. }break; case 1:{ @@ -154,6 +155,7 @@ public class Loot { if (item.getType().toString().contains("SWORD")) { item.setType(Material.SHIELD); } + tierbonus = modifyTierBonus(item,tierbonus); set_name = prefix+"Songsteel Defender "+GenericFunctions.UserFriendlyMaterialName(item.getType()); //Defender set. }break; case 2:{ @@ -161,6 +163,7 @@ public class Loot { if (item.getType().toString().contains("SWORD")) { item.setType(Material.valueOf(item.getType().toString().replace("SWORD","")+"AXE")); } + tierbonus = modifyTierBonus(item,tierbonus); set_name = prefix+"Dawntracker Barbarian "+GenericFunctions.UserFriendlyMaterialName(item.getType()); }break; case 3:{ @@ -168,6 +171,7 @@ public class Loot { if (item.getType().toString().contains("SWORD")) { //Convert Slayer weapon here. ??? } + tierbonus = modifyTierBonus(item,tierbonus); set_name = prefix+"Lorasys Slayer "+GenericFunctions.UserFriendlyMaterialName(item.getType()); }break; case 4:{ @@ -224,6 +228,25 @@ public class Loot { return item; } + private static int modifyTierBonus(ItemStack item, int tierbonus) { + if (item.getType().name().contains("IRON")) { + if (Math.random()<=0.5) { + tierbonus+=2; + } + } else + if (item.getType().name().contains("DIAMOND")) { + if (Math.random()<=0.5) { + tierbonus+=1; + } + } else + if (item.getType().name().contains("GOLD")) { + if (tierbonus>0 && Math.random()<=0.5) { + tierbonus=0; + } + } + return tierbonus; + } + private static int GetHardenedBreaks(Material type) { if (type.toString().contains("STONE")) { return (int)((Math.random()*3)+2); diff --git a/src/sig/plugin/TwosideKeeper/HelperStructures/ShopPurchase.java b/src/sig/plugin/TwosideKeeper/HelperStructures/ShopPurchase.java index a662c57..a1c2f86 100644 --- a/src/sig/plugin/TwosideKeeper/HelperStructures/ShopPurchase.java +++ b/src/sig/plugin/TwosideKeeper/HelperStructures/ShopPurchase.java @@ -40,7 +40,7 @@ public class ShopPurchase { public String getPlayer() { return player; } - public String getCustomer() { + public String getSeller() { return customer; } public ItemStack getItem() { diff --git a/src/sig/plugin/TwosideKeeper/TwosideKeeper.java b/src/sig/plugin/TwosideKeeper/TwosideKeeper.java index 54792e6..d37b8df 100644 --- a/src/sig/plugin/TwosideKeeper/TwosideKeeper.java +++ b/src/sig/plugin/TwosideKeeper/TwosideKeeper.java @@ -1135,6 +1135,12 @@ public class TwosideKeeper extends JavaPlugin implements Listener { }*/ /*Monster m = MonsterController.convertMonster((Monster)p.getWorld().spawnEntity(p.getLocation(),EntityType.ZOMBIE), MonsterDifficulty.ELITE); m.setHealth(m.getMaxHealth()/16d);*/ + p.getWorld().dropItemNaturally(p.getLocation(), TwosideKeeperAPI.generateMegaPiece(Material.IRON_CHESTPLATE, true, true, 5)); + p.getWorld().dropItemNaturally(p.getLocation(), TwosideKeeperAPI.generateMegaPiece(Material.IRON_CHESTPLATE, true, true, 5)); + p.getWorld().dropItemNaturally(p.getLocation(), TwosideKeeperAPI.generateMegaPiece(Material.DIAMOND_CHESTPLATE, true, true, 5)); + p.getWorld().dropItemNaturally(p.getLocation(), TwosideKeeperAPI.generateMegaPiece(Material.DIAMOND_CHESTPLATE, true, true, 5)); + p.getWorld().dropItemNaturally(p.getLocation(), TwosideKeeperAPI.generateMegaPiece(Material.GOLD_CHESTPLATE, true, true, 5)); + p.getWorld().dropItemNaturally(p.getLocation(), TwosideKeeperAPI.generateMegaPiece(Material.GOLD_CHESTPLATE, true, true, 5)); /*p.getWorld().dropItemNaturally(p.getLocation(), UPGRADE_SHARD.getItemStack()); ItemStack upgrade = UPGRADE_SHARD.getItemStack(); GenericFunctions.setUpgradeShardTier(upgrade,3); diff --git a/src/sig/plugin/TwosideKeeper/WorldShopManager.java b/src/sig/plugin/TwosideKeeper/WorldShopManager.java index 60a1b3c..3fd71a6 100644 --- a/src/sig/plugin/TwosideKeeper/WorldShopManager.java +++ b/src/sig/plugin/TwosideKeeper/WorldShopManager.java @@ -282,12 +282,14 @@ public class WorldShopManager { //workable.set("recycling_center.count", nodes.size()); for (int i=0;i