forked from mirror/Archipelago
Some checks failed
Analyze modified files / flake8 (push) Failing after 2m28s
Build / build-win (push) Has been cancelled
Build / build-ubuntu2204 (push) Has been cancelled
ctest / Test C++ ubuntu-latest (push) Has been cancelled
ctest / Test C++ windows-latest (push) Has been cancelled
Analyze modified files / mypy (push) Has been cancelled
Build and Publish Docker Images / Push Docker image to Docker Hub (push) Successful in 5m4s
Native Code Static Analysis / scan-build (push) Failing after 5m2s
type check / pyright (push) Successful in 1m7s
unittests / Test Python 3.11.2 ubuntu-latest (push) Failing after 16m23s
unittests / Test Python 3.12 ubuntu-latest (push) Failing after 28m19s
unittests / Test Python 3.13 ubuntu-latest (push) Failing after 14m49s
unittests / Test hosting with 3.13 on ubuntu-latest (push) Successful in 5m0s
unittests / Test Python 3.13 macos-latest (push) Has been cancelled
unittests / Test Python 3.11 windows-latest (push) Has been cancelled
unittests / Test Python 3.13 windows-latest (push) Has been cancelled
261 lines
31 KiB
Python
261 lines
31 KiB
Python
from typing import Dict, NamedTuple, Optional, Set
|
|
|
|
from BaseClasses import Item, ItemClassification
|
|
|
|
|
|
class KHRECOMItem(Item):
|
|
game: str = "Kingdom Hearts RE Chain of Memories"
|
|
|
|
|
|
class KHRECOMItemData(NamedTuple):
|
|
category: str
|
|
sub: str = "None"
|
|
code: int = 0
|
|
classification: ItemClassification = ItemClassification.filler
|
|
|
|
|
|
def get_items_by_category(category: str, exclude: list) -> Dict[str, KHRECOMItemData]:
|
|
item_dict: Dict[str, KHRECOMItemData] = {}
|
|
for name, data in item_table.items():
|
|
if data.category == category and all(x not in name for x in exclude):
|
|
item_dict.setdefault(name, data)
|
|
|
|
return item_dict
|
|
|
|
|
|
item_table: Dict[str, KHRECOMItemData] = {
|
|
#Victory
|
|
"Victory": KHRECOMItemData("VIC", code = 268_0000, classification = ItemClassification.progression),
|
|
|
|
#"Card Set Kingdom Key": KHRECOMItemData("Sets", code = 268_1001, classification = ItemClassification.filler),
|
|
"Card Set Three Wishes": KHRECOMItemData("Sets", code = 268_1002, classification = ItemClassification.filler),
|
|
"Card Set Crabclaw": KHRECOMItemData("Sets", code = 268_1003, classification = ItemClassification.filler),
|
|
"Card Set Pumpkinhead": KHRECOMItemData("Sets", code = 268_1004, classification = ItemClassification.filler),
|
|
"Card Set Fairy Harp": KHRECOMItemData("Sets", code = 268_1005, classification = ItemClassification.filler),
|
|
"Card Set Wishing Star": KHRECOMItemData("Sets", code = 268_1006, classification = ItemClassification.filler),
|
|
"Card Set Spellbinder": KHRECOMItemData("Sets", code = 268_1007, classification = ItemClassification.filler),
|
|
"Card Set Metal Chocobo": KHRECOMItemData("Sets", code = 268_1008, classification = ItemClassification.filler),
|
|
"Card Set Olympia": KHRECOMItemData("Sets", code = 268_1009, classification = ItemClassification.filler),
|
|
"Card Set Lionheart": KHRECOMItemData("Sets", code = 268_1010, classification = ItemClassification.filler),
|
|
"Card Set Lady Luck": KHRECOMItemData("Sets", code = 268_1011, classification = ItemClassification.filler),
|
|
"Card Set Divine Rose": KHRECOMItemData("Sets", code = 268_1012, classification = ItemClassification.filler),
|
|
"Card Set Oathkeeper": KHRECOMItemData("Sets", code = 268_1013, classification = ItemClassification.filler),
|
|
"Card Set Oblivion": KHRECOMItemData("Sets", code = 268_1014, classification = ItemClassification.filler),
|
|
"Card Set Ultima Weapon": KHRECOMItemData("Sets", code = 268_1015, classification = ItemClassification.filler),
|
|
"Card Set Diamond Dust": KHRECOMItemData("Sets", code = 268_1016, classification = ItemClassification.filler),
|
|
"Card Set One Winged Angel": KHRECOMItemData("Sets", code = 268_1017, classification = ItemClassification.filler),
|
|
"Card Set Soul Eater": KHRECOMItemData("Sets", code = 268_1018, classification = ItemClassification.filler),
|
|
"Card Set Star Seeker": KHRECOMItemData("Sets", code = 268_1019, classification = ItemClassification.filler),
|
|
"Card Set Total Eclipse": KHRECOMItemData("Sets", code = 268_1020, classification = ItemClassification.filler),
|
|
"Card Set Midnight Roar": KHRECOMItemData("Sets", code = 268_1021, classification = ItemClassification.filler),
|
|
"Card Set Maverick Flare": KHRECOMItemData("Sets", code = 268_1022, classification = ItemClassification.filler),
|
|
"Card Set Two Become One": KHRECOMItemData("Sets", code = 268_1023, classification = ItemClassification.filler),
|
|
"Card Set Bond of Flame": KHRECOMItemData("Sets", code = 268_1024, classification = ItemClassification.filler),
|
|
"Card Set Fire": KHRECOMItemData("Sets", code = 268_1049, classification = ItemClassification.filler),
|
|
"Card Set Blizzard": KHRECOMItemData("Sets", code = 268_1050, classification = ItemClassification.filler),
|
|
"Card Set Thunder": KHRECOMItemData("Sets", code = 268_1051, classification = ItemClassification.filler),
|
|
"Card Set Cure": KHRECOMItemData("Sets", code = 268_1052, classification = ItemClassification.filler),
|
|
"Card Set Gravity": KHRECOMItemData("Sets", code = 268_1053, classification = ItemClassification.filler),
|
|
"Card Set Stop": KHRECOMItemData("Sets", code = 268_1054, classification = ItemClassification.filler),
|
|
"Card Set Aero": KHRECOMItemData("Sets", code = 268_1055, classification = ItemClassification.filler),
|
|
"Card Set Simba": KHRECOMItemData("Sets", code = 268_1058, classification = ItemClassification.filler),
|
|
"Card Set Genie": KHRECOMItemData("Sets", code = 268_1059, classification = ItemClassification.filler),
|
|
"Card Set Bambi": KHRECOMItemData("Sets", code = 268_1060, classification = ItemClassification.filler),
|
|
"Card Set Dumbo": KHRECOMItemData("Sets", code = 268_1061, classification = ItemClassification.filler),
|
|
"Card Set Tinker Bell": KHRECOMItemData("Sets", code = 268_1062, classification = ItemClassification.filler),
|
|
"Card Set Mushu": KHRECOMItemData("Sets", code = 268_1063, classification = ItemClassification.filler),
|
|
"Card Set Cloud": KHRECOMItemData("Sets", code = 268_1064, classification = ItemClassification.filler),
|
|
"Card Set Potion": KHRECOMItemData("Sets", code = 268_1081, classification = ItemClassification.filler),
|
|
"Card Set Hi-Potion": KHRECOMItemData("Sets", code = 268_1082, classification = ItemClassification.filler),
|
|
"Card Set Mega-Potion": KHRECOMItemData("Sets", code = 268_1083, classification = ItemClassification.filler),
|
|
"Card Set Ether": KHRECOMItemData("Sets", code = 268_1084, classification = ItemClassification.filler),
|
|
"Card Set Mega-Ether": KHRECOMItemData("Sets", code = 268_1085, classification = ItemClassification.filler),
|
|
"Card Set Elixir": KHRECOMItemData("Sets", code = 268_1086, classification = ItemClassification.filler),
|
|
"Card Set Megalixir": KHRECOMItemData("Sets", code = 268_1087, classification = ItemClassification.filler),
|
|
|
|
"Enemy Card Shadow": KHRECOMItemData("Enemy Cards", code = 268_1201, classification = ItemClassification.useful),
|
|
"Enemy Card Soldier": KHRECOMItemData("Enemy Cards", code = 268_1202, classification = ItemClassification.useful),
|
|
"Enemy Card Large Body": KHRECOMItemData("Enemy Cards", code = 268_1203, classification = ItemClassification.useful),
|
|
"Enemy Card Red Nocturne": KHRECOMItemData("Enemy Cards", code = 268_1204, classification = ItemClassification.useful),
|
|
"Enemy Card Blue Rhapsody": KHRECOMItemData("Enemy Cards", code = 268_1205, classification = ItemClassification.useful),
|
|
"Enemy Card Yellow Opera": KHRECOMItemData("Enemy Cards", code = 268_1206, classification = ItemClassification.useful),
|
|
"Enemy Card Green Requiem": KHRECOMItemData("Enemy Cards", code = 268_1207, classification = ItemClassification.useful),
|
|
"Enemy Card Powerwild": KHRECOMItemData("Enemy Cards", code = 268_1208, classification = ItemClassification.useful),
|
|
"Enemy Card Bouncywild": KHRECOMItemData("Enemy Cards", code = 268_1209, classification = ItemClassification.useful),
|
|
"Enemy Card Air Soldier": KHRECOMItemData("Enemy Cards", code = 268_1210, classification = ItemClassification.useful),
|
|
"Enemy Card Bandit": KHRECOMItemData("Enemy Cards", code = 268_1211, classification = ItemClassification.useful),
|
|
"Enemy Card Fat Bandit": KHRECOMItemData("Enemy Cards", code = 268_1212, classification = ItemClassification.useful),
|
|
"Enemy Card Barrel Spider": KHRECOMItemData("Enemy Cards", code = 268_1213, classification = ItemClassification.useful),
|
|
"Enemy Card Search Ghost": KHRECOMItemData("Enemy Cards", code = 268_1214, classification = ItemClassification.useful),
|
|
"Enemy Card Sea Neon": KHRECOMItemData("Enemy Cards", code = 268_1215, classification = ItemClassification.useful),
|
|
"Enemy Card Screwdiver": KHRECOMItemData("Enemy Cards", code = 268_1216, classification = ItemClassification.useful),
|
|
"Enemy Card Aquatank": KHRECOMItemData("Enemy Cards", code = 268_1217, classification = ItemClassification.useful),
|
|
"Enemy Card Wight Knight": KHRECOMItemData("Enemy Cards", code = 268_1218, classification = ItemClassification.useful),
|
|
"Enemy Card Gargoyle": KHRECOMItemData("Enemy Cards", code = 268_1219, classification = ItemClassification.useful),
|
|
"Enemy Card Pirate": KHRECOMItemData("Enemy Cards", code = 268_1220, classification = ItemClassification.useful),
|
|
"Enemy Card Air Pirate": KHRECOMItemData("Enemy Cards", code = 268_1221, classification = ItemClassification.useful),
|
|
"Enemy Card Darkball": KHRECOMItemData("Enemy Cards", code = 268_1222, classification = ItemClassification.useful),
|
|
"Enemy Card Defender": KHRECOMItemData("Enemy Cards", code = 268_1223, classification = ItemClassification.useful),
|
|
"Enemy Card Wyvern": KHRECOMItemData("Enemy Cards", code = 268_1224, classification = ItemClassification.useful),
|
|
"Enemy Card Wizard": KHRECOMItemData("Enemy Cards", code = 268_1225, classification = ItemClassification.useful),
|
|
"Enemy Card Neoshadow": KHRECOMItemData("Enemy Cards", code = 268_1226, classification = ItemClassification.useful),
|
|
"Enemy Card White Mushroom": KHRECOMItemData("Enemy Cards", code = 268_1227, classification = ItemClassification.useful),
|
|
"Enemy Card Black Fungus": KHRECOMItemData("Enemy Cards", code = 268_1228, classification = ItemClassification.useful),
|
|
"Enemy Card Creeper Plant": KHRECOMItemData("Enemy Cards", code = 268_1229, classification = ItemClassification.useful),
|
|
"Enemy Card Tornado Step": KHRECOMItemData("Enemy Cards", code = 268_1230, classification = ItemClassification.useful),
|
|
"Enemy Card Crescendo": KHRECOMItemData("Enemy Cards", code = 268_1231, classification = ItemClassification.useful),
|
|
"Enemy Card Guard Armor": KHRECOMItemData("Enemy Cards", code = 268_1232, classification = ItemClassification.useful),
|
|
"Enemy Card Parasite Cage": KHRECOMItemData("Enemy Cards", code = 268_1233, classification = ItemClassification.useful),
|
|
"Enemy Card Trickmaster": KHRECOMItemData("Enemy Cards", code = 268_1234, classification = ItemClassification.useful),
|
|
"Enemy Card Darkside": KHRECOMItemData("Enemy Cards", code = 268_1235, classification = ItemClassification.useful),
|
|
"Enemy Card Card Soldier": KHRECOMItemData("Enemy Cards", code = 268_1236, classification = ItemClassification.useful),
|
|
"Enemy Card Hades": KHRECOMItemData("Enemy Cards", code = 268_1237, classification = ItemClassification.useful),
|
|
"Enemy Card Jafar": KHRECOMItemData("Enemy Cards", code = 268_1238, classification = ItemClassification.useful),
|
|
"Enemy Card Oogie Boogie": KHRECOMItemData("Enemy Cards", code = 268_1239, classification = ItemClassification.useful),
|
|
"Enemy Card Ursula": KHRECOMItemData("Enemy Cards", code = 268_1240, classification = ItemClassification.useful),
|
|
"Enemy Card Hook": KHRECOMItemData("Enemy Cards", code = 268_1241, classification = ItemClassification.useful),
|
|
"Enemy Card Dragon Maleficent": KHRECOMItemData("Enemy Cards", code = 268_1242, classification = ItemClassification.useful),
|
|
"Enemy Card Riku": KHRECOMItemData("Enemy Cards", code = 268_1243, classification = ItemClassification.useful),
|
|
"Enemy Card Axel": KHRECOMItemData("Enemy Cards", code = 268_1244, classification = ItemClassification.useful),
|
|
"Enemy Card Larxene": KHRECOMItemData("Enemy Cards", code = 268_1245, classification = ItemClassification.useful),
|
|
"Enemy Card Vexen": KHRECOMItemData("Enemy Cards", code = 268_1246, classification = ItemClassification.useful),
|
|
"Enemy Card Marluxia": KHRECOMItemData("Enemy Cards", code = 268_1247, classification = ItemClassification.useful),
|
|
"Enemy Card Lexaeus": KHRECOMItemData("Enemy Cards", code = 268_1248, classification = ItemClassification.useful),
|
|
"Enemy Card Ansem": KHRECOMItemData("Enemy Cards", code = 268_1249, classification = ItemClassification.useful),
|
|
"Enemy Card Zexion": KHRECOMItemData("Enemy Cards", code = 268_1250, classification = ItemClassification.useful),
|
|
"Enemy Card Xemnas": KHRECOMItemData("Enemy Cards", code = 268_1251, classification = ItemClassification.useful),
|
|
"Enemy Card Xigbar": KHRECOMItemData("Enemy Cards", code = 268_1252, classification = ItemClassification.useful),
|
|
"Enemy Card Xaldin": KHRECOMItemData("Enemy Cards", code = 268_1253, classification = ItemClassification.useful),
|
|
"Enemy Card Saix": KHRECOMItemData("Enemy Cards", code = 268_1254, classification = ItemClassification.useful),
|
|
"Enemy Card Demyx": KHRECOMItemData("Enemy Cards", code = 268_1255, classification = ItemClassification.useful),
|
|
"Enemy Card Luxord": KHRECOMItemData("Enemy Cards", code = 268_1256, classification = ItemClassification.useful),
|
|
"Enemy Card Roxas": KHRECOMItemData("Enemy Cards", code = 268_1257, classification = ItemClassification.useful),
|
|
|
|
"Sleight Sliding Dash": KHRECOMItemData("Sleights", code = 268_2001, classification = ItemClassification.useful),
|
|
"Sleight Blitz": KHRECOMItemData("Sleights", code = 268_2002, classification = ItemClassification.useful),
|
|
"Sleight Stun Impact": KHRECOMItemData("Sleights", code = 268_2003, classification = ItemClassification.useful),
|
|
"Sleight Zantetsuken": KHRECOMItemData("Sleights", code = 268_2004, classification = ItemClassification.useful),
|
|
"Sleight Strike Raid": KHRECOMItemData("Sleights", code = 268_2005, classification = ItemClassification.useful),
|
|
"Sleight Sonic Blade": KHRECOMItemData("Sleights", code = 268_2006, classification = ItemClassification.useful),
|
|
"Sleight Ars Arcanum": KHRECOMItemData("Sleights", code = 268_2007, classification = ItemClassification.useful),
|
|
"Sleight Ragnarok": KHRECOMItemData("Sleights", code = 268_2008, classification = ItemClassification.useful),
|
|
"Sleight Trinity Limit": KHRECOMItemData("Sleights", code = 268_2009, classification = ItemClassification.useful),
|
|
"Sleight Fira": KHRECOMItemData("Sleights", code = 268_2010, classification = ItemClassification.useful),
|
|
"Sleight Blizzara": KHRECOMItemData("Sleights", code = 268_2011, classification = ItemClassification.useful),
|
|
"Sleight Thundara": KHRECOMItemData("Sleights", code = 268_2012, classification = ItemClassification.useful),
|
|
"Sleight Cura": KHRECOMItemData("Sleights", code = 268_2013, classification = ItemClassification.useful),
|
|
"Sleight Gravira": KHRECOMItemData("Sleights", code = 268_2014, classification = ItemClassification.useful),
|
|
"Sleight Stopra": KHRECOMItemData("Sleights", code = 268_2015, classification = ItemClassification.useful),
|
|
"Sleight Aerora": KHRECOMItemData("Sleights", code = 268_2016, classification = ItemClassification.useful),
|
|
"Sleight Firaga": KHRECOMItemData("Sleights", code = 268_2017, classification = ItemClassification.useful),
|
|
"Sleight Blizzaga": KHRECOMItemData("Sleights", code = 268_2018, classification = ItemClassification.useful),
|
|
"Sleight Thundaga": KHRECOMItemData("Sleights", code = 268_2019, classification = ItemClassification.useful),
|
|
"Sleight Curaga": KHRECOMItemData("Sleights", code = 268_2020, classification = ItemClassification.useful),
|
|
"Sleight Graviga": KHRECOMItemData("Sleights", code = 268_2021, classification = ItemClassification.useful),
|
|
"Sleight Stopga": KHRECOMItemData("Sleights", code = 268_2022, classification = ItemClassification.useful),
|
|
"Sleight Aeroga": KHRECOMItemData("Sleights", code = 268_2023, classification = ItemClassification.useful),
|
|
"Sleight Fire Raid": KHRECOMItemData("Sleights", code = 268_2024, classification = ItemClassification.useful),
|
|
"Sleight Blizzard Raid": KHRECOMItemData("Sleights", code = 268_2025, classification = ItemClassification.useful),
|
|
"Sleight Thunder Raid": KHRECOMItemData("Sleights", code = 268_2026, classification = ItemClassification.useful),
|
|
"Sleight Reflect Raid": KHRECOMItemData("Sleights", code = 268_2027, classification = ItemClassification.useful),
|
|
"Sleight Judgement": KHRECOMItemData("Sleights", code = 268_2028, classification = ItemClassification.useful),
|
|
"Sleight Firaga Burst": KHRECOMItemData("Sleights", code = 268_2029, classification = ItemClassification.useful),
|
|
"Sleight Raging Storm": KHRECOMItemData("Sleights", code = 268_2030, classification = ItemClassification.useful),
|
|
"Sleight Mega Flare": KHRECOMItemData("Sleights", code = 268_2031, classification = ItemClassification.useful),
|
|
"Sleight Freeze": KHRECOMItemData("Sleights", code = 268_2032, classification = ItemClassification.useful),
|
|
"Sleight Homing Blizzara": KHRECOMItemData("Sleights", code = 268_2033, classification = ItemClassification.useful),
|
|
"Sleight Aqua Splash": KHRECOMItemData("Sleights", code = 268_2034, classification = ItemClassification.useful),
|
|
"Sleight Magnet Spiral": KHRECOMItemData("Sleights", code = 268_2035, classification = ItemClassification.useful),
|
|
"Sleight Lethal Frame": KHRECOMItemData("Sleights", code = 268_2036, classification = ItemClassification.useful),
|
|
"Sleight Shock Impact": KHRECOMItemData("Sleights", code = 268_2037, classification = ItemClassification.useful),
|
|
"Sleight Tornado": KHRECOMItemData("Sleights", code = 268_2038, classification = ItemClassification.useful),
|
|
"Sleight Quake": KHRECOMItemData("Sleights", code = 268_2039, classification = ItemClassification.useful),
|
|
"Sleight Warpinator": KHRECOMItemData("Sleights", code = 268_2040, classification = ItemClassification.useful),
|
|
"Sleight Warp": KHRECOMItemData("Sleights", code = 268_2041, classification = ItemClassification.useful),
|
|
"Sleight Bind": KHRECOMItemData("Sleights", code = 268_2042, classification = ItemClassification.useful),
|
|
"Sleight Confuse": KHRECOMItemData("Sleights", code = 268_2043, classification = ItemClassification.useful),
|
|
"Sleight Terror": KHRECOMItemData("Sleights", code = 268_2044, classification = ItemClassification.useful),
|
|
"Sleight Synchro": KHRECOMItemData("Sleights", code = 268_2045, classification = ItemClassification.useful),
|
|
"Sleight Gifted Miracle": KHRECOMItemData("Sleights", code = 268_2046, classification = ItemClassification.useful),
|
|
"Sleight Teleport": KHRECOMItemData("Sleights", code = 268_2047, classification = ItemClassification.useful),
|
|
"Sleight Holy": KHRECOMItemData("Sleights", code = 268_2048, classification = ItemClassification.useful),
|
|
"Sleight Proud Roar LV2": KHRECOMItemData("Sleights", code = 268_2049, classification = ItemClassification.useful),
|
|
"Sleight Proud Roar LV3": KHRECOMItemData("Sleights", code = 268_2050, classification = ItemClassification.useful),
|
|
"Sleight Splash LV2": KHRECOMItemData("Sleights", code = 268_2051, classification = ItemClassification.useful),
|
|
"Sleight Splash LV3": KHRECOMItemData("Sleights", code = 268_2052, classification = ItemClassification.useful),
|
|
"Sleight Paradise LV2": KHRECOMItemData("Sleights", code = 268_2053, classification = ItemClassification.useful),
|
|
"Sleight Paradise LV3": KHRECOMItemData("Sleights", code = 268_2054, classification = ItemClassification.useful),
|
|
"Sleight Idyll Romp": KHRECOMItemData("Sleights", code = 268_2055, classification = ItemClassification.useful),
|
|
"Sleight Flare Breath LV2": KHRECOMItemData("Sleights", code = 268_2056, classification = ItemClassification.useful),
|
|
"Sleight Flare Breath LV3": KHRECOMItemData("Sleights", code = 268_2057, classification = ItemClassification.useful),
|
|
"Sleight Showtime LV2": KHRECOMItemData("Sleights", code = 268_2058, classification = ItemClassification.useful),
|
|
"Sleight Showtime LV3": KHRECOMItemData("Sleights", code = 268_2059, classification = ItemClassification.useful),
|
|
"Sleight Twinkle LV2": KHRECOMItemData("Sleights", code = 268_2060, classification = ItemClassification.useful),
|
|
"Sleight Twinkle LV3": KHRECOMItemData("Sleights", code = 268_2061, classification = ItemClassification.useful),
|
|
"Sleight Cross-slash": KHRECOMItemData("Sleights", code = 268_2062, classification = ItemClassification.useful),
|
|
"Sleight Omnislash": KHRECOMItemData("Sleights", code = 268_2063, classification = ItemClassification.useful),
|
|
"Sleight Cross-slash+": KHRECOMItemData("Sleights", code = 268_2064, classification = ItemClassification.useful),
|
|
"Sleight Magic LV2": KHRECOMItemData("Sleights", code = 268_2065, classification = ItemClassification.useful),
|
|
"Sleight Magic LV3": KHRECOMItemData("Sleights", code = 268_2066, classification = ItemClassification.useful),
|
|
"Sleight Stardust Blitz": KHRECOMItemData("Sleights", code = 268_2067, classification = ItemClassification.useful),
|
|
"Sleight Goofy Tornado LV2": KHRECOMItemData("Sleights", code = 268_2068, classification = ItemClassification.useful),
|
|
"Sleight Goofy Tornado LV3": KHRECOMItemData("Sleights", code = 268_2069, classification = ItemClassification.useful),
|
|
"Sleight Goofy Smash": KHRECOMItemData("Sleights", code = 268_2070, classification = ItemClassification.useful),
|
|
"Sleight Wild Crush": KHRECOMItemData("Sleights", code = 268_2071, classification = ItemClassification.useful),
|
|
"Sleight Sandstorm LV2": KHRECOMItemData("Sleights", code = 268_2072, classification = ItemClassification.useful),
|
|
"Sleight Sandstorm LV3": KHRECOMItemData("Sleights", code = 268_2073, classification = ItemClassification.useful),
|
|
"Sleight Surprise! LV2": KHRECOMItemData("Sleights", code = 268_2074, classification = ItemClassification.useful),
|
|
"Sleight Surprise! LV3": KHRECOMItemData("Sleights", code = 268_2075, classification = ItemClassification.useful),
|
|
"Sleight Spiral Wave LV2": KHRECOMItemData("Sleights", code = 268_2076, classification = ItemClassification.useful),
|
|
"Sleight Spiral Wave LV3": KHRECOMItemData("Sleights", code = 268_2077, classification = ItemClassification.useful),
|
|
"Sleight Hummingbird LV2": KHRECOMItemData("Sleights", code = 268_2078, classification = ItemClassification.useful),
|
|
"Sleight Hummingbird LV3": KHRECOMItemData("Sleights", code = 268_2079, classification = ItemClassification.useful),
|
|
"Sleight Furious Volley LV2": KHRECOMItemData("Sleights", code = 268_2080, classification = ItemClassification.useful),
|
|
"Sleight Furious Volley LV3": KHRECOMItemData("Sleights", code = 268_2081, classification = ItemClassification.useful),
|
|
"Sleight Lucky Bounty LV2": KHRECOMItemData("Sleights", code = 268_2082, classification = ItemClassification.useful),
|
|
"Sleight Lucky Bounty LV3": KHRECOMItemData("Sleights", code = 268_2083, classification = ItemClassification.useful),
|
|
|
|
"World Card Agrabah": KHRECOMItemData("World Unlocks", code = 268_3002, classification = ItemClassification.progression),
|
|
"World Card Olympus Coliseum": KHRECOMItemData("World Unlocks", code = 268_3003, classification = ItemClassification.progression),
|
|
"World Card Wonderland": KHRECOMItemData("World Unlocks", code = 268_3004, classification = ItemClassification.progression),
|
|
"World Card Monstro": KHRECOMItemData("World Unlocks", code = 268_3005, classification = ItemClassification.progression),
|
|
"World Card Halloween Town": KHRECOMItemData("World Unlocks", code = 268_3006, classification = ItemClassification.progression),
|
|
"World Card Atlantica": KHRECOMItemData("World Unlocks", code = 268_3007, classification = ItemClassification.progression),
|
|
"World Card Neverland": KHRECOMItemData("World Unlocks", code = 268_3008, classification = ItemClassification.progression),
|
|
"World Card Hollow Bastion": KHRECOMItemData("World Unlocks", code = 268_3009, classification = ItemClassification.progression),
|
|
"World Card 100 Acre Wood": KHRECOMItemData("World Unlocks", code = 268_3010, classification = ItemClassification.progression),
|
|
"World Card Twilight Town": KHRECOMItemData("World Unlocks", code = 268_3011, classification = ItemClassification.progression),
|
|
"World Card Destiny Islands": KHRECOMItemData("World Unlocks", code = 268_3012, classification = ItemClassification.progression),
|
|
#"World Card Castle Oblivion": KHRECOMItemData("World Unlocks", code = 268_3013, classification = ItemClassification.progression),
|
|
"Key to Rewards Traverse Town": KHRECOMItemData("Gold Map Cards", code = 268_3301, classification = ItemClassification.progression),
|
|
"Key to Rewards Agrabah": KHRECOMItemData("Gold Map Cards", code = 268_3302, classification = ItemClassification.progression),
|
|
"Key to Rewards Olympus Coliseum": KHRECOMItemData("Gold Map Cards", code = 268_3303, classification = ItemClassification.progression),
|
|
"Key to Rewards Wonderland": KHRECOMItemData("Gold Map Cards", code = 268_3304, classification = ItemClassification.progression),
|
|
"Key to Rewards Monstro": KHRECOMItemData("Gold Map Cards", code = 268_3305, classification = ItemClassification.progression),
|
|
"Key to Rewards Halloween Town": KHRECOMItemData("Gold Map Cards", code = 268_3306, classification = ItemClassification.progression),
|
|
"Key to Rewards Atlantica": KHRECOMItemData("Gold Map Cards", code = 268_3307, classification = ItemClassification.progression),
|
|
"Key to Rewards Neverland": KHRECOMItemData("Gold Map Cards", code = 268_3308, classification = ItemClassification.progression),
|
|
"Key to Rewards Hollow Bastion": KHRECOMItemData("Gold Map Cards", code = 268_3309, classification = ItemClassification.progression),
|
|
"Key to Rewards Twilight Town": KHRECOMItemData("Gold Map Cards", code = 268_3311, classification = ItemClassification.progression),
|
|
"Key to Rewards Destiny Islands": KHRECOMItemData("Gold Map Cards", code = 268_3312, classification = ItemClassification.progression),
|
|
"Key to Rewards Castle Oblivion": KHRECOMItemData("Gold Map Cards", code = 268_3313, classification = ItemClassification.progression),
|
|
|
|
#Friend Cards
|
|
"Friend Card Donald": KHRECOMItemData("Friend Cards", code = 268_5001, classification = ItemClassification.progression),
|
|
"Friend Card Goofy": KHRECOMItemData("Friend Cards", code = 268_5002, classification = ItemClassification.progression),
|
|
"Friend Card Aladdin": KHRECOMItemData("Friend Cards", code = 268_5003, classification = ItemClassification.progression),
|
|
"Friend Card Ariel": KHRECOMItemData("Friend Cards", code = 268_5004, classification = ItemClassification.progression),
|
|
"Friend Card Beast": KHRECOMItemData("Friend Cards", code = 268_5005, classification = ItemClassification.progression),
|
|
"Friend Card Peter Pan": KHRECOMItemData("Friend Cards", code = 268_5006, classification = ItemClassification.progression),
|
|
"Friend Card Jack": KHRECOMItemData("Friend Cards", code = 268_5007, classification = ItemClassification.progression),
|
|
"Friend Card Pluto": KHRECOMItemData("Friend Cards", code = 268_5008, classification = ItemClassification.progression),
|
|
}
|
|
|
|
# Make item categories
|
|
item_name_groups: Dict[str, Set[str]] = {}
|
|
for item in item_table.keys():
|
|
category = item_table[item].category
|
|
if category not in item_name_groups.keys():
|
|
item_name_groups[category] = set()
|
|
item_name_groups[category].add(item)
|