From 2589c313a4e6770527383c9d97f57689558983b4 Mon Sep 17 00:00:00 2001 From: Alan Alexander Cerna <87852561+Kroppec@users.noreply.github.com> Date: Wed, 27 Oct 2021 17:45:27 +0300 Subject: [PATCH] [Minimal] Update to Handler and Processor scripts Defined basic Handler and Processor structure --- Alens/movementSystem0.0.3/project.godot | 32 ++++++++++ .../character/player/player_body_handler.gd | 10 ++++ .../system/input/user_input_handler.gd | 22 ++++++- .../system/state/user_state_handler.gd | 15 +++++ .../vectoral_direction_preset_handler.gd | 60 ++++++++++++++++++- .../VDIR/vectoral_direction_processor.gd | 3 + 6 files changed, 138 insertions(+), 4 deletions(-) create mode 100644 Alens/movementSystem0.0.3/source/assets/scripts/handlers/system/state/user_state_handler.gd diff --git a/Alens/movementSystem0.0.3/project.godot b/Alens/movementSystem0.0.3/project.godot index 81edfdd..5bba79c 100644 --- a/Alens/movementSystem0.0.3/project.godot +++ b/Alens/movementSystem0.0.3/project.godot @@ -14,6 +14,38 @@ config/name="movementSystem0.0.3" run/main_scene="res://source/entities/player/player_node.tscn" config/icon="res://icon.png" +[input] + +input_left={ +"deadzone": 0.5, +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":65,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777231,"unicode":0,"echo":false,"script":null) + ] +} +input_right={ +"deadzone": 0.5, +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":68,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777233,"unicode":0,"echo":false,"script":null) + ] +} +input_up={ +"deadzone": 0.5, +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":87,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777232,"unicode":0,"echo":false,"script":null) + ] +} +input_down={ +"deadzone": 0.5, +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":83,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777234,"unicode":0,"echo":false,"script":null) + ] +} +input_debug_toggle={ +"deadzone": 0.5, +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":96,"unicode":0,"echo":false,"script":null) + ] +} + [physics] common/enable_pause_aware_picking=true diff --git a/Alens/movementSystem0.0.3/source/assets/scripts/handlers/character/player/player_body_handler.gd b/Alens/movementSystem0.0.3/source/assets/scripts/handlers/character/player/player_body_handler.gd index baf2bf7..8a4a48e 100644 --- a/Alens/movementSystem0.0.3/source/assets/scripts/handlers/character/player/player_body_handler.gd +++ b/Alens/movementSystem0.0.3/source/assets/scripts/handlers/character/player/player_body_handler.gd @@ -3,6 +3,7 @@ extends KinematicBody2D # Instance of data handlers var userInputInstance = preload("res://source/assets/scripts/handlers/system/input/user_input_handler.gd").new() var vectoralDirectionPresetInstance = preload("res://source/assets/scripts/handlers/system/vectoralPresets/vectoral_direction_preset_handler.gd").new() +var userStateInstance = preload("res://source/assets/scripts/handlers/system/state/user_state_handler.gd").new() # Instance of data processors var VDIRprocessorInstance = preload("res://source/assets/scripts/processors/VDIR/vectoral_direction_processor.gd").new() @@ -12,8 +13,17 @@ var CRprocessorInstance = preload("res://source/assets/scripts/processors/CR/cli var canvasManagerInstance = preload("res://source/assets/scripts/controllers/managers/canvas_manager.gd").new() var physicsManagerInstance = preload("res://source/assets/scripts/controllers/managers/physics_manager.gd").new() +# Local class variables +var vectoralDirectionPreset + +func _ready(): + vectoralDirectionPreset = vectoralDirectionPresetInstance.getState() + func _process(delta): # Update data-handler returned states + var userInput = userInputInstance.update() + var userState = userStateInstance.update() # Send the returned states through processors + var VDIR = VDIRprocessorInstance.process(userState, vectoralDirectionPreset) # Give the resulting data to game controllers pass diff --git a/Alens/movementSystem0.0.3/source/assets/scripts/handlers/system/input/user_input_handler.gd b/Alens/movementSystem0.0.3/source/assets/scripts/handlers/system/input/user_input_handler.gd index 550e88b..32dbfdb 100644 --- a/Alens/movementSystem0.0.3/source/assets/scripts/handlers/system/input/user_input_handler.gd +++ b/Alens/movementSystem0.0.3/source/assets/scripts/handlers/system/input/user_input_handler.gd @@ -1,7 +1,23 @@ extends Node -func _ready(): +var inputState = {} + +func _init() -> void: + inputState = { + "right": false, + "left": false, + "up": false, + "down": false, + "debug": false + } pass -func verify(): - return 'Verification approved' +func update(): + inputState = { + "right": Input.is_action_pressed("input_right"), + "left": Input.is_action_pressed("input_left"), + "up": Input.is_action_pressed("input_up"), + "down": Input.is_action_pressed("input_down"), + "debug": Input.is_action_pressed("input_debug_toggle") + } + return inputState diff --git a/Alens/movementSystem0.0.3/source/assets/scripts/handlers/system/state/user_state_handler.gd b/Alens/movementSystem0.0.3/source/assets/scripts/handlers/system/state/user_state_handler.gd new file mode 100644 index 0000000..6e5d603 --- /dev/null +++ b/Alens/movementSystem0.0.3/source/assets/scripts/handlers/system/state/user_state_handler.gd @@ -0,0 +1,15 @@ +extends Node + +var userState = {} + +func _init() -> void: + userState = { + "state": false + } + pass + +func update(): + userState = { + "state": true + } + return userState diff --git a/Alens/movementSystem0.0.3/source/assets/scripts/handlers/system/vectoralPresets/vectoral_direction_preset_handler.gd b/Alens/movementSystem0.0.3/source/assets/scripts/handlers/system/vectoralPresets/vectoral_direction_preset_handler.gd index 38c4d54..6ae0e61 100644 --- a/Alens/movementSystem0.0.3/source/assets/scripts/handlers/system/vectoralPresets/vectoral_direction_preset_handler.gd +++ b/Alens/movementSystem0.0.3/source/assets/scripts/handlers/system/vectoralPresets/vectoral_direction_preset_handler.gd @@ -1,4 +1,62 @@ extends Node -func _ready(): +var vectoralState = {} + +func _ready() -> void: + vectoralState = { + "0": { # Source (Client) positional rotation vectors + "0": { # Primary source positional vector + "start": Vector2(0,0), + "end": Vector2(0,0), + "ray": Vector2(0,0) + }, + "1": { # Secondary source positional vector (Negative) + "start": Vector2(0,0), + "end": Vector2(0,0), + "ray": Vector2(0,0) + }, + "2": { # Secondary source positional vector (Positive) + "start": Vector2(0,0), + "end": Vector2(0,0), + "ray": Vector2(0,0) + }, + "3": { # Secondary source positional vector (Negative) [R] + "start": Vector2(0,0), + "end": Vector2(0,0), + "ray": Vector2(0,0) + }, + "4": { # Secondary source positional vector (Positive) [R] + "start": Vector2(0,0), + "end": Vector2(0,0), + "ray": Vector2(0,0) + } + }, + "1": { # Source (Client) force vectors + "0": { + "start": Vector2(0,0), + "end": Vector2(0,0) + }, + "1": { + "start": Vector2(0,0), + "end": Vector2(0,0) + }, + "2": { + "start": Vector2(0,0), + "end": Vector2(0,0) + }, + "3": { + "start": Vector2(0,0), + "end": Vector2(0,0) + } + }, + "2": { # Source (Client) positional vectors + "0": { + "start": Vector2(0,0), + "end": Vector2(0,0) + } + } + } pass + +func getState(): + return vectoralState diff --git a/Alens/movementSystem0.0.3/source/assets/scripts/processors/VDIR/vectoral_direction_processor.gd b/Alens/movementSystem0.0.3/source/assets/scripts/processors/VDIR/vectoral_direction_processor.gd index 38c4d54..4cd02af 100644 --- a/Alens/movementSystem0.0.3/source/assets/scripts/processors/VDIR/vectoral_direction_processor.gd +++ b/Alens/movementSystem0.0.3/source/assets/scripts/processors/VDIR/vectoral_direction_processor.gd @@ -2,3 +2,6 @@ extends Node func _ready(): pass + +func process(userState, vectoralDirectionPreset): + return