64 lines
1.9 KiB
Python
64 lines
1.9 KiB
Python
from typing import List
|
|
|
|
|
|
class CropQuality:
|
|
basic = "Basic Crop"
|
|
silver = "Silver Crop"
|
|
gold = "Gold Crop"
|
|
iridium = "Iridium Crop"
|
|
|
|
@staticmethod
|
|
def get_highest(qualities: List[str]) -> str:
|
|
for quality in crop_qualities_in_desc_order:
|
|
if quality in qualities:
|
|
return quality
|
|
return CropQuality.basic
|
|
|
|
|
|
class FishQuality:
|
|
basic = "Basic Fish"
|
|
silver = "Silver Fish"
|
|
gold = "Gold Fish"
|
|
iridium = "Iridium Fish"
|
|
|
|
@staticmethod
|
|
def get_highest(qualities: List[str]) -> str:
|
|
for quality in fish_qualities_in_desc_order:
|
|
if quality in qualities:
|
|
return quality
|
|
return FishQuality.basic
|
|
|
|
|
|
class ForageQuality:
|
|
basic = "Basic Forage"
|
|
silver = "Silver Forage"
|
|
gold = "Gold Forage"
|
|
iridium = "Iridium Forage"
|
|
|
|
@staticmethod
|
|
def get_highest(qualities: List[str]) -> str:
|
|
for quality in forage_qualities_in_desc_order:
|
|
if quality in qualities:
|
|
return quality
|
|
return ForageQuality.basic
|
|
|
|
|
|
class ArtisanQuality:
|
|
basic = "Basic Artisan"
|
|
silver = "Silver Artisan"
|
|
gold = "Gold Artisan"
|
|
iridium = "Iridium Artisan"
|
|
|
|
@staticmethod
|
|
def get_highest(qualities: List[str]) -> str:
|
|
for quality in artisan_qualities_in_desc_order:
|
|
if quality in qualities:
|
|
return quality
|
|
return ArtisanQuality.basic
|
|
|
|
|
|
crop_qualities_in_desc_order = [CropQuality.iridium, CropQuality.gold, CropQuality.silver, CropQuality.basic]
|
|
fish_qualities_in_desc_order = [FishQuality.iridium, FishQuality.gold, FishQuality.silver, FishQuality.basic]
|
|
forage_qualities_in_desc_order = [ForageQuality.iridium, ForageQuality.gold, ForageQuality.silver, ForageQuality.basic]
|
|
artisan_qualities_in_desc_order = [ArtisanQuality.iridium, ArtisanQuality.gold, ArtisanQuality.silver, ArtisanQuality.basic]
|