From 707fab48bd593dec651b2af43d79b7cdcd84d626 Mon Sep 17 00:00:00 2001 From: Anna Date: Sun, 1 Apr 2018 02:09:19 -0400 Subject: [PATCH] feat: add short codes --- src/jobs/combat.rs | 25 +++++++++++++++++++++++++ src/jobs/non_combat.rs | 17 +++++++++++++++++ 2 files changed, 42 insertions(+) diff --git a/src/jobs/combat.rs b/src/jobs/combat.rs index 1ef8ec9..cb97680 100644 --- a/src/jobs/combat.rs +++ b/src/jobs/combat.rs @@ -85,6 +85,31 @@ impl Job { } } + /// Returns the short code of this job. + /// + /// Short codes are fully capitalized (e.g. "BRD", "BLM"). + pub fn as_code(&self) -> &'static str { + match *self { + Job::Bard => "BRD", + Job::BlackMage => "BLM", + Job::Dragoon => "DRG", + Job::Machinist => "MCH", + Job::Monk => "MNK", + Job::Ninja => "NIN", + Job::RedMage => "RDM", + Job::Samurai => "SAM", + Job::Summoner => "SMN", + + Job::Astrologian => "AST", + Job::Scholar => "SCH", + Job::WhiteMage => "WHM", + + Job::DarkKnight => "DRK", + Job::Paladin => "PLD", + Job::Warrior => "WAR", + } + } + /// Returns the [`Role`] for this job. #[cfg(feature = "roles")] pub fn role(&self) -> Role { diff --git a/src/jobs/non_combat.rs b/src/jobs/non_combat.rs index 445a660..8725cbb 100644 --- a/src/jobs/non_combat.rs +++ b/src/jobs/non_combat.rs @@ -61,6 +61,23 @@ impl NonCombatJob { } } + pub fn as_code(&self) -> &'static str { + match *self { + NonCombatJob::Botanist => "BTN", + NonCombatJob::Fisher => "FSH", + NonCombatJob::Miner => "MIN", + + NonCombatJob::Alchemist => "ALC", + NonCombatJob::Armorer => "ARM", + NonCombatJob::Blacksmith => "BSM", + NonCombatJob::Carpenter => "CRP", + NonCombatJob::Culinarian => "CUL", + NonCombatJob::Goldsmith => "GSM", + NonCombatJob::Leatherworker => "LTW", + NonCombatJob::Weaver => "WVR", + } + } + #[cfg(feature = "job_classifications")] pub fn classification(&self) -> Classification { match *self {