Randomize Villager trades
This commit is contained in:
parent
856ba687ab
commit
d6db2ce6e2
@ -218,8 +218,11 @@ public class Template
|
||||
}
|
||||
|
||||
public static int randomizeAmount() {
|
||||
return randomizeAmount(4);
|
||||
}
|
||||
public static int randomizeAmount(int amt) {
|
||||
int counter=1;
|
||||
while (Template.r.nextInt(4)==0) {
|
||||
while (Template.r.nextInt(amt)==0) {
|
||||
counter++;
|
||||
}
|
||||
return counter;
|
||||
|
@ -3,6 +3,7 @@ package scramble.plugin.listener;
|
||||
import java.io.File;
|
||||
import java.io.FileWriter;
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@ -20,10 +21,12 @@ import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.block.BlockBreakEvent;
|
||||
import org.bukkit.event.entity.EntityBreedEvent;
|
||||
import org.bukkit.event.entity.EntityDeathEvent;
|
||||
import org.bukkit.event.entity.VillagerAcquireTradeEvent;
|
||||
import org.bukkit.event.inventory.CraftItemEvent;
|
||||
import org.bukkit.event.inventory.FurnaceSmeltEvent;
|
||||
import org.bukkit.event.inventory.PrepareItemCraftEvent;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.inventory.MerchantRecipe;
|
||||
import org.bukkit.inventory.Recipe;
|
||||
import org.bukkit.inventory.RecipeChoice;
|
||||
import org.bukkit.inventory.ShapedRecipe;
|
||||
@ -35,6 +38,21 @@ import scramble.plugin.Template;
|
||||
|
||||
public class ExampleListener implements Listener {
|
||||
|
||||
@EventHandler
|
||||
public void AcquireTrades(VillagerAcquireTradeEvent ev) {
|
||||
//Bukkit.getLogger().info(ev.getEntity()+" getting "+ev.getRecipe());
|
||||
MerchantRecipe prev = ev.getRecipe();
|
||||
MerchantRecipe newRecipe = new MerchantRecipe(new ItemStack(Material.getMaterial(Template.archivedshufflelist.get(Template.r.nextInt(Template.archivedshufflelist.size()))),Template.randomizeAmount(2)*Template.randomizeAmount(2)),
|
||||
prev.getUses(),prev.getMaxUses(),true,prev.getVillagerExperience(),prev.getPriceMultiplier());
|
||||
List<ItemStack> ingredients = new ArrayList<ItemStack>();
|
||||
ingredients.add(new ItemStack(Material.getMaterial(Template.archivedshufflelist.get(Template.r.nextInt(Template.archivedshufflelist.size()))),Template.randomizeAmount()));
|
||||
while (Template.r.nextInt(10)==0) {
|
||||
ingredients.add(new ItemStack(Material.getMaterial(Template.archivedshufflelist.get(Template.r.nextInt(Template.archivedshufflelist.size()))),Template.randomizeAmount()));
|
||||
}
|
||||
newRecipe.setIngredients(ingredients);
|
||||
ev.setRecipe(newRecipe);
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onEntityBreed(EntityBreedEvent ev) {
|
||||
//Bukkit.getLogger().info("Breeder is "+ev.getBreeder());
|
||||
|
Loading…
x
Reference in New Issue
Block a user