128 lines
		
	
	
		
			5.8 KiB
		
	
	
	
		
			Python
		
	
	
	
			
		
		
	
	
			128 lines
		
	
	
		
			5.8 KiB
		
	
	
	
		
			Python
		
	
	
	
from typing import List, Tuple
 | 
						|
 | 
						|
from .game_item import FishItem
 | 
						|
 | 
						|
spring = ("Spring",)
 | 
						|
summer = ("Summer",)
 | 
						|
fall = ("Fall",)
 | 
						|
winter = ("Winter",)
 | 
						|
spring_summer = (*spring, *summer)
 | 
						|
spring_fall = (*spring, *fall)
 | 
						|
spring_winter = (*spring, *winter)
 | 
						|
summer_fall = (*summer, *fall)
 | 
						|
summer_winter = (*summer, *winter)
 | 
						|
fall_winter = (*fall, *winter)
 | 
						|
spring_summer_fall = (*spring, *summer, *fall)
 | 
						|
spring_summer_winter = (*spring, *summer, *winter)
 | 
						|
spring_fall_winter = (*spring, *fall, *winter)
 | 
						|
all_seasons = (*spring, *summer, *fall, *winter)
 | 
						|
 | 
						|
town = ("Town",)
 | 
						|
beach = ("Beach",)
 | 
						|
mountain = ("Mountain",)
 | 
						|
forest = ("Forest",)
 | 
						|
secret_woods = ("Secret Woods",)
 | 
						|
desert = ("The Desert",)
 | 
						|
mines_20 = ("The Mines - Floor 20",)
 | 
						|
mines_60 = ("The Mines - Floor 60",)
 | 
						|
mines_100 = ("The Mines - Floor 100",)
 | 
						|
sewers = ("Sewers",)
 | 
						|
mutant_bug_lair = ("Mutant Bug Lair",)
 | 
						|
witch_swamp = ("Witch's Swamp",)
 | 
						|
ginger_island = ("Ginger Island",)
 | 
						|
ginger_island_ocean = ginger_island
 | 
						|
ginger_island_river = ginger_island
 | 
						|
pirate_cove = ginger_island
 | 
						|
night_market = beach
 | 
						|
lakes = (*mountain, *secret_woods, *sewers)
 | 
						|
ocean = beach
 | 
						|
rivers = (*town, *forest)
 | 
						|
rivers_secret_woods = (*rivers, *secret_woods)
 | 
						|
forest_mountain = (*forest, *mountain)
 | 
						|
rivers_mountain_lake = (*town, *forest, *mountain)
 | 
						|
mines_20_60 = (*mines_20, *mines_60)
 | 
						|
 | 
						|
all_fish_items: List[FishItem] = []
 | 
						|
 | 
						|
 | 
						|
def fish(name: str, item_id: int, locations: Tuple[str, ...], seasons: Tuple[str, ...], difficulty: int) -> FishItem:
 | 
						|
    fish_item = FishItem(name, item_id, locations, seasons, difficulty)
 | 
						|
    all_fish_items.append(fish_item)
 | 
						|
    return fish_item
 | 
						|
 | 
						|
 | 
						|
carp = fish("Carp", 142, lakes, all_seasons, 15)
 | 
						|
herring = fish("Herring", 147, ocean, spring_winter, 25)
 | 
						|
smallmouth_bass = fish("Smallmouth Bass", 137, rivers, spring_fall, 28)
 | 
						|
anchovy = fish("Anchovy", 129, ocean, spring_fall, 30)
 | 
						|
sardine = fish("Sardine", 131, ocean, spring_fall_winter, 30)
 | 
						|
sunfish = fish("Sunfish", 145, rivers, spring_summer, 30)
 | 
						|
perch = fish("Perch", 141, rivers_mountain_lake, winter, 35)
 | 
						|
chub = fish("Chub", 702, forest_mountain, all_seasons, 35)
 | 
						|
bream = fish("Bream", 132, rivers, all_seasons, 35)
 | 
						|
red_snapper = fish("Red Snapper", 150, ocean, summer_fall, 40)
 | 
						|
sea_cucumber = fish("Sea Cucumber", 154, ocean, fall_winter, 40)
 | 
						|
rainbow_trout = fish("Rainbow Trout", 138, rivers_mountain_lake, summer, 45)
 | 
						|
walleye = fish("Walleye", 140, rivers_mountain_lake, fall, 45)
 | 
						|
shad = fish("Shad", 706, rivers, spring_summer_fall, 45)
 | 
						|
bullhead = fish("Bullhead", 700, mountain, all_seasons, 46)
 | 
						|
largemouth_bass = fish("Largemouth Bass", 136, mountain, all_seasons, 50)
 | 
						|
salmon = fish("Salmon", 139, rivers, fall, 50)
 | 
						|
ghostfish = fish("Ghostfish", 156, mines_20_60, all_seasons, 50)
 | 
						|
tilapia = fish("Tilapia", 701, ocean, summer_fall, 50)
 | 
						|
woodskip = fish("Woodskip", 734, secret_woods, all_seasons, 50)
 | 
						|
flounder = fish("Flounder", 267, ocean, spring_summer, 50)
 | 
						|
halibut = fish("Halibut", 708, ocean, spring_summer_winter, 50)
 | 
						|
lionfish = fish("Lionfish", 837, ginger_island_ocean, all_seasons, 50)
 | 
						|
slimejack = fish("Slimejack", 796, mutant_bug_lair, all_seasons, 55)
 | 
						|
midnight_carp = fish("Midnight Carp", 269, forest_mountain, fall_winter, 55)
 | 
						|
red_mullet = fish("Red Mullet", 146, ocean, summer_winter, 55)
 | 
						|
pike = fish("Pike", 144, rivers, summer_winter, 60)
 | 
						|
tiger_trout = fish("Tiger Trout", 699, rivers, fall_winter, 60)
 | 
						|
blue_discus = fish("Blue Discus", 838, ginger_island_river, all_seasons, 60)
 | 
						|
albacore = fish("Albacore", 705, ocean, fall_winter, 60)
 | 
						|
sandfish = fish("Sandfish", 164, desert, all_seasons, 65)
 | 
						|
stonefish = fish("Stonefish", 158, mines_20, all_seasons, 65)
 | 
						|
tuna = fish("Tuna", 130, ocean, summer_winter, 70)
 | 
						|
eel = fish("Eel", 148, ocean, spring_fall, 70)
 | 
						|
catfish = fish("Catfish", 143, rivers_secret_woods, spring_fall, 75)
 | 
						|
squid = fish("Squid", 151, ocean, winter, 75)
 | 
						|
sturgeon = fish("Sturgeon", 698, mountain, summer_winter, 78)
 | 
						|
dorado = fish("Dorado", 704, forest, summer, 78)
 | 
						|
pufferfish = fish("Pufferfish", 128, ocean, summer, 80)
 | 
						|
void_salmon = fish("Void Salmon", 795, witch_swamp, all_seasons, 80)
 | 
						|
super_cucumber = fish("Super Cucumber", 155, ocean, summer_fall, 80)
 | 
						|
stingray = fish("Stingray", 836, pirate_cove, all_seasons, 80)
 | 
						|
ice_pip = fish("Ice Pip", 161, mines_60, all_seasons, 85)
 | 
						|
lingcod = fish("Lingcod", 707, rivers_mountain_lake, winter, 85)
 | 
						|
scorpion_carp = fish("Scorpion Carp", 165, desert, all_seasons, 90)
 | 
						|
lava_eel = fish("Lava Eel", 162, mines_100, all_seasons, 90)
 | 
						|
octopus = fish("Octopus", 149, ocean, summer, 95)
 | 
						|
 | 
						|
midnight_squid = fish("Midnight Squid", 798, night_market, winter, 55)
 | 
						|
spook_fish = fish("Spook Fish", 799, night_market, winter, 60)
 | 
						|
blob_fish = fish("Blobfish", 800, night_market, winter, 75)
 | 
						|
 | 
						|
crimsonfish = fish("Crimsonfish", 159, ocean, summer, 95)
 | 
						|
angler = fish("Angler", 160, town, fall, 85)
 | 
						|
legend = fish("Legend", 163, mountain, spring, 110)
 | 
						|
glacierfish = fish("Glacierfish", 775, forest, winter, 100)
 | 
						|
mutant_carp = fish("Mutant Carp", 682, sewers, all_seasons, 80)
 | 
						|
 | 
						|
crayfish = fish("Crayfish", 716, rivers, all_seasons, -1)
 | 
						|
snail = fish("Snail", 721, rivers, all_seasons, -1)
 | 
						|
periwinkle = fish("Periwinkle", 722, rivers, all_seasons, -1)
 | 
						|
lobster = fish("Lobster", 715, ocean, all_seasons, -1)
 | 
						|
clam = fish("Clam", 372, ocean, all_seasons, -1)
 | 
						|
crab = fish("Crab", 717, ocean, all_seasons, -1)
 | 
						|
cockle = fish("Cockle", 718, ocean, all_seasons, -1)
 | 
						|
mussel = fish("Mussel", 719, ocean, all_seasons, -1)
 | 
						|
shrimp = fish("Shrimp", 720, ocean, all_seasons, -1)
 | 
						|
oyster = fish("Oyster", 723, ocean, all_seasons, -1)
 | 
						|
 | 
						|
legendary_fish = [crimsonfish, angler, legend, glacierfish, mutant_carp]
 | 
						|
special_fish = [*legendary_fish, blob_fish, lava_eel, octopus, scorpion_carp, ice_pip, super_cucumber, dorado]
 | 
						|
 | 
						|
all_fish_items_by_name = {fish.name: fish for fish in all_fish_items}
 | 
						|
all_fish_items_by_id = {fish.item_id: fish for fish in all_fish_items}
 |