mirror of
				https://github.com/mcMMO-Dev/mcMMO.git
				synced 2025-10-26 06:53:43 +01:00 
			
		
		
		
	| @@ -10,6 +10,7 @@ Key: | |||||||
| Version 1.5.02-dev | Version 1.5.02-dev | ||||||
|  + Added option to config.yml for Chimaera Wings to stop using bed spawn points |  + Added option to config.yml for Chimaera Wings to stop using bed spawn points | ||||||
|  + Added option to config.yml to let non-tools in hand count as unarmed |  + Added option to config.yml to let non-tools in hand count as unarmed | ||||||
|  |  + Added option to experience.yml to control XP gained by killing bred animals | ||||||
|  = Fixed bug where no Mining XP was granted when Flux Mining was successful |  = Fixed bug where no Mining XP was granted when Flux Mining was successful | ||||||
|  = Fixed bug where MobHealthbarTypes were not saved between server restarts |  = Fixed bug where MobHealthbarTypes were not saved between server restarts | ||||||
|  ! Changed Flux Mining mechanics. In order to use the ability, you need to infuse a pickaxe with furnace powers first. |  ! Changed Flux Mining mechanics. In order to use the ability, you need to infuse a pickaxe with furnace powers first. | ||||||
|   | |||||||
| @@ -72,6 +72,11 @@ public class ExperienceConfig extends AutoUpdateConfigLoader { | |||||||
|             reason.add("Experience_Formula.Mobspawners.Multiplier should be at least 0!"); |             reason.add("Experience_Formula.Mobspawners.Multiplier should be at least 0!"); | ||||||
|         } |         } | ||||||
|  |  | ||||||
|  |         /* Bred Mob modifier */ | ||||||
|  |         if (getBredMobXpMultiplier() < 0) { | ||||||
|  |             reason.add("Experience_Formula.Breeding.Multiplier should be at least 0!"); | ||||||
|  |         } | ||||||
|  |  | ||||||
|         /* Conversion */ |         /* Conversion */ | ||||||
|         if (getExpModifier() <= 0) { |         if (getExpModifier() <= 0) { | ||||||
|             reason.add("Conversion.Exp_Modifier should be greater than 0!"); |             reason.add("Conversion.Exp_Modifier should be greater than 0!"); | ||||||
| @@ -177,6 +182,7 @@ public class ExperienceConfig extends AutoUpdateConfigLoader { | |||||||
|  |  | ||||||
|     /* Spawned Mob modifier */ |     /* Spawned Mob modifier */ | ||||||
|     public double getSpawnedMobXpMultiplier() { return config.getDouble("Experience_Formula.Mobspawners.Multiplier", 0.0); } |     public double getSpawnedMobXpMultiplier() { return config.getDouble("Experience_Formula.Mobspawners.Multiplier", 0.0); } | ||||||
|  |     public double getBredMobXpMultiplier() { return config.getDouble("Experience_Formula.Breeding.Multiplier", 1.0); } | ||||||
|  |  | ||||||
|     /* Skill modifiers */ |     /* Skill modifiers */ | ||||||
|     public double getFormulaSkillModifier(SkillType skill) { return config.getDouble("Experience_Formula.Modifier." + StringUtils.getCapitalized(skill.toString())); } |     public double getFormulaSkillModifier(SkillType skill) { return config.getDouble("Experience_Formula.Modifier." + StringUtils.getCapitalized(skill.toString())); } | ||||||
|   | |||||||
| @@ -416,19 +416,24 @@ public class EntityListener implements Listener { | |||||||
|      */ |      */ | ||||||
|     @EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true) |     @EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true) | ||||||
|     public void onCreatureSpawn(CreatureSpawnEvent event) { |     public void onCreatureSpawn(CreatureSpawnEvent event) { | ||||||
|  |         LivingEntity entity = event.getEntity(); | ||||||
|  |  | ||||||
|         switch (event.getSpawnReason()) { |         switch (event.getSpawnReason()) { | ||||||
|             case SPAWNER: |             case SPAWNER: | ||||||
|             case SPAWNER_EGG: |             case SPAWNER_EGG: | ||||||
|                 LivingEntity entity = event.getEntity(); |  | ||||||
|                 Entity passenger = entity.getPassenger(); |  | ||||||
|  |  | ||||||
|                 entity.setMetadata(mcMMO.entityMetadataKey, mcMMO.metadataValue); |                 entity.setMetadata(mcMMO.entityMetadataKey, mcMMO.metadataValue); | ||||||
|  |  | ||||||
|  |                 Entity passenger = entity.getPassenger(); | ||||||
|  |  | ||||||
|                 if (passenger != null) { |                 if (passenger != null) { | ||||||
|                     passenger.setMetadata(mcMMO.entityMetadataKey, mcMMO.metadataValue); |                     passenger.setMetadata(mcMMO.entityMetadataKey, mcMMO.metadataValue); | ||||||
|                 } |                 } | ||||||
|                 return; |                 return; | ||||||
|  |  | ||||||
|  |             case BREEDING: | ||||||
|  |                 entity.setMetadata(mcMMO.bredMetadataKey, mcMMO.metadataValue); | ||||||
|  |                 return; | ||||||
|  |  | ||||||
|             default: |             default: | ||||||
|                 return; |                 return; | ||||||
|         } |         } | ||||||
|   | |||||||
| @@ -121,6 +121,7 @@ public class mcMMO extends JavaPlugin { | |||||||
|     public final static String greenThumbDataKey   = "mcMMO: Green Thumb"; |     public final static String greenThumbDataKey   = "mcMMO: Green Thumb"; | ||||||
|     public final static String pistonDataKey       = "mcMMO: Piston State"; |     public final static String pistonDataKey       = "mcMMO: Piston State"; | ||||||
|     public final static String databaseCommandKey  = "mcMMO: Processing Database Command"; |     public final static String databaseCommandKey  = "mcMMO: Processing Database Command"; | ||||||
|  |     public final static String bredMetadataKey     = "mcMMO: Bred Animal"; | ||||||
|  |  | ||||||
|     public static FixedMetadataValue metadataValue; |     public static FixedMetadataValue metadataValue; | ||||||
|  |  | ||||||
|   | |||||||
| @@ -10,7 +10,6 @@ import org.bukkit.entity.Animals; | |||||||
| import org.bukkit.entity.Arrow; | import org.bukkit.entity.Arrow; | ||||||
| import org.bukkit.entity.Entity; | import org.bukkit.entity.Entity; | ||||||
| import org.bukkit.entity.EntityType; | import org.bukkit.entity.EntityType; | ||||||
| import org.bukkit.entity.Guardian; |  | ||||||
| import org.bukkit.entity.IronGolem; | import org.bukkit.entity.IronGolem; | ||||||
| import org.bukkit.entity.LivingEntity; | import org.bukkit.entity.LivingEntity; | ||||||
| import org.bukkit.entity.Player; | import org.bukkit.entity.Player; | ||||||
| @@ -41,7 +40,6 @@ import com.gmail.nossr50.skills.axes.AxesManager; | |||||||
| import com.gmail.nossr50.skills.swords.Swords; | import com.gmail.nossr50.skills.swords.Swords; | ||||||
| import com.gmail.nossr50.skills.swords.SwordsManager; | import com.gmail.nossr50.skills.swords.SwordsManager; | ||||||
| import com.gmail.nossr50.skills.taming.TamingManager; | import com.gmail.nossr50.skills.taming.TamingManager; | ||||||
| import com.gmail.nossr50.skills.unarmed.Unarmed; |  | ||||||
| import com.gmail.nossr50.skills.unarmed.UnarmedManager; | import com.gmail.nossr50.skills.unarmed.UnarmedManager; | ||||||
| import com.gmail.nossr50.util.EventUtils; | import com.gmail.nossr50.util.EventUtils; | ||||||
| import com.gmail.nossr50.util.ItemUtils; | import com.gmail.nossr50.util.ItemUtils; | ||||||
| @@ -50,6 +48,7 @@ import com.gmail.nossr50.util.MobHealthbarUtils; | |||||||
| import com.gmail.nossr50.util.Permissions; | import com.gmail.nossr50.util.Permissions; | ||||||
| import com.gmail.nossr50.util.player.UserManager; | import com.gmail.nossr50.util.player.UserManager; | ||||||
| import com.gmail.nossr50.util.temp.CompatableGuardianXP; | import com.gmail.nossr50.util.temp.CompatableGuardianXP; | ||||||
|  |  | ||||||
| import com.google.common.collect.ImmutableMap; | import com.google.common.collect.ImmutableMap; | ||||||
|  |  | ||||||
| public final class CombatUtils { | public final class CombatUtils { | ||||||
| @@ -530,6 +529,10 @@ public final class CombatUtils { | |||||||
|                 baseXP *= ExperienceConfig.getInstance().getSpawnedMobXpMultiplier(); |                 baseXP *= ExperienceConfig.getInstance().getSpawnedMobXpMultiplier(); | ||||||
|             } |             } | ||||||
|  |  | ||||||
|  |             if (target.hasMetadata(mcMMO.bredMetadataKey)) { | ||||||
|  |                 baseXP *= ExperienceConfig.getInstance().getBredMobXpMultiplier(); | ||||||
|  |             } | ||||||
|  |  | ||||||
|             xpGainReason = XPGainReason.PVE; |             xpGainReason = XPGainReason.PVE; | ||||||
|  |  | ||||||
|             baseXP *= 10; |             baseXP *= 10; | ||||||
|   | |||||||
| @@ -37,6 +37,8 @@ Experience_Formula: | |||||||
|     # Experience gained from mobs not naturally spawned will get multiplied by this value. 0 by default. |     # Experience gained from mobs not naturally spawned will get multiplied by this value. 0 by default. | ||||||
|     Mobspawners: |     Mobspawners: | ||||||
|         Multiplier: 0 |         Multiplier: 0 | ||||||
|  |     Breeding: | ||||||
|  |         Multiplier: 1.0 | ||||||
|  |  | ||||||
|     # Experience gained will get divided by these values. 1.0 by default, 2.0 means two times less XP gained. |     # Experience gained will get divided by these values. 1.0 by default, 2.0 means two times less XP gained. | ||||||
|     Modifier: |     Modifier: | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 TfT_02
					TfT_02