mirror of
https://github.com/MarioSpore/Grinch-AP.git
synced 2025-10-21 20:21:32 -06:00
Super Mario 64: Option groups (#4161)
* sm64ex: add option groups * sm64ex: rename sanity options group to item options * sm64ex: rename sanity options group to logic options * sm64ex: seperate star costs from goal options and add entrance rando to logic options * sm64ex: seperate ability options from logic options group
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
import typing
|
||||
from dataclasses import dataclass
|
||||
from Options import DefaultOnToggle, Range, Toggle, DeathLink, Choice, PerGameCommonOptions, OptionSet
|
||||
from Options import DefaultOnToggle, Range, Toggle, DeathLink, Choice, PerGameCommonOptions, OptionSet, OptionGroup
|
||||
from .Items import action_item_table
|
||||
|
||||
class EnableCoinStars(DefaultOnToggle):
|
||||
@@ -127,6 +127,32 @@ class MoveRandomizerActions(OptionSet):
|
||||
valid_keys = [action for action in action_item_table if action != 'Double Jump']
|
||||
default = valid_keys
|
||||
|
||||
sm64_options_groups = [
|
||||
OptionGroup("Logic Options", [
|
||||
AreaRandomizer,
|
||||
BuddyChecks,
|
||||
ExclamationBoxes,
|
||||
ProgressiveKeys,
|
||||
EnableCoinStars,
|
||||
StrictCapRequirements,
|
||||
StrictCannonRequirements,
|
||||
]),
|
||||
OptionGroup("Ability Options", [
|
||||
EnableMoveRandomizer,
|
||||
MoveRandomizerActions,
|
||||
StrictMoveRequirements,
|
||||
]),
|
||||
OptionGroup("Star Options", [
|
||||
AmountOfStars,
|
||||
FirstBowserStarDoorCost,
|
||||
BasementStarDoorCost,
|
||||
SecondFloorStarDoorCost,
|
||||
MIPS1Cost,
|
||||
MIPS2Cost,
|
||||
StarsToFinish,
|
||||
]),
|
||||
]
|
||||
|
||||
@dataclass
|
||||
class SM64Options(PerGameCommonOptions):
|
||||
area_rando: AreaRandomizer
|
||||
|
||||
Reference in New Issue
Block a user