BumperStickers: Use options_dataclass

This commit is contained in:
CaitSith2
2023-12-24 17:29:04 -08:00
parent d3e148dcc6
commit 7742d5d804
2 changed files with 13 additions and 11 deletions

View File

@@ -4,7 +4,8 @@
# https://opensource.org/licenses/MIT
import typing
from Options import Option, Range
from Options import Option, Range, PerGameCommonOptions
from dataclasses import dataclass
class TaskAdvances(Range):
@@ -69,12 +70,12 @@ class KillerTrapWeight(Range):
default = 0
bumpstik_options: typing.Dict[str, type(Option)] = {
"task_advances": TaskAdvances,
"turners": Turners,
"paint_cans": PaintCans,
"trap_count": Traps,
"rainbow_trap_weight": RainbowTrapWeight,
"spinner_trap_weight": SpinnerTrapWeight,
"killer_trap_weight": KillerTrapWeight
}
@dataclass
class BumpStikOptions(PerGameCommonOptions):
task_advances: TaskAdvances
turners: Turners
paint_cans: PaintCans
trap_count: Traps
rainbow_trap_weight: RainbowTrapWeight
spinner_trap_weight: SpinnerTrapWeight
killer_trap_weight: KillerTrapWeight

View File

@@ -43,7 +43,8 @@ class BumpStikWorld(World):
required_client_version = (0, 3, 8)
option_definitions = bumpstik_options
options = BumpStikOptions
options_dataclass = BumpStikOptions
def __init__(self, world: MultiWorld, player: int):
super(BumpStikWorld, self).__init__(world, player)