# CORE FRAMEWORK SOURCE FILE # Copyright (c) 2024 The StarOpenSource Project & Contributors # Licensed under the GNU Affero General Public License v3 # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as # published by the Free Software Foundation, either version 3 of the # License, or (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Affero General Public License for more details. # # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see . ## CORE testing playground ## ## This script is used to test CORE's behaviour during development. ## It's state should be reverted to how it was before committing (if modified). extends Node # CORE Configuration var config: CoreConfiguration = CoreConfiguration.new() # CORE Object var core: Core func _init() -> void: configure_core() # Initialize CORE with custom config core = Core.new(config) func _ready() -> void: # Inject CORE await get_tree().process_frame add_child(core) await get_tree().process_frame # Print information about CORE core.logger.info("Test.gd", await core.get_formatted_string("""Version information: Release (semantic) = %release_semantic% Release = %release% Typerelease = %release_type% Type = %type% Type (technical) = %type_technical% Development mode = %devmode% Headless mode = %headless% Custom module support = %custommodules%""")) # Print hi core.logger.info("Test.gd", "Hi there!") # Update CORE configuration func configure_core() -> void: config.headless = false config.debugging = true config.logger_level = CoreTypes.LoggerLevel.DIAG