use enum_map::Enum;
use serde::{Deserialize, Serialize};
#[derive(Enum, PartialEq, Eq, Clone, Copy, Hash, Serialize, Deserialize, Debug)]
pub enum Resource {
Cattle,
Sheep,
Deer,
Bananas,
Wheat,
Stone,
Fish,
Bison,
Horses,
Iron,
Coal,
Oil,
Aluminum,
Uranium,
Furs,
Cotton,
Dyes,
Gems,
GoldOre,
Silver,
Incense,
Ivory,
Silk,
Spices,
Wine,
Sugar,
Marble,
Whales,
Pearls,
Jewelry,
Porcelain,
Citrus,
Copper,
Cocoa,
Crab,
Salt,
Truffles,
}
impl Resource {
pub fn as_str(&self) -> &'static str {
match self {
Resource::Cattle => "Cattle",
Resource::Sheep => "Sheep",
Resource::Deer => "Deer",
Resource::Bananas => "Bananas",
Resource::Wheat => "Wheat",
Resource::Stone => "Stone",
Resource::Fish => "Fish",
Resource::Bison => "Bison",
Resource::Horses => "Horses",
Resource::Iron => "Iron",
Resource::Coal => "Coal",
Resource::Oil => "Oil",
Resource::Aluminum => "Aluminum",
Resource::Uranium => "Uranium",
Resource::Furs => "Furs",
Resource::Cotton => "Cotton",
Resource::Dyes => "Dyes",
Resource::Gems => "Gems",
Resource::GoldOre => "Gold Ore",
Resource::Silver => "Silver",
Resource::Incense => "Incense",
Resource::Ivory => "Ivory",
Resource::Silk => "Silk",
Resource::Spices => "Spices",
Resource::Wine => "Wine",
Resource::Sugar => "Sugar",
Resource::Marble => "Marble",
Resource::Whales => "Whales",
Resource::Pearls => "Pearls",
Resource::Jewelry => "Jewelry",
Resource::Porcelain => "Porcelain",
Resource::Citrus => "Citrus",
Resource::Copper => "Copper",
Resource::Cocoa => "Cocoa",
Resource::Crab => "Crab",
Resource::Salt => "Salt",
Resource::Truffles => "Truffles",
}
}
}