feat: add input action and project setting mappings
This commit is contained in:
+29
-1
@@ -11,7 +11,7 @@ config_version=5
|
|||||||
[application]
|
[application]
|
||||||
|
|
||||||
config/name="Night Shift"
|
config/name="Night Shift"
|
||||||
run/main_scene="uid://p766ipnev5hb"
|
run/main_scene="uid://c44pljehe0qun"
|
||||||
config/features=PackedStringArray("4.7", "C#", "Forward Plus")
|
config/features=PackedStringArray("4.7", "C#", "Forward Plus")
|
||||||
config/icon="res://icon.svg"
|
config/icon="res://icon.svg"
|
||||||
|
|
||||||
@@ -29,6 +29,34 @@ project/assembly_name="NightShift"
|
|||||||
naming/scene_name_casing=1
|
naming/scene_name_casing=1
|
||||||
naming/script_name_casing=1
|
naming/script_name_casing=1
|
||||||
|
|
||||||
|
[input]
|
||||||
|
|
||||||
|
move_forward={
|
||||||
|
"deadzone": 0.2,
|
||||||
|
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":87,"key_label":0,"unicode":119,"location":0,"echo":false,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
move_back={
|
||||||
|
"deadzone": 0.2,
|
||||||
|
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":83,"key_label":0,"unicode":115,"location":0,"echo":false,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
move_left={
|
||||||
|
"deadzone": 0.2,
|
||||||
|
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":65,"key_label":0,"unicode":97,"location":0,"echo":false,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
move_right={
|
||||||
|
"deadzone": 0.2,
|
||||||
|
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":68,"key_label":0,"unicode":100,"location":0,"echo":false,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
jump={
|
||||||
|
"deadzone": 0.2,
|
||||||
|
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":32,"key_label":0,"unicode":32,"location":0,"echo":false,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
[physics]
|
[physics]
|
||||||
|
|
||||||
3d/physics_engine="Jolt Physics"
|
3d/physics_engine="Jolt Physics"
|
||||||
|
|||||||
@@ -0,0 +1,30 @@
|
|||||||
|
using System;
|
||||||
|
|
||||||
|
namespace Game.Godot.Mappings;
|
||||||
|
|
||||||
|
public enum InputAction
|
||||||
|
{
|
||||||
|
MoveLeft,
|
||||||
|
MoveRight,
|
||||||
|
MoveForward,
|
||||||
|
MoveBack,
|
||||||
|
Jump,
|
||||||
|
Cancel
|
||||||
|
}
|
||||||
|
|
||||||
|
public static class InputActionExtensions
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Godot Input Map action name for this action.
|
||||||
|
/// </summary>
|
||||||
|
public static string ActionName(this InputAction action) => action switch
|
||||||
|
{
|
||||||
|
InputAction.MoveLeft => "move_left",
|
||||||
|
InputAction.MoveRight => "move_right",
|
||||||
|
InputAction.MoveForward => "move_forward",
|
||||||
|
InputAction.MoveBack => "move_back",
|
||||||
|
InputAction.Jump => "jump",
|
||||||
|
InputAction.Cancel => "ui_cancel",
|
||||||
|
_ => throw new ArgumentOutOfRangeException(nameof(action), action, null)
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
uid://bwrbj8sdi6tqe
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
using System;
|
||||||
|
|
||||||
|
namespace Game.Godot.Mappings;
|
||||||
|
|
||||||
|
public enum ProjectSetting
|
||||||
|
{
|
||||||
|
Gravity
|
||||||
|
}
|
||||||
|
|
||||||
|
public static class ProjectSettingExtensions
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// ProjectSettings key for this setting.
|
||||||
|
/// </summary>
|
||||||
|
public static string SettingPath(this ProjectSetting setting) => setting switch
|
||||||
|
{
|
||||||
|
ProjectSetting.Gravity => "physics/3d/default_gravity",
|
||||||
|
_ => throw new ArgumentOutOfRangeException(nameof(setting), setting, null)
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
uid://c6kb654ebimt6
|
||||||
Reference in New Issue
Block a user