From a971ab9df31df28d657ef693a959707690590f2e Mon Sep 17 00:00:00 2001 From: Oclaim Date: Sun, 15 Jun 2025 14:49:02 -0400 Subject: [PATCH] Moved some definitions into the main file --- NoPELib/__init__.py | 42 ------------------------------------------ NoPELib/expansion.py | 43 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 43 insertions(+), 42 deletions(-) diff --git a/NoPELib/__init__.py b/NoPELib/__init__.py index 93128d0..7d1a7da 100644 --- a/NoPELib/__init__.py +++ b/NoPELib/__init__.py @@ -1,45 +1,3 @@ import logging -import json _log = logging.getLogger('NoPE-Lib') - -class Players: - def __init__(self, playersPath: str='./players.json', loggerID: str='Players'): - """ - Initialises a list of players. - - Args: - playersPath (str, optional): The path of the players.json file. Defaults to './players.json'. - loggerID (str, optional): The ID used for logging. Defaults to 'Players'. - """ - self._log = _log.getChild(loggerID) - - with open(playersPath, 'r') as f: - self._cfg = json.loads(f.read()) - - def addExpansion(self, expansion): - """ - Adds an expansion, used by things like PDO-Lib. - - Args: - expansion (Expansion): The expansion to add. - """ - - expID = expansion.__class__.ID - _log.debug(f'Adding expansion {expID}...') - expansion = expansion(self._cfg.get(expID)) - - def loadPlayers(self): - """ - Actually loads all the players as objects. - - The reason this isn't done in __init__ is - simply because no expansions have been loaded - yet. - """ - pass - -class Player: - def __init__(self, name, flags: list[str] = None): - self.name = name - self.flags = flags if flags != None else [] diff --git a/NoPELib/expansion.py b/NoPELib/expansion.py index 464deef..a04d89f 100644 --- a/NoPELib/expansion.py +++ b/NoPELib/expansion.py @@ -1,3 +1,46 @@ +import json + +class Players: + def __init__(self, playersPath: str='./players.json', loggerID: str='Players'): + """ + Initialises a list of players. + + Args: + playersPath (str, optional): The path of the players.json file. Defaults to './players.json'. + loggerID (str, optional): The ID used for logging. Defaults to 'Players'. + """ + self._log = _log.getChild(loggerID) + + with open(playersPath, 'r') as f: + self._cfg = json.loads(f.read()) + + def addExpansion(self, expansion): + """ + Adds an expansion, used by things like PDO-Lib. + + Args: + expansion (Expansion): The expansion to add. + """ + + expID = expansion.__class__.ID + _log.debug(f'Adding expansion {expID}...') + expansion = expansion(self._cfg.get(expID)) + + def loadPlayers(self): + """ + Actually loads all the players as objects. + + The reason this isn't done in __init__ is + simply because no expansions have been loaded + yet. + """ + pass + +class Player: + def __init__(self, name, flags: list[str] = None): + self.name = name + self.flags = flags if flags != None else [] + class Expansion: def __init__(self, parent, globalConfig): setattr(parent, self.__class__.ID, self)