# vim: set fileencoding=utf-8 from typing import Optional from bemani.backend.ddr.base import DDRBase from bemani.common import VersionConstants class DDRX(DDRBase): name: str = "DanceDanceRevolution X" version: int = VersionConstants.DDR_X def previous_version(self) -> Optional[DDRBase]: return DDRSuperNova2(self.data, self.config, self.model) class DDRSuperNova2(DDRBase): name: str = "DanceDanceRevolution SuperNova 2" version: int = VersionConstants.DDR_SUPERNOVA_2 def previous_version(self) -> Optional[DDRBase]: return DDRSuperNova(self.data, self.config, self.model) class DDRSuperNova(DDRBase): name: str = "DanceDanceRevolution SuperNova" version: int = VersionConstants.DDR_SUPERNOVA def previous_version(self) -> Optional[DDRBase]: return DDRExtreme(self.data, self.config, self.model) class DDRExtreme(DDRBase): name: str = "DanceDanceRevolution Extreme" version: int = VersionConstants.DDR_EXTREME def previous_version(self) -> Optional[DDRBase]: return DDR7thMix(self.data, self.config, self.model) class DDR7thMix(DDRBase): name: str = "DanceDanceRevolution 7thMix" version: int = VersionConstants.DDR_7THMIX def previous_version(self) -> Optional[DDRBase]: return DDR6thMix(self.data, self.config, self.model) class DDR6thMix(DDRBase): name: str = "DanceDanceRevolution 6thMix" version: int = VersionConstants.DDR_6THMIX def previous_version(self) -> Optional[DDRBase]: return DDR5thMix(self.data, self.config, self.model) class DDR5thMix(DDRBase): name: str = "DanceDanceRevolution 5thMix" version: int = VersionConstants.DDR_5THMIX def previous_version(self) -> Optional[DDRBase]: return DDR4thMix(self.data, self.config, self.model) class DDR4thMix(DDRBase): name: str = "DanceDanceRevolution 4thMix" version: int = VersionConstants.DDR_4THMIX def previous_version(self) -> Optional[DDRBase]: return DDR3rdMix(self.data, self.config, self.model) class DDR3rdMix(DDRBase): name: str = "DanceDanceRevolution 3rdMix" version: int = VersionConstants.DDR_3RDMIX def previous_version(self) -> Optional[DDRBase]: return DDR2ndMix(self.data, self.config, self.model) class DDR2ndMix(DDRBase): name: str = "DanceDanceRevolution 2ndMix" version: int = VersionConstants.DDR_2NDMIX def previous_version(self) -> Optional[DDRBase]: return DDR1stMix(self.data, self.config, self.model) class DDR1stMix(DDRBase): name: str = "DanceDanceRevolution 1stMix" version: int = VersionConstants.DDR_1STMIX