2019-12-08 22:43:49 +01:00
|
|
|
# vim: set fileencoding=utf-8
|
|
|
|
from typing import Optional
|
|
|
|
|
|
|
|
from bemani.backend.iidx.base import IIDXBase
|
|
|
|
from bemani.common import VersionConstants
|
|
|
|
|
|
|
|
|
|
|
|
class IIDX1stStyle(IIDXBase):
|
|
|
|
|
2022-10-15 20:56:30 +02:00
|
|
|
name: str = "Beatmania IIDX 1st style & substream"
|
2021-09-07 19:56:15 +02:00
|
|
|
version: int = VersionConstants.IIDX
|
2019-12-08 22:43:49 +01:00
|
|
|
|
|
|
|
|
|
|
|
class IIDX2ndStyle(IIDXBase):
|
|
|
|
|
2022-10-15 20:56:30 +02:00
|
|
|
name: str = "Beatmania IIDX 2nd style"
|
2021-09-07 19:56:15 +02:00
|
|
|
version: int = VersionConstants.IIDX_2ND_STYLE
|
2019-12-08 22:43:49 +01:00
|
|
|
|
|
|
|
def previous_version(self) -> Optional[IIDXBase]:
|
|
|
|
return IIDX1stStyle(self.data, self.config, self.model)
|
|
|
|
|
|
|
|
|
|
|
|
class IIDX3rdStyle(IIDXBase):
|
|
|
|
|
2022-10-15 20:56:30 +02:00
|
|
|
name: str = "Beatmania IIDX 3rd style"
|
2021-09-07 19:56:15 +02:00
|
|
|
version: int = VersionConstants.IIDX_3RD_STYLE
|
2019-12-08 22:43:49 +01:00
|
|
|
|
|
|
|
def previous_version(self) -> Optional[IIDXBase]:
|
|
|
|
return IIDX2ndStyle(self.data, self.config, self.model)
|
|
|
|
|
|
|
|
|
|
|
|
class IIDX4thStyle(IIDXBase):
|
|
|
|
|
2022-10-15 20:56:30 +02:00
|
|
|
name: str = "Beatmania IIDX 4th style"
|
2021-09-07 19:56:15 +02:00
|
|
|
version: int = VersionConstants.IIDX_4TH_STYLE
|
2019-12-08 22:43:49 +01:00
|
|
|
|
|
|
|
def previous_version(self) -> Optional[IIDXBase]:
|
|
|
|
return IIDX3rdStyle(self.data, self.config, self.model)
|
|
|
|
|
|
|
|
|
|
|
|
class IIDX5thStyle(IIDXBase):
|
|
|
|
|
2022-10-15 20:56:30 +02:00
|
|
|
name: str = "Beatmania IIDX 5th style"
|
2021-09-07 19:56:15 +02:00
|
|
|
version: int = VersionConstants.IIDX_5TH_STYLE
|
2019-12-08 22:43:49 +01:00
|
|
|
|
|
|
|
def previous_version(self) -> Optional[IIDXBase]:
|
|
|
|
return IIDX4thStyle(self.data, self.config, self.model)
|
|
|
|
|
|
|
|
|
|
|
|
class IIDX6thStyle(IIDXBase):
|
|
|
|
|
2022-10-15 20:56:30 +02:00
|
|
|
name: str = "Beatmania IIDX 6th style"
|
2021-09-07 19:56:15 +02:00
|
|
|
version: int = VersionConstants.IIDX_6TH_STYLE
|
2019-12-08 22:43:49 +01:00
|
|
|
|
|
|
|
def previous_version(self) -> Optional[IIDXBase]:
|
|
|
|
return IIDX5thStyle(self.data, self.config, self.model)
|
|
|
|
|
|
|
|
|
|
|
|
class IIDX7thStyle(IIDXBase):
|
|
|
|
|
2022-10-15 20:56:30 +02:00
|
|
|
name: str = "Beatmania IIDX 7th style"
|
2021-09-07 19:56:15 +02:00
|
|
|
version: int = VersionConstants.IIDX_7TH_STYLE
|
2019-12-08 22:43:49 +01:00
|
|
|
|
|
|
|
def previous_version(self) -> Optional[IIDXBase]:
|
|
|
|
return IIDX6thStyle(self.data, self.config, self.model)
|
|
|
|
|
|
|
|
|
|
|
|
class IIDX8thStyle(IIDXBase):
|
|
|
|
|
2022-10-15 20:56:30 +02:00
|
|
|
name: str = "Beatmania IIDX 8th style"
|
2021-09-07 19:56:15 +02:00
|
|
|
version: int = VersionConstants.IIDX_8TH_STYLE
|
2019-12-08 22:43:49 +01:00
|
|
|
|
|
|
|
def previous_version(self) -> Optional[IIDXBase]:
|
|
|
|
return IIDX7thStyle(self.data, self.config, self.model)
|
|
|
|
|
|
|
|
|
|
|
|
class IIDX9thStyle(IIDXBase):
|
|
|
|
|
2022-10-15 20:56:30 +02:00
|
|
|
name: str = "Beatmania IIDX 9th style"
|
2021-09-07 19:56:15 +02:00
|
|
|
version: int = VersionConstants.IIDX_9TH_STYLE
|
2019-12-08 22:43:49 +01:00
|
|
|
|
|
|
|
def previous_version(self) -> Optional[IIDXBase]:
|
|
|
|
return IIDX8thStyle(self.data, self.config, self.model)
|
|
|
|
|
|
|
|
|
|
|
|
class IIDX10thStyle(IIDXBase):
|
|
|
|
|
2022-10-15 20:56:30 +02:00
|
|
|
name: str = "Beatmania IIDX 10th style"
|
2021-09-07 19:56:15 +02:00
|
|
|
version: int = VersionConstants.IIDX_10TH_STYLE
|
2019-12-08 22:43:49 +01:00
|
|
|
|
|
|
|
def previous_version(self) -> Optional[IIDXBase]:
|
|
|
|
return IIDX9thStyle(self.data, self.config, self.model)
|
|
|
|
|
|
|
|
|
|
|
|
class IIDXRed(IIDXBase):
|
|
|
|
|
2022-10-15 20:56:30 +02:00
|
|
|
name: str = "Beatmania IIDX RED"
|
2021-09-07 19:56:15 +02:00
|
|
|
version: int = VersionConstants.IIDX_RED
|
2019-12-08 22:43:49 +01:00
|
|
|
|
|
|
|
def previous_version(self) -> Optional[IIDXBase]:
|
|
|
|
return IIDX10thStyle(self.data, self.config, self.model)
|
|
|
|
|
|
|
|
|
|
|
|
class IIDXHappySky(IIDXBase):
|
|
|
|
|
2022-10-15 20:56:30 +02:00
|
|
|
name: str = "Beatmania IIDX HAPPY SKY"
|
2021-09-07 19:56:15 +02:00
|
|
|
version: int = VersionConstants.IIDX_HAPPY_SKY
|
2019-12-08 22:43:49 +01:00
|
|
|
|
|
|
|
def previous_version(self) -> Optional[IIDXBase]:
|
|
|
|
return IIDXRed(self.data, self.config, self.model)
|
|
|
|
|
|
|
|
|
|
|
|
class IIDXDistorted(IIDXBase):
|
|
|
|
|
2022-10-15 20:56:30 +02:00
|
|
|
name: str = "Beatmania IIDX DistorteD"
|
2021-09-07 19:56:15 +02:00
|
|
|
version: int = VersionConstants.IIDX_DISTORTED
|
2019-12-08 22:43:49 +01:00
|
|
|
|
|
|
|
def previous_version(self) -> Optional[IIDXBase]:
|
|
|
|
return IIDXHappySky(self.data, self.config, self.model)
|
|
|
|
|
|
|
|
|
|
|
|
class IIDXGold(IIDXBase):
|
|
|
|
|
2022-10-15 20:56:30 +02:00
|
|
|
name: str = "Beatmania IIDX GOLD"
|
2021-09-07 19:56:15 +02:00
|
|
|
version: int = VersionConstants.IIDX_GOLD
|
2019-12-08 22:43:49 +01:00
|
|
|
|
|
|
|
def previous_version(self) -> Optional[IIDXBase]:
|
|
|
|
return IIDXDistorted(self.data, self.config, self.model)
|
|
|
|
|
|
|
|
|
|
|
|
class IIDXDJTroopers(IIDXBase):
|
|
|
|
|
2022-10-15 20:56:30 +02:00
|
|
|
name: str = "Beatmania IIDX DJ TROOPERS"
|
2021-09-07 19:56:15 +02:00
|
|
|
version: int = VersionConstants.IIDX_DJ_TROOPERS
|
2019-12-08 22:43:49 +01:00
|
|
|
|
|
|
|
def previous_version(self) -> Optional[IIDXBase]:
|
|
|
|
return IIDXGold(self.data, self.config, self.model)
|
|
|
|
|
|
|
|
|
|
|
|
class IIDXEmpress(IIDXBase):
|
|
|
|
|
2022-10-15 20:56:30 +02:00
|
|
|
name: str = "Beatmania IIDX EMPRESS"
|
2021-09-07 19:56:15 +02:00
|
|
|
version: int = VersionConstants.IIDX_EMPRESS
|
2019-12-08 22:43:49 +01:00
|
|
|
|
|
|
|
def previous_version(self) -> Optional[IIDXBase]:
|
|
|
|
return IIDXDJTroopers(self.data, self.config, self.model)
|
|
|
|
|
|
|
|
|
|
|
|
class IIDXSirius(IIDXBase):
|
|
|
|
|
2022-10-15 20:56:30 +02:00
|
|
|
name: str = "Beatmania IIDX SIRIUS"
|
2021-09-07 19:56:15 +02:00
|
|
|
version: int = VersionConstants.IIDX_SIRIUS
|
2019-12-08 22:43:49 +01:00
|
|
|
|
|
|
|
def previous_version(self) -> Optional[IIDXBase]:
|
|
|
|
return IIDXEmpress(self.data, self.config, self.model)
|
|
|
|
|
|
|
|
|
|
|
|
class IIDXResortAnthem(IIDXBase):
|
|
|
|
|
2022-10-15 20:56:30 +02:00
|
|
|
name: str = "Beatmania IIDX Resort Anthem"
|
2021-09-07 19:56:15 +02:00
|
|
|
version: int = VersionConstants.IIDX_RESORT_ANTHEM
|
2019-12-08 22:43:49 +01:00
|
|
|
|
|
|
|
def previous_version(self) -> Optional[IIDXBase]:
|
|
|
|
return IIDXSirius(self.data, self.config, self.model)
|
|
|
|
|
|
|
|
|
|
|
|
class IIDXLincle(IIDXBase):
|
|
|
|
|
2022-10-15 20:56:30 +02:00
|
|
|
name: str = "Beatmania IIDX Lincle"
|
2021-09-07 19:56:15 +02:00
|
|
|
version: int = VersionConstants.IIDX_LINCLE
|
2019-12-08 22:43:49 +01:00
|
|
|
|
|
|
|
def previous_version(self) -> Optional[IIDXBase]:
|
|
|
|
return IIDXResortAnthem(self.data, self.config, self.model)
|