aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/core/util/Quality.java
blob: b866b2e28ba523455833cc3535bcd820c11bed1a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
package gtPlusPlus.core.util;

import gtPlusPlus.core.util.math.MathUtils;
import net.minecraft.util.EnumChatFormatting;

public enum Quality {

	// Magic Blue
	// Rare Yellow
	// Set Green
	// Unique Gold/Purple
	// Trade-off Brown

	POOR("Poor", EnumChatFormatting.GRAY),
	COMMON("Common", EnumChatFormatting.WHITE),
	UNCOMMON("Uncommon", EnumChatFormatting.DARK_GREEN),
	MAGIC("Magic", EnumChatFormatting.BLUE),
	RARE("Rare", EnumChatFormatting.YELLOW),
	UNIQUE("Unique", EnumChatFormatting.GOLD),
	ARTIFACT("Artifact", EnumChatFormatting.AQUA),
	SET("Set Piece", EnumChatFormatting.GREEN),
	TRADEOFF("Trade-off", EnumChatFormatting.DARK_RED),
	EPIC("Epic", EnumChatFormatting.LIGHT_PURPLE);

	private String LOOT;
	private EnumChatFormatting COLOUR;
	private Quality (final String lootTier, final EnumChatFormatting tooltipColour)
	{
		this.LOOT = lootTier;
		this.COLOUR = tooltipColour;
	}

	public String getQuality() {
		return this.LOOT;
	}

	protected EnumChatFormatting getColour(){
		return this.COLOUR;
	}

	public String formatted(){
		return this.COLOUR+this.LOOT;
	}

	public static Quality getRandomQuality(){
		final int lootChance = MathUtils.randInt(0, 100);
		if (lootChance <= 10){return Quality.POOR;}
		else if (lootChance <= 45){return Quality.COMMON;}
		else if (lootChance <= 65){return Quality.UNCOMMON;}
		else if (lootChance <= 82){return Quality.MAGIC;}
		else if (lootChance <= 92){return Quality.EPIC;}
		else if (lootChance <= 97){return Quality.RARE;}
		else if (lootChance <= 99){return Quality.ARTIFACT;} else {
			return null;
		}
	}

}