diff options
| author | OnyxDarkKnight <sor1n.iliutza16@gmail.com> | 2015-05-31 01:44:17 +0100 |
|---|---|---|
| committer | OnyxDarkKnight <sor1n.iliutza16@gmail.com> | 2015-05-31 01:44:17 +0100 |
| commit | 40487f07fa5ef31fde99713c0b842d34a0ba3622 (patch) | |
| tree | 2accdb69c2507acd794d5009d520b2255763751b /src/main/java/darkknight/jewelrycraft/worldGen/WeightedRandomItem.java | |
| parent | c5dfb2ef7353f13d71d8d582aa6d240420ed9ce7 (diff) | |
- Fixed an issue with the Liquids tab
- Changed Entity registration so it only uses 'registerModEntity' to fix potential issues
- Added crystal blocks
- Changed Jewelry Tab to not override TiCon tabs (sorry TiCon, your system is good, but not for me)
- The player renders in the Jewelry GUI (makes it easier for you to see how the jewelry render)
- The Pentagram now has an actual effect
- The Pentagram now renders beneath your feet when you look down and no longer does it in your inventory; it is also a lot smaller
- Working on Structures
- Created my own WeightedRandomItem (why isn't this in vanilla?)
- Updated the curse API so now people can specify when a curse can be activated (I believe the world is all you need :p)
- Some curses can no longer aquired in hardcore (such as Rotten Heart, Midas Touch etc) which would make it impossible to work with and require a total restart of the game (as the only way to get rid of them is by dying to replace them)
Hooraaay for proper changelogs!
Diffstat (limited to 'src/main/java/darkknight/jewelrycraft/worldGen/WeightedRandomItem.java')
| -rw-r--r-- | src/main/java/darkknight/jewelrycraft/worldGen/WeightedRandomItem.java | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/src/main/java/darkknight/jewelrycraft/worldGen/WeightedRandomItem.java b/src/main/java/darkknight/jewelrycraft/worldGen/WeightedRandomItem.java new file mode 100644 index 0000000..0528b66 --- /dev/null +++ b/src/main/java/darkknight/jewelrycraft/worldGen/WeightedRandomItem.java @@ -0,0 +1,67 @@ +package darkknight.jewelrycraft.worldGen; + +import java.util.Random; +import net.minecraft.enchantment.EnchantmentHelper; +import net.minecraft.item.ItemStack; +import net.minecraft.util.WeightedRandom; + +public class WeightedRandomItem extends WeightedRandom.Item +{ + private final ItemStack item; + private int maxMeta, minMeta, minItem, maxItem; + + public WeightedRandomItem(ItemStack item, int weight) + { + super(weight); + this.item = item; + this.minItem = 1; + this.maxItem = 1; + this.maxMeta = 0; + this.minMeta = 0; + } + + public WeightedRandomItem(ItemStack item, int maxMetadata, int weight) + { + this(item, weight); + this.maxMeta = maxMetadata; + } + + public WeightedRandomItem(ItemStack item, int weight, int minItem, int maxItem) + { + this(item, weight); + this.minItem = minItem; + this.maxItem = maxItem; + } + + public WeightedRandomItem setMaxMetadata(int meta) + { + this.maxMeta = meta; + return this; + } + + public WeightedRandomItem setMinMetadata(int meta) + { + this.minMeta = meta; + return this; + } + + public WeightedRandomItem setMinItem(int min) + { + this.minItem = min; + return this; + } + + public WeightedRandomItem setMaxItem(int max) + { + this.maxItem = max; + return this; + } + + public ItemStack getItem(Random random) + { + ItemStack itemstack = this.item.copy(); + if(maxMeta > 0) itemstack.setItemDamage(minMeta + random.nextInt(maxMeta - minMeta)); + if(maxItem > 1) itemstack.stackSize = this.minItem + random.nextInt(this.maxItem - this.minItem + 1); + return itemstack; + } +}
\ No newline at end of file |
