preliminary support for controllers
This commit is contained in:
parent
8f18e43af7
commit
ff8bd770d2
4 changed files with 76 additions and 12 deletions
|
@ -12,7 +12,7 @@ const stronger = normal * 3
|
||||||
|
|
||||||
func _input(_event: InputEvent) -> void:
|
func _input(_event: InputEvent) -> void:
|
||||||
if player_ready:
|
if player_ready:
|
||||||
var grav = stronger if Input.is_key_pressed(KEY_SHIFT) else normal
|
var grav = stronger if Input.is_action_pressed(\"gravity_strong\") else normal
|
||||||
PhysicsServer3D.area_set_param(get_viewport().find_world_3d().space, PhysicsServer3D.AREA_PARAM_GRAVITY, grav)
|
PhysicsServer3D.area_set_param(get_viewport().find_world_3d().space, PhysicsServer3D.AREA_PARAM_GRAVITY, grav)
|
||||||
"
|
"
|
||||||
|
|
||||||
|
@ -25,22 +25,26 @@ func _ready() -> void:
|
||||||
|
|
||||||
func _input(ev: InputEvent) -> void:
|
func _input(ev: InputEvent) -> void:
|
||||||
if ev is InputEventKey and ev.is_pressed():
|
if ev is InputEventKey and ev.is_pressed():
|
||||||
var k = ev.keycode
|
var up := Input.is_action_just_pressed(\"gravity_up\")
|
||||||
if k == KEY_UP or k == KEY_RIGHT or k == KEY_LEFT or k == KEY_DOWN:
|
var left := Input.is_action_just_pressed(\"gravity_left\")
|
||||||
|
var right := Input.is_action_just_pressed(\"gravity_right\")
|
||||||
|
var down := Input.is_action_just_pressed(\"gravity_down\")
|
||||||
|
|
||||||
|
if up or left or right or down:
|
||||||
var direction = Vector3()
|
var direction = Vector3()
|
||||||
if k == KEY_UP:
|
if up:
|
||||||
direction = Vector3.UP
|
direction = Vector3.UP
|
||||||
self.rotation_degrees = -90
|
self.rotation_degrees = -90
|
||||||
$AudioStreamPlayer.pitch_scale = 1.05
|
$AudioStreamPlayer.pitch_scale = 1.05
|
||||||
elif k == KEY_LEFT:
|
elif left:
|
||||||
direction = Vector3.LEFT
|
direction = Vector3.LEFT
|
||||||
self.rotation_degrees = -180
|
self.rotation_degrees = -180
|
||||||
$AudioStreamPlayer.pitch_scale = 1.02
|
$AudioStreamPlayer.pitch_scale = 1.02
|
||||||
elif k == KEY_RIGHT:
|
elif right:
|
||||||
direction = Vector3.RIGHT
|
direction = Vector3.RIGHT
|
||||||
self.rotation_degrees = 0
|
self.rotation_degrees = 0
|
||||||
$AudioStreamPlayer.pitch_scale = 0.98
|
$AudioStreamPlayer.pitch_scale = 0.98
|
||||||
elif k == KEY_DOWN:
|
elif down:
|
||||||
direction = Vector3.DOWN
|
direction = Vector3.DOWN
|
||||||
self.rotation_degrees = 90
|
self.rotation_degrees = 90
|
||||||
$AudioStreamPlayer.pitch_scale = 0.95
|
$AudioStreamPlayer.pitch_scale = 0.95
|
||||||
|
|
|
@ -9,9 +9,11 @@ custom_features=""
|
||||||
export_filter="all_resources"
|
export_filter="all_resources"
|
||||||
include_filter=""
|
include_filter=""
|
||||||
exclude_filter="exports/*"
|
exclude_filter="exports/*"
|
||||||
export_path="exports/AlakajamEntry.x86_64"
|
export_path="exports/DreamBall.x86_64"
|
||||||
|
patches=PackedStringArray()
|
||||||
encryption_include_filters=""
|
encryption_include_filters=""
|
||||||
encryption_exclude_filters=""
|
encryption_exclude_filters=""
|
||||||
|
seed=0
|
||||||
encrypt_pck=false
|
encrypt_pck=false
|
||||||
encrypt_directory=false
|
encrypt_directory=false
|
||||||
script_export_mode=2
|
script_export_mode=2
|
||||||
|
@ -49,9 +51,11 @@ custom_features=""
|
||||||
export_filter="all_resources"
|
export_filter="all_resources"
|
||||||
include_filter=""
|
include_filter=""
|
||||||
exclude_filter="exports/*"
|
exclude_filter="exports/*"
|
||||||
export_path="exports/AlakajamEntry.exe"
|
export_path="exports/DreamBall.exe"
|
||||||
|
patches=PackedStringArray()
|
||||||
encryption_include_filters=""
|
encryption_include_filters=""
|
||||||
encryption_exclude_filters=""
|
encryption_exclude_filters=""
|
||||||
|
seed=0
|
||||||
encrypt_pck=false
|
encrypt_pck=false
|
||||||
encrypt_directory=false
|
encrypt_directory=false
|
||||||
script_export_mode=2
|
script_export_mode=2
|
||||||
|
@ -114,9 +118,11 @@ custom_features=""
|
||||||
export_filter="all_resources"
|
export_filter="all_resources"
|
||||||
include_filter=""
|
include_filter=""
|
||||||
exclude_filter="exports/*"
|
exclude_filter="exports/*"
|
||||||
export_path="exports/web/AlakajamEntry.html"
|
export_path="exports/web/DreamBall.html"
|
||||||
|
patches=PackedStringArray()
|
||||||
encryption_include_filters=""
|
encryption_include_filters=""
|
||||||
encryption_exclude_filters=""
|
encryption_exclude_filters=""
|
||||||
|
seed=0
|
||||||
encrypt_pck=false
|
encrypt_pck=false
|
||||||
encrypt_directory=false
|
encrypt_directory=false
|
||||||
script_export_mode=2
|
script_export_mode=2
|
||||||
|
|
|
@ -143,9 +143,9 @@ func _unhandled_key_input(event: InputEvent) -> void:
|
||||||
if event.is_pressed() and event is InputEventKey:
|
if event.is_pressed() and event is InputEventKey:
|
||||||
var current_levels := get_current_levels()
|
var current_levels := get_current_levels()
|
||||||
if len(current_levels) and changing_level == false:
|
if len(current_levels) and changing_level == false:
|
||||||
if event.keycode == KEY_ESCAPE:
|
if Input.is_action_just_pressed(\"pause_game\"):
|
||||||
pause_game()
|
pause_game()
|
||||||
elif event.keycode == KEY_R:
|
elif Input.is_action_just_pressed(\"restart_level\"):
|
||||||
pause_game()
|
pause_game()
|
||||||
restart_level()
|
restart_level()
|
||||||
|
|
||||||
|
|
|
@ -24,6 +24,60 @@ config/windows_native_icon="res://icon.ico"
|
||||||
|
|
||||||
Settings="*res://settings.gd"
|
Settings="*res://settings.gd"
|
||||||
|
|
||||||
|
[input]
|
||||||
|
|
||||||
|
gravity_up={
|
||||||
|
"deadzone": 0.2,
|
||||||
|
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194320,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
|
||||||
|
, 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":122,"location":0,"echo":false,"script":null)
|
||||||
|
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":11,"pressure":0.0,"pressed":false,"script":null)
|
||||||
|
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":1,"axis_value":-1.0,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
gravity_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":4194319,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
|
||||||
|
, 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":113,"location":0,"echo":false,"script":null)
|
||||||
|
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":13,"pressure":0.0,"pressed":false,"script":null)
|
||||||
|
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":0,"axis_value":-1.0,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
gravity_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":4194321,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
|
||||||
|
, 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)
|
||||||
|
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":14,"pressure":0.0,"pressed":false,"script":null)
|
||||||
|
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":0,"axis_value":1.0,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
gravity_down={
|
||||||
|
"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":4194322,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
|
||||||
|
, 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)
|
||||||
|
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":12,"pressure":0.0,"pressed":false,"script":null)
|
||||||
|
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":1,"axis_value":1.0,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
gravity_strong={
|
||||||
|
"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":4194325,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
|
||||||
|
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":1,"pressure":0.0,"pressed":false,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
pause_game={
|
||||||
|
"deadzone": 0.2,
|
||||||
|
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194305,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
|
||||||
|
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":6,"pressure":0.0,"pressed":false,"script":null)
|
||||||
|
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":4,"pressure":0.0,"pressed":false,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
restart_level={
|
||||||
|
"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":82,"key_label":0,"unicode":114,"location":0,"echo":false,"script":null)
|
||||||
|
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":2,"pressure":0.0,"pressed":false,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
[physics]
|
[physics]
|
||||||
|
|
||||||
3d/run_on_separate_thread=true
|
3d/run_on_separate_thread=true
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue