Issue 320 (#396) - Mobile fixes
Co-authored-by: Dennis Ploeger <develop@dieploegers.de> Co-authored-by: dploeger <dploeger@users.noreply.github.com>
@@ -59,6 +59,8 @@ func run(command_params: Array) -> int:
|
|||||||
escoria.main.current_scene.global_id,
|
escoria.main.current_scene.global_id,
|
||||||
true
|
true
|
||||||
)
|
)
|
||||||
|
|
||||||
|
escoria.event_manager.interrupt_running_event()
|
||||||
|
|
||||||
if !command_params[1]:
|
if !command_params[1]:
|
||||||
escoria.main.scene_transition.transition_out()
|
escoria.main.scene_transition.transition_out()
|
||||||
|
|||||||
@@ -6,6 +6,9 @@ class_name ESCActionManager
|
|||||||
# The current action was changed
|
# The current action was changed
|
||||||
signal action_changed
|
signal action_changed
|
||||||
|
|
||||||
|
# Emitted, when an action has been completed
|
||||||
|
signal action_finished
|
||||||
|
|
||||||
|
|
||||||
# Current verb used
|
# Current verb used
|
||||||
var current_action: String = "" setget set_current_action
|
var current_action: String = "" setget set_current_action
|
||||||
@@ -109,6 +112,7 @@ func activate(
|
|||||||
if event_returned[0] == ESCExecution.RC_OK:
|
if event_returned[0] == ESCExecution.RC_OK:
|
||||||
escoria.action_manager\
|
escoria.action_manager\
|
||||||
.clear_current_action()
|
.clear_current_action()
|
||||||
|
emit_signal("action_finished")
|
||||||
return event_returned[0]
|
return event_returned[0]
|
||||||
else:
|
else:
|
||||||
var errors = [
|
var errors = [
|
||||||
@@ -120,14 +124,14 @@ func activate(
|
|||||||
]
|
]
|
||||||
if combine_with.node.combine_is_one_way:
|
if combine_with.node.combine_is_one_way:
|
||||||
errors.append(
|
errors.append(
|
||||||
"Reason: %s's item interaction " +\
|
("Reason: %s's item interaction " +\
|
||||||
"is one-way." % combine_with.global_id
|
"is one-way.") % combine_with.global_id
|
||||||
)
|
)
|
||||||
escoria.logger.report_warnings(
|
escoria.logger.report_warnings(
|
||||||
"ESCActionManager.activate: Invalid action",
|
"ESCActionManager.activate: Invalid action",
|
||||||
errors
|
errors
|
||||||
)
|
)
|
||||||
|
emit_signal("action_finished")
|
||||||
return ESCExecution.RC_ERROR
|
return ESCExecution.RC_ERROR
|
||||||
else:
|
else:
|
||||||
escoria.logger.report_warnings(
|
escoria.logger.report_warnings(
|
||||||
@@ -140,13 +144,15 @@ func activate(
|
|||||||
combine_with.global_id
|
combine_with.global_id
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
|
emit_signal("action_finished")
|
||||||
return ESCExecution.RC_ERROR
|
return ESCExecution.RC_ERROR
|
||||||
else:
|
else:
|
||||||
# We're missing a target here.
|
# We're missing a target here.
|
||||||
# Tell the Label to add a conjunction and wait for another
|
# Tell the Label to add a conjunction and wait for another
|
||||||
# click to add the target to p_param. Until then, return
|
# click to add the target to p_param. Until then, return
|
||||||
current_tool = target
|
current_tool = target
|
||||||
|
emit_signal("action_finished")
|
||||||
return ESCExecution.RC_OK
|
return ESCExecution.RC_OK
|
||||||
else:
|
else:
|
||||||
escoria.logger.report_warnings(
|
escoria.logger.report_warnings(
|
||||||
@@ -175,6 +181,7 @@ func activate(
|
|||||||
)
|
)
|
||||||
if event_returned[0] == ESCExecution.RC_OK:
|
if event_returned[0] == ESCExecution.RC_OK:
|
||||||
escoria.action_manager.clear_current_action()
|
escoria.action_manager.clear_current_action()
|
||||||
|
emit_signal("action_finished")
|
||||||
return event_returned[0]
|
return event_returned[0]
|
||||||
else:
|
else:
|
||||||
escoria.logger.report_warnings(
|
escoria.logger.report_warnings(
|
||||||
@@ -186,4 +193,5 @@ func activate(
|
|||||||
]
|
]
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
|
emit_signal("action_finished")
|
||||||
return ESCExecution.RC_ERROR
|
return ESCExecution.RC_ERROR
|
||||||
|
|||||||
@@ -67,9 +67,6 @@ func _enter_tree():
|
|||||||
shape.set_extents(size / 2)
|
shape.set_extents(size / 2)
|
||||||
area.shape_owner_add_shape(sid, shape)
|
area.shape_owner_add_shape(sid, shape)
|
||||||
|
|
||||||
# Handle inputs to the Area2D ourself
|
|
||||||
area.connect("input_event", self, "manage_input")
|
|
||||||
|
|
||||||
add_child(area)
|
add_child(area)
|
||||||
|
|
||||||
# Disable mouse filter events and connect our own events to the ESC input
|
# Disable mouse filter events and connect our own events to the ESC input
|
||||||
@@ -84,27 +81,30 @@ func _ready():
|
|||||||
# Manage inputs reaching the Area2D and emit the events to the input manager
|
# Manage inputs reaching the Area2D and emit the events to the input manager
|
||||||
#
|
#
|
||||||
# #### Parameters
|
# #### Parameters
|
||||||
# - _viewport: (not used)
|
|
||||||
# - event: Event received
|
# - event: Event received
|
||||||
# - _shape_idx: (not used)
|
func _input(event) -> void:
|
||||||
func manage_input(_viewport, event, _shape_idx) -> void:
|
if not escoria.current_state == escoria.GAME_STATE.DEFAULT:
|
||||||
|
return
|
||||||
if event.is_action_pressed("switch_action_verb"):
|
if event.is_action_pressed("switch_action_verb"):
|
||||||
if event.button_index == BUTTON_WHEEL_UP:
|
if event.button_index == BUTTON_WHEEL_UP:
|
||||||
emit_signal("mouse_wheel_up")
|
emit_signal("mouse_wheel_up")
|
||||||
elif event.button_index == BUTTON_WHEEL_DOWN:
|
elif event.button_index == BUTTON_WHEEL_DOWN:
|
||||||
emit_signal("mouse_wheel_down")
|
emit_signal("mouse_wheel_down")
|
||||||
if event is InputEventMouseButton:
|
if event is InputEventMouseButton and event.is_pressed():
|
||||||
var p = get_global_mouse_position()
|
var p = get_global_mouse_position()
|
||||||
if event.doubleclick:
|
var size
|
||||||
if event.button_index == BUTTON_LEFT:
|
if get_texture():
|
||||||
emit_signal("double_left_click_on_bg", p)
|
size = get_texture().get_size()
|
||||||
else:
|
else:
|
||||||
if event.is_pressed():
|
size = rect_size
|
||||||
if event.button_index == BUTTON_LEFT:
|
if Rect2(rect_position, size).has_point(p):
|
||||||
emit_signal("left_click_on_bg", p)
|
if event.doubleclick and event.button_index == BUTTON_LEFT:
|
||||||
if event.button_index == BUTTON_RIGHT:
|
emit_signal("double_left_click_on_bg", p)
|
||||||
emit_signal("right_click_on_bg", p)
|
elif event.button_index == BUTTON_LEFT:
|
||||||
|
emit_signal("left_click_on_bg", p)
|
||||||
|
elif event.button_index == BUTTON_RIGHT:
|
||||||
|
emit_signal("right_click_on_bg", p)
|
||||||
|
|
||||||
|
|
||||||
# Calculate the actual area taken by this background depending on its
|
# Calculate the actual area taken by this background depending on its
|
||||||
# Texture or set size
|
# Texture or set size
|
||||||
|
|||||||
@@ -3,7 +3,6 @@
|
|||||||
# "click on background" -> player walks to position
|
# "click on background" -> player walks to position
|
||||||
# "click on item" -> player walks to item then performs the action defined
|
# "click on item" -> player walks to item then performs the action defined
|
||||||
# by current verb
|
# by current verb
|
||||||
|
|
||||||
class_name ESCController
|
class_name ESCController
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -162,8 +162,6 @@ func _ready():
|
|||||||
connect("mouse_entered", self, "_on_mouse_entered")
|
connect("mouse_entered", self, "_on_mouse_entered")
|
||||||
if not self.is_connected("mouse_exited", self, "_on_mouse_exited"):
|
if not self.is_connected("mouse_exited", self, "_on_mouse_exited"):
|
||||||
connect("mouse_exited", self, "_on_mouse_exited")
|
connect("mouse_exited", self, "_on_mouse_exited")
|
||||||
if not self.is_connected("input_event", self, "manage_input"):
|
|
||||||
connect("input_event", self, "manage_input")
|
|
||||||
|
|
||||||
# Register and connect all elements to Escoria backoffice.
|
# Register and connect all elements to Escoria backoffice.
|
||||||
if not Engine.is_editor_hint():
|
if not Engine.is_editor_hint():
|
||||||
@@ -265,6 +263,39 @@ func _ready():
|
|||||||
_movable.last_scale = scale
|
_movable.last_scale = scale
|
||||||
_movable.update_terrain()
|
_movable.update_terrain()
|
||||||
|
|
||||||
|
# Manage mouse button clicks on this item by sending out signals
|
||||||
|
#
|
||||||
|
# #### Parameters
|
||||||
|
#
|
||||||
|
# - event: Triggered event
|
||||||
|
func _input(event: InputEvent) -> void:
|
||||||
|
if not escoria.current_state == escoria.GAME_STATE.DEFAULT:
|
||||||
|
return
|
||||||
|
if event is InputEventMouseButton and event.is_pressed():
|
||||||
|
var p = get_global_mouse_position()
|
||||||
|
var mouse_in_shape: bool = false
|
||||||
|
var colliders = get_world_2d().direct_space_state.intersect_point(
|
||||||
|
p,
|
||||||
|
32,
|
||||||
|
[],
|
||||||
|
2147483647,
|
||||||
|
true,
|
||||||
|
true
|
||||||
|
)
|
||||||
|
for _owner in get_shape_owners():
|
||||||
|
for _shape_id in range(0, shape_owner_get_shape_count(_owner)):
|
||||||
|
for _collider in colliders:
|
||||||
|
if _collider.collider == self and\
|
||||||
|
_collider.shape == _shape_id:
|
||||||
|
mouse_in_shape = true
|
||||||
|
if mouse_in_shape:
|
||||||
|
if event.doubleclick and event.button_index == BUTTON_LEFT:
|
||||||
|
emit_signal("mouse_double_left_clicked_item", self, event)
|
||||||
|
elif event.button_index == BUTTON_LEFT:
|
||||||
|
emit_signal("mouse_left_clicked_item", self, event)
|
||||||
|
elif event.button_index == BUTTON_RIGHT:
|
||||||
|
emit_signal("mouse_right_clicked_item", self, event)
|
||||||
|
|
||||||
|
|
||||||
# Return the animation player node
|
# Return the animation player node
|
||||||
func get_animation_player() -> Node:
|
func get_animation_player() -> Node:
|
||||||
@@ -291,9 +322,6 @@ func get_interact_position() -> Vector2:
|
|||||||
var interact_position = null
|
var interact_position = null
|
||||||
for c in get_children():
|
for c in get_children():
|
||||||
if c is Position2D:
|
if c is Position2D:
|
||||||
if c.get_owner() == self:
|
|
||||||
interact_position = global_position
|
|
||||||
continue
|
|
||||||
interact_position = c.global_position
|
interact_position = c.global_position
|
||||||
|
|
||||||
if interact_position == null and collision != null:
|
if interact_position == null and collision != null:
|
||||||
@@ -302,31 +330,6 @@ func get_interact_position() -> Vector2:
|
|||||||
return interact_position
|
return interact_position
|
||||||
|
|
||||||
|
|
||||||
# Manage mouse button clicks on this item by sending out signals
|
|
||||||
#
|
|
||||||
# #### Parameters
|
|
||||||
#
|
|
||||||
# - _viewport: not used
|
|
||||||
# - event: Triggered event
|
|
||||||
# - _shape_idx: not used
|
|
||||||
func manage_input(
|
|
||||||
_viewport: Viewport,
|
|
||||||
event: InputEvent,
|
|
||||||
_shape_idx: int
|
|
||||||
) -> void:
|
|
||||||
if event is InputEventMouseButton:
|
|
||||||
|
|
||||||
if event.doubleclick:
|
|
||||||
if event.button_index == BUTTON_LEFT:
|
|
||||||
emit_signal("mouse_double_left_clicked_item", self, event)
|
|
||||||
else:
|
|
||||||
if event.is_pressed():
|
|
||||||
if event.button_index == BUTTON_LEFT:
|
|
||||||
emit_signal("mouse_left_clicked_item", self, event)
|
|
||||||
elif event.button_index == BUTTON_RIGHT:
|
|
||||||
emit_signal("mouse_right_clicked_item", self, event)
|
|
||||||
|
|
||||||
|
|
||||||
# React to the mouse entering the item by emitting the respective signal
|
# React to the mouse entering the item by emitting the respective signal
|
||||||
func _on_mouse_entered():
|
func _on_mouse_entered():
|
||||||
emit_signal("mouse_entered_item", self)
|
emit_signal("mouse_entered_item", self)
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ var input_mode = INPUT_ALL
|
|||||||
# A LIFO stack of hovered items
|
# A LIFO stack of hovered items
|
||||||
var hover_stack: Array = []
|
var hover_stack: Array = []
|
||||||
|
|
||||||
# The global id fo the topmost item from the hover_stack
|
# The global id of the topmost item from the hover_stack
|
||||||
var hotspot_focused: String = ""
|
var hotspot_focused: String = ""
|
||||||
|
|
||||||
|
|
||||||
@@ -261,6 +261,7 @@ func _on_mouse_left_clicked_item(item: ESCItem, event: InputEvent) -> void:
|
|||||||
if input_mode == INPUT_ALL:
|
if input_mode == INPUT_ALL:
|
||||||
if hover_stack.empty() or hover_stack.back() == item:
|
if hover_stack.empty() or hover_stack.back() == item:
|
||||||
escoria.logger.info("Item left clicked", [item.global_id, event])
|
escoria.logger.info("Item left clicked", [item.global_id, event])
|
||||||
|
hotspot_focused = item.global_id
|
||||||
escoria.main.current_scene.game.left_click_on_item(
|
escoria.main.current_scene.game.left_click_on_item(
|
||||||
item.global_id,
|
item.global_id,
|
||||||
event
|
event
|
||||||
@@ -279,6 +280,7 @@ func _on_mouse_left_double_clicked_item(
|
|||||||
) -> void:
|
) -> void:
|
||||||
if input_mode == INPUT_ALL:
|
if input_mode == INPUT_ALL:
|
||||||
escoria.logger.info("Item left double clicked", [item.global_id, event])
|
escoria.logger.info("Item left double clicked", [item.global_id, event])
|
||||||
|
hotspot_focused = item.global_id
|
||||||
escoria.main.current_scene.game.left_double_click_on_item(
|
escoria.main.current_scene.game.left_double_click_on_item(
|
||||||
item.global_id,
|
item.global_id,
|
||||||
event
|
event
|
||||||
@@ -294,6 +296,7 @@ func _on_mouse_left_double_clicked_item(
|
|||||||
func _on_mouse_right_clicked_item(item: ESCItem, event: InputEvent) -> void:
|
func _on_mouse_right_clicked_item(item: ESCItem, event: InputEvent) -> void:
|
||||||
if input_mode == INPUT_ALL:
|
if input_mode == INPUT_ALL:
|
||||||
escoria.logger.info("Item right clicked", [item.global_id, event])
|
escoria.logger.info("Item right clicked", [item.global_id, event])
|
||||||
|
hotspot_focused = item.global_id
|
||||||
escoria.main.current_scene.game.right_click_on_item(
|
escoria.main.current_scene.game.right_click_on_item(
|
||||||
item.global_id,
|
item.global_id,
|
||||||
event
|
event
|
||||||
|
|||||||
@@ -68,11 +68,11 @@ func _get_voice_file(key: String, start: String = "") -> String:
|
|||||||
if _voice_file != "":
|
if _voice_file != "":
|
||||||
return _voice_file
|
return _voice_file
|
||||||
else:
|
else:
|
||||||
if file_name == "%s.%s" % [
|
if file_name == "%s.%s.import" % [
|
||||||
key,
|
key,
|
||||||
ProjectSettings.get("escoria/sound/speech_extension")
|
ProjectSettings.get("escoria/sound/speech_extension")
|
||||||
]:
|
]:
|
||||||
return start.plus_file(file_name)
|
return start.plus_file(file_name.trim_suffix(".import"))
|
||||||
file_name = _dir.get_next()
|
file_name = _dir.get_next()
|
||||||
return ""
|
return ""
|
||||||
|
|
||||||
|
|||||||
@@ -103,7 +103,6 @@ func _on_dialog_line_typed(object, key):
|
|||||||
|
|
||||||
# Ending the dialog
|
# Ending the dialog
|
||||||
func _on_dialog_finished():
|
func _on_dialog_finished():
|
||||||
escoria.current_state = escoria.GAME_STATE.DEFAULT
|
|
||||||
emit_signal("dialog_line_finished")
|
emit_signal("dialog_line_finished")
|
||||||
queue_free()
|
queue_free()
|
||||||
|
|
||||||
|
|||||||
@@ -91,5 +91,4 @@ func _on_dialog_finished():
|
|||||||
current_character.stop_talking()
|
current_character.stop_talking()
|
||||||
emit_signal("dialog_line_finished")
|
emit_signal("dialog_line_finished")
|
||||||
escoria.dialog_player.is_speaking = false
|
escoria.dialog_player.is_speaking = false
|
||||||
escoria.current_state = escoria.GAME_STATE.DEFAULT
|
|
||||||
queue_free()
|
queue_free()
|
||||||
|
|||||||
@@ -30,18 +30,22 @@ Implement methods to react to inputs.
|
|||||||
- _on_event_done(event_name: String)
|
- _on_event_done(event_name: String)
|
||||||
"""
|
"""
|
||||||
|
|
||||||
onready var verbs_menu = $ui/panel_down/verbs_layer/verbs_menu
|
onready var verbs_menu = $ui/Control/panel_down/VBoxContainer/HBoxContainer\
|
||||||
onready var tooltip = $ui/panel_down/tooltip_layer/tooltip
|
/VerbsMargin/verbs_menu
|
||||||
|
onready var tooltip = $ui/Control/panel_down/VBoxContainer/tooltip
|
||||||
|
onready var room_select = $ui/Control/panel_down/VBoxContainer/HBoxContainer\
|
||||||
|
/MainMargin/VBoxContainer/room_select
|
||||||
|
onready var pause_menu = $ui/pause_menu
|
||||||
|
onready var inventory_ui = $ui/Control/panel_down/VBoxContainer/HBoxContainer\
|
||||||
|
/InventoryMargin/inventory_ui
|
||||||
|
|
||||||
func _ready():
|
func _ready():
|
||||||
ProjectSettings.set_setting("escoria/ui/tooltip_follows_mouse", false)
|
ProjectSettings.set_setting("escoria/ui/tooltip_follows_mouse", false)
|
||||||
|
escoria.action_manager.connect(
|
||||||
func _input(event):
|
"action_finished",
|
||||||
if event.is_action_pressed("switch_action_verb"):
|
self,
|
||||||
if event.button_index == BUTTON_WHEEL_UP:
|
"_on_action_finished"
|
||||||
escoria.inputs_manager._on_mousewheel_action(-1)
|
)
|
||||||
elif event.button_index == BUTTON_WHEEL_DOWN:
|
|
||||||
escoria.inputs_manager._on_mousewheel_action(1)
|
|
||||||
|
|
||||||
|
|
||||||
## BACKGROUND ##
|
## BACKGROUND ##
|
||||||
@@ -90,7 +94,6 @@ func element_focused(element_id: String) -> void:
|
|||||||
|
|
||||||
func element_unfocused() -> void:
|
func element_unfocused() -> void:
|
||||||
tooltip.clear()
|
tooltip.clear()
|
||||||
verbs_menu.unselect_actions()
|
|
||||||
|
|
||||||
|
|
||||||
## ITEMS ##
|
## ITEMS ##
|
||||||
@@ -151,18 +154,18 @@ func mousewheel_action(_direction: int):
|
|||||||
|
|
||||||
|
|
||||||
func hide_ui():
|
func hide_ui():
|
||||||
$ui/panel_down.hide()
|
$ui/Control.hide()
|
||||||
verbs_menu.hide()
|
verbs_menu.hide()
|
||||||
$ui/panel_down/verbs_layer/room_select.hide()
|
room_select.hide()
|
||||||
$ui/panel_down/inventory_layer/inventory_ui.hide()
|
inventory_ui.hide()
|
||||||
tooltip.hide()
|
tooltip.hide()
|
||||||
|
|
||||||
|
|
||||||
func show_ui():
|
func show_ui():
|
||||||
$ui/panel_down.show()
|
$ui/Control.show()
|
||||||
verbs_menu.show()
|
verbs_menu.show()
|
||||||
$ui/panel_down/verbs_layer/room_select.show()
|
room_select.show()
|
||||||
$ui/panel_down/inventory_layer/inventory_ui.show()
|
inventory_ui.show()
|
||||||
tooltip.show()
|
tooltip.show()
|
||||||
|
|
||||||
func _on_event_done(_event_name: String):
|
func _on_event_done(_event_name: String):
|
||||||
@@ -171,16 +174,24 @@ func _on_event_done(_event_name: String):
|
|||||||
|
|
||||||
|
|
||||||
func pause_game():
|
func pause_game():
|
||||||
if $ui/pause_menu.visible:
|
if pause_menu.visible:
|
||||||
$ui/pause_menu.hide()
|
pause_menu.hide()
|
||||||
escoria.main.current_scene.game.get_node("camera").current = true
|
escoria.main.current_scene.game.get_node("camera").current = true
|
||||||
escoria.main.current_scene.game.show_ui()
|
escoria.main.current_scene.game.show_ui()
|
||||||
escoria.main.current_scene.show()
|
escoria.main.current_scene.show()
|
||||||
escoria.set_game_paused(false)
|
escoria.set_game_paused(false)
|
||||||
else:
|
else:
|
||||||
$ui/pause_menu.set_save_enabled(escoria.save_manager.save_enabled)
|
pause_menu.set_save_enabled(escoria.save_manager.save_enabled)
|
||||||
$ui/pause_menu.show()
|
pause_menu.show()
|
||||||
escoria.main.current_scene.game.get_node("camera").current = false
|
escoria.main.current_scene.game.get_node("camera").current = false
|
||||||
escoria.main.current_scene.game.hide_ui()
|
escoria.main.current_scene.game.hide_ui()
|
||||||
escoria.main.current_scene.hide()
|
escoria.main.current_scene.hide()
|
||||||
escoria.set_game_paused(true)
|
escoria.set_game_paused(true)
|
||||||
|
|
||||||
|
|
||||||
|
func _on_MenuButton_pressed() -> void:
|
||||||
|
pause_game()
|
||||||
|
|
||||||
|
|
||||||
|
func _on_action_finished() -> void:
|
||||||
|
verbs_menu.unselect_actions()
|
||||||
|
|||||||
@@ -18,62 +18,120 @@ script = ExtResource( 5 )
|
|||||||
|
|
||||||
[node name="ui" type="CanvasLayer" parent="."]
|
[node name="ui" type="CanvasLayer" parent="."]
|
||||||
|
|
||||||
[node name="panel_down" type="PanelContainer" parent="ui"]
|
[node name="Control" type="Control" parent="ui"]
|
||||||
anchor_top = 0.714
|
|
||||||
anchor_right = 1.0
|
anchor_right = 1.0
|
||||||
anchor_bottom = 1.0
|
anchor_bottom = 1.0
|
||||||
margin_top = -0.200012
|
mouse_filter = 2
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_use_anchors_": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="panel_down" type="PanelContainer" parent="ui/Control"]
|
||||||
|
anchor_top = 0.7
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
size_flags_vertical = 3
|
||||||
custom_styles/panel = SubResource( 1 )
|
custom_styles/panel = SubResource( 1 )
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
"_edit_use_anchors_": false
|
"_edit_use_anchors_": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[node name="verbs_layer" type="CanvasLayer" parent="ui/panel_down"]
|
[node name="VBoxContainer" type="VBoxContainer" parent="ui/Control/panel_down"]
|
||||||
layer = 2
|
margin_right = 1280.0
|
||||||
|
margin_bottom = 270.0
|
||||||
|
|
||||||
[node name="verbs_menu" parent="ui/panel_down/verbs_layer" instance=ExtResource( 3 )]
|
[node name="tooltip" parent="ui/Control/panel_down/VBoxContainer" instance=ExtResource( 1 )]
|
||||||
anchor_top = 0.715
|
anchor_right = 0.0
|
||||||
anchor_right = 1.0
|
anchor_bottom = 0.0
|
||||||
anchor_bottom = 1.0
|
margin_left = 0.0
|
||||||
margin_left = 52.0
|
margin_right = 1280.0
|
||||||
margin_top = 38.5
|
margin_bottom = 32.0
|
||||||
margin_right = -959.0
|
|
||||||
margin_bottom = -63.0
|
|
||||||
|
|
||||||
[node name="room_select" parent="ui/panel_down/verbs_layer" instance=ExtResource( 7 )]
|
|
||||||
margin_left = 503.504
|
|
||||||
margin_top = 820.091
|
|
||||||
margin_right = 686.504
|
|
||||||
margin_bottom = 840.091
|
|
||||||
|
|
||||||
[node name="inventory_layer" type="CanvasLayer" parent="ui/panel_down"]
|
|
||||||
layer = 2
|
|
||||||
|
|
||||||
[node name="inventory_ui" parent="ui/panel_down/inventory_layer" instance=ExtResource( 2 )]
|
|
||||||
anchor_top = 0.722
|
|
||||||
anchor_right = 1.0
|
|
||||||
anchor_bottom = 1.0
|
|
||||||
margin_left = 752.0
|
|
||||||
margin_top = 31.2
|
|
||||||
margin_right = -63.0
|
|
||||||
margin_bottom = -61.0
|
|
||||||
|
|
||||||
[node name="tooltip_layer" type="CanvasLayer" parent="ui/panel_down"]
|
|
||||||
layer = 2
|
|
||||||
|
|
||||||
[node name="tooltip" parent="ui/panel_down/tooltip_layer" instance=ExtResource( 1 )]
|
|
||||||
anchor_left = 0.132
|
|
||||||
anchor_top = 0.719
|
|
||||||
anchor_right = 0.832
|
|
||||||
anchor_bottom = 0.767
|
|
||||||
margin_left = 0.0272522
|
|
||||||
margin_top = 0.320557
|
|
||||||
margin_right = -0.252686
|
|
||||||
margin_bottom = -0.0794678
|
|
||||||
rect_min_size = Vector2( 0, 32 )
|
rect_min_size = Vector2( 0, 32 )
|
||||||
script = ExtResource( 8 )
|
script = ExtResource( 8 )
|
||||||
color = Color( 1, 1, 1, 1 )
|
color = Color( 1, 1, 1, 1 )
|
||||||
|
|
||||||
|
[node name="HSeparator" type="HSeparator" parent="ui/Control/panel_down/VBoxContainer"]
|
||||||
|
margin_top = 36.0
|
||||||
|
margin_right = 1280.0
|
||||||
|
margin_bottom = 46.0
|
||||||
|
custom_constants/separation = 10
|
||||||
|
|
||||||
|
[node name="HBoxContainer" type="HBoxContainer" parent="ui/Control/panel_down/VBoxContainer"]
|
||||||
|
margin_top = 50.0
|
||||||
|
margin_right = 1280.0
|
||||||
|
margin_bottom = 270.0
|
||||||
|
size_flags_vertical = 3
|
||||||
|
|
||||||
|
[node name="VerbsMargin" type="MarginContainer" parent="ui/Control/panel_down/VBoxContainer/HBoxContainer"]
|
||||||
|
margin_right = 424.0
|
||||||
|
margin_bottom = 220.0
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
size_flags_vertical = 3
|
||||||
|
custom_constants/margin_right = 20
|
||||||
|
custom_constants/margin_top = 20
|
||||||
|
custom_constants/margin_left = 20
|
||||||
|
custom_constants/margin_bottom = 20
|
||||||
|
|
||||||
|
[node name="verbs_menu" parent="ui/Control/panel_down/VBoxContainer/HBoxContainer/VerbsMargin" instance=ExtResource( 3 )]
|
||||||
|
margin_left = 20.0
|
||||||
|
margin_top = 20.0
|
||||||
|
margin_right = 404.0
|
||||||
|
margin_bottom = 200.0
|
||||||
|
|
||||||
|
[node name="MainMargin" type="MarginContainer" parent="ui/Control/panel_down/VBoxContainer/HBoxContainer"]
|
||||||
|
margin_left = 428.0
|
||||||
|
margin_right = 852.0
|
||||||
|
margin_bottom = 220.0
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
custom_constants/margin_right = 20
|
||||||
|
custom_constants/margin_top = 20
|
||||||
|
custom_constants/margin_left = 20
|
||||||
|
custom_constants/margin_bottom = 20
|
||||||
|
|
||||||
|
[node name="VBoxContainer" type="VBoxContainer" parent="ui/Control/panel_down/VBoxContainer/HBoxContainer/MainMargin"]
|
||||||
|
margin_left = 20.0
|
||||||
|
margin_top = 20.0
|
||||||
|
margin_right = 404.0
|
||||||
|
margin_bottom = 200.0
|
||||||
|
|
||||||
|
[node name="MarginContainer" type="MarginContainer" parent="ui/Control/panel_down/VBoxContainer/HBoxContainer/MainMargin/VBoxContainer"]
|
||||||
|
margin_left = 142.0
|
||||||
|
margin_top = 58.0
|
||||||
|
margin_right = 242.0
|
||||||
|
margin_bottom = 98.0
|
||||||
|
rect_min_size = Vector2( 100, 40 )
|
||||||
|
size_flags_horizontal = 6
|
||||||
|
size_flags_vertical = 6
|
||||||
|
|
||||||
|
[node name="MenuButton" type="Button" parent="ui/Control/panel_down/VBoxContainer/HBoxContainer/MainMargin/VBoxContainer/MarginContainer"]
|
||||||
|
margin_right = 100.0
|
||||||
|
margin_bottom = 40.0
|
||||||
|
text = "Menu"
|
||||||
|
|
||||||
|
[node name="room_select" parent="ui/Control/panel_down/VBoxContainer/HBoxContainer/MainMargin/VBoxContainer" instance=ExtResource( 7 )]
|
||||||
|
margin_top = 160.0
|
||||||
|
margin_right = 384.0
|
||||||
|
margin_bottom = 180.0
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
|
||||||
|
[node name="InventoryMargin" type="MarginContainer" parent="ui/Control/panel_down/VBoxContainer/HBoxContainer"]
|
||||||
|
margin_left = 856.0
|
||||||
|
margin_right = 1280.0
|
||||||
|
margin_bottom = 220.0
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
custom_constants/margin_right = 20
|
||||||
|
custom_constants/margin_top = 20
|
||||||
|
custom_constants/margin_left = 20
|
||||||
|
custom_constants/margin_bottom = 20
|
||||||
|
|
||||||
|
[node name="inventory_ui" parent="ui/Control/panel_down/VBoxContainer/HBoxContainer/InventoryMargin" instance=ExtResource( 2 )]
|
||||||
|
margin_left = 20.0
|
||||||
|
margin_top = 20.0
|
||||||
|
margin_right = 404.0
|
||||||
|
margin_bottom = 200.0
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
size_flags_vertical = 3
|
||||||
|
|
||||||
[node name="dialog_layer" type="CanvasLayer" parent="ui"]
|
[node name="dialog_layer" type="CanvasLayer" parent="ui"]
|
||||||
layer = 3
|
layer = 3
|
||||||
|
|
||||||
@@ -92,3 +150,5 @@ __meta__ = {
|
|||||||
visible = false
|
visible = false
|
||||||
|
|
||||||
[node name="camera" parent="." instance=ExtResource( 6 )]
|
[node name="camera" parent="." instance=ExtResource( 6 )]
|
||||||
|
|
||||||
|
[connection signal="pressed" from="ui/Control/panel_down/VBoxContainer/HBoxContainer/MainMargin/VBoxContainer/MarginContainer/MenuButton" to="." method="_on_MenuButton_pressed"]
|
||||||
|
|||||||
@@ -32,6 +32,11 @@ Implement methods to react to inputs.
|
|||||||
|
|
||||||
func _ready():
|
func _ready():
|
||||||
ProjectSettings.set_setting("escoria/ui/tooltip_follows_mouse", true)
|
ProjectSettings.set_setting("escoria/ui/tooltip_follows_mouse", true)
|
||||||
|
escoria.action_manager.connect(
|
||||||
|
"action_finished",
|
||||||
|
self,
|
||||||
|
"_on_action_finished"
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
## BACKGROUND ##
|
## BACKGROUND ##
|
||||||
@@ -42,17 +47,11 @@ func left_click_on_bg(position: Vector2) -> void:
|
|||||||
[escoria.main.current_scene.player.global_id, position],
|
[escoria.main.current_scene.player.global_id, position],
|
||||||
true
|
true
|
||||||
)
|
)
|
||||||
$ui/verbs_layer/verbs_menu.set_by_name("walk")
|
$CanvasLayer/ui/HBoxContainer/verbs_menu.set_by_name("walk")
|
||||||
$ui/verbs_layer/verbs_menu.clear_tool_texture()
|
$CanvasLayer/ui/HBoxContainer/verbs_menu.clear_tool_texture()
|
||||||
|
|
||||||
func right_click_on_bg(position: Vector2) -> void:
|
func right_click_on_bg(position: Vector2) -> void:
|
||||||
escoria.do(
|
mousewheel_action(1)
|
||||||
"walk",
|
|
||||||
[escoria.main.current_scene.player.global_id, position],
|
|
||||||
true
|
|
||||||
)
|
|
||||||
$ui/verbs_layer/verbs_menu.set_by_name("walk")
|
|
||||||
$ui/verbs_layer/verbs_menu.clear_tool_texture()
|
|
||||||
|
|
||||||
func left_double_click_on_bg(position: Vector2) -> void:
|
func left_double_click_on_bg(position: Vector2) -> void:
|
||||||
escoria.do(
|
escoria.do(
|
||||||
@@ -60,22 +59,24 @@ func left_double_click_on_bg(position: Vector2) -> void:
|
|||||||
[escoria.main.current_scene.player.global_id, position, true],
|
[escoria.main.current_scene.player.global_id, position, true],
|
||||||
true
|
true
|
||||||
)
|
)
|
||||||
$ui/verbs_layer/verbs_menu.set_by_name("walk")
|
$CanvasLayer/ui/HBoxContainer/verbs_menu.set_by_name("walk")
|
||||||
$ui/verbs_layer/verbs_menu.clear_tool_texture()
|
$CanvasLayer/ui/HBoxContainer/verbs_menu.clear_tool_texture()
|
||||||
|
|
||||||
## ITEM/HOTSPOT FOCUS ##
|
## ITEM/HOTSPOT FOCUS ##
|
||||||
|
|
||||||
func element_focused(element_id: String) -> void:
|
func element_focused(element_id: String) -> void:
|
||||||
var target_obj = escoria.object_manager.get_object(element_id).node
|
var target_obj = escoria.object_manager.get_object(element_id).node
|
||||||
$ui/tooltip_layer/tooltip.set_target(target_obj.tooltip_name)
|
$tooltip_layer/tooltip.set_target(target_obj.tooltip_name)
|
||||||
|
|
||||||
if escoria.action_manager.current_action != "use" \
|
if escoria.action_manager.current_action != "use" \
|
||||||
and escoria.action_manager.current_tool == null:
|
and escoria.action_manager.current_tool == null:
|
||||||
if target_obj is ESCItem:
|
if target_obj is ESCItem:
|
||||||
$ui/verbs_layer/verbs_menu.set_by_name(target_obj.default_action)
|
$CanvasLayer/ui/HBoxContainer/verbs_menu.set_by_name(
|
||||||
|
target_obj.default_action
|
||||||
|
)
|
||||||
|
|
||||||
func element_unfocused() -> void:
|
func element_unfocused() -> void:
|
||||||
$ui/tooltip_layer/tooltip.set_target("")
|
$tooltip_layer/tooltip.set_target("")
|
||||||
|
|
||||||
|
|
||||||
## ITEMS ##
|
## ITEMS ##
|
||||||
@@ -84,7 +85,7 @@ func left_click_on_item(item_global_id: String, event: InputEvent) -> void:
|
|||||||
escoria.do("item_left_click", [item_global_id, event], true)
|
escoria.do("item_left_click", [item_global_id, event], true)
|
||||||
|
|
||||||
func right_click_on_item(item_global_id: String, event: InputEvent) -> void:
|
func right_click_on_item(item_global_id: String, event: InputEvent) -> void:
|
||||||
escoria.do("item_right_click", [item_global_id, event], true)
|
mousewheel_action(1)
|
||||||
|
|
||||||
func left_double_click_on_item(item_global_id: String, event: InputEvent) -> void:
|
func left_double_click_on_item(item_global_id: String, event: InputEvent) -> void:
|
||||||
escoria.do("item_left_click", [item_global_id, event], true)
|
escoria.do("item_left_click", [item_global_id, event], true)
|
||||||
@@ -98,17 +99,17 @@ func left_click_on_inventory_item(inventory_item_global_id: String, event: Input
|
|||||||
inventory_item_global_id
|
inventory_item_global_id
|
||||||
).node
|
).node
|
||||||
if item.has_method("get_sprite") and item.get_sprite().texture:
|
if item.has_method("get_sprite") and item.get_sprite().texture:
|
||||||
$ui/verbs_layer/verbs_menu.set_tool_texture(
|
$CanvasLayer/ui/HBoxContainer/verbs_menu.set_tool_texture(
|
||||||
item.get_sprite().texture
|
item.get_sprite().texture
|
||||||
)
|
)
|
||||||
elif item.inventory_item.texture_normal:
|
elif item.inventory_item.texture_normal:
|
||||||
$ui/verbs_layer/verbs_menu.set_tool_texture(
|
$CanvasLayer/ui/HBoxContainer/verbs_menu.set_tool_texture(
|
||||||
item.inventory_item.texture_normal
|
item.inventory_item.texture_normal
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
func right_click_on_inventory_item(inventory_item_global_id: String, event: InputEvent) -> void:
|
func right_click_on_inventory_item(inventory_item_global_id: String, event: InputEvent) -> void:
|
||||||
escoria.do("item_right_click", [inventory_item_global_id, event], true)
|
mousewheel_action(1)
|
||||||
|
|
||||||
|
|
||||||
func left_double_click_on_inventory_item(inventory_item_global_id: String, event: InputEvent) -> void:
|
func left_double_click_on_inventory_item(inventory_item_global_id: String, event: InputEvent) -> void:
|
||||||
@@ -116,7 +117,7 @@ func left_double_click_on_inventory_item(inventory_item_global_id: String, event
|
|||||||
|
|
||||||
|
|
||||||
func inventory_item_focused(inventory_item_global_id: String) -> void:
|
func inventory_item_focused(inventory_item_global_id: String) -> void:
|
||||||
$ui/tooltip_layer/tooltip.set_target(
|
$tooltip_layer/tooltip.set_target(
|
||||||
escoria.object_manager.get_object(
|
escoria.object_manager.get_object(
|
||||||
inventory_item_global_id
|
inventory_item_global_id
|
||||||
).node.tooltip_name
|
).node.tooltip_name
|
||||||
@@ -124,43 +125,53 @@ func inventory_item_focused(inventory_item_global_id: String) -> void:
|
|||||||
|
|
||||||
|
|
||||||
func inventory_item_unfocused() -> void:
|
func inventory_item_unfocused() -> void:
|
||||||
$ui/tooltip_layer/tooltip.set_target("")
|
$tooltip_layer/tooltip.set_target("")
|
||||||
|
|
||||||
|
|
||||||
func open_inventory():
|
func open_inventory():
|
||||||
$ui/inventory_layer/inventory_ui/inventory_button.show_inventory()
|
$CanvasLayer/ui/HBoxContainer/inventory_ui.show_inventory()
|
||||||
|
|
||||||
|
|
||||||
func close_inventory():
|
func close_inventory():
|
||||||
$ui/inventory_layer/inventory_ui/inventory_button.close_inventory()
|
$CanvasLayer/ui/HBoxContainer/inventory_ui.hide_inventory()
|
||||||
|
|
||||||
|
|
||||||
func mousewheel_action(direction: int):
|
func mousewheel_action(direction: int):
|
||||||
$ui/verbs_layer/verbs_menu.iterate_actions_cursor(direction)
|
$CanvasLayer/ui/HBoxContainer/verbs_menu.iterate_actions_cursor(direction)
|
||||||
|
|
||||||
|
|
||||||
func hide_ui():
|
func hide_ui():
|
||||||
$ui/inventory_layer/inventory_ui.hide()
|
$CanvasLayer/ui/HBoxContainer/inventory_ui.hide()
|
||||||
|
|
||||||
|
|
||||||
func show_ui():
|
func show_ui():
|
||||||
$ui/inventory_layer/inventory_ui.show()
|
$CanvasLayer/ui/HBoxContainer/inventory_ui.show()
|
||||||
|
|
||||||
|
|
||||||
func _on_event_done(event_name: String):
|
func _on_event_done(event_name: String):
|
||||||
escoria.action_manager.clear_current_action()
|
escoria.action_manager.clear_current_action()
|
||||||
$ui/verbs_layer/verbs_menu.clear_tool_texture()
|
$CanvasLayer/ui/HBoxContainer/verbs_menu.clear_tool_texture()
|
||||||
|
|
||||||
|
|
||||||
func pause_game():
|
func pause_game():
|
||||||
if $ui/pause_menu.visible:
|
if $CanvasLayer/pause_menu.visible:
|
||||||
$ui/pause_menu.hide()
|
$CanvasLayer/pause_menu.hide()
|
||||||
escoria.main.current_scene.game.get_node("camera").current = true
|
escoria.main.current_scene.game.get_node("camera").current = true
|
||||||
escoria.main.current_scene.game.show_ui()
|
escoria.main.current_scene.game.show_ui()
|
||||||
escoria.main.current_scene.show()
|
escoria.main.current_scene.show()
|
||||||
else:
|
else:
|
||||||
$ui/pause_menu.set_save_enabled(escoria.save_manager.save_enabled)
|
$CanvasLayer/pause_menu.set_save_enabled(
|
||||||
$ui/pause_menu.show()
|
escoria.save_manager.save_enabled
|
||||||
|
)
|
||||||
|
$CanvasLayer/pause_menu.show()
|
||||||
escoria.main.current_scene.game.get_node("camera").current = false
|
escoria.main.current_scene.game.get_node("camera").current = false
|
||||||
escoria.main.current_scene.game.hide_ui()
|
escoria.main.current_scene.game.hide_ui()
|
||||||
escoria.main.current_scene.hide()
|
escoria.main.current_scene.hide()
|
||||||
|
|
||||||
|
|
||||||
|
func _on_action_finished():
|
||||||
|
$CanvasLayer/ui/HBoxContainer/verbs_menu.clear_tool_texture()
|
||||||
|
|
||||||
|
|
||||||
|
func _on_MenuButton_pressed() -> void:
|
||||||
|
pause_game()
|
||||||
|
|||||||
@@ -13,46 +13,80 @@
|
|||||||
script = ExtResource( 5 )
|
script = ExtResource( 5 )
|
||||||
editor_debug_mode = 1
|
editor_debug_mode = 1
|
||||||
|
|
||||||
[node name="ui" type="CanvasLayer" parent="."]
|
[node name="camera" parent="." instance=ExtResource( 3 )]
|
||||||
|
|
||||||
[node name="inventory_layer" type="CanvasLayer" parent="ui"]
|
[node name="CanvasLayer" type="CanvasLayer" parent="."]
|
||||||
layer = 2
|
|
||||||
|
|
||||||
[node name="inventory_ui" parent="ui/inventory_layer" instance=ExtResource( 1 )]
|
[node name="ui" type="Control" parent="CanvasLayer"]
|
||||||
margin_left = 1173.73
|
anchor_top = 0.9
|
||||||
margin_top = 695.268
|
anchor_right = 1.0
|
||||||
margin_right = 394.205
|
anchor_bottom = 1.0
|
||||||
margin_bottom = 587.268
|
size_flags_horizontal = 3
|
||||||
|
size_flags_vertical = 3
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_use_anchors_": false
|
||||||
|
}
|
||||||
|
|
||||||
[node name="verbs_layer" type="CanvasLayer" parent="ui"]
|
[node name="HBoxContainer" type="HBoxContainer" parent="CanvasLayer/ui"]
|
||||||
layer = 2
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
size_flags_vertical = 3
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_use_anchors_": false
|
||||||
|
}
|
||||||
|
|
||||||
[node name="verbs_menu" parent="ui/verbs_layer" instance=ExtResource( 4 )]
|
[node name="VBoxContainer" type="VBoxContainer" parent="CanvasLayer/ui/HBoxContainer"]
|
||||||
margin_left = 2234.6
|
margin_right = 200.0
|
||||||
margin_top = -583.507
|
margin_bottom = 90.0
|
||||||
margin_right = 2234.6
|
|
||||||
margin_bottom = -583.507
|
|
||||||
|
|
||||||
[node name="tooltip_layer" type="CanvasLayer" parent="ui"]
|
[node name="MenuButton" type="Button" parent="CanvasLayer/ui/HBoxContainer/VBoxContainer"]
|
||||||
layer = 2
|
margin_right = 200.0
|
||||||
|
margin_bottom = 20.0
|
||||||
|
text = "Menu"
|
||||||
|
|
||||||
[node name="tooltip" parent="ui/tooltip_layer" instance=ExtResource( 6 )]
|
[node name="room_select" parent="CanvasLayer/ui/HBoxContainer/VBoxContainer" instance=ExtResource( 7 )]
|
||||||
mouse_filter = 2
|
margin_top = 47.0
|
||||||
bbcode_text = "[center][color=#000000][/color][/center]"
|
margin_right = 200.0
|
||||||
offset_from_cursor = Vector2( 75, 10 )
|
margin_bottom = 67.0
|
||||||
|
rect_min_size = Vector2( 200, 0 )
|
||||||
|
size_flags_horizontal = 2
|
||||||
|
size_flags_vertical = 6
|
||||||
|
|
||||||
[node name="dialog_layer" type="CanvasLayer" parent="ui"]
|
[node name="verbs_menu" parent="CanvasLayer/ui/HBoxContainer" instance=ExtResource( 4 )]
|
||||||
layer = 3
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_left = 204.0
|
||||||
|
margin_right = 204.0
|
||||||
|
margin_bottom = 90.0
|
||||||
|
grow_horizontal = 0
|
||||||
|
size_flags_horizontal = 2
|
||||||
|
size_flags_vertical = 3
|
||||||
|
size_flags_stretch_ratio = 3.0
|
||||||
|
|
||||||
[node name="dialog_player" parent="ui/dialog_layer" instance=ExtResource( 2 )]
|
[node name="inventory_ui" parent="CanvasLayer/ui/HBoxContainer" instance=ExtResource( 1 )]
|
||||||
|
anchor_right = 0.0
|
||||||
|
anchor_bottom = 0.0
|
||||||
|
margin_left = 1190.0
|
||||||
|
margin_right = 1280.0
|
||||||
|
margin_bottom = 90.0
|
||||||
|
rect_scale = Vector2( 1, 1 )
|
||||||
|
|
||||||
[node name="room_select" parent="ui" instance=ExtResource( 7 )]
|
[node name="pause_menu" parent="CanvasLayer" instance=ExtResource( 8 )]
|
||||||
margin_left = 75.5099
|
|
||||||
margin_top = 751.323
|
|
||||||
margin_right = 138.51
|
|
||||||
margin_bottom = 791.324
|
|
||||||
|
|
||||||
[node name="pause_menu" parent="ui" instance=ExtResource( 8 )]
|
|
||||||
visible = false
|
visible = false
|
||||||
|
|
||||||
[node name="camera" parent="." instance=ExtResource( 3 )]
|
[node name="dialog_layer" type="CanvasLayer" parent="."]
|
||||||
|
layer = 3
|
||||||
|
|
||||||
|
[node name="dialog_player" parent="dialog_layer" instance=ExtResource( 2 )]
|
||||||
|
|
||||||
|
[node name="tooltip_layer" type="CanvasLayer" parent="."]
|
||||||
|
layer = 2
|
||||||
|
|
||||||
|
[node name="tooltip" parent="tooltip_layer" instance=ExtResource( 6 )]
|
||||||
|
mouse_filter = 2
|
||||||
|
bbcode_text = "[center][color=#000000][/color][/center]"
|
||||||
|
fit_content_height = true
|
||||||
|
offset_from_cursor = Vector2( 75, 10 )
|
||||||
|
|
||||||
|
[connection signal="pressed" from="CanvasLayer/ui/HBoxContainer/VBoxContainer/MenuButton" to="." method="_on_MenuButton_pressed"]
|
||||||
|
|||||||
@@ -1,25 +0,0 @@
|
|||||||
extends Control
|
|
||||||
|
|
||||||
var showed: bool = false
|
|
||||||
|
|
||||||
func _ready():
|
|
||||||
pass
|
|
||||||
|
|
||||||
|
|
||||||
func _on_inventory_button_pressed():
|
|
||||||
if !$AnimationPlayer.is_playing() and !showed:
|
|
||||||
show_inventory()
|
|
||||||
elif !$AnimationPlayer.is_playing() and showed:
|
|
||||||
close_inventory()
|
|
||||||
|
|
||||||
|
|
||||||
func show_inventory():
|
|
||||||
$AnimationPlayer.play("show")
|
|
||||||
yield($AnimationPlayer, "animation_finished")
|
|
||||||
showed = true
|
|
||||||
|
|
||||||
|
|
||||||
func close_inventory():
|
|
||||||
$AnimationPlayer.play("hide")
|
|
||||||
yield($AnimationPlayer, "animation_finished")
|
|
||||||
showed = false
|
|
||||||
55
addons/escoria-ui-simplemouse/inventory/inventory_ui.gd
Normal file
@@ -0,0 +1,55 @@
|
|||||||
|
extends ESCInventory
|
||||||
|
|
||||||
|
|
||||||
|
# Wether the inventory is visible currently
|
||||||
|
var inventory_visible: bool = false
|
||||||
|
|
||||||
|
|
||||||
|
func _ready() -> void:
|
||||||
|
# Hide inventory by default
|
||||||
|
$FloatingInventory/panel.rect_position.x = \
|
||||||
|
ProjectSettings.get_setting("display/window/size/width")
|
||||||
|
|
||||||
|
func _on_inventory_button_pressed():
|
||||||
|
if $FloatingInventory/InventoryTween.is_active():
|
||||||
|
return
|
||||||
|
if inventory_visible:
|
||||||
|
hide_inventory()
|
||||||
|
else:
|
||||||
|
show_inventory()
|
||||||
|
|
||||||
|
|
||||||
|
func show_inventory():
|
||||||
|
$FloatingInventory/InventoryTween.stop_all()
|
||||||
|
$FloatingInventory/InventoryTween.remove_all()
|
||||||
|
$FloatingInventory/InventoryTween.interpolate_property(
|
||||||
|
$FloatingInventory/panel,
|
||||||
|
"rect_position:x",
|
||||||
|
$FloatingInventory/panel.rect_position.x,
|
||||||
|
$FloatingInventory/panel.rect_position.x - \
|
||||||
|
$FloatingInventory/panel.rect_size.x - \
|
||||||
|
$HBoxContainer/inventory_button.rect_size.x,
|
||||||
|
0.6
|
||||||
|
)
|
||||||
|
$FloatingInventory/InventoryTween.start()
|
||||||
|
yield($FloatingInventory/InventoryTween,"tween_all_completed")
|
||||||
|
$FloatingInventory/InventoryTween.stop_all()
|
||||||
|
inventory_visible = true
|
||||||
|
|
||||||
|
|
||||||
|
func hide_inventory():
|
||||||
|
$FloatingInventory/InventoryTween.stop_all()
|
||||||
|
$FloatingInventory/InventoryTween.remove_all()
|
||||||
|
$FloatingInventory/InventoryTween.interpolate_property(
|
||||||
|
$FloatingInventory/panel,
|
||||||
|
"rect_position:x",
|
||||||
|
$FloatingInventory/panel.rect_position.x,
|
||||||
|
$FloatingInventory/panel.rect_position.x + \
|
||||||
|
$FloatingInventory/panel.rect_size.x + \
|
||||||
|
$HBoxContainer/inventory_button.rect_size.x,
|
||||||
|
0.6
|
||||||
|
)
|
||||||
|
$FloatingInventory/InventoryTween.start()
|
||||||
|
yield($FloatingInventory/InventoryTween,"tween_all_completed")
|
||||||
|
$FloatingInventory/InventoryTween.stop_all()
|
||||||
|
inventory_visible = false
|
||||||
@@ -1,143 +1,79 @@
|
|||||||
[gd_scene load_steps=9 format=2]
|
[gd_scene load_steps=6 format=2]
|
||||||
|
|
||||||
[ext_resource path="res://addons/escoria-core/game/scenes/inventory/inventory_ui.gd" type="Script" id=1]
|
[ext_resource path="res://addons/escoria-ui-simplemouse/inventory/inventory_ui.gd" type="Script" id=1]
|
||||||
[ext_resource path="res://addons/escoria-ui-simplemouse/images/inventory_bg.png" type="Texture" id=2]
|
[ext_resource path="res://addons/escoria-ui-simplemouse/images/inventory_bg.png" type="Texture" id=2]
|
||||||
[ext_resource path="res://addons/escoria-ui-simplemouse/inventory/inventory_ui_container.gd" type="Script" id=3]
|
[ext_resource path="res://addons/escoria-ui-simplemouse/inventory/inventory_ui_container.gd" type="Script" id=3]
|
||||||
[ext_resource path="res://addons/escoria-ui-simplemouse/inventory/inventory_showhide.gd" type="Script" id=4]
|
|
||||||
[ext_resource path="res://addons/escoria-ui-simplemouse/images/frame.png" type="Texture" id=5]
|
[ext_resource path="res://addons/escoria-ui-simplemouse/images/frame.png" type="Texture" id=5]
|
||||||
[ext_resource path="res://addons/escoria-ui-simplemouse/images/inventory_icon.png" type="Texture" id=6]
|
[ext_resource path="res://addons/escoria-ui-simplemouse/images/inventory_icon.png" type="Texture" id=6]
|
||||||
|
|
||||||
[sub_resource type="Animation" id=1]
|
|
||||||
resource_name = "hide"
|
|
||||||
length = 0.3
|
|
||||||
tracks/0/type = "value"
|
|
||||||
tracks/0/path = NodePath(".:rect_position")
|
|
||||||
tracks/0/interp = 1
|
|
||||||
tracks/0/loop_wrap = true
|
|
||||||
tracks/0/imported = false
|
|
||||||
tracks/0/enabled = true
|
|
||||||
tracks/0/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 0,
|
|
||||||
"values": [ Vector2( 0, 0 ) ]
|
|
||||||
}
|
|
||||||
tracks/1/type = "value"
|
|
||||||
tracks/1/path = NodePath("../inventory_button:rect_position")
|
|
||||||
tracks/1/interp = 1
|
|
||||||
tracks/1/loop_wrap = true
|
|
||||||
tracks/1/imported = false
|
|
||||||
tracks/1/enabled = true
|
|
||||||
tracks/1/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 0,
|
|
||||||
"values": [ Vector2( 0, 0 ) ]
|
|
||||||
}
|
|
||||||
tracks/2/type = "value"
|
|
||||||
tracks/2/path = NodePath("../inventory_button/panel:rect_position")
|
|
||||||
tracks/2/interp = 1
|
|
||||||
tracks/2/loop_wrap = true
|
|
||||||
tracks/2/imported = false
|
|
||||||
tracks/2/enabled = true
|
|
||||||
tracks/2/keys = {
|
|
||||||
"times": PoolRealArray( 0, 0.3 ),
|
|
||||||
"transitions": PoolRealArray( 1, 1 ),
|
|
||||||
"update": 0,
|
|
||||||
"values": [ Vector2( -1682.88, -52 ), Vector2( 268, -52 ) ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=2]
|
|
||||||
resource_name = "show"
|
|
||||||
length = 0.3
|
|
||||||
tracks/0/type = "value"
|
|
||||||
tracks/0/path = NodePath(".:rect_position")
|
|
||||||
tracks/0/interp = 1
|
|
||||||
tracks/0/loop_wrap = true
|
|
||||||
tracks/0/imported = false
|
|
||||||
tracks/0/enabled = true
|
|
||||||
tracks/0/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 0,
|
|
||||||
"values": [ Vector2( 0, 0 ) ]
|
|
||||||
}
|
|
||||||
tracks/1/type = "value"
|
|
||||||
tracks/1/path = NodePath("../inventory_button:rect_position")
|
|
||||||
tracks/1/interp = 1
|
|
||||||
tracks/1/loop_wrap = true
|
|
||||||
tracks/1/imported = false
|
|
||||||
tracks/1/enabled = true
|
|
||||||
tracks/1/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 0,
|
|
||||||
"values": [ Vector2( 0, 0 ) ]
|
|
||||||
}
|
|
||||||
tracks/2/type = "value"
|
|
||||||
tracks/2/path = NodePath("../inventory_button/panel:rect_position")
|
|
||||||
tracks/2/interp = 1
|
|
||||||
tracks/2/loop_wrap = true
|
|
||||||
tracks/2/imported = false
|
|
||||||
tracks/2/enabled = true
|
|
||||||
tracks/2/keys = {
|
|
||||||
"times": PoolRealArray( 0, 0.3 ),
|
|
||||||
"transitions": PoolRealArray( 1, 1 ),
|
|
||||||
"update": 0,
|
|
||||||
"values": [ Vector2( 268, -52 ), Vector2( -1682.88, -52 ) ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[node name="inventory_ui" type="Control"]
|
[node name="inventory_ui" type="Control"]
|
||||||
anchor_right = 0.609
|
anchor_right = 0.4
|
||||||
anchor_bottom = 0.135
|
anchor_bottom = 0.4
|
||||||
margin_right = -779.52
|
margin_right = 768.0
|
||||||
margin_bottom = -108.0
|
margin_bottom = 540.0
|
||||||
|
rect_min_size = Vector2( 90, 90 )
|
||||||
rect_scale = Vector2( 0.4, 0.4 )
|
rect_scale = Vector2( 0.4, 0.4 )
|
||||||
|
size_flags_horizontal = 0
|
||||||
|
size_flags_vertical = 3
|
||||||
script = ExtResource( 1 )
|
script = ExtResource( 1 )
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
"_edit_use_anchors_": false
|
"_edit_use_anchors_": true
|
||||||
}
|
}
|
||||||
inventory_ui_container = NodePath("inventory_button/panel/MarginContainer/ScrollContainer/container")
|
inventory_ui_container = NodePath("FloatingInventory/panel/MarginContainer/ScrollContainer/container")
|
||||||
|
|
||||||
[node name="inventory_button" type="TextureButton" parent="."]
|
[node name="HBoxContainer" type="HBoxContainer" parent="."]
|
||||||
margin_right = 256.0
|
|
||||||
margin_bottom = 322.0
|
|
||||||
texture_normal = ExtResource( 6 )
|
|
||||||
script = ExtResource( 4 )
|
|
||||||
__meta__ = {
|
|
||||||
"_edit_use_anchors_": false
|
|
||||||
}
|
|
||||||
|
|
||||||
[node name="frame" type="TextureRect" parent="inventory_button"]
|
|
||||||
margin_right = 2643.0
|
|
||||||
margin_bottom = 2630.0
|
|
||||||
rect_scale = Vector2( 0.1, 0.1 )
|
|
||||||
texture = ExtResource( 5 )
|
|
||||||
stretch_mode = 1
|
|
||||||
__meta__ = {
|
|
||||||
"_edit_lock_": true,
|
|
||||||
"_edit_use_anchors_": false
|
|
||||||
}
|
|
||||||
|
|
||||||
[node name="panel" type="TextureRect" parent="inventory_button"]
|
|
||||||
margin_left = 268.0
|
|
||||||
margin_top = -52.0
|
|
||||||
margin_right = 1957.0
|
|
||||||
margin_bottom = 270.0
|
|
||||||
grow_horizontal = 0
|
|
||||||
rect_min_size = Vector2( 1689, 322 )
|
|
||||||
texture = ExtResource( 2 )
|
|
||||||
__meta__ = {
|
|
||||||
"_edit_use_anchors_": false
|
|
||||||
}
|
|
||||||
|
|
||||||
[node name="MarginContainer" type="MarginContainer" parent="inventory_button/panel"]
|
|
||||||
anchor_right = 1.0
|
anchor_right = 1.0
|
||||||
anchor_bottom = 1.0
|
anchor_bottom = 1.0
|
||||||
margin_left = 57.0
|
__meta__ = {
|
||||||
margin_top = 37.0
|
"_edit_use_anchors_": false
|
||||||
margin_right = -68.0
|
}
|
||||||
margin_bottom = -71.0
|
|
||||||
|
[node name="inventory_button" type="TextureButton" parent="HBoxContainer"]
|
||||||
|
margin_right = 1280.0
|
||||||
|
margin_bottom = 900.0
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
size_flags_vertical = 3
|
||||||
|
texture_normal = ExtResource( 6 )
|
||||||
|
expand = true
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_use_anchors_": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="frame" type="TextureRect" parent="HBoxContainer/inventory_button"]
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
size_flags_vertical = 3
|
||||||
|
texture = ExtResource( 5 )
|
||||||
|
expand = true
|
||||||
|
stretch_mode = 1
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_use_anchors_": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="FloatingInventory" type="CanvasLayer" parent="."]
|
||||||
|
|
||||||
|
[node name="panel" type="TextureRect" parent="FloatingInventory"]
|
||||||
|
anchor_left = 1.0
|
||||||
|
anchor_top = 1.0
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
margin_left = -516.0
|
||||||
|
margin_top = -160.0
|
||||||
|
rect_min_size = Vector2( 0, 160 )
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
size_flags_vertical = 3
|
||||||
|
texture = ExtResource( 2 )
|
||||||
|
expand = true
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_use_anchors_": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="MarginContainer" type="MarginContainer" parent="FloatingInventory/panel"]
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
size_flags_vertical = 3
|
||||||
custom_constants/margin_right = 20
|
custom_constants/margin_right = 20
|
||||||
custom_constants/margin_top = 20
|
custom_constants/margin_top = 20
|
||||||
custom_constants/margin_left = 20
|
custom_constants/margin_left = 20
|
||||||
@@ -146,23 +82,22 @@ __meta__ = {
|
|||||||
"_edit_use_anchors_": false
|
"_edit_use_anchors_": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[node name="ScrollContainer" type="ScrollContainer" parent="inventory_button/panel/MarginContainer"]
|
[node name="ScrollContainer" type="ScrollContainer" parent="FloatingInventory/panel/MarginContainer"]
|
||||||
margin_left = 20.0
|
margin_left = 20.0
|
||||||
margin_top = 20.0
|
margin_top = 80.0
|
||||||
margin_right = 1544.0
|
margin_right = 496.0
|
||||||
margin_bottom = 194.0
|
margin_bottom = 80.0
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
size_flags_vertical = 6
|
||||||
scroll_vertical_enabled = false
|
scroll_vertical_enabled = false
|
||||||
|
|
||||||
[node name="container" type="HBoxContainer" parent="inventory_button/panel/MarginContainer/ScrollContainer"]
|
[node name="container" type="HBoxContainer" parent="FloatingInventory/panel/MarginContainer/ScrollContainer"]
|
||||||
margin_right = 1524.0
|
margin_right = 476.0
|
||||||
margin_bottom = 174.0
|
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
custom_constants/separation = 20
|
custom_constants/separation = 20
|
||||||
script = ExtResource( 3 )
|
script = ExtResource( 3 )
|
||||||
|
|
||||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="inventory_button"]
|
[node name="InventoryTween" type="Tween" parent="FloatingInventory"]
|
||||||
anims/hide = SubResource( 1 )
|
|
||||||
anims/show = SubResource( 2 )
|
|
||||||
|
|
||||||
[connection signal="pressed" from="inventory_button" to="inventory_button" method="_on_inventory_button_pressed"]
|
[connection signal="pressed" from="HBoxContainer/inventory_button" to="." method="_on_inventory_button_pressed"]
|
||||||
|
|||||||
@@ -8,48 +8,66 @@
|
|||||||
[ext_resource path="res://addons/escoria-ui-simplemouse/cursors/cursor_hand.png" type="Texture" id=6]
|
[ext_resource path="res://addons/escoria-ui-simplemouse/cursors/cursor_hand.png" type="Texture" id=6]
|
||||||
|
|
||||||
[node name="verbs_menu" type="Control"]
|
[node name="verbs_menu" type="Control"]
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
script = ExtResource( 1 )
|
script = ExtResource( 1 )
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
"_edit_use_anchors_": false
|
"_edit_use_anchors_": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[node name="actions" type="GridContainer" parent="."]
|
[node name="actions" type="HBoxContainer" parent="."]
|
||||||
visible = false
|
visible = false
|
||||||
margin_right = 333.0
|
anchor_right = 1.0
|
||||||
margin_bottom = 175.0
|
anchor_bottom = 1.0
|
||||||
columns = 3
|
size_flags_horizontal = 3
|
||||||
|
size_flags_vertical = 3
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
"_edit_use_anchors_": false
|
"_edit_use_anchors_": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[node name="walk" type="TextureRect" parent="actions"]
|
[node name="walk" type="TextureRect" parent="actions"]
|
||||||
margin_right = 64.0
|
margin_left = 94.0
|
||||||
margin_bottom = 64.0
|
margin_top = 418.0
|
||||||
|
margin_right = 158.0
|
||||||
|
margin_bottom = 482.0
|
||||||
|
size_flags_horizontal = 6
|
||||||
|
size_flags_vertical = 6
|
||||||
texture = ExtResource( 5 )
|
texture = ExtResource( 5 )
|
||||||
|
|
||||||
[node name="look" type="TextureRect" parent="actions"]
|
[node name="look" type="TextureRect" parent="actions"]
|
||||||
margin_left = 68.0
|
margin_left = 350.0
|
||||||
margin_right = 132.0
|
margin_top = 418.0
|
||||||
margin_bottom = 64.0
|
margin_right = 414.0
|
||||||
|
margin_bottom = 482.0
|
||||||
|
size_flags_horizontal = 6
|
||||||
|
size_flags_vertical = 6
|
||||||
texture = ExtResource( 2 )
|
texture = ExtResource( 2 )
|
||||||
|
|
||||||
[node name="pickup" type="TextureRect" parent="actions"]
|
[node name="pickup" type="TextureRect" parent="actions"]
|
||||||
margin_left = 136.0
|
margin_left = 607.0
|
||||||
margin_right = 200.0
|
margin_top = 418.0
|
||||||
margin_bottom = 64.0
|
margin_right = 671.0
|
||||||
|
margin_bottom = 482.0
|
||||||
|
size_flags_horizontal = 6
|
||||||
|
size_flags_vertical = 6
|
||||||
texture = ExtResource( 6 )
|
texture = ExtResource( 6 )
|
||||||
|
|
||||||
[node name="use" type="TextureRect" parent="actions"]
|
[node name="use" type="TextureRect" parent="actions"]
|
||||||
margin_top = 68.0
|
margin_left = 864.0
|
||||||
margin_right = 64.0
|
margin_top = 418.0
|
||||||
margin_bottom = 132.0
|
margin_right = 928.0
|
||||||
|
margin_bottom = 482.0
|
||||||
|
size_flags_horizontal = 6
|
||||||
|
size_flags_vertical = 6
|
||||||
texture = ExtResource( 3 )
|
texture = ExtResource( 3 )
|
||||||
|
|
||||||
[node name="talk" type="TextureRect" parent="actions"]
|
[node name="talk" type="TextureRect" parent="actions"]
|
||||||
margin_left = 68.0
|
margin_left = 1121.0
|
||||||
margin_top = 68.0
|
margin_top = 418.0
|
||||||
margin_right = 132.0
|
margin_right = 1185.0
|
||||||
margin_bottom = 132.0
|
margin_bottom = 482.0
|
||||||
|
size_flags_horizontal = 6
|
||||||
|
size_flags_vertical = 6
|
||||||
texture = ExtResource( 4 )
|
texture = ExtResource( 4 )
|
||||||
|
|
||||||
[node name="mouse_position" type="Control" parent="."]
|
[node name="mouse_position" type="Control" parent="."]
|
||||||
|
|||||||
@@ -63,3 +63,4 @@ func activate(action: String, target: ESCObject, combine_with: ESCObject = null)
|
|||||||
## Signals
|
## Signals
|
||||||
|
|
||||||
- signal action_changed(): The current action was changed
|
- signal action_changed(): The current action was changed
|
||||||
|
- signal action_finished(): Emitted, when an action has been completed
|
||||||
|
|||||||
@@ -29,19 +29,6 @@ The ESC script connected to this background
|
|||||||
|
|
||||||
## Method Descriptions
|
## Method Descriptions
|
||||||
|
|
||||||
### manage\_input
|
|
||||||
|
|
||||||
```gdscript
|
|
||||||
func manage_input(_viewport, event, _shape_idx) -> void
|
|
||||||
```
|
|
||||||
|
|
||||||
Manage inputs reaching the Area2D and emit the events to the input manager
|
|
||||||
|
|
||||||
#### Parameters
|
|
||||||
- _viewport: (not used)
|
|
||||||
- event: Event received
|
|
||||||
- _shape_idx: (not used)
|
|
||||||
|
|
||||||
### get\_full\_area\_rect2
|
### get\_full\_area\_rect2
|
||||||
|
|
||||||
```gdscript
|
```gdscript
|
||||||
|
|||||||
@@ -53,7 +53,7 @@ A LIFO stack of hovered items
|
|||||||
var hotspot_focused: String = ""
|
var hotspot_focused: String = ""
|
||||||
```
|
```
|
||||||
|
|
||||||
The global id fo the topmost item from the hover_stack
|
The global id of the topmost item from the hover_stack
|
||||||
|
|
||||||
## Method Descriptions
|
## Method Descriptions
|
||||||
|
|
||||||
|
|||||||
@@ -258,12 +258,6 @@ item. That can either be a direct Position2D child or a collision shape
|
|||||||
|
|
||||||
**Returns** The interaction position
|
**Returns** The interaction position
|
||||||
|
|
||||||
### manage\_input
|
|
||||||
|
|
||||||
```gdscript
|
|
||||||
func manage_input(_viewport: Viewport, event: InputEvent, _shape_idx: int) -> void
|
|
||||||
```
|
|
||||||
|
|
||||||
### element\_entered
|
### element\_entered
|
||||||
|
|
||||||
```gdscript
|
```gdscript
|
||||||
|
|||||||
@@ -127,4 +127,334 @@ vram_texture_compression/for_desktop=true
|
|||||||
vram_texture_compression/for_mobile=false
|
vram_texture_compression/for_mobile=false
|
||||||
html/custom_html_shell=""
|
html/custom_html_shell=""
|
||||||
html/head_include=""
|
html/head_include=""
|
||||||
html/full_window_size=true
|
html/canvas_resize_policy=2
|
||||||
|
html/experimental_virtual_keyboard=false
|
||||||
|
|
||||||
|
[preset.4]
|
||||||
|
|
||||||
|
name="iOS"
|
||||||
|
platform="iOS"
|
||||||
|
runnable=true
|
||||||
|
custom_features=""
|
||||||
|
export_filter="all_resources"
|
||||||
|
include_filter="*.esc"
|
||||||
|
exclude_filter=""
|
||||||
|
export_path="../../../../Documents/godot_render/escoria/Escoria.ipa"
|
||||||
|
script_export_mode=1
|
||||||
|
script_encryption_key=""
|
||||||
|
|
||||||
|
[preset.4.options]
|
||||||
|
|
||||||
|
custom_template/debug=""
|
||||||
|
custom_template/release=""
|
||||||
|
architectures/armv7=false
|
||||||
|
architectures/arm64=true
|
||||||
|
application/app_store_team_id="D85KFHH3UF"
|
||||||
|
application/provisioning_profile_uuid_debug=""
|
||||||
|
application/code_sign_identity_debug="iPhone Developer"
|
||||||
|
application/export_method_debug=1
|
||||||
|
application/provisioning_profile_uuid_release=""
|
||||||
|
application/code_sign_identity_release=""
|
||||||
|
application/export_method_release=0
|
||||||
|
application/name="Escoria Demo Game"
|
||||||
|
application/info="Made with Godot Engine"
|
||||||
|
application/identifier="com.github.godot-escoria"
|
||||||
|
application/signature=""
|
||||||
|
application/short_version="1.0"
|
||||||
|
application/version="1.0"
|
||||||
|
application/copyright=""
|
||||||
|
capabilities/access_wifi=false
|
||||||
|
capabilities/push_notifications=false
|
||||||
|
user_data/accessible_from_files_app=false
|
||||||
|
user_data/accessible_from_itunes_sharing=false
|
||||||
|
privacy/camera_usage_description=""
|
||||||
|
privacy/microphone_usage_description=""
|
||||||
|
privacy/photolibrary_usage_description=""
|
||||||
|
orientation/portrait=false
|
||||||
|
orientation/landscape_left=true
|
||||||
|
orientation/landscape_right=true
|
||||||
|
orientation/portrait_upside_down=false
|
||||||
|
required_icons/iphone_120x120="res://game/appicons/Assets.xcassets/AppIcon.appiconset/120.png"
|
||||||
|
required_icons/ipad_76x76="res://game/appicons/Assets.xcassets/AppIcon.appiconset/76.png"
|
||||||
|
required_icons/app_store_1024x1024="res://game/appicons/Assets.xcassets/AppIcon.appiconset/1024.png"
|
||||||
|
optional_icons/iphone_180x180="res://game/appicons/Assets.xcassets/AppIcon.appiconset/180.png"
|
||||||
|
optional_icons/ipad_152x152="res://game/appicons/Assets.xcassets/AppIcon.appiconset/152.png"
|
||||||
|
optional_icons/ipad_167x167="res://game/appicons/Assets.xcassets/AppIcon.appiconset/167.png"
|
||||||
|
optional_icons/spotlight_40x40="res://game/appicons/Assets.xcassets/AppIcon.appiconset/40.png"
|
||||||
|
optional_icons/spotlight_80x80="res://game/appicons/Assets.xcassets/AppIcon.appiconset/80.png"
|
||||||
|
storyboard/use_launch_screen_storyboard=false
|
||||||
|
storyboard/image_scale_mode=0
|
||||||
|
storyboard/custom_image@2x=""
|
||||||
|
storyboard/custom_image@3x=""
|
||||||
|
storyboard/use_custom_bg_color=false
|
||||||
|
storyboard/custom_bg_color=Color( 0, 0, 0, 1 )
|
||||||
|
landscape_launch_screens/iphone_2436x1125=""
|
||||||
|
landscape_launch_screens/iphone_2208x1242=""
|
||||||
|
landscape_launch_screens/ipad_1024x768=""
|
||||||
|
landscape_launch_screens/ipad_2048x1536=""
|
||||||
|
portrait_launch_screens/iphone_640x960=""
|
||||||
|
portrait_launch_screens/iphone_640x1136=""
|
||||||
|
portrait_launch_screens/iphone_750x1334=""
|
||||||
|
portrait_launch_screens/iphone_1125x2436=""
|
||||||
|
portrait_launch_screens/ipad_768x1024=""
|
||||||
|
portrait_launch_screens/ipad_1536x2048=""
|
||||||
|
portrait_launch_screens/iphone_1242x2208=""
|
||||||
|
|
||||||
|
[preset.5]
|
||||||
|
|
||||||
|
name="Mac OSX"
|
||||||
|
platform="Mac OSX"
|
||||||
|
runnable=true
|
||||||
|
custom_features=""
|
||||||
|
export_filter="all_resources"
|
||||||
|
include_filter="*.esc"
|
||||||
|
exclude_filter=""
|
||||||
|
export_path=""
|
||||||
|
script_export_mode=1
|
||||||
|
script_encryption_key=""
|
||||||
|
|
||||||
|
[preset.5.options]
|
||||||
|
|
||||||
|
custom_template/debug=""
|
||||||
|
custom_template/release=""
|
||||||
|
application/name="Escoria Demo Game"
|
||||||
|
application/info="Made with Godot Engine"
|
||||||
|
application/icon="res://game/appicons/appstore.png"
|
||||||
|
application/identifier=""
|
||||||
|
application/signature=""
|
||||||
|
application/short_version="1.0"
|
||||||
|
application/version="1.0"
|
||||||
|
application/copyright=""
|
||||||
|
display/high_res=false
|
||||||
|
privacy/camera_usage_description=""
|
||||||
|
privacy/microphone_usage_description=""
|
||||||
|
codesign/enable=true
|
||||||
|
codesign/identity=""
|
||||||
|
codesign/timestamp=true
|
||||||
|
codesign/hardened_runtime=true
|
||||||
|
codesign/replace_existing_signature=true
|
||||||
|
codesign/entitlements/custom_file=""
|
||||||
|
codesign/entitlements/allow_jit_code_execution=false
|
||||||
|
codesign/entitlements/allow_unsigned_executable_memory=false
|
||||||
|
codesign/entitlements/allow_dyld_environment_variables=false
|
||||||
|
codesign/entitlements/disable_library_validation=false
|
||||||
|
codesign/entitlements/audio_input=false
|
||||||
|
codesign/entitlements/camera=false
|
||||||
|
codesign/entitlements/location=false
|
||||||
|
codesign/entitlements/address_book=false
|
||||||
|
codesign/entitlements/calendars=false
|
||||||
|
codesign/entitlements/photos_library=false
|
||||||
|
codesign/entitlements/apple_events=false
|
||||||
|
codesign/entitlements/app_sandbox/enabled=false
|
||||||
|
codesign/entitlements/app_sandbox/network_server=false
|
||||||
|
codesign/entitlements/app_sandbox/network_client=false
|
||||||
|
codesign/entitlements/app_sandbox/device_usb=false
|
||||||
|
codesign/entitlements/app_sandbox/device_bluetooth=false
|
||||||
|
codesign/entitlements/app_sandbox/files_downloads=0
|
||||||
|
codesign/entitlements/app_sandbox/files_pictures=0
|
||||||
|
codesign/entitlements/app_sandbox/files_music=0
|
||||||
|
codesign/entitlements/app_sandbox/files_movies=0
|
||||||
|
codesign/custom_options=PoolStringArray( )
|
||||||
|
texture_format/s3tc=true
|
||||||
|
texture_format/etc=false
|
||||||
|
texture_format/etc2=false
|
||||||
|
|
||||||
|
[preset.6]
|
||||||
|
|
||||||
|
name="Android"
|
||||||
|
platform="Android"
|
||||||
|
runnable=true
|
||||||
|
custom_features=""
|
||||||
|
export_filter="all_resources"
|
||||||
|
include_filter="*.esc"
|
||||||
|
exclude_filter=""
|
||||||
|
export_path="../../../../Documents/godot_render/escoria/Escoria.apk"
|
||||||
|
script_export_mode=1
|
||||||
|
script_encryption_key=""
|
||||||
|
|
||||||
|
[preset.6.options]
|
||||||
|
|
||||||
|
custom_template/debug=""
|
||||||
|
custom_template/release=""
|
||||||
|
custom_template/use_custom_build=false
|
||||||
|
custom_template/export_format=0
|
||||||
|
architectures/armeabi-v7a=true
|
||||||
|
architectures/arm64-v8a=true
|
||||||
|
architectures/x86=false
|
||||||
|
architectures/x86_64=false
|
||||||
|
keystore/debug=""
|
||||||
|
keystore/debug_user=""
|
||||||
|
keystore/debug_password=""
|
||||||
|
keystore/release=""
|
||||||
|
keystore/release_user=""
|
||||||
|
keystore/release_password=""
|
||||||
|
one_click_deploy/clear_previous_install=false
|
||||||
|
version/code=1
|
||||||
|
version/name="1.0"
|
||||||
|
package/unique_name="org.godotengine.$genname"
|
||||||
|
package/name=""
|
||||||
|
package/signed=true
|
||||||
|
launcher_icons/main_192x192=""
|
||||||
|
launcher_icons/adaptive_foreground_432x432=""
|
||||||
|
launcher_icons/adaptive_background_432x432=""
|
||||||
|
graphics/32_bits_framebuffer=true
|
||||||
|
graphics/opengl_debug=false
|
||||||
|
xr_features/xr_mode=0
|
||||||
|
xr_features/degrees_of_freedom=0
|
||||||
|
xr_features/hand_tracking=0
|
||||||
|
xr_features/focus_awareness=false
|
||||||
|
screen/immersive_mode=true
|
||||||
|
screen/support_small=true
|
||||||
|
screen/support_normal=true
|
||||||
|
screen/support_large=true
|
||||||
|
screen/support_xlarge=true
|
||||||
|
command_line/extra_args=""
|
||||||
|
apk_expansion/enable=false
|
||||||
|
apk_expansion/SALT=""
|
||||||
|
apk_expansion/public_key=""
|
||||||
|
permissions/custom_permissions=PoolStringArray( )
|
||||||
|
permissions/access_checkin_properties=false
|
||||||
|
permissions/access_coarse_location=false
|
||||||
|
permissions/access_fine_location=false
|
||||||
|
permissions/access_location_extra_commands=false
|
||||||
|
permissions/access_mock_location=false
|
||||||
|
permissions/access_network_state=false
|
||||||
|
permissions/access_surface_flinger=false
|
||||||
|
permissions/access_wifi_state=false
|
||||||
|
permissions/account_manager=false
|
||||||
|
permissions/add_voicemail=false
|
||||||
|
permissions/authenticate_accounts=false
|
||||||
|
permissions/battery_stats=false
|
||||||
|
permissions/bind_accessibility_service=false
|
||||||
|
permissions/bind_appwidget=false
|
||||||
|
permissions/bind_device_admin=false
|
||||||
|
permissions/bind_input_method=false
|
||||||
|
permissions/bind_nfc_service=false
|
||||||
|
permissions/bind_notification_listener_service=false
|
||||||
|
permissions/bind_print_service=false
|
||||||
|
permissions/bind_remoteviews=false
|
||||||
|
permissions/bind_text_service=false
|
||||||
|
permissions/bind_vpn_service=false
|
||||||
|
permissions/bind_wallpaper=false
|
||||||
|
permissions/bluetooth=false
|
||||||
|
permissions/bluetooth_admin=false
|
||||||
|
permissions/bluetooth_privileged=false
|
||||||
|
permissions/brick=false
|
||||||
|
permissions/broadcast_package_removed=false
|
||||||
|
permissions/broadcast_sms=false
|
||||||
|
permissions/broadcast_sticky=false
|
||||||
|
permissions/broadcast_wap_push=false
|
||||||
|
permissions/call_phone=false
|
||||||
|
permissions/call_privileged=false
|
||||||
|
permissions/camera=false
|
||||||
|
permissions/capture_audio_output=false
|
||||||
|
permissions/capture_secure_video_output=false
|
||||||
|
permissions/capture_video_output=false
|
||||||
|
permissions/change_component_enabled_state=false
|
||||||
|
permissions/change_configuration=false
|
||||||
|
permissions/change_network_state=false
|
||||||
|
permissions/change_wifi_multicast_state=false
|
||||||
|
permissions/change_wifi_state=false
|
||||||
|
permissions/clear_app_cache=false
|
||||||
|
permissions/clear_app_user_data=false
|
||||||
|
permissions/control_location_updates=false
|
||||||
|
permissions/delete_cache_files=false
|
||||||
|
permissions/delete_packages=false
|
||||||
|
permissions/device_power=false
|
||||||
|
permissions/diagnostic=false
|
||||||
|
permissions/disable_keyguard=false
|
||||||
|
permissions/dump=false
|
||||||
|
permissions/expand_status_bar=false
|
||||||
|
permissions/factory_test=false
|
||||||
|
permissions/flashlight=false
|
||||||
|
permissions/force_back=false
|
||||||
|
permissions/get_accounts=false
|
||||||
|
permissions/get_package_size=false
|
||||||
|
permissions/get_tasks=false
|
||||||
|
permissions/get_top_activity_info=false
|
||||||
|
permissions/global_search=false
|
||||||
|
permissions/hardware_test=false
|
||||||
|
permissions/inject_events=false
|
||||||
|
permissions/install_location_provider=false
|
||||||
|
permissions/install_packages=false
|
||||||
|
permissions/install_shortcut=false
|
||||||
|
permissions/internal_system_window=false
|
||||||
|
permissions/internet=false
|
||||||
|
permissions/kill_background_processes=false
|
||||||
|
permissions/location_hardware=false
|
||||||
|
permissions/manage_accounts=false
|
||||||
|
permissions/manage_app_tokens=false
|
||||||
|
permissions/manage_documents=false
|
||||||
|
permissions/master_clear=false
|
||||||
|
permissions/media_content_control=false
|
||||||
|
permissions/modify_audio_settings=false
|
||||||
|
permissions/modify_phone_state=false
|
||||||
|
permissions/mount_format_filesystems=false
|
||||||
|
permissions/mount_unmount_filesystems=false
|
||||||
|
permissions/nfc=false
|
||||||
|
permissions/persistent_activity=false
|
||||||
|
permissions/process_outgoing_calls=false
|
||||||
|
permissions/read_calendar=false
|
||||||
|
permissions/read_call_log=false
|
||||||
|
permissions/read_contacts=false
|
||||||
|
permissions/read_external_storage=false
|
||||||
|
permissions/read_frame_buffer=false
|
||||||
|
permissions/read_history_bookmarks=false
|
||||||
|
permissions/read_input_state=false
|
||||||
|
permissions/read_logs=false
|
||||||
|
permissions/read_phone_state=false
|
||||||
|
permissions/read_profile=false
|
||||||
|
permissions/read_sms=false
|
||||||
|
permissions/read_social_stream=false
|
||||||
|
permissions/read_sync_settings=false
|
||||||
|
permissions/read_sync_stats=false
|
||||||
|
permissions/read_user_dictionary=false
|
||||||
|
permissions/reboot=false
|
||||||
|
permissions/receive_boot_completed=false
|
||||||
|
permissions/receive_mms=false
|
||||||
|
permissions/receive_sms=false
|
||||||
|
permissions/receive_wap_push=false
|
||||||
|
permissions/record_audio=false
|
||||||
|
permissions/reorder_tasks=false
|
||||||
|
permissions/restart_packages=false
|
||||||
|
permissions/send_respond_via_message=false
|
||||||
|
permissions/send_sms=false
|
||||||
|
permissions/set_activity_watcher=false
|
||||||
|
permissions/set_alarm=false
|
||||||
|
permissions/set_always_finish=false
|
||||||
|
permissions/set_animation_scale=false
|
||||||
|
permissions/set_debug_app=false
|
||||||
|
permissions/set_orientation=false
|
||||||
|
permissions/set_pointer_speed=false
|
||||||
|
permissions/set_preferred_applications=false
|
||||||
|
permissions/set_process_limit=false
|
||||||
|
permissions/set_time=false
|
||||||
|
permissions/set_time_zone=false
|
||||||
|
permissions/set_wallpaper=false
|
||||||
|
permissions/set_wallpaper_hints=false
|
||||||
|
permissions/signal_persistent_processes=false
|
||||||
|
permissions/status_bar=false
|
||||||
|
permissions/subscribed_feeds_read=false
|
||||||
|
permissions/subscribed_feeds_write=false
|
||||||
|
permissions/system_alert_window=false
|
||||||
|
permissions/transmit_ir=false
|
||||||
|
permissions/uninstall_shortcut=false
|
||||||
|
permissions/update_device_stats=false
|
||||||
|
permissions/use_credentials=false
|
||||||
|
permissions/use_sip=false
|
||||||
|
permissions/vibrate=false
|
||||||
|
permissions/wake_lock=false
|
||||||
|
permissions/write_apn_settings=false
|
||||||
|
permissions/write_calendar=false
|
||||||
|
permissions/write_call_log=false
|
||||||
|
permissions/write_contacts=false
|
||||||
|
permissions/write_external_storage=false
|
||||||
|
permissions/write_gservices=false
|
||||||
|
permissions/write_history_bookmarks=false
|
||||||
|
permissions/write_profile=false
|
||||||
|
permissions/write_secure_settings=false
|
||||||
|
permissions/write_settings=false
|
||||||
|
permissions/write_sms=false
|
||||||
|
permissions/write_social_stream=false
|
||||||
|
permissions/write_sync_settings=false
|
||||||
|
permissions/write_user_dictionary=false
|
||||||
|
|||||||
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/100.png
Normal file
|
After Width: | Height: | Size: 8.2 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/1024.png
Normal file
|
After Width: | Height: | Size: 172 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/114.png
Normal file
|
After Width: | Height: | Size: 9.3 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/120.png
Normal file
|
After Width: | Height: | Size: 9.8 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/128.png
Normal file
|
After Width: | Height: | Size: 10 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/144.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/152.png
Normal file
|
After Width: | Height: | Size: 13 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/16.png
Normal file
|
After Width: | Height: | Size: 812 B |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/167.png
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/172.png
Normal file
|
After Width: | Height: | Size: 15 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/180.png
Normal file
|
After Width: | Height: | Size: 16 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/196.png
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/20.png
Normal file
|
After Width: | Height: | Size: 1.0 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/216.png
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/256.png
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/29.png
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/32.png
Normal file
|
After Width: | Height: | Size: 1.9 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/40.png
Normal file
|
After Width: | Height: | Size: 2.6 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/48.png
Normal file
|
After Width: | Height: | Size: 3.3 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/50.png
Normal file
|
After Width: | Height: | Size: 3.5 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/512.png
Normal file
|
After Width: | Height: | Size: 62 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/55.png
Normal file
|
After Width: | Height: | Size: 4.0 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/57.png
Normal file
|
After Width: | Height: | Size: 4.3 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/58.png
Normal file
|
After Width: | Height: | Size: 4.3 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/60.png
Normal file
|
After Width: | Height: | Size: 4.4 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/64.png
Normal file
|
After Width: | Height: | Size: 4.8 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/72.png
Normal file
|
After Width: | Height: | Size: 5.6 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/76.png
Normal file
|
After Width: | Height: | Size: 6.0 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/80.png
Normal file
|
After Width: | Height: | Size: 6.3 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/87.png
Normal file
|
After Width: | Height: | Size: 7.0 KiB |
BIN
game/appicons/Assets.xcassets/AppIcon.appiconset/88.png
Normal file
|
After Width: | Height: | Size: 7.1 KiB |
BIN
game/appicons/android/mipmap-hdpi/ic_launcher.png
Normal file
|
After Width: | Height: | Size: 5.4 KiB |
BIN
game/appicons/android/mipmap-mdpi/ic_launcher.png
Normal file
|
After Width: | Height: | Size: 3.2 KiB |
BIN
game/appicons/android/mipmap-xhdpi/ic_launcher.png
Normal file
|
After Width: | Height: | Size: 7.5 KiB |
BIN
game/appicons/android/mipmap-xxhdpi/ic_launcher.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
game/appicons/android/mipmap-xxxhdpi/ic_launcher.png
Normal file
|
After Width: | Height: | Size: 17 KiB |
BIN
game/appicons/appstore.png
Normal file
|
After Width: | Height: | Size: 172 KiB |
BIN
game/appicons/playstore.png
Normal file
|
After Width: | Height: | Size: 61 KiB |
@@ -23,5 +23,5 @@ __meta__ = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
[node name="ESCLocation" type="Position2D" parent="."]
|
[node name="ESCLocation" type="Position2D" parent="."]
|
||||||
position = Vector2( 0, 236.267 )
|
position = Vector2( 0, 236.681 )
|
||||||
script = ExtResource( 2 )
|
script = ExtResource( 2 )
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ __meta__ = {
|
|||||||
[node name="walkable_area" parent="." instance=ExtResource( 1 )]
|
[node name="walkable_area" parent="." instance=ExtResource( 1 )]
|
||||||
position = Vector2( 3.5636, 0 )
|
position = Vector2( 3.5636, 0 )
|
||||||
|
|
||||||
[node name="Hotspots" type="Node2D" parent="."]
|
[node name="Hotspots" type="Node" parent="."]
|
||||||
|
|
||||||
[node name="r_door" parent="Hotspots" instance=ExtResource( 8 )]
|
[node name="r_door" parent="Hotspots" instance=ExtResource( 8 )]
|
||||||
position = Vector2( 1225.9, 217.966 )
|
position = Vector2( 1225.9, 217.966 )
|
||||||
@@ -73,7 +73,7 @@ __meta__ = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
[node name="item2" parent="Hotspots" instance=ExtResource( 9 )]
|
[node name="item2" parent="Hotspots" instance=ExtResource( 9 )]
|
||||||
position = Vector2( 839.614, 146.832 )
|
position = Vector2( 839.614, 147.455 )
|
||||||
global_id = "r1_wall_item2"
|
global_id = "r1_wall_item2"
|
||||||
esc_script = "res://game/rooms/room01/esc/wall_item_popupdialog.esc"
|
esc_script = "res://game/rooms/room01/esc/wall_item_popupdialog.esc"
|
||||||
|
|
||||||
@@ -112,3 +112,5 @@ position = Vector2( 660.468, 381.489 )
|
|||||||
script = ExtResource( 7 )
|
script = ExtResource( 7 )
|
||||||
global_id = "r1_destination_point3"
|
global_id = "r1_destination_point3"
|
||||||
player_orients_on_arrival = false
|
player_orients_on_arrival = false
|
||||||
|
|
||||||
|
[editable path="Hotspots/item"]
|
||||||
|
|||||||
@@ -30,9 +30,8 @@ __meta__ = {
|
|||||||
"_edit_use_anchors_": false
|
"_edit_use_anchors_": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[node name="Hotspots" type="Node2D" parent="."]
|
[node name="r_platform" type="Area2D" parent="."]
|
||||||
|
pause_mode = 1
|
||||||
[node name="r_platform" type="Area2D" parent="Hotspots"]
|
|
||||||
script = ExtResource( 7 )
|
script = ExtResource( 7 )
|
||||||
global_id = "r2_right_platform"
|
global_id = "r2_right_platform"
|
||||||
esc_script = "res://game/rooms/room02/esc/right_platform.esc"
|
esc_script = "res://game/rooms/room02/esc/right_platform.esc"
|
||||||
@@ -42,14 +41,15 @@ default_action = "look"
|
|||||||
dialog_color = Color( 1, 1, 1, 1 )
|
dialog_color = Color( 1, 1, 1, 1 )
|
||||||
animations = null
|
animations = null
|
||||||
|
|
||||||
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="Hotspots/r_platform"]
|
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="r_platform"]
|
||||||
polygon = PoolVector2Array( 870.974, 538.342, 827.536, 353.995, 1181.4, 357.174, 1287.34, 413.325, 1289.46, 545.758 )
|
polygon = PoolVector2Array( 870.974, 538.342, 827.536, 353.995, 1181.4, 357.174, 1287.34, 413.325, 1289.46, 545.758 )
|
||||||
|
|
||||||
[node name="action_pos" type="Position2D" parent="Hotspots/r_platform"]
|
[node name="action_pos" type="Position2D" parent="r_platform"]
|
||||||
position = Vector2( 430.893, 451.052 )
|
position = Vector2( 430.893, 451.052 )
|
||||||
script = ExtResource( 8 )
|
script = ExtResource( 8 )
|
||||||
|
|
||||||
[node name="r_door" type="Area2D" parent="Hotspots"]
|
[node name="r_door" type="Area2D" parent="."]
|
||||||
|
pause_mode = 1
|
||||||
script = ExtResource( 7 )
|
script = ExtResource( 7 )
|
||||||
global_id = "r2_r_exit"
|
global_id = "r2_r_exit"
|
||||||
esc_script = "res://game/rooms/room02/esc/right_exit.esc"
|
esc_script = "res://game/rooms/room02/esc/right_exit.esc"
|
||||||
@@ -59,14 +59,15 @@ default_action = "walk"
|
|||||||
dialog_color = Color( 1, 1, 1, 1 )
|
dialog_color = Color( 1, 1, 1, 1 )
|
||||||
animations = null
|
animations = null
|
||||||
|
|
||||||
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="Hotspots/r_door"]
|
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="r_door"]
|
||||||
polygon = PoolVector2Array( 1177.94, 348.61, 1175.95, 45.3759, 1276.06, 92.0953, 1277.95, 399.407 )
|
polygon = PoolVector2Array( 1177.94, 348.61, 1175.95, 45.3759, 1276.06, 92.0953, 1277.95, 399.407 )
|
||||||
|
|
||||||
[node name="Position2D" type="Position2D" parent="Hotspots/r_door"]
|
[node name="Position2D" type="Position2D" parent="r_door"]
|
||||||
position = Vector2( 1225.47, 353.99 )
|
position = Vector2( 1225.47, 353.99 )
|
||||||
script = ExtResource( 8 )
|
script = ExtResource( 8 )
|
||||||
|
|
||||||
[node name="l_door" type="Area2D" parent="Hotspots"]
|
[node name="l_door" type="Area2D" parent="."]
|
||||||
|
pause_mode = 1
|
||||||
script = ExtResource( 7 )
|
script = ExtResource( 7 )
|
||||||
global_id = "r2_l_exit"
|
global_id = "r2_l_exit"
|
||||||
esc_script = "res://game/rooms/room02/esc/left_exit.esc"
|
esc_script = "res://game/rooms/room02/esc/left_exit.esc"
|
||||||
@@ -76,35 +77,35 @@ default_action = "walk"
|
|||||||
dialog_color = Color( 1, 1, 1, 1 )
|
dialog_color = Color( 1, 1, 1, 1 )
|
||||||
animations = null
|
animations = null
|
||||||
|
|
||||||
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="Hotspots/l_door"]
|
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="l_door"]
|
||||||
polygon = PoolVector2Array( -1.37926, 443.158, 7.96461, 122.796, 84.0504, 77.4118, 88.055, 377.751 )
|
polygon = PoolVector2Array( -1.37926, 443.158, 7.96461, 122.796, 84.0504, 77.4118, 88.055, 377.751 )
|
||||||
|
|
||||||
[node name="Position2D" type="Position2D" parent="Hotspots/l_door"]
|
[node name="Position2D" type="Position2D" parent="l_door"]
|
||||||
position = Vector2( 52.1462, 384.691 )
|
position = Vector2( 52.1462, 384.691 )
|
||||||
script = ExtResource( 8 )
|
script = ExtResource( 8 )
|
||||||
|
|
||||||
[node name="button_right" parent="Hotspots" instance=ExtResource( 5 )]
|
[node name="button_right" parent="." instance=ExtResource( 5 )]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( 958.107, 176.401 )
|
position = Vector2( 958.107, 176.401 )
|
||||||
global_id = "r2_button_right"
|
global_id = "r2_button_right"
|
||||||
esc_script = "res://game/rooms/room02/esc/button.esc"
|
esc_script = "res://game/rooms/room02/esc/button.esc"
|
||||||
dialog_color = Color( 0, 1, 0.109804, 1 )
|
dialog_color = Color( 0, 1, 0.109804, 1 )
|
||||||
animations = null
|
|
||||||
|
|
||||||
[node name="Position2D" type="Position2D" parent="Hotspots/button_right"]
|
[node name="Position2D" type="Position2D" parent="button_right"]
|
||||||
position = Vector2( 29.4302, 195.411 )
|
position = Vector2( 29.4302, 195.411 )
|
||||||
script = ExtResource( 8 )
|
script = ExtResource( 8 )
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
"_editor_description_": ""
|
"_editor_description_": ""
|
||||||
}
|
}
|
||||||
|
|
||||||
[node name="button_left" parent="Hotspots" instance=ExtResource( 5 )]
|
[node name="button_left" parent="." instance=ExtResource( 5 )]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( 288.82, 171.439 )
|
position = Vector2( 288.82, 171.439 )
|
||||||
global_id = "r2_button"
|
global_id = "r2_button"
|
||||||
esc_script = "res://game/rooms/room02/esc/button.esc"
|
esc_script = "res://game/rooms/room02/esc/button.esc"
|
||||||
dialog_color = Color( 0, 1, 0.109804, 1 )
|
dialog_color = Color( 0, 1, 0.109804, 1 )
|
||||||
animations = null
|
|
||||||
|
|
||||||
[node name="Position2D" type="Position2D" parent="Hotspots/button_left"]
|
[node name="Position2D" type="Position2D" parent="button_left"]
|
||||||
position = Vector2( 24.6681, 196.998 )
|
position = Vector2( 24.6681, 196.998 )
|
||||||
script = ExtResource( 8 )
|
script = ExtResource( 8 )
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
|
|||||||
@@ -32,6 +32,7 @@ __meta__ = {
|
|||||||
[node name="Hotspots" type="Node2D" parent="."]
|
[node name="Hotspots" type="Node2D" parent="."]
|
||||||
|
|
||||||
[node name="r_platform" type="Area2D" parent="Hotspots"]
|
[node name="r_platform" type="Area2D" parent="Hotspots"]
|
||||||
|
pause_mode = 1
|
||||||
script = ExtResource( 5 )
|
script = ExtResource( 5 )
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
"_editor_description_": ""
|
"_editor_description_": ""
|
||||||
@@ -55,6 +56,7 @@ __meta__ = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
[node name="r_door" type="Area2D" parent="Hotspots"]
|
[node name="r_door" type="Area2D" parent="Hotspots"]
|
||||||
|
pause_mode = 1
|
||||||
script = ExtResource( 5 )
|
script = ExtResource( 5 )
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
"_editor_description_": ""
|
"_editor_description_": ""
|
||||||
@@ -74,6 +76,7 @@ position = Vector2( 1225.47, 353.99 )
|
|||||||
script = ExtResource( 8 )
|
script = ExtResource( 8 )
|
||||||
|
|
||||||
[node name="l_door" type="Area2D" parent="Hotspots"]
|
[node name="l_door" type="Area2D" parent="Hotspots"]
|
||||||
|
pause_mode = 1
|
||||||
script = ExtResource( 5 )
|
script = ExtResource( 5 )
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
"_editor_description_": ""
|
"_editor_description_": ""
|
||||||
@@ -93,6 +96,7 @@ position = Vector2( 44.1375, 384.691 )
|
|||||||
script = ExtResource( 8 )
|
script = ExtResource( 8 )
|
||||||
|
|
||||||
[node name="button" parent="Hotspots" instance=ExtResource( 7 )]
|
[node name="button" parent="Hotspots" instance=ExtResource( 7 )]
|
||||||
|
pause_mode = 1
|
||||||
global_id = "r3_button"
|
global_id = "r3_button"
|
||||||
esc_script = "res://game/rooms/room03/esc/button.esc"
|
esc_script = "res://game/rooms/room03/esc/button.esc"
|
||||||
animations = null
|
animations = null
|
||||||
|
|||||||
@@ -74,9 +74,10 @@ script = ExtResource( 9 )
|
|||||||
global_id = "r4_player_start"
|
global_id = "r4_player_start"
|
||||||
is_start_location = true
|
is_start_location = true
|
||||||
|
|
||||||
[node name="Hotspots" type="Node2D" parent="."]
|
[node name="Hotspots" type="Node" parent="."]
|
||||||
|
|
||||||
[node name="l_door" type="Area2D" parent="Hotspots"]
|
[node name="l_door" type="Area2D" parent="Hotspots"]
|
||||||
|
pause_mode = 1
|
||||||
script = ExtResource( 5 )
|
script = ExtResource( 5 )
|
||||||
global_id = "l_exit"
|
global_id = "l_exit"
|
||||||
esc_script = "res://game/rooms/room04/esc/left_exit.esc"
|
esc_script = "res://game/rooms/room04/esc/left_exit.esc"
|
||||||
@@ -92,6 +93,7 @@ position = Vector2( 83.6298, 279.703 )
|
|||||||
script = ExtResource( 9 )
|
script = ExtResource( 9 )
|
||||||
|
|
||||||
[node name="r_door" type="Area2D" parent="Hotspots"]
|
[node name="r_door" type="Area2D" parent="Hotspots"]
|
||||||
|
pause_mode = 1
|
||||||
script = ExtResource( 5 )
|
script = ExtResource( 5 )
|
||||||
global_id = "r_exit"
|
global_id = "r_exit"
|
||||||
esc_script = "res://game/rooms/room04/esc/right_exit.esc"
|
esc_script = "res://game/rooms/room04/esc/right_exit.esc"
|
||||||
|
|||||||
@@ -86,9 +86,10 @@ __meta__ = {
|
|||||||
"_editor_description_": ""
|
"_editor_description_": ""
|
||||||
}
|
}
|
||||||
|
|
||||||
[node name="Hotspots" type="Node2D" parent="."]
|
[node name="Hotspots" type="Node" parent="."]
|
||||||
|
|
||||||
[node name="l_door" type="Area2D" parent="Hotspots"]
|
[node name="l_door" type="Area2D" parent="Hotspots"]
|
||||||
|
pause_mode = 1
|
||||||
script = ExtResource( 7 )
|
script = ExtResource( 7 )
|
||||||
global_id = "r5_l_exit"
|
global_id = "r5_l_exit"
|
||||||
esc_script = "res://game/rooms/room05/esc/left_exit.esc"
|
esc_script = "res://game/rooms/room05/esc/left_exit.esc"
|
||||||
@@ -105,6 +106,7 @@ position = Vector2( 37.4521, 392.045 )
|
|||||||
script = ExtResource( 11 )
|
script = ExtResource( 11 )
|
||||||
|
|
||||||
[node name="r_door" type="Area2D" parent="Hotspots"]
|
[node name="r_door" type="Area2D" parent="Hotspots"]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( -1, 0 )
|
position = Vector2( -1, 0 )
|
||||||
script = ExtResource( 7 )
|
script = ExtResource( 7 )
|
||||||
global_id = "r5_r_exit"
|
global_id = "r5_r_exit"
|
||||||
@@ -122,6 +124,7 @@ position = Vector2( 1225.47, 353.99 )
|
|||||||
script = ExtResource( 11 )
|
script = ExtResource( 11 )
|
||||||
|
|
||||||
[node name="item_wall" parent="Hotspots" instance=ExtResource( 5 )]
|
[node name="item_wall" parent="Hotspots" instance=ExtResource( 5 )]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( 2.37842, -254.49 )
|
position = Vector2( 2.37842, -254.49 )
|
||||||
global_id = "r5_wall_item"
|
global_id = "r5_wall_item"
|
||||||
esc_script = "res://game/rooms/room05/esc/wall_item.esc"
|
esc_script = "res://game/rooms/room05/esc/wall_item.esc"
|
||||||
@@ -137,6 +140,7 @@ __meta__ = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
[node name="wrench" parent="Hotspots" instance=ExtResource( 8 )]
|
[node name="wrench" parent="Hotspots" instance=ExtResource( 8 )]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( 257.269, 435.892 )
|
position = Vector2( 257.269, 435.892 )
|
||||||
interaction_direction = 2
|
interaction_direction = 2
|
||||||
animations = null
|
animations = null
|
||||||
@@ -146,10 +150,12 @@ position = Vector2( -77.4207, 0 )
|
|||||||
script = ExtResource( 11 )
|
script = ExtResource( 11 )
|
||||||
|
|
||||||
[node name="pen" parent="Hotspots" instance=ExtResource( 10 )]
|
[node name="pen" parent="Hotspots" instance=ExtResource( 10 )]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( 909.908, 443.451 )
|
position = Vector2( 909.908, 443.451 )
|
||||||
animations = null
|
animations = null
|
||||||
|
|
||||||
[node name="empty_sheet" parent="Hotspots" instance=ExtResource( 9 )]
|
[node name="empty_sheet" parent="Hotspots" instance=ExtResource( 9 )]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( 1059.84, 440.932 )
|
position = Vector2( 1059.84, 440.932 )
|
||||||
animations = null
|
animations = null
|
||||||
|
|
||||||
|
|||||||
@@ -55,9 +55,10 @@ __meta__ = {
|
|||||||
"_editor_description_": ""
|
"_editor_description_": ""
|
||||||
}
|
}
|
||||||
|
|
||||||
[node name="Hotspots" type="Node2D" parent="."]
|
[node name="Hotspots" type="Node" parent="."]
|
||||||
|
|
||||||
[node name="l_exit" parent="Hotspots" instance=ExtResource( 3 )]
|
[node name="l_exit" parent="Hotspots" instance=ExtResource( 3 )]
|
||||||
|
pause_mode = 1
|
||||||
esc_script = "res://game/rooms/room06/esc/left_exit.esc"
|
esc_script = "res://game/rooms/room06/esc/left_exit.esc"
|
||||||
animations = null
|
animations = null
|
||||||
|
|
||||||
@@ -69,6 +70,7 @@ __meta__ = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
[node name="r_door" parent="Hotspots" instance=ExtResource( 5 )]
|
[node name="r_door" parent="Hotspots" instance=ExtResource( 5 )]
|
||||||
|
pause_mode = 1
|
||||||
esc_script = "res://game/rooms/room06/esc/r6_door.esc"
|
esc_script = "res://game/rooms/room06/esc/r6_door.esc"
|
||||||
animations = null
|
animations = null
|
||||||
|
|
||||||
@@ -80,6 +82,7 @@ __meta__ = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
[node name="worker" parent="Hotspots" instance=ExtResource( 7 )]
|
[node name="worker" parent="Hotspots" instance=ExtResource( 7 )]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( 480, 430 )
|
position = Vector2( 480, 430 )
|
||||||
esc_script = "res://game/rooms/room06/esc/worker.esc"
|
esc_script = "res://game/rooms/room06/esc/worker.esc"
|
||||||
interaction_direction = 2
|
interaction_direction = 2
|
||||||
|
|||||||
@@ -131,9 +131,10 @@ position = Vector2( 0, 1403.26 )
|
|||||||
navpoly = SubResource( 2 )
|
navpoly = SubResource( 2 )
|
||||||
enabled = false
|
enabled = false
|
||||||
|
|
||||||
[node name="Hotspots" type="Node2D" parent="."]
|
[node name="Hotspots" type="Node" parent="."]
|
||||||
|
|
||||||
[node name="l_exit" type="Area2D" parent="Hotspots"]
|
[node name="l_exit" type="Area2D" parent="Hotspots"]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( 0, 1409.59 )
|
position = Vector2( 0, 1409.59 )
|
||||||
script = ExtResource( 7 )
|
script = ExtResource( 7 )
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
@@ -154,6 +155,7 @@ position = Vector2( 37.4521, 392.045 )
|
|||||||
script = ExtResource( 8 )
|
script = ExtResource( 8 )
|
||||||
|
|
||||||
[node name="r_exit" type="Area2D" parent="Hotspots"]
|
[node name="r_exit" type="Area2D" parent="Hotspots"]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( 0, 1409.59 )
|
position = Vector2( 0, 1409.59 )
|
||||||
script = ExtResource( 7 )
|
script = ExtResource( 7 )
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
@@ -178,6 +180,7 @@ __meta__ = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
[node name="object_1" type="Area2D" parent="Hotspots"]
|
[node name="object_1" type="Area2D" parent="Hotspots"]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( 358.099, -1195.07 )
|
position = Vector2( 358.099, -1195.07 )
|
||||||
script = ExtResource( 7 )
|
script = ExtResource( 7 )
|
||||||
global_id = "r7_object_1"
|
global_id = "r7_object_1"
|
||||||
@@ -193,6 +196,7 @@ position = Vector2( 460.841, 1515.95 )
|
|||||||
shape = SubResource( 3 )
|
shape = SubResource( 3 )
|
||||||
|
|
||||||
[node name="object2" type="Area2D" parent="Hotspots"]
|
[node name="object2" type="Area2D" parent="Hotspots"]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( 1770.63, 1358.99 )
|
position = Vector2( 1770.63, 1358.99 )
|
||||||
script = ExtResource( 7 )
|
script = ExtResource( 7 )
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
@@ -209,6 +213,7 @@ polygon = PoolVector2Array( -112.101, 14.6226, -103.122, 288.503, 130.35, 286.25
|
|||||||
points = PoolVector2Array( -74.0056, 70.7457, 2.32182, 28.0921, 89.8739, 77.4804, -82.9853, 268.299, 110.078, 261.564 )
|
points = PoolVector2Array( -74.0056, 70.7457, 2.32182, 28.0921, 89.8739, 77.4804, -82.9853, 268.299, 110.078, 261.564 )
|
||||||
|
|
||||||
[node name="lower_stairs" type="Area2D" parent="Hotspots"]
|
[node name="lower_stairs" type="Area2D" parent="Hotspots"]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( 0, 1409.59 )
|
position = Vector2( 0, 1409.59 )
|
||||||
script = ExtResource( 7 )
|
script = ExtResource( 7 )
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
@@ -228,6 +233,7 @@ position = Vector2( 953.985, 315.526 )
|
|||||||
script = ExtResource( 8 )
|
script = ExtResource( 8 )
|
||||||
|
|
||||||
[node name="upper_stairs" type="Area2D" parent="Hotspots"]
|
[node name="upper_stairs" type="Area2D" parent="Hotspots"]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( 1347.64, 473.026 )
|
position = Vector2( 1347.64, 473.026 )
|
||||||
script = ExtResource( 7 )
|
script = ExtResource( 7 )
|
||||||
global_id = "r7_upper_stairs"
|
global_id = "r7_upper_stairs"
|
||||||
@@ -246,6 +252,7 @@ position = Vector2( 27.5337, 131.767 )
|
|||||||
script = ExtResource( 8 )
|
script = ExtResource( 8 )
|
||||||
|
|
||||||
[node name="button_camera_push" parent="Hotspots" instance=ExtResource( 3 )]
|
[node name="button_camera_push" parent="Hotspots" instance=ExtResource( 3 )]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( -167.43, 1463.23 )
|
position = Vector2( -167.43, 1463.23 )
|
||||||
global_id = "r7_button_push"
|
global_id = "r7_button_push"
|
||||||
esc_script = "res://game/rooms/room07/esc/button_push.esc"
|
esc_script = "res://game/rooms/room07/esc/button_push.esc"
|
||||||
@@ -270,6 +277,7 @@ __meta__ = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
[node name="button_camera_shift" parent="Hotspots" instance=ExtResource( 3 )]
|
[node name="button_camera_shift" parent="Hotspots" instance=ExtResource( 3 )]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( 9.393, 1464.03 )
|
position = Vector2( 9.393, 1464.03 )
|
||||||
global_id = "r7_button_shift"
|
global_id = "r7_button_shift"
|
||||||
esc_script = "res://game/rooms/room07/esc/button_shift.esc"
|
esc_script = "res://game/rooms/room07/esc/button_shift.esc"
|
||||||
@@ -291,6 +299,7 @@ __meta__ = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
[node name="button_camera_follow" parent="Hotspots" instance=ExtResource( 3 )]
|
[node name="button_camera_follow" parent="Hotspots" instance=ExtResource( 3 )]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( 172.527, 1464.03 )
|
position = Vector2( 172.527, 1464.03 )
|
||||||
global_id = "r7_button_follow"
|
global_id = "r7_button_follow"
|
||||||
esc_script = "res://game/rooms/room07/esc/button_follow.esc"
|
esc_script = "res://game/rooms/room07/esc/button_follow.esc"
|
||||||
@@ -312,6 +321,7 @@ __meta__ = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
[node name="button_camera_zoom" parent="Hotspots" instance=ExtResource( 3 )]
|
[node name="button_camera_zoom" parent="Hotspots" instance=ExtResource( 3 )]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( 332.527, 1464.03 )
|
position = Vector2( 332.527, 1464.03 )
|
||||||
global_id = "r7_button_zoom"
|
global_id = "r7_button_zoom"
|
||||||
esc_script = "res://game/rooms/room07/esc/button_zoom.esc"
|
esc_script = "res://game/rooms/room07/esc/button_zoom.esc"
|
||||||
@@ -333,6 +343,7 @@ __meta__ = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
[node name="button_camera_set_pos" parent="Hotspots" instance=ExtResource( 3 )]
|
[node name="button_camera_set_pos" parent="Hotspots" instance=ExtResource( 3 )]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( 910.482, 1464.03 )
|
position = Vector2( 910.482, 1464.03 )
|
||||||
global_id = "r7_button_set_pos"
|
global_id = "r7_button_set_pos"
|
||||||
esc_script = "res://game/rooms/room07/esc/button_set_pos.esc"
|
esc_script = "res://game/rooms/room07/esc/button_set_pos.esc"
|
||||||
@@ -354,6 +365,7 @@ __meta__ = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
[node name="trigger_left" type="Area2D" parent="Hotspots"]
|
[node name="trigger_left" type="Area2D" parent="Hotspots"]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( 406, 0 )
|
position = Vector2( 406, 0 )
|
||||||
script = ExtResource( 7 )
|
script = ExtResource( 7 )
|
||||||
global_id = "trigger_left"
|
global_id = "trigger_left"
|
||||||
@@ -384,6 +396,7 @@ points = PoolVector2Array( 718.237, 1756.04, 724.544, 1950.34, 815.761, 1947.51,
|
|||||||
width = 2.0
|
width = 2.0
|
||||||
|
|
||||||
[node name="trigger_right" type="Area2D" parent="Hotspots"]
|
[node name="trigger_right" type="Area2D" parent="Hotspots"]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( 220, 0 )
|
position = Vector2( 220, 0 )
|
||||||
script = ExtResource( 7 )
|
script = ExtResource( 7 )
|
||||||
global_id = "trigger_right"
|
global_id = "trigger_right"
|
||||||
@@ -415,6 +428,7 @@ points = PoolVector2Array( 1089.37, 1757.17, 1097.85, 1949.99, 1187.37, 1947.87,
|
|||||||
width = 2.0
|
width = 2.0
|
||||||
|
|
||||||
[node name="light_left" type="Area2D" parent="Hotspots"]
|
[node name="light_left" type="Area2D" parent="Hotspots"]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( 412, 0 )
|
position = Vector2( 412, 0 )
|
||||||
script = ExtResource( 7 )
|
script = ExtResource( 7 )
|
||||||
global_id = "r7_light_left"
|
global_id = "r7_light_left"
|
||||||
@@ -435,6 +449,7 @@ anims/green = SubResource( 5 )
|
|||||||
anims/red = SubResource( 6 )
|
anims/red = SubResource( 6 )
|
||||||
|
|
||||||
[node name="light_right" type="Area2D" parent="Hotspots"]
|
[node name="light_right" type="Area2D" parent="Hotspots"]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( 613.333, -1.13 )
|
position = Vector2( 613.333, -1.13 )
|
||||||
script = ExtResource( 7 )
|
script = ExtResource( 7 )
|
||||||
global_id = "r7_light_right"
|
global_id = "r7_light_right"
|
||||||
|
|||||||
@@ -124,9 +124,10 @@ __meta__ = {
|
|||||||
"_editor_description_": ""
|
"_editor_description_": ""
|
||||||
}
|
}
|
||||||
|
|
||||||
[node name="Hotspots" type="Node2D" parent="."]
|
[node name="Hotspots" type="Node" parent="."]
|
||||||
|
|
||||||
[node name="l_door" type="Area2D" parent="Hotspots"]
|
[node name="l_door" type="Area2D" parent="Hotspots"]
|
||||||
|
pause_mode = 1
|
||||||
script = ExtResource( 5 )
|
script = ExtResource( 5 )
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
"_editor_description_": ""
|
"_editor_description_": ""
|
||||||
@@ -146,6 +147,7 @@ position = Vector2( 45.47, 383.99 )
|
|||||||
script = ExtResource( 7 )
|
script = ExtResource( 7 )
|
||||||
|
|
||||||
[node name="m_door" type="Area2D" parent="Hotspots"]
|
[node name="m_door" type="Area2D" parent="Hotspots"]
|
||||||
|
pause_mode = 1
|
||||||
script = ExtResource( 5 )
|
script = ExtResource( 5 )
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
"_editor_description_": ""
|
"_editor_description_": ""
|
||||||
@@ -173,6 +175,7 @@ anims/door_close = SubResource( 2 )
|
|||||||
anims/door_open = SubResource( 3 )
|
anims/door_open = SubResource( 3 )
|
||||||
|
|
||||||
[node name="r8_mini_puzzle_button" type="Area2D" parent="Hotspots"]
|
[node name="r8_mini_puzzle_button" type="Area2D" parent="Hotspots"]
|
||||||
|
pause_mode = 1
|
||||||
script = ExtResource( 5 )
|
script = ExtResource( 5 )
|
||||||
global_id = "r8_button_puzzle"
|
global_id = "r8_button_puzzle"
|
||||||
esc_script = "res://game/rooms/room08/esc/button_puzzle.esc"
|
esc_script = "res://game/rooms/room08/esc/button_puzzle.esc"
|
||||||
@@ -206,6 +209,7 @@ __meta__ = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
[node name="r8_reset_puzzle_button" type="Area2D" parent="Hotspots"]
|
[node name="r8_reset_puzzle_button" type="Area2D" parent="Hotspots"]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( -139.185, 0 )
|
position = Vector2( -139.185, 0 )
|
||||||
script = ExtResource( 5 )
|
script = ExtResource( 5 )
|
||||||
global_id = "r8_button_reset_puzzle"
|
global_id = "r8_button_reset_puzzle"
|
||||||
|
|||||||
@@ -64,9 +64,10 @@ __meta__ = {
|
|||||||
"_editor_description_": ""
|
"_editor_description_": ""
|
||||||
}
|
}
|
||||||
|
|
||||||
[node name="Hotspots" type="Node2D" parent="."]
|
[node name="Hotspots" type="Node" parent="."]
|
||||||
|
|
||||||
[node name="l_door" type="Area2D" parent="Hotspots"]
|
[node name="l_door" type="Area2D" parent="Hotspots"]
|
||||||
|
pause_mode = 1
|
||||||
script = ExtResource( 7 )
|
script = ExtResource( 7 )
|
||||||
global_id = "r9_l_exit"
|
global_id = "r9_l_exit"
|
||||||
esc_script = "res://game/rooms/room09/esc/left_exit.esc"
|
esc_script = "res://game/rooms/room09/esc/left_exit.esc"
|
||||||
@@ -84,6 +85,7 @@ position = Vector2( 37.4521, 392.045 )
|
|||||||
script = ExtResource( 12 )
|
script = ExtResource( 12 )
|
||||||
|
|
||||||
[node name="r_door" parent="Hotspots" instance=ExtResource( 9 )]
|
[node name="r_door" parent="Hotspots" instance=ExtResource( 9 )]
|
||||||
|
pause_mode = 1
|
||||||
global_id = "r9_r_exit"
|
global_id = "r9_r_exit"
|
||||||
esc_script = "res://game/rooms/room09/esc/right_exit.esc"
|
esc_script = "res://game/rooms/room09/esc/right_exit.esc"
|
||||||
animations = null
|
animations = null
|
||||||
@@ -93,6 +95,7 @@ position = Vector2( 1198.65, 391.058 )
|
|||||||
script = ExtResource( 12 )
|
script = ExtResource( 12 )
|
||||||
|
|
||||||
[node name="r9_closet_left" parent="Hotspots" instance=ExtResource( 5 )]
|
[node name="r9_closet_left" parent="Hotspots" instance=ExtResource( 5 )]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( 435.233, 64.1518 )
|
position = Vector2( 435.233, 64.1518 )
|
||||||
global_id = "r9_closet_left"
|
global_id = "r9_closet_left"
|
||||||
esc_script = "res://game/rooms/room09/esc/closet_left.esc"
|
esc_script = "res://game/rooms/room09/esc/closet_left.esc"
|
||||||
@@ -109,13 +112,13 @@ position = Vector2( 46.4878, 47.8335 )
|
|||||||
scale = Vector2( 0.5, 0.5 )
|
scale = Vector2( 0.5, 0.5 )
|
||||||
global_id = "r9_bottle_left"
|
global_id = "r9_bottle_left"
|
||||||
dont_apply_terrain_scaling = true
|
dont_apply_terrain_scaling = true
|
||||||
animations = null
|
|
||||||
|
|
||||||
[node name="Position2D" type="Position2D" parent="Hotspots/r9_closet_left/bottle_left"]
|
[node name="Position2D" type="Position2D" parent="Hotspots/r9_closet_left/bottle_left"]
|
||||||
position = Vector2( -26.727, 543.448 )
|
position = Vector2( -26.727, 543.448 )
|
||||||
script = ExtResource( 12 )
|
script = ExtResource( 12 )
|
||||||
|
|
||||||
[node name="r9_closet_middle" parent="Hotspots" instance=ExtResource( 5 )]
|
[node name="r9_closet_middle" parent="Hotspots" instance=ExtResource( 5 )]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( 572.963, 65.2113 )
|
position = Vector2( 572.963, 65.2113 )
|
||||||
global_id = "r9_closet_middle"
|
global_id = "r9_closet_middle"
|
||||||
esc_script = "res://game/rooms/room09/esc/closet_middle.esc"
|
esc_script = "res://game/rooms/room09/esc/closet_middle.esc"
|
||||||
@@ -132,13 +135,13 @@ position = Vector2( 45.9562, 46.774 )
|
|||||||
scale = Vector2( 0.5, 0.5 )
|
scale = Vector2( 0.5, 0.5 )
|
||||||
global_id = "r9_bottle_middle"
|
global_id = "r9_bottle_middle"
|
||||||
dont_apply_terrain_scaling = true
|
dont_apply_terrain_scaling = true
|
||||||
animations = null
|
|
||||||
|
|
||||||
[node name="Position2D" type="Position2D" parent="Hotspots/r9_closet_middle/bottle_middle"]
|
[node name="Position2D" type="Position2D" parent="Hotspots/r9_closet_middle/bottle_middle"]
|
||||||
position = Vector2( -26.727, 543.448 )
|
position = Vector2( -26.727, 543.448 )
|
||||||
script = ExtResource( 12 )
|
script = ExtResource( 12 )
|
||||||
|
|
||||||
[node name="r9_closet_right" parent="Hotspots" instance=ExtResource( 5 )]
|
[node name="r9_closet_right" parent="Hotspots" instance=ExtResource( 5 )]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( 710.693, 66.2707 )
|
position = Vector2( 710.693, 66.2707 )
|
||||||
global_id = "r9_closet_right"
|
global_id = "r9_closet_right"
|
||||||
esc_script = "res://game/rooms/room09/esc/closet_right.esc"
|
esc_script = "res://game/rooms/room09/esc/closet_right.esc"
|
||||||
@@ -155,13 +158,13 @@ position = Vector2( 47.2065, 45.7146 )
|
|||||||
scale = Vector2( 0.5, 0.5 )
|
scale = Vector2( 0.5, 0.5 )
|
||||||
global_id = "r9_bottle_right"
|
global_id = "r9_bottle_right"
|
||||||
dont_apply_terrain_scaling = true
|
dont_apply_terrain_scaling = true
|
||||||
animations = null
|
|
||||||
|
|
||||||
[node name="Position2D" type="Position2D" parent="Hotspots/r9_closet_right/bottle_right"]
|
[node name="Position2D" type="Position2D" parent="Hotspots/r9_closet_right/bottle_right"]
|
||||||
position = Vector2( -26.727, 543.448 )
|
position = Vector2( -26.727, 543.448 )
|
||||||
script = ExtResource( 12 )
|
script = ExtResource( 12 )
|
||||||
|
|
||||||
[node name="button" parent="Hotspots" instance=ExtResource( 8 )]
|
[node name="button" parent="Hotspots" instance=ExtResource( 8 )]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( 240.688, 160.459 )
|
position = Vector2( 240.688, 160.459 )
|
||||||
global_id = "r9_button_reset"
|
global_id = "r9_button_reset"
|
||||||
esc_script = "res://game/rooms/room09/esc/button_reset.esc"
|
esc_script = "res://game/rooms/room09/esc/button_reset.esc"
|
||||||
@@ -183,6 +186,7 @@ __meta__ = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
[node name="stand" type="Area2D" parent="Hotspots"]
|
[node name="stand" type="Area2D" parent="Hotspots"]
|
||||||
|
pause_mode = 1
|
||||||
position = Vector2( -125.617, 0.8909 )
|
position = Vector2( -125.617, 0.8909 )
|
||||||
script = ExtResource( 7 )
|
script = ExtResource( 7 )
|
||||||
global_id = "r9_stand"
|
global_id = "r9_stand"
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
:exit_scene
|
:exit_scene
|
||||||
set_sound_state bg_sound res://game/sfx/sounds/doorOpen_2.ogg false
|
set_sound_state _sound res://game/sfx/sounds/doorOpen_2.ogg false
|
||||||
change_scene "res://game/rooms/room11/room11.tscn"
|
change_scene "res://game/rooms/room11/room11.tscn"
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ __meta__ = {
|
|||||||
"_editor_description_": ""
|
"_editor_description_": ""
|
||||||
}
|
}
|
||||||
|
|
||||||
[node name="Hotspots" type="Node2D" parent="."]
|
[node name="Hotspots" type="Node" parent="."]
|
||||||
|
|
||||||
[node name="l_door" type="Area2D" parent="Hotspots"]
|
[node name="l_door" type="Area2D" parent="Hotspots"]
|
||||||
pause_mode = 1
|
pause_mode = 1
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
:exit_scene
|
:exit_scene
|
||||||
set_sound_state bg_sound res://game/sfx/sounds/doorOpen_2.ogg false
|
set_sound_state _sound res://game/sfx/sounds/doorOpen_2.ogg false
|
||||||
change_scene "res://game/rooms/room10/room10.tscn"
|
change_scene "res://game/rooms/room10/room10.tscn"
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
:exit_scene
|
:exit_scene
|
||||||
set_sound_state bg_sound res://game/sfx/sounds/doorOpen_2.ogg false
|
set_sound_state _sound res://game/sfx/sounds/doorOpen_2.ogg false
|
||||||
transition fade_black out
|
transition fade_black out
|
||||||
change_scene "res://game/rooms/room12/room12.tscn" true
|
change_scene "res://game/rooms/room12/room12.tscn" true
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
|
|
||||||
:setup
|
:setup
|
||||||
set_state bg_music off false
|
set_state _music off false
|
||||||
|
|
||||||
> [eq ESC_LAST_SCENE room10]
|
> [eq ESC_LAST_SCENE room10]
|
||||||
teleport player r11_l_exit
|
teleport player r11_l_exit
|
||||||
|
|||||||
@@ -48,7 +48,7 @@ __meta__ = {
|
|||||||
"_editor_description_": ""
|
"_editor_description_": ""
|
||||||
}
|
}
|
||||||
|
|
||||||
[node name="Hotspots" type="Node2D" parent="."]
|
[node name="Hotspots" type="Node" parent="."]
|
||||||
|
|
||||||
[node name="l_door" type="Area2D" parent="Hotspots"]
|
[node name="l_door" type="Area2D" parent="Hotspots"]
|
||||||
pause_mode = 1
|
pause_mode = 1
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
:exit_scene
|
:exit_scene
|
||||||
set_sound_state bg_sound res://game/sfx/sounds/doorOpen_2.ogg false
|
set_sound_state _sound res://game/sfx/sounds/doorOpen_2.ogg false
|
||||||
change_scene "res://game/rooms/room11/room11.tscn"
|
change_scene "res://game/rooms/room11/room11.tscn"
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ __meta__ = {
|
|||||||
"_editor_description_": ""
|
"_editor_description_": ""
|
||||||
}
|
}
|
||||||
|
|
||||||
[node name="Hotspots" type="Node2D" parent="."]
|
[node name="Hotspots" type="Node" parent="."]
|
||||||
|
|
||||||
[node name="l_door" type="Area2D" parent="Hotspots"]
|
[node name="l_door" type="Area2D" parent="Hotspots"]
|
||||||
pause_mode = 1
|
pause_mode = 1
|
||||||
|
|||||||
@@ -7,8 +7,11 @@ func _ready():
|
|||||||
var rooms_folder = "res://game/rooms/"
|
var rooms_folder = "res://game/rooms/"
|
||||||
var dir = Directory.new()
|
var dir = Directory.new()
|
||||||
var rooms_list: Array = []
|
var rooms_list: Array = []
|
||||||
|
var path = ProjectSettings.globalize_path(rooms_folder)
|
||||||
if dir.open(rooms_folder) == OK:
|
if not OS.has_feature("editor"):
|
||||||
|
path = OS.get_executable_path().get_base_dir().plus_file(path)
|
||||||
|
var tmp = dir.open(path)
|
||||||
|
if tmp == OK:
|
||||||
dir.list_dir_begin(true)
|
dir.list_dir_begin(true)
|
||||||
var file_name = dir.get_next()
|
var file_name = dir.get_next()
|
||||||
while file_name != "":
|
while file_name != "":
|
||||||
@@ -23,7 +26,7 @@ func _ready():
|
|||||||
room + ".tscn")
|
room + ".tscn")
|
||||||
|
|
||||||
else:
|
else:
|
||||||
escoria.logger.report_errors("room_select.gd:_ready()",
|
escoria.logger.report_warnings("room_select.gd:_ready()",
|
||||||
["A problem occurred while opening rooms folder."])
|
["A problem occurred while opening rooms folder."])
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ __meta__ = {
|
|||||||
[node name="option" type="OptionButton" parent="."]
|
[node name="option" type="OptionButton" parent="."]
|
||||||
margin_right = 29.0
|
margin_right = 29.0
|
||||||
margin_bottom = 40.0
|
margin_bottom = 40.0
|
||||||
|
size_flags_horizontal = 3
|
||||||
script = ExtResource( 1 )
|
script = ExtResource( 1 )
|
||||||
|
|
||||||
[node name="button" type="Button" parent="."]
|
[node name="button" type="Button" parent="."]
|
||||||
|
|||||||
@@ -631,7 +631,7 @@ search_in_file_extensions=PoolStringArray( "gd", "shader", "esc" )
|
|||||||
|
|
||||||
[editor_plugins]
|
[editor_plugins]
|
||||||
|
|
||||||
enabled=PoolStringArray( "res://addons/escoria-core/plugin.cfg", "res://addons/escoria-ui-9verbs/plugin.cfg" )
|
enabled=PoolStringArray( "res://addons/escoria-core/plugin.cfg", "res://addons/escoria-ui-simplemouse/plugin.cfg" )
|
||||||
|
|
||||||
[escoria]
|
[escoria]
|
||||||
|
|
||||||
@@ -640,7 +640,7 @@ main/force_quit=true
|
|||||||
debug/terminate_on_warnings=false
|
debug/terminate_on_warnings=false
|
||||||
debug/terminate_on_errors=true
|
debug/terminate_on_errors=true
|
||||||
debug/development_lang="en"
|
debug/development_lang="en"
|
||||||
ui/tooltip_follows_mouse=false
|
ui/tooltip_follows_mouse=true
|
||||||
ui/dialogs_folder="res://game/ui/commons/dialogs"
|
ui/dialogs_folder="res://game/ui/commons/dialogs"
|
||||||
ui/default_dialog_scene="res://game/ui/commons/dialogs/dialog_label.tscn"
|
ui/default_dialog_scene="res://game/ui/commons/dialogs/dialog_label.tscn"
|
||||||
ui/main_menu_scene="res://game/ui/commons/main_menu/main_menu.tscn"
|
ui/main_menu_scene="res://game/ui/commons/main_menu/main_menu.tscn"
|
||||||
@@ -662,7 +662,7 @@ main/savegames_path="res://saves/"
|
|||||||
main/settings_path="user://"
|
main/settings_path="user://"
|
||||||
main/escoria_version=""
|
main/escoria_version=""
|
||||||
sound/speech_enabled=1
|
sound/speech_enabled=1
|
||||||
ui/game_scene="res://addons/escoria-ui-9verbs/game.tscn"
|
ui/game_scene="res://addons/escoria-ui-simplemouse/game.tscn"
|
||||||
ui/dialogs_chooser="res://game/ui/commons/dialogs/text_dialog_choice.tscn"
|
ui/dialogs_chooser="res://game/ui/commons/dialogs/text_dialog_choice.tscn"
|
||||||
sound/speech_folder="res://game/speech"
|
sound/speech_folder="res://game/speech"
|
||||||
sound/speech_extension="ogg"
|
sound/speech_extension="ogg"
|
||||||
|
|||||||