Initial 1.11.2 update

This commit is contained in:
Electroblob
2018-02-07 21:15:50 +00:00
parent 67f6be0671
commit 3df5597dcc
368 changed files with 17234 additions and 15082 deletions
@@ -8,12 +8,12 @@ import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
public enum Tier {
BASIC(700, 3, 12, new Style().setColor(TextFormatting.WHITE), "basic"),
APPRENTICE(1000, 4, 5, new Style().setColor(TextFormatting.AQUA), "apprentice"),
ADVANCED(1500, 5, 2, new Style().setColor(TextFormatting.DARK_BLUE), "advanced"),
MASTER(2500, 6, 1, new Style().setColor(TextFormatting.DARK_PURPLE), "master");
BASIC(700, 3, 12, new Style().setColor(TextFormatting.WHITE), "basic"), APPRENTICE(1000, 4, 5,
new Style().setColor(TextFormatting.AQUA), "apprentice"), ADVANCED(1500, 5, 2,
new Style().setColor(TextFormatting.DARK_BLUE),
"advanced"), MASTER(2500, 6, 1, new Style().setColor(TextFormatting.DARK_PURPLE), "master");
/** Maximum mana a wand of this tier can store. */
public final int maxCharge;
/** Just an ordinal. Shouldn't really be needed but no point changing it now. */
@@ -25,9 +25,9 @@ public enum Tier {
/** The colour of text associated with this tier. */
// Changed to a Style object for consistency.
private final Style colour;
private final String unlocalisedName;
private Tier(int maxCharge, int upgradeLimit, int weight, Style colour, String name){
this.maxCharge = maxCharge;
this.level = ordinal();
@@ -38,15 +38,15 @@ public enum Tier {
}
@SideOnly(Side.CLIENT)
public String getDisplayName() {
public String getDisplayName(){
return net.minecraft.client.resources.I18n.format("tier." + unlocalisedName);
}
@SideOnly(Side.CLIENT)
public String getDisplayNameWithFormatting() {
public String getDisplayNameWithFormatting(){
return this.getFormattingCode() + net.minecraft.client.resources.I18n.format("tier." + unlocalisedName);
}
public String getUnlocalisedName(){
return unlocalisedName;
}
@@ -54,28 +54,31 @@ public enum Tier {
public String getFormattingCode(){
return colour.getFormattingCode();
}
/** Returns a random tier based on the standard weighting. Currently, the standard weighting is: Basic (Novice) 60%,
/**
* Returns a random tier based on the standard weighting. Currently, the standard weighting is: Basic (Novice) 60%,
* Apprentice 25%, Advanced 10%, Master 5%. If an array of tiers is given, it picks a tier from the array, with the
* same relative weights for each. For example, if the array contains APPRENTICE and MASTER, then the weighting will
* become: Apprentice 83.3%, Master 16.7%. */
* become: Apprentice 83.3%, Master 16.7%.
*/
public static Tier getWeightedRandomTier(Random random, Tier... tiers){
if(tiers.length == 0) tiers = values();
int totalWeight = 0;
for(Tier tier : tiers) totalWeight += tier.weight;
for(Tier tier : tiers)
totalWeight += tier.weight;
int randomiser = random.nextInt(totalWeight);
int cumulativeWeight = 0;
for(Tier tier : tiers){
cumulativeWeight += tier.weight;
if(randomiser < cumulativeWeight) return tier;
}
// This will never happen, but it might as well be a sensible result.
return tiers[tiers.length-1];
return tiers[tiers.length - 1];
}
}