From 13fcda7a26bda2f2347e4631f6df27918286215b Mon Sep 17 00:00:00 2001 From: Archer Bowen Date: Fri, 17 May 2024 09:28:03 +0100 Subject: [PATCH] #2606 - Added initial attempts and created for visibility --- src/primaite/game/agent/actions.py | 7 +++++++ src/primaite/simulator/file_system/folder.py | 6 ++++++ 2 files changed, 13 insertions(+) diff --git a/src/primaite/game/agent/actions.py b/src/primaite/game/agent/actions.py index f4f9a2cc..b2bb1a2f 100644 --- a/src/primaite/game/agent/actions.py +++ b/src/primaite/game/agent/actions.py @@ -312,6 +312,13 @@ class NodeFolderRestoreAction(NodeFolderAbstractAction): super().__init__(manager, num_nodes=num_nodes, num_folders=num_folders, **kwargs) self.verb: str = "restore" +class NodeFolderFileCreateAction(NodeFolderAbstractAction): + """Action which creates a new file in a given folder.""" + + def __init__(self, manager: "ActionManager", num_nodes: int, num_folders: int, **kwargs) -> None: + super().__init__(manager, num_nodes=num_nodes, num_folders=num_folders, **kwargs) + self.verb: str = "create" + class NodeFileAbstractAction(AbstractAction): """Abstract base class for file actions. diff --git a/src/primaite/simulator/file_system/folder.py b/src/primaite/simulator/file_system/folder.py index 90ad4425..6107c655 100644 --- a/src/primaite/simulator/file_system/folder.py +++ b/src/primaite/simulator/file_system/folder.py @@ -61,6 +61,12 @@ class Folder(FileSystemItemABC): func=lambda request, context: RequestResponse.from_bool(self.remove_file_by_name(file_name=request[0])) ), ) + rm.add_request( + name="create", + request_type=RequestType( + func=lambda request, context: RequestResponse.from_bool(self.create_file(file_name=request[0])) + ), + ) self._file_request_manager = RequestManager() rm.add_request( name="file",