terra-items 0.4.0

Crate with enum contatining terraria items and prefixes
Documentation
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
#[allow(clippy::enum_variant_names)]
#[non_exhaustive]
pub enum Prefix {
	Large = 1,
	Massive = 2,
	Dangerous = 3,
	Savage = 4,
	Sharp = 5,
	Pointy = 6,
	Tiny = 7,
	Terrible = 8,
	Small = 9,
	Dull = 10,
	Unhappy = 11,
	Bulky = 12,
	Shameful = 13,
	Heavy = 14,
	Light = 15,
	Sighted = 16,
	Rapid = 17,
	HastyRanged = 18,
	Intimidating = 19,
	DeadlyRanged = 20,
	Staunch = 21,
	Awful = 22,
	Lethargic = 23,
	Awkward = 24,
	Powerful = 25,
	Mystic = 26,
	Adept = 27,
	Masterful = 28,
	Inept = 29,
	Ignorant = 30,
	Deranged = 31,
	Intense = 32,
	Taboo = 33,
	Celestial = 34,
	Furious = 35,
	Keen = 36,
	Superior = 37,
	Forceful = 38,
	Broken = 39,
	Damaged = 40,
	Shoddy = 41,
	QuickWeapon = 42,
	Deadly = 43,
	Agile = 44,
	Nimble = 45,
	Murderous = 46,
	Slow = 47,
	Sluggish = 48,
	Lazy = 49,
	Annoying = 50,
	Nasty = 51,
	Manic = 52,
	Hurtful = 53,
	Strong = 54,
	Unpleasant = 55,
	Weak = 56,
	Ruthless = 57,
	Frenzying = 58,
	Godly = 59,
	Demonic = 60,
	Zealous = 61,
	Hard = 62,
	Guarding = 63,
	Armored = 64,
	Warding = 65,
	Arcane = 66,
	Precise = 67,
	Lucky = 68,
	Jagged = 69,
	Spiked = 70,
	Angry = 71,
	Menacing = 72,
	Brisk = 73,
	Fleeting = 74,
	HastyAccessory = 75,
	QuickAccessory = 76,
	Wild = 77,
	Rash = 78,
	Intrepid = 79,
	Violent = 80,
	Legendary = 81,
	Unreal = 82,
	Mythical = 83,
	LegendaryTerrarian = 84,
	Fabled = 85,
	Loyal = 86,
	Worthy = 87,
	Focused = 88,
	FakePatient = 89,
	FakeRabid = 90,
	FakeIllTempered = 91,
	FakePetty = 92,
	FakeFeeble = 93,
	FakeSkittish = 94,
	FakeEager = 95,
	FakeBallistic = 96,
	FakeScraggling = 97,
}

impl Prefix {
	pub fn to_id(self) -> u8 {
		self as u8
	}

	pub fn from_id(id: u8) -> Option<Self> {
		Some(match id {
			1 => Prefix::Large,
			2 => Prefix::Massive,
			3 => Prefix::Dangerous,
			4 => Prefix::Savage,
			5 => Prefix::Sharp,
			6 => Prefix::Pointy,
			7 => Prefix::Tiny,
			8 => Prefix::Terrible,
			9 => Prefix::Small,
			10 => Prefix::Dull,
			11 => Prefix::Unhappy,
			12 => Prefix::Bulky,
			13 => Prefix::Shameful,
			14 => Prefix::Heavy,
			15 => Prefix::Light,
			16 => Prefix::Sighted,
			17 => Prefix::Rapid,
			18 => Prefix::HastyRanged,
			19 => Prefix::Intimidating,
			20 => Prefix::DeadlyRanged,
			21 => Prefix::Staunch,
			22 => Prefix::Awful,
			23 => Prefix::Lethargic,
			24 => Prefix::Awkward,
			25 => Prefix::Powerful,
			26 => Prefix::Mystic,
			27 => Prefix::Adept,
			28 => Prefix::Masterful,
			29 => Prefix::Inept,
			30 => Prefix::Ignorant,
			31 => Prefix::Deranged,
			32 => Prefix::Intense,
			33 => Prefix::Taboo,
			34 => Prefix::Celestial,
			35 => Prefix::Furious,
			36 => Prefix::Keen,
			37 => Prefix::Superior,
			38 => Prefix::Forceful,
			39 => Prefix::Broken,
			40 => Prefix::Damaged,
			41 => Prefix::Shoddy,
			42 => Prefix::QuickWeapon,
			43 => Prefix::Deadly,
			44 => Prefix::Agile,
			45 => Prefix::Nimble,
			46 => Prefix::Murderous,
			47 => Prefix::Slow,
			48 => Prefix::Sluggish,
			49 => Prefix::Lazy,
			50 => Prefix::Annoying,
			51 => Prefix::Nasty,
			52 => Prefix::Manic,
			53 => Prefix::Hurtful,
			54 => Prefix::Strong,
			55 => Prefix::Unpleasant,
			56 => Prefix::Weak,
			57 => Prefix::Ruthless,
			58 => Prefix::Frenzying,
			59 => Prefix::Godly,
			60 => Prefix::Demonic,
			61 => Prefix::Zealous,
			62 => Prefix::Hard,
			63 => Prefix::Guarding,
			64 => Prefix::Armored,
			65 => Prefix::Warding,
			66 => Prefix::Arcane,
			67 => Prefix::Precise,
			68 => Prefix::Lucky,
			69 => Prefix::Jagged,
			70 => Prefix::Spiked,
			71 => Prefix::Angry,
			72 => Prefix::Menacing,
			73 => Prefix::Brisk,
			74 => Prefix::Fleeting,
			75 => Prefix::HastyAccessory,
			76 => Prefix::QuickAccessory,
			77 => Prefix::Wild,
			78 => Prefix::Rash,
			79 => Prefix::Intrepid,
			80 => Prefix::Violent,
			81 => Prefix::Legendary,
			82 => Prefix::Unreal,
			83 => Prefix::Mythical,
			84 => Prefix::LegendaryTerrarian,
			85 => Prefix::Fabled,
			86 => Prefix::Loyal,
			87 => Prefix::Worthy,
			88 => Prefix::Focused,
			89 => Prefix::FakePatient,
			90 => Prefix::FakeRabid,
			91 => Prefix::FakeIllTempered,
			92 => Prefix::FakePetty,
			93 => Prefix::FakeFeeble,
			94 => Prefix::FakeSkittish,
			95 => Prefix::FakeEager,
			96 => Prefix::FakeBallistic,
			97 => Prefix::FakeScraggling,
			_ => return None,
		})
	}
}