Files
ffxiv/scripts/lib/ffxivclasses.py
2022-05-16 23:02:32 +02:00

396 lines
15 KiB
Python

####################################################################################################
# Main Class #
####################################################################################################
class FFXIVCLASS:
__author__ = 'Anima'
__version__ = '0.0.1'
CLASSROLE : str = {'E': 'None', 'D': 'None'}
CLASSNAME : str = {'E': 'None', 'D': 'None'}
def __init__(self, language: str = 'D') -> None:
self.LANG : str = language
self.MAXLVL : int = 90
self.ROLE : dict = self.CLASSROLE[self.LANG]
self.NAME : dict = self.CLASSNAME[self.LANG]
####################################################################################################
# Tanks #
####################################################################################################
class Tank(FFXIVCLASS):
__version__ = '0.0.1'
CLASSROLE : dict = {'E': 'Tank', 'D': 'Verteidiger'}
def __init__(self, language: str = 'D') -> None:
super().__init__(language)
class DarkKnight(Tank):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Dark Knight', 'D': 'Dunkelritter'}
CLASSHORT : dict = {'E': 'DRK', 'D': 'DKR'}
FFXIVAPIID : int = 32
def __init__(self,level: int = 30, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
class Gunbreaker(Tank):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Gunbreaker', 'D': 'Revolverklinge'}
CLASSHORT : dict = {'E': 'GNB', 'D': 'REV'}
FFXIVAPIID : int = 37
def __init__(self,level: int = 60, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
class Paladin(Tank):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Paladin', 'D': 'Paladin'}
CLASSHORT : dict = {'E': 'PLD', 'D': 'PLD'}
FFXIVAPIID : int = 19
def __init__(self,level: int = 0, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
class Warrior(Tank):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Warrior', 'D': 'Krieger'}
CLASSHORT : dict = {'E': 'WAR', 'D': 'KRG'}
FFXIVAPIID : int = 21
def __init__(self,level: int = 0, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
####################################################################################################
# Healers #
####################################################################################################
class Heal(FFXIVCLASS):
__version__ = '0.0.1'
CLASSROLE : dict = {'E': 'Healer', 'D': 'Heiler'}
def __init__(self, language: str = 'D') -> None:
super().__init__(language)
class Astrologian(Heal):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Astrologian', 'D': 'Astrologe'}
CLASSHORT : dict = {'E': 'AST', 'D': 'AST'}
FFXIVAPIID : int = 33
def __init__(self,level: int = 30, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
class Sage(Heal):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Sage', 'D': 'Weiser'}
CLASSHORT : dict = {'E': 'SGE', 'D': 'WEI'}
FFXIVAPIID : int = 40
def __init__(self,level: int = 70, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
class Sholar(Heal):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Sholar', 'D': 'Gelehrte'}
CLASSHORT : dict = {'E': 'SCH', 'D': 'GLT'}
FFXIVAPIID : int = 28
def __init__(self,level: int = 70, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
class WhiteMage(Heal):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'White Mage', 'D': 'Weißmagier'}
CLASSHORT : dict = {'E': 'WHM', 'D': 'WMA'}
FFXIVAPIID : int = 24
def __init__(self,level: int = 0, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
####################################################################################################
# Damage Dealer #
####################################################################################################
#--------------------------------------------> Meeles <--------------------------------------------#
class Melee(FFXIVCLASS):
__version__ = '0.0.1'
CLASSROLE : dict = {'E': 'Melee', 'D': 'Nahkämpfer'}
def __init__(self, language: str = 'D') -> None:
super().__init__(language)
class Dragoon(Melee):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Dragoon', 'D': 'Dragoon'}
CLASSHORT : dict = {'E': 'DRG', 'D': 'DRG'}
FFXIVAPIID : int = 22
def __init__(self,level: int = 0, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
class Monk(Melee):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Monk', 'D': 'Mönch'}
CLASSHORT : dict = {'E': 'MNK', 'D': 'MÖN'}
FFXIVAPIID : int = 20
def __init__(self,level: int = 0, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
class Ninja(Melee):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Ninja', 'D': 'Ninja'}
CLASSHORT : dict = {'E': 'NIN', 'D': 'NIN'}
FFXIVAPIID : int = 30
def __init__(self,level: int = 0, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
class Samurai(Melee):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Samurai', 'D': 'Samurai'}
CLASSHORT : dict = {'E': 'SAM', 'D': 'SAM'}
FFXIVAPIID : int = 34
def __init__(self,level: int = 50, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
class Reaper(Melee):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Reaper', 'D': 'Schnitter'}
CLASSHORT : dict = {'E': 'RPR', 'D': 'SNT'}
FFXIVAPIID : int = 39
def __init__(self,level: int = 70, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
#--------------------------------------------> Ranges <--------------------------------------------#
class Range(FFXIVCLASS):
__version__ = '0.0.1'
CLASSROLE : dict = {'E': 'Range', 'D': 'Fernkämpfer'}
def __init__(self, language: str = 'D') -> None:
super().__init__(language)
class Bard(Range):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Bard', 'D': 'Barde'}
CLASSHORT : dict = {'E': 'BRD', 'D': 'BRD'}
FFXIVAPIID : int = 23
def __init__(self,level: int = 0, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
class Dancer(Range):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Dancer', 'D': 'Tänzer'}
CLASSHORT : dict = {'E': 'DCR', 'D': 'TÄN'}
FFXIVAPIID : int = 38
def __init__(self,level: int = 60, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
class Machinist(Range):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Machinist', 'D': 'Maschinist'}
CLASSHORT : dict = {'E': 'MCH', 'D': 'MCH'}
FFXIVAPIID : int = 31
def __init__(self,level: int = 30, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
#---------------------------------------------> Mage <---------------------------------------------#
class Mage(FFXIVCLASS):
__version__ = '0.0.1'
CLASSROLE : dict = {'E': 'Mage', 'D': 'Magier'}
def __init__(self, language: str = 'D') -> None:
super().__init__(language)
class BlackMage(Mage):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Black Mage', 'D': 'Schwarzmagier'}
CLASSHORT : dict = {'E': 'BMA', 'D': 'SMA'}
FFXIVAPIID : int = 25
def __init__(self,level: int = 70, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
class RedMage(Mage):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Red Mage', 'D': 'Rotmagier'}
CLASSHORT : dict = {'E': 'RDM', 'D': 'RMA'}
FFXIVAPIID : int = 35
def __init__(self,level: int = 70, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
class Summoner(Mage):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Summoner', 'D': 'Beschwörer'}
CLASSHORT : dict = {'E': 'SUM', 'D': 'BSW'}
FFXIVAPIID : int = 27
def __init__(self,level: int = 70, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
class BlueMage(Mage):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Blue Mage', 'D': 'Blaumagier'}
CLASSHORT : dict = {'E': 'BLU', 'D': 'BLA'}
FFXIVAPIID : int = 36
def __init__(self,level: int = 70, language: str = 'D') -> None:
super().__init__(language)
self.MAXLVL : int = 70
self.LEVEL : int = level
####################################################################################################
# Collectors #
####################################################################################################
class Collector(FFXIVCLASS):
__version__ = '0.0.1'
CLASSROLE : dict = {'E': 'Collector', 'D': 'Sammler'}
def __init__(self, language: str = 'D') -> None:
super().__init__(language)
class Botanist(Collector):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Botanis', 'D': 'Gärtner'}
CLASSHORT : dict = {'E': 'BTN', 'D': 'G?'}
FFXIVAPIID : int = 17
def __init__(self,level: int = 0, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
class Fisher(Collector):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Fisher', 'D': 'Fischer'}
CLASSHORT : dict = {'E': 'FSH', 'D': 'FIS'}
FFXIVAPIID : int = 18
def __init__(self,level: int = 0, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
class Miner(Collector):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Miner', 'D': 'Minenarbeiter'}
CLASSHORT : dict = {'E': 'MIN', 'D': 'MIN'}
FFXIVAPIID : int = 16
def __init__(self,level: int = 0, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
####################################################################################################
# Crafters #
####################################################################################################
class Crafter(FFXIVCLASS):
__version__ = '0.0.1'
CLASSROLE : dict = {'E': 'Carafter', 'D': 'Handwerker'}
def __init__(self, language: str = 'D') -> None:
super().__init__(language)
class Alchemist(Crafter):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Alchemist', 'D': 'Alchimist'}
CLASSHORT : dict = {'E': 'ALC', 'D': 'ALC'}
FFXIVAPIID : int = 14
def __init__(self,level: int = 0, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
class Armorer(Crafter):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Armorer', 'D': 'Plattner'}
CLASSHORT : dict = {'E': 'ARM', 'D': 'PLT'}
FFXIVAPIID : int = 10
def __init__(self,level: int = 0, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
class Blacksmith(Crafter):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Blacksmith', 'D': 'Grobschmied'}
CLASSHORT : dict = {'E': 'BSM', 'D': 'GRS'}
FFXIVAPIID : int = 9
def __init__(self,level: int = 0, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
class Carpenter(Crafter):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Carpenter', 'D': 'Zimmerer'}
CLASSHORT : dict = {'E': 'CRP', 'D': 'ZIM'}
FFXIVAPIID : int = 8
def __init__(self,level: int = 0, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
class Culinarian(Crafter):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Culinarian', 'D': 'Gourmet'}
CLASSHORT : dict = {'E': 'CUL', 'D': 'GUR'}
FFXIVAPIID : int = 15
def __init__(self,level: int = 0, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
class Goldsmith(Crafter):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Goldsmith', 'D': 'Goldschmied'}
CLASSHORT : dict = {'E': 'GSM', 'D': 'GSM'}
FFXIVAPIID : int = 11
def __init__(self,level: int = 0, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
class Leatherworker(Crafter):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Leatherworker', 'D': 'Gerber'}
CLASSHORT : dict = {'E': 'LTW', 'D': 'GRB'}
FFXIVAPIID : int = 12
def __init__(self,level: int = 0, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
class Weaver(Crafter):
__version__ = '0.0.1'
CLASSNAME : dict = {'E': 'Weaver', 'D': 'Weber'}
CLASSHORT : dict = {'E': 'WVR', 'D': 'WEB'}
FFXIVAPIID : int = 13
def __init__(self,level: int = 0, language: str = 'D') -> None:
super().__init__(language)
self.LEVEL : int = level
if __name__ == '__main__':
test = Sage(language='E')