Super Mario 64: Rework logic for 100 Coins (#4131)

* sm64ex: Rework logic for 100 Coins

* sm64ex: 100 Coins Vanilla Option

* sm64ex: Avoiding raw int comparisons for 100 coin option

* sm64ex: Change 100 coin option from toggle to choice

* sm64ex: use snake_case for 100 coin option

* just use "vanilla" for option comparison (exempt-medic feedback)

Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

* sm64ex: remove vanilla 100 coins from item pool to remove overfilling stars

* yeah

Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

* Remove range condition (35 is the min for total stars)

Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>

---------

Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
This commit is contained in:
josephwhite
2024-12-12 08:50:48 -05:00
committed by GitHub
parent 3acbe9ece1
commit 144d612c52
2 changed files with 36 additions and 4 deletions

View File

@@ -3,10 +3,21 @@ from dataclasses import dataclass
from Options import DefaultOnToggle, Range, Toggle, DeathLink, Choice, PerGameCommonOptions, OptionSet, OptionGroup
from .Items import action_item_table
class EnableCoinStars(DefaultOnToggle):
"""Disable to Ignore 100 Coin Stars. You can still collect them, but they don't do anything.
Removes 15 locations from the pool."""
class EnableCoinStars(Choice):
"""
Determine logic for 100 Coin Stars.
Off - Removed from pool. You can still collect them, but they don't do anything.
Optimal for ignoring 100 Coin Stars entirely. Removes 15 locations from the pool.
On - Kept in pool, potentially randomized.
Vanilla - Kept in pool, but NOT randomized.
"""
display_name = "Enable 100 Coin Stars"
option_off = 0
option_on = 1
option_vanilla = 2
class StrictCapRequirements(DefaultOnToggle):