86 lines
2.3 KiB
Python
86 lines
2.3 KiB
Python
import typing
|
|
|
|
from BaseClasses import Item, ItemClassification
|
|
from .Names import ItemNames
|
|
|
|
|
|
class ItemRow(typing.NamedTuple):
|
|
name: str
|
|
amount: int
|
|
progression: ItemClassification
|
|
|
|
|
|
class OSRSItem(Item):
|
|
game: str = "Old School Runescape"
|
|
|
|
|
|
QP_Items: typing.List[str] = [
|
|
ItemNames.QP_Cooks_Assistant,
|
|
ItemNames.QP_Demon_Slayer,
|
|
ItemNames.QP_Restless_Ghost,
|
|
ItemNames.QP_Romeo_Juliet,
|
|
ItemNames.QP_Sheep_Shearer,
|
|
ItemNames.QP_Shield_of_Arrav,
|
|
ItemNames.QP_Ernest_the_Chicken,
|
|
ItemNames.QP_Vampyre_Slayer,
|
|
ItemNames.QP_Imp_Catcher,
|
|
ItemNames.QP_Prince_Ali_Rescue,
|
|
ItemNames.QP_Dorics_Quest,
|
|
ItemNames.QP_Black_Knights_Fortress,
|
|
ItemNames.QP_Witchs_Potion,
|
|
ItemNames.QP_Knights_Sword,
|
|
ItemNames.QP_Goblin_Diplomacy,
|
|
ItemNames.QP_Pirates_Treasure,
|
|
ItemNames.QP_Rune_Mysteries,
|
|
ItemNames.QP_Misthalin_Mystery,
|
|
ItemNames.QP_Corsair_Curse,
|
|
ItemNames.QP_X_Marks_the_Spot,
|
|
ItemNames.QP_Below_Ice_Mountain
|
|
]
|
|
|
|
starting_area_dict: typing.Dict[int, str] = {
|
|
0: ItemNames.Lumbridge,
|
|
1: ItemNames.Al_Kharid,
|
|
2: ItemNames.Central_Varrock,
|
|
3: ItemNames.West_Varrock,
|
|
4: ItemNames.Edgeville,
|
|
5: ItemNames.Falador,
|
|
6: ItemNames.Draynor_Village,
|
|
7: ItemNames.Wilderness,
|
|
}
|
|
|
|
chunksanity_starting_chunks: typing.List[str] = [
|
|
ItemNames.Lumbridge,
|
|
ItemNames.Lumbridge_Swamp,
|
|
ItemNames.Lumbridge_Farms,
|
|
ItemNames.HAM_Hideout,
|
|
ItemNames.Draynor_Village,
|
|
ItemNames.Draynor_Manor,
|
|
ItemNames.Wizards_Tower,
|
|
ItemNames.Al_Kharid,
|
|
ItemNames.Citharede_Abbey,
|
|
ItemNames.South_Of_Varrock,
|
|
ItemNames.Central_Varrock,
|
|
ItemNames.Varrock_Palace,
|
|
ItemNames.East_Of_Varrock,
|
|
ItemNames.West_Varrock,
|
|
ItemNames.Edgeville,
|
|
ItemNames.Barbarian_Village,
|
|
ItemNames.Monastery,
|
|
ItemNames.Ice_Mountain,
|
|
ItemNames.Dwarven_Mines,
|
|
ItemNames.Falador,
|
|
ItemNames.Falador_Farm,
|
|
ItemNames.Crafting_Guild,
|
|
ItemNames.Rimmington,
|
|
ItemNames.Port_Sarim,
|
|
ItemNames.Mudskipper_Point,
|
|
ItemNames.Wilderness
|
|
]
|
|
|
|
# Some starting areas contain multiple regions, so if that area is rolled for Chunksanity, we need to map it to one
|
|
chunksanity_special_region_names: typing.Dict[str, str] = {
|
|
ItemNames.Lumbridge_Farms: 'Lumbridge Farms East',
|
|
ItemNames.Crafting_Guild: 'Crafting Guild Outskirts',
|
|
}
|