From 741f5da61422a5429345ce0e182e7e3ae6fc71b8 Mon Sep 17 00:00:00 2001 From: Daniel Dolezal Date: Wed, 3 Apr 2024 12:24:17 +0200 Subject: [PATCH] add create map file and remove old my_helper to change it to new submodules --- make_map_file.py | 17 +++++++++ my_helpers/myPickle.py | 85 ------------------------------------------ 2 files changed, 17 insertions(+), 85 deletions(-) create mode 100644 make_map_file.py delete mode 100644 my_helpers/myPickle.py diff --git a/make_map_file.py b/make_map_file.py new file mode 100644 index 0000000..2387789 --- /dev/null +++ b/make_map_file.py @@ -0,0 +1,17 @@ +import my_helpers.myPickle as my_pickle +from classes.Map import Map + +from json import load as json_load +import lzma + +if __name__ == '__main__': + with open("config.json", "r") as f: + CONFIG = json_load(f) + + game_map = Map("./Map") + game_map.make_file() + + with open(f"{CONFIG['map_file']['path']}/{CONFIG['map_file']['filename']}", "wb") as f: + my_pickle.dump(game_map, f, lzma) + + print(game_map.story) diff --git a/my_helpers/myPickle.py b/my_helpers/myPickle.py deleted file mode 100644 index 964c894..0000000 --- a/my_helpers/myPickle.py +++ /dev/null @@ -1,85 +0,0 @@ -from cryptography.fernet import Fernet -import pickle -import io - -def writeKey(filename:str) -> Fernet: - """ - Generates a key and save it into a file - """ - key = Fernet.generate_key() - with open(f'{filename}.key', 'wb') as key_file: - key_file.write(key) - - return Fernet(key) - -def generateKey() -> Fernet: - """ - Generates a key and returns it - """ - key = Fernet.generate_key() - return Fernet(key) - -def loadKey(filename:str) -> Fernet: - """ - Loads the key from the current directory named `key.key` - """ - with open(f'{filename}.key', 'rb') as f: - data = f.read() - return Fernet(data) - -def dumps(obj, compress=None, encrypt:Fernet=None) -> bytes: - """ - Dumps the object into a byte stream - """ - data = pickle.dumps(obj) - if compress: - data = compress.compress(data) - if encrypt: - data = encrypt.encrypt(data) - - return data - -def dump(obj, file: io.BytesIO, compress=None, encrypt:Fernet=None) -> None: - """ - Dumps the object into a file - """ - data = pickle.dumps(obj) - data = dumps(data, compress, encrypt) - - file.write(data) - file.flush() - -def loads(data, compress=None, encrypt:Fernet=None) -> object: - """ - Loads the object from a byte stream - """ - if encrypt: - data = encrypt.decrypt(data) - if compress: - data = compress.decompress(data) - - return pickle.loads(data) - -def load(file: io.BytesIO, compress=None, encrypt:Fernet=None) -> object: - """ - Loads the object from a file - """ - data = file.read() - data = loads(data, compress, encrypt) - - return pickle.loads(data) - -if __name__ == "__main__": - import lzma - - data = {'a': 'A', 'b': (1, 2, 3, 4, 5)} - #writeKey('key') - key = loadKey('key') - dataCompressedAndEncrypted = dumps(data, compress=lzma, encrypt=key) - print(dataCompressedAndEncrypted) - - del key - - key = loadKey('key') - dataCompressedAndEncrypted = loads(dataCompressedAndEncrypted, compress=lzma, encrypt=key) - print(dataCompressedAndEncrypted) \ No newline at end of file