Yoshi's Island: Implement New Game (#2141)

Co-authored-by: Silvris <58583688+Silvris@users.noreply.github.com>
Co-authored-by: Alchav <59858495+Alchav@users.noreply.github.com>
Co-authored-by: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com>
Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
This commit is contained in:
PinkSwitch
2024-03-22 15:35:00 -05:00
committed by GitHub
parent aaa3472d5d
commit 355223b8f0
16 changed files with 4559 additions and 0 deletions

View File

@@ -0,0 +1,19 @@
from BaseClasses import CollectionState
from typing import TYPE_CHECKING
if TYPE_CHECKING:
from . import YoshisIslandWorld
class BossReqs:
player: int
def __init__(self, world: "YoshisIslandWorld") -> None:
self.player = world.player
self.castle_unlock = world.options.castle_open_condition.value
self.boss_unlock = world.options.castle_clear_condition.value
def castle_access(self, state: CollectionState) -> bool:
return state.has("Boss Clear", self.player, self.castle_unlock)
def castle_clear(self, state: CollectionState) -> bool:
return state.has("Boss Clear", self.player, self.boss_unlock)