gd: added input addon

This commit is contained in:
2025-05-27 19:20:46 +02:00
parent d8a1604af9
commit c8d8c7ec25
683 changed files with 21608 additions and 2 deletions

View File

@ -0,0 +1,10 @@
extends Sprite2D
@export var speed:float = 500
@export var lifetime:float = 1.0
func _process(delta: float) -> void:
position += transform.x * delta * speed
lifetime -= delta
if lifetime <= 0:
queue_free()

View File

@ -0,0 +1 @@
uid://w7nan374op8

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dfpdumvnepffe"
path="res://.godot/imported/bolt.png-d2b4175f016737de6380cafdf09c07c0.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://guide_examples/top_down_shooter/bolt/bolt.png"
dest_files=["res://.godot/imported/bolt.png-d2b4175f016737de6380cafdf09c07c0.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View File

@ -0,0 +1,10 @@
[gd_scene load_steps=3 format=3 uid="uid://c0fqv8e3tljmp"]
[ext_resource type="Texture2D" uid="uid://dfpdumvnepffe" path="res://guide_examples/top_down_shooter/bolt/bolt.png" id="1_b5s4m"]
[ext_resource type="Script" path="res://guide_examples/top_down_shooter/bolt/bolt.gd" id="2_o61jt"]
[node name="Bolt" type="Sprite2D"]
texture = ExtResource("1_b5s4m")
script = ExtResource("2_o61jt")
speed = 1000.0
lifetime = 2.0

View File

@ -0,0 +1,123 @@
[gd_resource type="Resource" script_class="GUIDEMappingContext" load_steps=28 format=3 uid="uid://dysrgn1ubf15g"]
[ext_resource type="Script" path="res://addons/guide/guide_mapping_context.gd" id="1_3vbsc"]
[ext_resource type="Resource" uid="uid://ch070wegl722t" path="res://guide_examples/top_down_shooter/mapping_contexts/move.tres" id="1_epjja"]
[ext_resource type="Script" path="res://addons/guide/inputs/guide_input_joy_axis_2d.gd" id="2_bwpvf"]
[ext_resource type="Script" path="res://addons/guide/guide_input_mapping.gd" id="2_skach"]
[ext_resource type="Script" path="res://addons/guide/modifiers/guide_modifier_deadzone.gd" id="3_872fr"]
[ext_resource type="Script" path="res://addons/guide/guide_action_mapping.gd" id="3_e36mu"]
[ext_resource type="Resource" uid="uid://vpsh1myp67ws" path="res://guide_examples/top_down_shooter/mapping_contexts/look_relative.tres" id="6_5clnx"]
[ext_resource type="Resource" uid="uid://coktqyup12g3w" path="res://guide_examples/top_down_shooter/mapping_contexts/fire.tres" id="7_pfi7b"]
[ext_resource type="Script" path="res://addons/guide/inputs/guide_input_joy_axis_1d.gd" id="8_gtkor"]
[ext_resource type="Script" path="res://addons/guide/triggers/guide_trigger_pressed.gd" id="9_i3uls"]
[ext_resource type="Resource" uid="uid://bnd2jguy7tfti" path="res://guide_examples/top_down_shooter/mapping_contexts/switch_to_keyboard_and_mouse.tres" id="10_m7sth"]
[ext_resource type="Script" path="res://addons/guide/inputs/guide_input_any.gd" id="11_jpwmq"]
[sub_resource type="Resource" id="Resource_uwau4"]
script = ExtResource("2_bwpvf")
x = 0
y = 1
joy_index = -1
[sub_resource type="Resource" id="Resource_i1fx3"]
script = ExtResource("3_872fr")
lower_threshold = 0.2
upper_threshold = 1.0
[sub_resource type="Resource" id="Resource_7mv4j"]
script = ExtResource("2_skach")
override_action_settings = false
is_remappable = false
display_name = ""
display_category = ""
input = SubResource("Resource_uwau4")
modifiers = Array[Resource("res://addons/guide/modifiers/guide_modifier.gd")]([SubResource("Resource_i1fx3")])
triggers = Array[Resource("res://addons/guide/triggers/guide_trigger.gd")]([])
[sub_resource type="Resource" id="Resource_x8yon"]
script = ExtResource("3_e36mu")
action = ExtResource("1_epjja")
input_mappings = Array[ExtResource("2_skach")]([SubResource("Resource_7mv4j")])
[sub_resource type="Resource" id="Resource_2nugj"]
script = ExtResource("2_bwpvf")
x = 2
y = 3
joy_index = -1
[sub_resource type="Resource" id="Resource_iln10"]
script = ExtResource("3_872fr")
lower_threshold = 0.607
upper_threshold = 1.0
[sub_resource type="Resource" id="Resource_yxygj"]
script = ExtResource("2_skach")
override_action_settings = false
is_remappable = false
display_name = ""
display_category = ""
input = SubResource("Resource_2nugj")
modifiers = Array[Resource("res://addons/guide/modifiers/guide_modifier.gd")]([SubResource("Resource_iln10")])
triggers = Array[Resource("res://addons/guide/triggers/guide_trigger.gd")]([])
[sub_resource type="Resource" id="Resource_ropdf"]
script = ExtResource("3_e36mu")
action = ExtResource("6_5clnx")
input_mappings = Array[ExtResource("2_skach")]([SubResource("Resource_yxygj")])
[sub_resource type="Resource" id="Resource_mnoq7"]
script = ExtResource("8_gtkor")
axis = 5
joy_index = -1
[sub_resource type="Resource" id="Resource_7u5im"]
script = ExtResource("9_i3uls")
actuation_threshold = 0.5
[sub_resource type="Resource" id="Resource_ssica"]
script = ExtResource("2_skach")
override_action_settings = false
is_remappable = false
display_name = ""
display_category = ""
input = SubResource("Resource_mnoq7")
modifiers = Array[Resource("res://addons/guide/modifiers/guide_modifier.gd")]([])
triggers = Array[Resource("res://addons/guide/triggers/guide_trigger.gd")]([SubResource("Resource_7u5im")])
[sub_resource type="Resource" id="Resource_a7lt0"]
script = ExtResource("3_e36mu")
action = ExtResource("7_pfi7b")
input_mappings = Array[ExtResource("2_skach")]([SubResource("Resource_ssica")])
[sub_resource type="Resource" id="Resource_konxq"]
script = ExtResource("11_jpwmq")
mouse_buttons = true
mouse_movement = true
minimum_mouse_movement_distance = 1.0
joy_buttons = false
joy_axes = false
minimum_joy_axis_actuation_strength = 0.2
keyboard = true
touch = false
mouse = true
joy = false
[sub_resource type="Resource" id="Resource_lid0f"]
script = ExtResource("2_skach")
override_action_settings = false
is_remappable = false
display_name = ""
display_category = ""
input = SubResource("Resource_konxq")
modifiers = Array[Resource("res://addons/guide/modifiers/guide_modifier.gd")]([])
triggers = Array[Resource("res://addons/guide/triggers/guide_trigger.gd")]([])
[sub_resource type="Resource" id="Resource_6hier"]
script = ExtResource("3_e36mu")
action = ExtResource("10_m7sth")
input_mappings = Array[ExtResource("2_skach")]([SubResource("Resource_lid0f")])
[resource]
script = ExtResource("1_3vbsc")
display_name = ""
mappings = Array[ExtResource("3_e36mu")]([SubResource("Resource_x8yon"), SubResource("Resource_ropdf"), SubResource("Resource_a7lt0"), SubResource("Resource_6hier")])

View File

@ -0,0 +1,13 @@
[gd_resource type="Resource" script_class="GUIDEAction" load_steps=2 format=3 uid="uid://coktqyup12g3w"]
[ext_resource type="Script" path="res://addons/guide/guide_action.gd" id="1_jmn08"]
[resource]
script = ExtResource("1_jmn08")
name = &""
action_value_type = 0
block_lower_priority_actions = true
emit_as_godot_actions = false
is_remappable = false
display_name = ""
display_category = ""

View File

@ -0,0 +1,196 @@
[gd_resource type="Resource" script_class="GUIDEMappingContext" load_steps=40 format=3 uid="uid://dhp7nup127wxw"]
[ext_resource type="Resource" uid="uid://ch070wegl722t" path="res://guide_examples/top_down_shooter/mapping_contexts/move.tres" id="1_o40br"]
[ext_resource type="Script" path="res://addons/guide/inputs/guide_input_key.gd" id="2_r8xkm"]
[ext_resource type="Script" path="res://addons/guide/modifiers/guide_modifier_negate.gd" id="3_mxuhd"]
[ext_resource type="Script" path="res://addons/guide/guide_input_mapping.gd" id="4_nld8w"]
[ext_resource type="Script" path="res://addons/guide/modifiers/guide_modifier_input_swizzle.gd" id="4_sdo77"]
[ext_resource type="Script" path="res://addons/guide/guide_action_mapping.gd" id="5_wiw4m"]
[ext_resource type="Resource" uid="uid://c4tpipfhludsi" path="res://guide_examples/top_down_shooter/mapping_contexts/look_absolute.tres" id="7_4uvlp"]
[ext_resource type="Script" path="res://addons/guide/guide_mapping_context.gd" id="7_dx1p2"]
[ext_resource type="Script" path="res://addons/guide/inputs/guide_input_mouse_position.gd" id="8_hys4n"]
[ext_resource type="Script" path="res://addons/guide/modifiers/guide_modifier_canvas_coordinates.gd" id="9_5f66x"]
[ext_resource type="Resource" uid="uid://coktqyup12g3w" path="res://guide_examples/top_down_shooter/mapping_contexts/fire.tres" id="10_he1ky"]
[ext_resource type="Script" path="res://addons/guide/inputs/guide_input_mouse_button.gd" id="11_btbxh"]
[ext_resource type="Script" path="res://addons/guide/triggers/guide_trigger_pressed.gd" id="12_ce85k"]
[ext_resource type="Resource" uid="uid://byu565ktximg2" path="res://guide_examples/top_down_shooter/mapping_contexts/switch_to_controller.tres" id="13_0evsu"]
[ext_resource type="Script" path="res://addons/guide/inputs/guide_input_any.gd" id="14_ulkgf"]
[sub_resource type="Resource" id="Resource_rqldx"]
script = ExtResource("2_r8xkm")
key = 87
shift = false
control = false
alt = false
meta = false
allow_additional_modifiers = true
[sub_resource type="Resource" id="Resource_fedub"]
script = ExtResource("4_sdo77")
order = 0
[sub_resource type="Resource" id="Resource_sithj"]
script = ExtResource("3_mxuhd")
x = true
y = true
z = true
[sub_resource type="Resource" id="Resource_gvylm"]
script = ExtResource("4_nld8w")
override_action_settings = false
is_remappable = false
display_name = ""
display_category = ""
input = SubResource("Resource_rqldx")
modifiers = Array[Resource("res://addons/guide/modifiers/guide_modifier.gd")]([SubResource("Resource_fedub"), SubResource("Resource_sithj")])
triggers = Array[Resource("res://addons/guide/triggers/guide_trigger.gd")]([])
[sub_resource type="Resource" id="Resource_2grck"]
script = ExtResource("2_r8xkm")
key = 83
shift = false
control = false
alt = false
meta = false
allow_additional_modifiers = true
[sub_resource type="Resource" id="Resource_e6ufd"]
script = ExtResource("4_sdo77")
order = 0
[sub_resource type="Resource" id="Resource_hclrp"]
script = ExtResource("4_nld8w")
override_action_settings = false
is_remappable = false
display_name = ""
display_category = ""
input = SubResource("Resource_2grck")
modifiers = Array[Resource("res://addons/guide/modifiers/guide_modifier.gd")]([SubResource("Resource_e6ufd")])
triggers = Array[Resource("res://addons/guide/triggers/guide_trigger.gd")]([])
[sub_resource type="Resource" id="Resource_0e6tb"]
script = ExtResource("2_r8xkm")
key = 65
shift = false
control = false
alt = false
meta = false
allow_additional_modifiers = true
[sub_resource type="Resource" id="Resource_o7bio"]
script = ExtResource("3_mxuhd")
x = true
y = true
z = true
[sub_resource type="Resource" id="Resource_085kd"]
script = ExtResource("4_nld8w")
override_action_settings = false
is_remappable = false
display_name = ""
display_category = ""
input = SubResource("Resource_0e6tb")
modifiers = Array[Resource("res://addons/guide/modifiers/guide_modifier.gd")]([SubResource("Resource_o7bio")])
triggers = Array[Resource("res://addons/guide/triggers/guide_trigger.gd")]([])
[sub_resource type="Resource" id="Resource_h42bk"]
script = ExtResource("2_r8xkm")
key = 68
shift = false
control = false
alt = false
meta = false
allow_additional_modifiers = true
[sub_resource type="Resource" id="Resource_vnoud"]
script = ExtResource("4_nld8w")
override_action_settings = false
is_remappable = false
display_name = ""
display_category = ""
input = SubResource("Resource_h42bk")
modifiers = Array[Resource("res://addons/guide/modifiers/guide_modifier.gd")]([])
triggers = Array[Resource("res://addons/guide/triggers/guide_trigger.gd")]([])
[sub_resource type="Resource" id="Resource_x8yon"]
script = ExtResource("5_wiw4m")
action = ExtResource("1_o40br")
input_mappings = Array[ExtResource("4_nld8w")]([SubResource("Resource_gvylm"), SubResource("Resource_hclrp"), SubResource("Resource_085kd"), SubResource("Resource_vnoud")])
[sub_resource type="Resource" id="Resource_dgqq1"]
script = ExtResource("8_hys4n")
[sub_resource type="Resource" id="Resource_qegvf"]
script = ExtResource("9_5f66x")
relative_input = false
[sub_resource type="Resource" id="Resource_yxygj"]
script = ExtResource("4_nld8w")
override_action_settings = false
is_remappable = false
display_name = ""
display_category = ""
input = SubResource("Resource_dgqq1")
modifiers = Array[Resource("res://addons/guide/modifiers/guide_modifier.gd")]([SubResource("Resource_qegvf")])
triggers = Array[Resource("res://addons/guide/triggers/guide_trigger.gd")]([])
[sub_resource type="Resource" id="Resource_ropdf"]
script = ExtResource("5_wiw4m")
action = ExtResource("7_4uvlp")
input_mappings = Array[ExtResource("4_nld8w")]([SubResource("Resource_yxygj")])
[sub_resource type="Resource" id="Resource_omwno"]
script = ExtResource("11_btbxh")
button = 1
[sub_resource type="Resource" id="Resource_7jcut"]
script = ExtResource("12_ce85k")
actuation_threshold = 0.5
[sub_resource type="Resource" id="Resource_4uxij"]
script = ExtResource("4_nld8w")
override_action_settings = false
is_remappable = false
display_name = ""
display_category = ""
input = SubResource("Resource_omwno")
modifiers = Array[Resource("res://addons/guide/modifiers/guide_modifier.gd")]([])
triggers = Array[Resource("res://addons/guide/triggers/guide_trigger.gd")]([SubResource("Resource_7jcut")])
[sub_resource type="Resource" id="Resource_8w3dk"]
script = ExtResource("5_wiw4m")
action = ExtResource("10_he1ky")
input_mappings = Array[ExtResource("4_nld8w")]([SubResource("Resource_4uxij")])
[sub_resource type="Resource" id="Resource_nqj7r"]
script = ExtResource("14_ulkgf")
mouse_buttons = false
mouse_movement = false
minimum_mouse_movement_distance = 1.0
joy_buttons = true
joy_axes = true
minimum_joy_axis_actuation_strength = 0.5
keyboard = false
touch = false
mouse = false
joy = true
[sub_resource type="Resource" id="Resource_bk656"]
script = ExtResource("4_nld8w")
override_action_settings = false
is_remappable = false
display_name = ""
display_category = ""
input = SubResource("Resource_nqj7r")
modifiers = Array[Resource("res://addons/guide/modifiers/guide_modifier.gd")]([])
triggers = Array[Resource("res://addons/guide/triggers/guide_trigger.gd")]([])
[sub_resource type="Resource" id="Resource_ewfkl"]
script = ExtResource("5_wiw4m")
action = ExtResource("13_0evsu")
input_mappings = Array[ExtResource("4_nld8w")]([SubResource("Resource_bk656")])
[resource]
script = ExtResource("7_dx1p2")
display_name = ""
mappings = Array[ExtResource("5_wiw4m")]([SubResource("Resource_x8yon"), SubResource("Resource_ropdf"), SubResource("Resource_8w3dk"), SubResource("Resource_ewfkl")])

View File

@ -0,0 +1,13 @@
[gd_resource type="Resource" script_class="GUIDEAction" load_steps=2 format=3 uid="uid://c4tpipfhludsi"]
[ext_resource type="Script" path="res://addons/guide/guide_action.gd" id="1_ujbw2"]
[resource]
script = ExtResource("1_ujbw2")
name = &""
action_value_type = 2
block_lower_priority_actions = true
emit_as_godot_actions = false
is_remappable = false
display_name = ""
display_category = ""

View File

@ -0,0 +1,13 @@
[gd_resource type="Resource" script_class="GUIDEAction" load_steps=2 format=3 uid="uid://vpsh1myp67ws"]
[ext_resource type="Script" path="res://addons/guide/guide_action.gd" id="1_upkuf"]
[resource]
script = ExtResource("1_upkuf")
name = &""
action_value_type = 2
block_lower_priority_actions = true
emit_as_godot_actions = false
is_remappable = false
display_name = ""
display_category = ""

View File

@ -0,0 +1,13 @@
[gd_resource type="Resource" script_class="GUIDEAction" load_steps=2 format=3 uid="uid://ch070wegl722t"]
[ext_resource type="Script" path="res://addons/guide/guide_action.gd" id="1_w0ans"]
[resource]
script = ExtResource("1_w0ans")
name = &""
action_value_type = 2
block_lower_priority_actions = true
emit_as_godot_actions = false
is_remappable = false
display_name = ""
display_category = ""

View File

@ -0,0 +1,13 @@
[gd_resource type="Resource" script_class="GUIDEAction" load_steps=2 format=3 uid="uid://byu565ktximg2"]
[ext_resource type="Script" path="res://addons/guide/guide_action.gd" id="1_ghtdg"]
[resource]
script = ExtResource("1_ghtdg")
name = &""
action_value_type = 2
block_lower_priority_actions = true
emit_as_godot_actions = false
is_remappable = false
display_name = ""
display_category = ""

View File

@ -0,0 +1,13 @@
[gd_resource type="Resource" script_class="GUIDEAction" load_steps=2 format=3 uid="uid://bnd2jguy7tfti"]
[ext_resource type="Script" path="res://addons/guide/guide_action.gd" id="1_gxqso"]
[resource]
script = ExtResource("1_gxqso")
name = &""
action_value_type = 0
block_lower_priority_actions = true
emit_as_godot_actions = false
is_remappable = false
display_name = ""
display_category = ""

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c22k1y6rbntlw"
path="res://.godot/imported/mrg0000.png-2c8ef2c24386191b7c1a03703c595faf.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://guide_examples/top_down_shooter/player/mrg0000.png"
dest_files=["res://.godot/imported/mrg0000.png-2c8ef2c24386191b7c1a03703c595faf.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View File

@ -0,0 +1,46 @@
extends CharacterBody2D
@export var speed:float = 300
@export var look_relative:GUIDEAction
@export var look_absolute:GUIDEAction
@export var move:GUIDEAction
@export var fire:GUIDEAction
@export var bolt:PackedScene
@onready var left_hand:Node2D = %LeftHand
@onready var right_hand:Node2D = %RightHand
func _ready():
# fire some bolts when the fire action triggers
fire.triggered.connect(_fire)
func _physics_process(delta):
var target = Vector2.INF
# Looking at absolute coordinates. This is the case when we use a mouse.
if look_absolute.is_triggered():
target = look_absolute.value_axis_2d
# Looking at relative coordinates. This is the case when we use a controller
elif look_relative.is_triggered():
target = global_position + look_relative.value_axis_2d
# If we have a target, rotate towards it
if target.is_finite():
var target_orientation = Transform2D()\
.translated(transform.origin)\
.looking_at(target)
transform = transform.interpolate_with(target_orientation, 5 * delta)
# and move according to the input.
velocity = speed * move.value_axis_2d
move_and_slide()
func _fire():
# for each hand of the player, spawn a bolt
for hand in [left_hand, right_hand]:
var a_bolt:Node2D = bolt.instantiate()
get_parent().add_child(a_bolt)
a_bolt.global_transform = hand.global_transform

View File

@ -0,0 +1 @@
uid://blx1seoclt48w

View File

@ -0,0 +1,20 @@
extends Node2D
@export var keyboard_and_mouse:GUIDEMappingContext
@export var controller:GUIDEMappingContext
@export var switch_to_controller:GUIDEAction
@export var switch_to_keyboard_and_mouse:GUIDEAction
func _ready():
# enable controller at the start
GUIDE.enable_mapping_context(controller)
# Switch the control scheme depending on the input.
switch_to_controller.triggered \
.connect(func(): GUIDE.enable_mapping_context(controller, true))
switch_to_keyboard_and_mouse.triggered \
.connect(func(): GUIDE.enable_mapping_context(keyboard_and_mouse, true))

View File

@ -0,0 +1 @@
uid://sh4xv5urdau8

View File

@ -0,0 +1,138 @@
[gd_scene load_steps=18 format=3 uid="uid://kmamxwy5rcyc"]
[ext_resource type="Script" path="res://guide_examples/top_down_shooter/top_down_shooter.gd" id="1_gvlv5"]
[ext_resource type="Script" path="res://guide_examples/top_down_shooter/player/player.gd" id="1_pm1t3"]
[ext_resource type="Resource" uid="uid://dhp7nup127wxw" path="res://guide_examples/top_down_shooter/mapping_contexts/keyboard_and_mouse.tres" id="2_bl5ot"]
[ext_resource type="Texture2D" uid="uid://c22k1y6rbntlw" path="res://guide_examples/top_down_shooter/player/mrg0000.png" id="2_rc4yh"]
[ext_resource type="Resource" uid="uid://dysrgn1ubf15g" path="res://guide_examples/top_down_shooter/mapping_contexts/controller.tres" id="3_tldv6"]
[ext_resource type="Resource" uid="uid://byu565ktximg2" path="res://guide_examples/top_down_shooter/mapping_contexts/switch_to_controller.tres" id="4_rfvaw"]
[ext_resource type="Resource" uid="uid://vpsh1myp67ws" path="res://guide_examples/top_down_shooter/mapping_contexts/look_relative.tres" id="5_hxqcn"]
[ext_resource type="Resource" uid="uid://bnd2jguy7tfti" path="res://guide_examples/top_down_shooter/mapping_contexts/switch_to_keyboard_and_mouse.tres" id="5_usevy"]
[ext_resource type="Resource" uid="uid://c4tpipfhludsi" path="res://guide_examples/top_down_shooter/mapping_contexts/look_absolute.tres" id="6_viqho"]
[ext_resource type="Resource" uid="uid://ch070wegl722t" path="res://guide_examples/top_down_shooter/mapping_contexts/move.tres" id="7_gtewy"]
[ext_resource type="Resource" uid="uid://coktqyup12g3w" path="res://guide_examples/top_down_shooter/mapping_contexts/fire.tres" id="8_kmeb0"]
[ext_resource type="PackedScene" uid="uid://dkr80d2pi0d41" path="res://addons/guide/debugger/guide_debugger.tscn" id="9_kqgcv"]
[ext_resource type="PackedScene" uid="uid://c0fqv8e3tljmp" path="res://guide_examples/top_down_shooter/bolt/bolt.tscn" id="9_ybbsa"]
[ext_resource type="Theme" uid="uid://dot0gi1yoqmrl" path="res://guide_examples/shared/ui_theme.tres" id="14_ipln3"]
[ext_resource type="Script" path="res://guide_examples/shared/instructions_label.gd" id="15_d8ctw"]
[sub_resource type="CircleShape2D" id="CircleShape2D_jh0ar"]
radius = 118.54
[sub_resource type="WorldBoundaryShape2D" id="WorldBoundaryShape2D_duktp"]
[node name="TopDownShooter" type="Node2D"]
script = ExtResource("1_gvlv5")
keyboard_and_mouse = ExtResource("2_bl5ot")
controller = ExtResource("3_tldv6")
switch_to_controller = ExtResource("4_rfvaw")
switch_to_keyboard_and_mouse = ExtResource("5_usevy")
[node name="Player" type="CharacterBody2D" parent="."]
position = Vector2(911, 479)
motion_mode = 1
script = ExtResource("1_pm1t3")
look_relative = ExtResource("5_hxqcn")
look_absolute = ExtResource("6_viqho")
move = ExtResource("7_gtewy")
fire = ExtResource("8_kmeb0")
bolt = ExtResource("9_ybbsa")
[node name="Mrg0000" type="Sprite2D" parent="Player"]
texture = ExtResource("2_rc4yh")
metadata/_edit_lock_ = true
[node name="CollisionShape2D" type="CollisionShape2D" parent="Player"]
shape = SubResource("CircleShape2D_jh0ar")
metadata/_edit_lock_ = true
[node name="LeftHand" type="Marker2D" parent="Player"]
unique_name_in_owner = true
position = Vector2(41, -105)
metadata/_edit_lock_ = true
[node name="RightHand" type="Marker2D" parent="Player"]
unique_name_in_owner = true
position = Vector2(41, 109)
metadata/_edit_lock_ = true
[node name="Boundary" type="StaticBody2D" parent="."]
[node name="CollisionShape2D" type="CollisionShape2D" parent="Boundary"]
position = Vector2(831, 1077)
shape = SubResource("WorldBoundaryShape2D_duktp")
[node name="CollisionShape2D2" type="CollisionShape2D" parent="Boundary"]
position = Vector2(950, 1)
rotation = 3.14159
shape = SubResource("WorldBoundaryShape2D_duktp")
[node name="CollisionShape2D3" type="CollisionShape2D" parent="Boundary"]
position = Vector2(1919, 523)
rotation = 4.71239
shape = SubResource("WorldBoundaryShape2D_duktp")
[node name="CollisionShape2D4" type="CollisionShape2D" parent="Boundary"]
position = Vector2(-1, 530)
rotation = 1.5708
shape = SubResource("WorldBoundaryShape2D_duktp")
[node name="CanvasLayer" type="CanvasLayer" parent="."]
[node name="GuideDebugger" parent="CanvasLayer" instance=ExtResource("9_kqgcv")]
theme = ExtResource("14_ipln3")
[node name="BG" type="CanvasLayer" parent="."]
layer = -1
[node name="ColorRect" type="ColorRect" parent="BG"]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 2
color = Color(0.0869374, 0.147497, 0.00609748, 1)
[node name="UI Layer" type="CanvasLayer" parent="."]
[node name="Instructions Label Controller" type="RichTextLabel" parent="UI Layer"]
anchors_preset = 1
anchor_left = 1.0
anchor_right = 1.0
offset_left = -352.0
offset_top = 15.0
offset_right = -105.0
offset_bottom = 38.0
grow_horizontal = 0
theme = ExtResource("14_ipln3")
script = ExtResource("15_d8ctw")
instructions_text = "Look around with %s.
Move with %s.
Fire with %s.
Press any key or move the mouse to switch to
keyboard and mouse."
actions = Array[Resource("res://addons/guide/guide_action.gd")]([ExtResource("5_hxqcn"), ExtResource("7_gtewy"), ExtResource("8_kmeb0")])
limit_to_context = ExtResource("3_tldv6")
metadata/_edit_use_anchors_ = true
[node name="Instructions Label Keyboard and Mouse" type="RichTextLabel" parent="UI Layer"]
anchors_preset = 1
anchor_left = 1.0
anchor_right = 1.0
offset_left = -352.0
offset_top = 15.0
offset_right = -105.0
offset_bottom = 38.0
grow_horizontal = 0
theme = ExtResource("14_ipln3")
script = ExtResource("15_d8ctw")
instructions_text = "Look around with %s.
Move with %s.
Fire with %s.
Use any controller input to switch to controller."
actions = Array[Resource("res://addons/guide/guide_action.gd")]([ExtResource("6_viqho"), ExtResource("7_gtewy"), ExtResource("8_kmeb0")])
limit_to_context = ExtResource("2_bl5ot")
metadata/_edit_use_anchors_ = true