diff --git a/addons/escoria-ui-return-monkey-island-dialog-simple/assets/dialog_box.svg b/addons/escoria-ui-return-monkey-island-dialog-simple/assets/dialog_box.svg new file mode 100644 index 00000000..8c6eac6f --- /dev/null +++ b/addons/escoria-ui-return-monkey-island-dialog-simple/assets/dialog_box.svg @@ -0,0 +1,47 @@ + + + + + + + + + + diff --git a/addons/escoria-ui-return-monkey-island-dialog-simple/dialog_tip.tscn b/addons/escoria-ui-return-monkey-island-dialog-simple/dialog_tip.tscn index c9823d7b..f7545dc1 100644 --- a/addons/escoria-ui-return-monkey-island-dialog-simple/dialog_tip.tscn +++ b/addons/escoria-ui-return-monkey-island-dialog-simple/dialog_tip.tscn @@ -3,9 +3,9 @@ [ext_resource type="Script" uid="uid://d1pg38kdwg07d" path="res://addons/escoria-ui-return-monkey-island-dialog-simple/dialog_tip.gd" id="2"] [node name="Label" type="Label"] -offset_left = 1057.0 -offset_top = 533.0 -offset_right = 1259.0 -offset_bottom = 551.0 +offset_left = 1000.0 +offset_top = 500.0 +offset_right = 1237.0 +offset_bottom = 523.0 text = "Haz click para acelerar el texto" script = ExtResource("2") diff --git a/addons/escoria-ui-return-monkey-island-dialog-simple/theme.tres b/addons/escoria-ui-return-monkey-island-dialog-simple/theme.tres index 20519d3a..452d6317 100644 --- a/addons/escoria-ui-return-monkey-island-dialog-simple/theme.tres +++ b/addons/escoria-ui-return-monkey-island-dialog-simple/theme.tres @@ -1,4 +1,6 @@ -[gd_resource type="Theme" load_steps=4 format=3 uid="uid://dlo07cyfhpilq"] +[gd_resource type="Theme" load_steps=5 format=3 uid="uid://dlo07cyfhpilq"] + +[ext_resource type="FontFile" uid="uid://vqqxktsw0f34" path="res://addons/escoria-ui-return-monkey-island/fonts/determination.ttf" id="1_yc5i3"] [sub_resource type="StyleBoxFlat" id="1"] content_margin_left = 4.0 @@ -19,6 +21,7 @@ corner_radius_bottom_left = 5 [sub_resource type="StyleBoxFlat" id="3"] bg_color = Color(0, 0, 0, 0.388235) +draw_center = false corner_radius_top_left = 5 corner_radius_top_right = 5 corner_radius_bottom_right = 5 @@ -33,7 +36,9 @@ Label/colors/font_color = Color(1, 1, 1, 1) Label/colors/font_color_shadow = Color(0, 0, 0, 0) Label/colors/font_outline_modulate = Color(1, 0, 0, 1) Label/colors/label_box_bg = Color(0, 0, 0, 0.745098) +Label/fonts/font = ExtResource("1_yc5i3") Label/styles/normal = SubResource("1") RichTextLabel/font_sizes/font_size = 20 +RichTextLabel/fonts/normal_font = ExtResource("1_yc5i3") RichTextLabel/styles/focus = SubResource("2") RichTextLabel/styles/normal = SubResource("3") diff --git a/addons/escoria-ui-return-monkey-island-dialog-simple/theme/dialog.tres b/addons/escoria-ui-return-monkey-island-dialog-simple/theme/dialog.tres index 054cfb2b..e6c42833 100644 --- a/addons/escoria-ui-return-monkey-island-dialog-simple/theme/dialog.tres +++ b/addons/escoria-ui-return-monkey-island-dialog-simple/theme/dialog.tres @@ -1,4 +1,4 @@ -[gd_resource type="Theme" load_steps=4 format=3 uid="uid://dvwfrnya2nhxu"] +[gd_resource type="Theme" load_steps=3 format=3 uid="uid://dvwfrnya2nhxu"] [sub_resource type="StyleBoxFlat" id="1"] content_margin_left = 4.0 @@ -10,29 +10,17 @@ corner_radius_top_right = 5 corner_radius_bottom_right = 5 expand_margin_left = 19.0 -[sub_resource type="StyleBoxFlat" id="2"] -bg_color = Color(0, 0, 0, 0.509804) +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_yu8vd"] +bg_color = Color(0, 0, 0, 0.607843) corner_radius_top_left = 5 corner_radius_top_right = 5 corner_radius_bottom_right = 5 corner_radius_bottom_left = 5 -[sub_resource type="StyleBoxFlat" id="3"] -bg_color = Color(0, 0, 0, 0.388235) -corner_radius_top_left = 5 -corner_radius_top_right = 5 -corner_radius_bottom_right = 5 -corner_radius_bottom_left = 5 -expand_margin_left = 5.0 -expand_margin_top = 5.0 -expand_margin_right = 5.0 -expand_margin_bottom = 5.0 - [resource] Label/colors/font_color = Color(1, 1, 1, 1) Label/colors/font_color_shadow = Color(0, 0, 0, 0) Label/colors/font_outline_modulate = Color(1, 0, 0, 1) Label/colors/label_box_bg = Color(0, 0, 0, 0.745098) Label/styles/normal = SubResource("1") -RichTextLabel/styles/focus = SubResource("2") -RichTextLabel/styles/normal = SubResource("3") +Panel/styles/panel = SubResource("StyleBoxFlat_yu8vd") diff --git a/addons/escoria-ui-return-monkey-island-dialog-simple/types/avatar.gd.uid b/addons/escoria-ui-return-monkey-island-dialog-simple/types/avatar.gd.uid index a2aa2f2a..8b66ed81 100644 --- a/addons/escoria-ui-return-monkey-island-dialog-simple/types/avatar.gd.uid +++ b/addons/escoria-ui-return-monkey-island-dialog-simple/types/avatar.gd.uid @@ -1 +1 @@ -uid://yv6l5iarc1ki +uid://cfkvypxfuu2mt diff --git a/addons/escoria-ui-return-monkey-island-dialog-simple/types/floating.gd b/addons/escoria-ui-return-monkey-island-dialog-simple/types/floating.gd index 4c93d934..e222cdec 100644 --- a/addons/escoria-ui-return-monkey-island-dialog-simple/types/floating.gd +++ b/addons/escoria-ui-return-monkey-island-dialog-simple/types/floating.gd @@ -1,5 +1,5 @@ -# A dialog UI using a label above the head of the character -extends RichTextLabel +# A dialog GUI showing a dialog box and character portraits +extends Window # Signal emitted when text has been said @@ -22,7 +22,6 @@ var _reading_speed_in_wpm: int # Used to extract words from lines of text. var _word_regex: RegEx = RegEx.new() - # Current character speaking, to keep track of reference for animation purposes var _current_character @@ -33,18 +32,23 @@ var _is_speeding_up: bool = false var _current_line: String -# Tween node for text animation -@onready var tween: Tween3 = Tween3.new(self) - # The node showing the text -@onready var text_node: RichTextLabel = self +@onready var text_node = $TextureRect/MarginContainer/HSplitContainer/text + +# The tween node for text animations +@onready var tween: Tween3 = Tween3.new(self) # Whether the dialog manager is paused @onready var is_paused: bool = true var dialog_location_node = null -# Enable bbcode and catch the signal when a tween completed +@export var centered_text: bool + +var X_POSITION_OFFSET: int = -10 +var Y_POSITION_OFFSET: int = -20 + +# Build up the UI func _ready(): _text_time_per_character = ProjectSettings.get_setting( RTMISimpleDialogSettings.TEXT_TIME_PER_LETTER_MS @@ -96,7 +100,7 @@ func _ready(): _word_regex.compile("\\S+") - bbcode_enabled = true + text_node.bbcode_enabled = true tween.finished.connect(_on_dialog_line_typed.bind("", "")) @@ -108,18 +112,6 @@ func _ready(): _current_line = "" -func _process(delta): - if _current_character.is_inside_tree() and \ - is_instance_valid(dialog_location_node): - # Position the RichTextLabel on the character's dialog position, if any. - position = dialog_location_node.get_global_transform_with_canvas().origin - position.x -= size.x / 2 - - _account_for_margin_x() - - _account_for_margin_y() - - # Make a character say something # # #### Parameters @@ -154,9 +146,10 @@ func say(character: String, line: String) : var text_color = _current_character.dialog_color var text_color_html = text_color.to_html(false) - text_node.text = "[center][color=#" + text_color_html + "]" \ - .format([text_color_html]) + tr(line) + "[/color][center]" - + text_node.text = "[color=#" + text_color_html + "]" \ + .format([text_color_html]) + tr(line) + "[/color]" + if centered_text: + text_node.text = "[center]" + text_node.text + "[/center]" if _current_character.is_inside_tree() and \ is_instance_valid(dialog_location_node): position = dialog_location_node.get_global_transform_with_canvas().origin @@ -184,14 +177,12 @@ func say(character: String, line: String) : set_process(true) -# Called by the dialog player when user wants to finish dialogue fast. +# Called by the dialog player when the func speedup(): if not _is_speeding_up: _is_speeding_up = true var time_show_full_text = _fast_text_time_per_character / 1000 * len(_current_line) - tween.reset() - tween.interpolate_property(text_node, "visible_ratio", text_node.visible_ratio, 1.0, time_show_full_text, Tween.TRANS_LINEAR, Tween.EASE_IN_OUT) @@ -201,7 +192,6 @@ func speedup(): # Called by the dialog player when user wants to finish dialogue immediately. func finish(): tween.reset() - tween.interpolate_property(text_node, "visible_ratio", text_node.visible_ratio, 1.0, 0.0) tween.play() @@ -209,8 +199,11 @@ func finish(): # To be called if voice audio has finished. func voice_audio_finished(): - _stop_character_talking() + _stop_character_talking() + # Handler to deal with this node being removed +func _on_tree_exiting() -> void: + _stop_character_talking() # The dialog line was printed, start the waiting time and then finish # the dialog @@ -233,8 +226,11 @@ func _get_number_of_words() -> int: return _word_regex.search_all(text_node.get_text()).size() + # Ending the dialog func _on_dialog_finished(): + $Timer.stop() + # Only trigger to clear the text if we aren't limiting the clearing trigger to a click. if not ESCProjectSettingsManager.get_setting(RTMISimpleDialogSettings.CLEAR_TEXT_BY_CLICK_ONLY): say_finished.emit() @@ -244,28 +240,27 @@ func _on_dialog_finished(): func _on_paused(): if tween.is_running(): is_paused = true - visible = false tween.stop() # Handler managing resume notification from Escoria func _on_resumed(): if not tween.is_running(): + # We can't rely on "show()" to make an invisible popup reappear, as per the docs for + # CanvasItem. Instead, we need to use one of the popup_* methods. + if is_inside_tree(): + popup_centered() + is_paused = false - visible = true tween.resume() - - - # Handler to deal with this node being removed -func _on_tree_exiting() -> void: - _stop_character_talking() - - + func _stop_character_talking(): # Make the speaking item animation stop talking, if it is still alive if is_instance_valid(_current_character) and _current_character != null: _current_character.stop_talking() +func _on_tree_exited(): + queue_free() func _account_for_margin_x() -> void: if position.x < 0: @@ -275,7 +270,7 @@ func _account_for_margin_x() -> void: ProjectSettings.get("display/window/size/viewport_width") if screen_margin_x > 0: - position.x -= screen_margin_x + position.x -= screen_margin_x + X_POSITION_OFFSET func _account_for_margin_y() -> void: @@ -286,4 +281,4 @@ func _account_for_margin_y() -> void: ProjectSettings.get("display/window/size/viewport_height") if screen_margin_y > 0: - position.y -= screen_margin_y + position.y -= screen_margin_y + Y_POSITION_OFFSET diff --git a/addons/escoria-ui-return-monkey-island-dialog-simple/types/floating.tscn b/addons/escoria-ui-return-monkey-island-dialog-simple/types/floating.tscn index f351a93a..603cfc00 100644 --- a/addons/escoria-ui-return-monkey-island-dialog-simple/types/floating.tscn +++ b/addons/escoria-ui-return-monkey-island-dialog-simple/types/floating.tscn @@ -1,18 +1,47 @@ -[gd_scene load_steps=3 format=3 uid="uid://x2crry528c4o"] +[gd_scene load_steps=4 format=3 uid="uid://cp75ofyuetxux"] -[ext_resource type="Script" uid="uid://d12nyx86nlc6h" path="res://addons/escoria-ui-return-monkey-island-dialog-simple/types/floating.gd" id="1"] -[ext_resource type="Theme" uid="uid://dvwfrnya2nhxu" path="res://addons/escoria-ui-return-monkey-island-dialog-simple/theme/dialog.tres" id="2"] +[ext_resource type="Script" uid="uid://bupgxuw37bw5t" path="res://addons/escoria-ui-return-monkey-island-dialog-simple/types/floating.gd" id="1"] +[ext_resource type="Theme" uid="uid://dlo07cyfhpilq" path="res://addons/escoria-ui-return-monkey-island-dialog-simple/theme.tres" id="2_f1tsx"] +[ext_resource type="Texture2D" uid="uid://cxdch2m3xopvy" path="res://addons/escoria-ui-return-monkey-island-dialog-simple/assets/dialog_box.svg" id="2_x8ib0"] -[node name="dialog_label" type="RichTextLabel"] -offset_right = 672.0 -offset_bottom = 97.0 -theme = ExtResource("2") -bbcode_enabled = true -text = "[center]Here be some text.[/center]" -text = "Here be some text." -fit_content_height = true +[node name="dialog_box" type="Window"] +transparent_bg = true +position = Vector2i(0, 36) +size = Vector2i(600, 150) +unresizable = true +borderless = true +transparent = true +popup_window = true script = ExtResource("1") -[node name="Tween" type="Tween" parent="."] - [node name="Timer" type="Timer" parent="."] + +[node name="TextureRect" type="TextureRect" parent="."] +offset_right = 597.0 +offset_bottom = 149.0 +texture = ExtResource("2_x8ib0") + +[node name="MarginContainer" type="MarginContainer" parent="TextureRect"] +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +theme_override_constants/margin_left = 20 +theme_override_constants/margin_top = 20 +theme_override_constants/margin_right = 20 +theme_override_constants/margin_bottom = 20 + +[node name="HSplitContainer" type="HSplitContainer" parent="TextureRect/MarginContainer"] +layout_mode = 2 +theme_override_constants/separation = 35 +dragger_visibility = 1 + +[node name="text" type="RichTextLabel" parent="TextureRect/MarginContainer/HSplitContainer"] +layout_mode = 2 +size_flags_horizontal = 3 +theme = ExtResource("2_f1tsx") +bbcode_enabled = true +text = "Here be some text" +justification_flags = 171 diff --git a/addons/escoria-ui-return-monkey-island/fonts/caslonantique.tres b/addons/escoria-ui-return-monkey-island/fonts/caslonantique.tres index e4dd0120..fc56b5d7 100644 --- a/addons/escoria-ui-return-monkey-island/fonts/caslonantique.tres +++ b/addons/escoria-ui-return-monkey-island/fonts/caslonantique.tres @@ -1,6 +1,6 @@ [gd_resource type="FontFile" load_steps=2 format=3 uid="uid://cne31d6e0513y"] -[ext_resource type="FontFile" uid="uid://v5cnd4d0uvv3" path="res://addons/escoria-ui-return-monkey-island/fonts/caslonantique.ttf" id="1"] +[ext_resource type="FontFile" uid="uid://dbuthr0652qv7" path="res://addons/escoria-ui-return-monkey-island/fonts/caslonantique.ttf" id="1"] [resource] fallbacks = Array[Font]([ExtResource("1")]) diff --git a/addons/escoria-ui-return-monkey-island/fonts/determination.ttf b/addons/escoria-ui-return-monkey-island/fonts/determination.ttf new file mode 100644 index 00000000..69e732bb Binary files /dev/null and b/addons/escoria-ui-return-monkey-island/fonts/determination.ttf differ diff --git a/addons/escoria-ui-return-monkey-island/game.gd b/addons/escoria-ui-return-monkey-island/game.gd index 2c44ef5d..dd8c527a 100644 --- a/addons/escoria-ui-return-monkey-island/game.gd +++ b/addons/escoria-ui-return-monkey-island/game.gd @@ -78,23 +78,25 @@ var _is_gamepad_connected = false # Tracks the mouse's current position onscreen. var _current_mouse_pos = Vector2.ZERO -# A reference to the node handling tooltip2 -var tooltip2_node: Object var last_target: Object -var video_player: Object +@export var inventory_ui: ESCInventory +@export var rtmi_tooltip_node: RTMIRichTooltip +@export var dev_tools_node: Control func _init(): gymkhana.tooltip_manager = ESCTootltipManager.new() gymkhana.item_count_manager = ESCItemCountManager.new() + escoria.di = RTMIDependencyInjector.new() func _ready(): + tooltip_node = rtmi_tooltip_node # We need a slightly modified version of Action Manager to combine items with different actions. escoria.action_manager = ESCActionManagerMonkey.new() #escoria.di = RTMIDependencyInjector.new() - if $tooltip_layer/tooltip.connect("tooltip_size_updated", Callable(self, "update_tooltip_following_mouse_position").bind(tooltip_node)) != 0: + if tooltip_node.connect("tooltip_size_updated", Callable(self, "update_tooltip_following_mouse_position").bind(tooltip_node)) != 0: escoria.logger.error(self, "Error connecting tooltip_size_updated with update_tooltip_following_mouse_position") # We get current day and month var time = Time.get_datetime_dict_from_system() @@ -108,7 +110,7 @@ func _ready(): func _enter_tree(): - var room_selector_parent = $CanvasLayer/ui/menu_button/HBoxContainer + var room_selector_parent = dev_tools_node if ESCProjectSettingsManager.get_setting(ESCProjectSettingsManager.ENABLE_ROOM_SELECTOR) \ and room_selector_parent.get_node_or_null("room_select") == null: @@ -143,7 +145,7 @@ func _exit_tree(): func toggle_room_selector_visibility(): - var room_selector_parent = $CanvasLayer/ui/menu_button/VBoxContainer + var room_selector_parent = dev_tools_node var room_selector = room_selector_parent.get_node_or_null("room_select") if(room_selector != null): room_selector.visible = !room_selector.visible @@ -156,10 +158,8 @@ func _input(event: InputEvent) -> void: toggle_room_selector_visibility() if event is InputEventMouseMotion: - #_current_mouse_pos = get_global_mouse_position() # Escoria core _current_mouse_pos = get_viewport().get_mouse_position() update_tooltip_following_mouse_position(tooltip_node) - update_tooltip_following_mouse_position(tooltip2_node) @@ -274,8 +274,8 @@ func left_double_click_on_bg(position: Vector2) -> void: func element_focused(element_id: String) -> void: var target_obj = escoria.object_manager.get_object(element_id).node if target_obj is ESCItem or ESCItemWithTooltip: - $tooltip_layer/tooltip.set_target(target_obj.tooltip_name) - $tooltip_layer/tooltip.set_target_object(target_obj) + tooltip_node.set_target(target_obj.tooltip_name) + tooltip_node.set_target_object(target_obj) if is_instance_valid(last_target): last_target.get_component('outline').highlight(false) @@ -287,8 +287,8 @@ func element_focused(element_id: String) -> void: func element_unfocused() -> void: - $tooltip_layer/tooltip.set_target("") - $tooltip_layer/tooltip.set_target_object(null) + tooltip_node.set_target("") + tooltip_node.set_target_object(null) if(last_target != null): last_target.get_component('outline').highlight(false) last_target = null @@ -358,34 +358,37 @@ func right_click_on_inventory_item(inventory_item_global_id: String, event: Inpu + func inventory_item_focused(inventory_item_global_id: String) -> void: var target_obj = escoria.object_manager.get_object(inventory_item_global_id).node if target_obj is ESCItemWithTooltip: - #$tooltip_layer/tooltip.set_target(target_obj.action3_text) - $tooltip_layer/tooltip.set_target_object(target_obj) + tooltip_node.set_target_object(target_obj) + func inventory_item_unfocused() -> void: element_unfocused() func open_inventory(): - $CanvasLayer/ui/HBoxContainer/inventory_ui.show_inventory() + pass func close_inventory(): - $CanvasLayer/ui/HBoxContainer/inventory_ui.hide_inventory() + pass func hide_ui(): - $CanvasLayer/ui/HBoxContainer/inventory_ui.hide_ui() - $CanvasLayer/ui/HBoxContainer/inventory_ui.hide() - $CanvasLayer/ui.hide() - $dialog_layer.hide() + #inventory_ui.hide_ui() + #inventory_ui.hide() + #$game_layer.hide() + $game_layer.visible = false + #$dialog_layer.hide() func show_ui(): if escoria.room_manager.GLOBAL_CURRENT_SCENE != "turno_cocina_creditos": - $CanvasLayer/ui/HBoxContainer/inventory_ui.show() - $CanvasLayer/ui/HBoxContainer/inventory_ui.show_ui() - $CanvasLayer/ui.show() - $dialog_layer.show() + #inventory_ui.show() + #inventory_ui.show_ui() + #$ui_layer/game_ui.show() + #$dialog_layer.show() + $game_layer.show() func hide_main_menu(): @@ -448,7 +451,7 @@ func get_custom_data() -> Dictionary: # Update the tooltip position -func update_tooltip_following_mouse_position(tooltip: ESCRichTooltip): +func update_tooltip_following_mouse_position(tooltip: RTMIRichTooltip): if tooltip == null: return if(escoria.action_manager.current_tool == null): @@ -459,7 +462,7 @@ func update_tooltip_following_mouse_position(tooltip: ESCRichTooltip): set_tooltip_position("tooltip2", tooltip, tooltip.get_tooltip2_size(), tooltip.offset_from_cursor_action4) -func set_tooltip_position(nodeId: String, tooltip: ESCRichTooltip, size: Vector2, offset: Vector2): +func set_tooltip_position(nodeId: String, tooltip: RTMIRichTooltip, size: Vector2, offset: Vector2): var mouse_position = calculateMousePosition(size) var corrected_position = correctPosition(tooltip, size, mouse_position, offset) tooltip.get_node(nodeId).position = corrected_position @@ -474,7 +477,7 @@ func calculateMousePosition(size: Vector2): #return _current_mouse_pos - size return _current_mouse_pos -func correctPosition(tooltip: ESCRichTooltip, size: Vector2, mouse_position: Vector2, offset: Vector2): +func correctPosition(tooltip: RTMIRichTooltip, size: Vector2, mouse_position: Vector2, offset: Vector2): # clamp TOP if tooltip.tooltip_distance_to_edge_top(_current_mouse_pos) <= mouse_tooltip_margin: @@ -502,26 +505,26 @@ func _on_event_done(return_code: int, _event_name: String): Input.set_custom_mouse_cursor(null) # Show tooltips, they were hidden while performing action - $tooltip_layer/tooltip.show() + tooltip_node.show() func _on_MenuButton_pressed() -> void: pause_game() func get_video_player() -> Node: - return $CanvasLayer/video_player + return $menu_layer/video_player func play_video(video_file: String) -> void: hide_ui() clear_tooltip() - $CanvasLayer/video_player.visible = true - $CanvasLayer/video_player.play(video_file) + get_video_player().visible = true + get_video_player().play(video_file) # Clears the tooltip content (if an ESCTooltip node exists in UI) # MODIFIED FOR RTMIUI func clear_tooltip(): if tooltip_node != null: - (tooltip_node as ESCRichTooltip).clear() + (tooltip_node as RTMIRichTooltip).clear() func play_pause_music(): @@ -557,4 +560,4 @@ func _on_MusicButton_pressed(): func _on_translation_button_pressed() -> void: - $CanvasLayer/language_selector.show() + $menu_layer/language_selector.show() diff --git a/addons/escoria-ui-return-monkey-island/game.tscn b/addons/escoria-ui-return-monkey-island/game.tscn index 4e572902..4c6c4cbe 100644 --- a/addons/escoria-ui-return-monkey-island/game.tscn +++ b/addons/escoria-ui-return-monkey-island/game.tscn @@ -3,7 +3,7 @@ [ext_resource type="PackedScene" uid="uid://bl50queikqfjc" path="res://addons/escoria-ui-return-monkey-island/inventory/inventory_ui.tscn" id="1"] [ext_resource type="Script" uid="uid://dfl7khtlretr7" path="res://addons/escoria-core/game/scenes/dialogs/esc_dialog_player.gd" id="2"] [ext_resource type="PackedScene" uid="uid://dmw5gicuenj53" path="res://addons/escoria-core/game/scenes/camera_player/camera.tscn" id="3"] -[ext_resource type="PackedScene" uid="uid://d2kogebvoxy51" path="res://addons/escoria-ui-return-monkey-island/esc_rich_tooltip.tscn" id="4"] +[ext_resource type="PackedScene" uid="uid://d2kogebvoxy51" path="res://addons/escoria-ui-return-monkey-island/rtmi_rich_tooltip.tscn" id="4"] [ext_resource type="Script" uid="uid://lkc4isk3g0rj" path="res://addons/escoria-ui-return-monkey-island/game.gd" id="5"] [ext_resource type="Texture2D" uid="uid://ce2rx8nm1s6gh" path="res://addons/escoria-ui-return-monkey-island/icons/music-double-note.svg" id="6"] [ext_resource type="Texture2D" uid="uid://d0ta8viehhtdj" path="res://addons/escoria-ui-return-monkey-island/icons/translation.svg" id="6_yfacq"] @@ -20,20 +20,32 @@ [ext_resource type="Texture2D" uid="uid://e2xk0aimdte" path="res://addons/escoria-ui-return-monkey-island/icons/music-double-note-disabled.svg" id="16"] [ext_resource type="PackedScene" uid="uid://c0066wpl3qky4" path="res://addons/escoria-ui-return-monkey-island/menus/language_selector/language_selector.tscn" id="19_we0hb"] -[node name="game" type="Node2D"] +[node name="game" type="Node2D" node_paths=PackedStringArray("inventory_ui", "rtmi_tooltip_node")] script = ExtResource("5") -main_menu = NodePath("CanvasLayer/main_menu") -pause_menu = NodePath("CanvasLayer/pause_menu") +inventory_ui = NodePath("game_layer/ui_layer/Inventory") +rtmi_tooltip_node = NodePath("game_layer/tooltip_layer/tooltip") +main_menu = NodePath("menu_layer/main_menu") +pause_menu = NodePath("menu_layer/pause_menu") mouse_tooltip_margin = 70.0 editor_debug_mode = 1 -ui_parent_control_node = NodePath("CanvasLayer/ui") [node name="camera" parent="." instance=ExtResource("3")] -[node name="tooltip_layer" type="CanvasLayer" parent="."] +[node name="game_layer" type="CanvasLayer" parent="."] + +[node name="dialog_layer" type="CanvasLayer" parent="game_layer"] +layer = 3 + +[node name="ESCDialogsPlayer" type="Control" parent="game_layer/dialog_layer"] +layout_mode = 3 +anchors_preset = 0 +theme = ExtResource("9") +script = ExtResource("2") + +[node name="tooltip_layer" type="CanvasLayer" parent="game_layer"] layer = 2 -[node name="tooltip" parent="tooltip_layer" instance=ExtResource("4")] +[node name="tooltip" parent="game_layer/tooltip_layer" instance=ExtResource("4")] z_index = 10 color = Color(1, 1, 1, 1) offset_from_cursor_action1 = Vector2(0, 60) @@ -42,50 +54,34 @@ offset_from_cursor_action3 = Vector2(0, 60) offset_from_cursor_action4 = Vector2(0, -20) debug_mode = true -[node name="dialog_layer" type="CanvasLayer" parent="."] -layer = 3 +[node name="ui_layer" type="CanvasLayer" parent="game_layer"] -[node name="ESCDialogsPlayer" type="Control" parent="dialog_layer"] -layout_mode = 3 -anchors_preset = 0 -theme = ExtResource("9") -script = ExtResource("2") +[node name="DevTools" type="PanelContainer" parent="game_layer/ui_layer"] +offset_top = 622.0 +offset_right = 40.0 +offset_bottom = 662.0 -[node name="CanvasLayer" type="CanvasLayer" parent="."] - -[node name="ui" type="Control" parent="CanvasLayer"] -layout_mode = 3 -anchor_top = 0.9 +[node name="Tools" type="PanelContainer" parent="game_layer/ui_layer"] +anchors_preset = 1 +anchor_left = 1.0 anchor_right = 1.0 -anchor_bottom = 1.0 -offset_top = -26.0 -size_flags_horizontal = 3 -size_flags_vertical = 3 +offset_left = -220.0 +offset_bottom = 84.0 +grow_horizontal = 0 theme = ExtResource("9") -[node name="menu_button" type="Control" parent="CanvasLayer/ui"] -anchors_preset = 0 -offset_left = 1245.0 -offset_top = -643.0 -offset_right = 1245.0 -offset_bottom = -643.0 -grow_horizontal = 2 -grow_vertical = 2 +[node name="MarginContainer" type="MarginContainer" parent="game_layer/ui_layer/Tools"] +layout_mode = 2 -[node name="HBoxContainer" type="HBoxContainer" parent="CanvasLayer/ui/menu_button"] -layout_mode = 0 -offset_left = -179.0 -offset_top = 33.0 -offset_right = 21.0 -offset_bottom = 103.0 -alignment = 1 +[node name="HBoxContainer2" type="HBoxContainer" parent="game_layer/ui_layer/Tools/MarginContainer"] +layout_mode = 2 -[node name="TranslationButton" type="TextureButton" parent="CanvasLayer/ui/menu_button/HBoxContainer"] +[node name="TranslationButton" type="TextureButton" parent="game_layer/ui_layer/Tools/MarginContainer/HBoxContainer2"] layout_mode = 2 texture_normal = ExtResource("6_yfacq") texture_hover = ExtResource("7_we0hb") -[node name="MusicButton" type="TextureButton" parent="CanvasLayer/ui/menu_button/HBoxContainer"] +[node name="MusicButton" type="TextureButton" parent="game_layer/ui_layer/Tools/MarginContainer/HBoxContainer2"] custom_minimum_size = Vector2(64, 0) layout_mode = 2 script = ExtResource("14") @@ -94,46 +90,39 @@ musicEnabledHoverTexture = ExtResource("13") musicDisabledTexture = ExtResource("16") musicDisabledHoverTexture = ExtResource("15") -[node name="MenuButton" type="TextureButton" parent="CanvasLayer/ui/menu_button/HBoxContainer"] +[node name="MenuButton" type="TextureButton" parent="game_layer/ui_layer/Tools/MarginContainer/HBoxContainer2"] layout_mode = 2 texture_normal = ExtResource("13_we0hb") texture_hover = ExtResource("14_parhr") -[node name="HBoxContainer" type="HBoxContainer" parent="CanvasLayer/ui"] -layout_mode = 1 -anchors_preset = 15 -anchor_right = 1.0 +[node name="Inventory" parent="game_layer/ui_layer" instance=ExtResource("1")] +anchors_preset = 7 +anchor_left = 0.5 +anchor_top = 1.0 +anchor_right = 0.5 anchor_bottom = 1.0 -offset_left = -2.0 -offset_top = -8.0 -offset_right = -2.0 -offset_bottom = -16.0 +offset_left = -640.0 +offset_top = -120.0 +offset_right = 640.0 +offset_bottom = 0.0 grow_horizontal = 2 -grow_vertical = 2 -size_flags_horizontal = 3 -size_flags_vertical = 3 +grow_vertical = 0 -[node name="Spacer" type="Control" parent="CanvasLayer/ui/HBoxContainer"] -layout_mode = 2 -size_flags_horizontal = 3 +[node name="menu_layer" type="CanvasLayer" parent="."] +layer = 2 -[node name="inventory_ui" parent="CanvasLayer/ui/HBoxContainer" instance=ExtResource("1")] -layout_mode = 2 - -[node name="pause_menu" parent="CanvasLayer" instance=ExtResource("8")] -visible = false -theme = ExtResource("9") - -[node name="main_menu" parent="CanvasLayer" instance=ExtResource("7")] +[node name="pause_menu" parent="menu_layer" instance=ExtResource("8")] visible = false -[node name="video_player" parent="CanvasLayer" instance=ExtResource("12")] +[node name="main_menu" parent="menu_layer" instance=ExtResource("7")] visible = false -layout_mode = 3 -anchors_preset = 0 -[node name="language_selector" parent="CanvasLayer" instance=ExtResource("19_we0hb")] +[node name="video_player" parent="menu_layer" instance=ExtResource("12")] +visible = false -[connection signal="pressed" from="CanvasLayer/ui/menu_button/HBoxContainer/TranslationButton" to="." method="_on_translation_button_pressed"] -[connection signal="pressed" from="CanvasLayer/ui/menu_button/HBoxContainer/MusicButton" to="." method="_on_MusicButton_pressed"] -[connection signal="pressed" from="CanvasLayer/ui/menu_button/HBoxContainer/MenuButton" to="." method="_on_MenuButton_pressed"] +[node name="language_selector" parent="menu_layer" instance=ExtResource("19_we0hb")] +visible = false + +[connection signal="pressed" from="game_layer/ui_layer/Tools/MarginContainer/HBoxContainer2/TranslationButton" to="." method="_on_translation_button_pressed"] +[connection signal="pressed" from="game_layer/ui_layer/Tools/MarginContainer/HBoxContainer2/MusicButton" to="." method="_on_MusicButton_pressed"] +[connection signal="pressed" from="game_layer/ui_layer/Tools/MarginContainer/HBoxContainer2/MenuButton" to="." method="_on_MenuButton_pressed"] diff --git a/addons/escoria-ui-return-monkey-island/inventory/esc_inventory_button.gd b/addons/escoria-ui-return-monkey-island/inventory/esc_inventory_button.gd new file mode 100644 index 00000000..884d988d --- /dev/null +++ b/addons/escoria-ui-return-monkey-island/inventory/esc_inventory_button.gd @@ -0,0 +1,5 @@ +# The inventory representation of an ESC item if pickable (only used by +# the inventory components) +extends ESCInventoryButton +class_name RTMIInventoryButton + diff --git a/addons/escoria-ui-return-monkey-island/inventory/esc_inventory_button.gd.uid b/addons/escoria-ui-return-monkey-island/inventory/esc_inventory_button.gd.uid new file mode 100644 index 00000000..b220673f --- /dev/null +++ b/addons/escoria-ui-return-monkey-island/inventory/esc_inventory_button.gd.uid @@ -0,0 +1 @@ +uid://dxqu8pi7p6vng diff --git a/addons/escoria-ui-return-monkey-island/inventory/inventory_container.gd b/addons/escoria-ui-return-monkey-island/inventory/inventory_container.gd new file mode 100644 index 00000000..7b47c4f2 --- /dev/null +++ b/addons/escoria-ui-return-monkey-island/inventory/inventory_container.gd @@ -0,0 +1,5 @@ +# Inventory container handler that acts as a base for UIs inventory containers +extends ESCInventoryContainer +class_name RTMIInventoryContainer + + diff --git a/addons/escoria-ui-return-monkey-island/inventory/inventory_container.gd.uid b/addons/escoria-ui-return-monkey-island/inventory/inventory_container.gd.uid new file mode 100644 index 00000000..fe17e284 --- /dev/null +++ b/addons/escoria-ui-return-monkey-island/inventory/inventory_container.gd.uid @@ -0,0 +1 @@ +uid://245b34c8nyex diff --git a/addons/escoria-ui-return-monkey-island/inventory/inventory_ui.gd b/addons/escoria-ui-return-monkey-island/inventory/inventory_ui.gd index a2c2b68b..c2ab70c4 100644 --- a/addons/escoria-ui-return-monkey-island/inventory/inventory_ui.gd +++ b/addons/escoria-ui-return-monkey-island/inventory/inventory_ui.gd @@ -7,26 +7,30 @@ var inventory_visible: bool = false func _ready() -> void: super._ready() - $FloatingInventory/panel.position.x = ProjectSettings.get_setting("display/window/size/viewport_width") - $FloatingInventory/panel.size.x + #$FloatingInventory/panel.position.x = ProjectSettings.get_setting("display/window/size/viewport_width") - $FloatingInventory/panel.size.x func show_inventory(): - $FloatingInventory/panel.show() + #$FloatingInventory/panel.show() + self.show() inventory_visible = true func hide_inventory(): - $FloatingInventory/panel.hide() + #$FloatingInventory/panel.hide() + self.hide() inventory_visible = false func show_ui(): - $FloatingInventory/inventory_bg.show() - $FloatingInventory/panel/MarginContainer/ScrollContainer/container.show() + #$FloatingInventory/inventory_bg.show() + #$FloatingInventory/panel/MarginContainer/ScrollContainer/container.show() + self.show() inventory_visible = true func hide_ui(): - $FloatingInventory/inventory_bg.hide() - $FloatingInventory/panel/MarginContainer/ScrollContainer/container.hide() + self.hide() + #$FloatingInventory/inventory_bg.hide() + #$FloatingInventory/panel/MarginContainer/ScrollContainer/container.hide() inventory_visible = false diff --git a/addons/escoria-ui-return-monkey-island/inventory/inventory_ui.tscn b/addons/escoria-ui-return-monkey-island/inventory/inventory_ui.tscn index 76f25f32..ac6f54d8 100644 --- a/addons/escoria-ui-return-monkey-island/inventory/inventory_ui.tscn +++ b/addons/escoria-ui-return-monkey-island/inventory/inventory_ui.tscn @@ -1,67 +1,23 @@ -[gd_scene load_steps=3 format=3 uid="uid://bl50queikqfjc"] +[gd_scene load_steps=4 format=3 uid="uid://bl50queikqfjc"] [ext_resource type="Script" uid="uid://1hedqas3odoy" path="res://addons/escoria-ui-return-monkey-island/inventory/inventory_ui.gd" id="1"] +[ext_resource type="Theme" uid="uid://23n73qci0qc3" path="res://addons/escoria-ui-return-monkey-island/theme/inventory_ui.tres" id="1_a1nc4"] [ext_resource type="Script" uid="uid://c4syt26p7mg66" path="res://addons/escoria-core/ui_library/inventory/esc_inventory_container.gd" id="3"] -[node name="inventory_ui" type="Control"] -custom_minimum_size = Vector2(90, 90) -layout_mode = 3 -anchor_right = 0.5 -anchor_bottom = 0.5 -offset_right = 768.0 -offset_bottom = 540.0 -scale = Vector2(0.4, 0.4) -size_flags_horizontal = 0 -size_flags_vertical = 3 +[node name="Inventory" type="PanelContainer"] +offset_right = 1280.0 +offset_bottom = 120.0 +theme = ExtResource("1_a1nc4") script = ExtResource("1") -inventory_ui_container = NodePath("FloatingInventory/panel/MarginContainer/ScrollContainer/container") +inventory_ui_container = NodePath("MarginContainer/ScrollContainer/container") -[node name="FloatingInventory" type="CanvasLayer" parent="."] - -[node name="inventory_bg" type="Polygon2D" parent="FloatingInventory"] -position = Vector2(0, -16) -color = Color(0.156863, 0.0627451, 0, 1) -polygon = PackedVector2Array(-3, 578, 1280, 578, 1280, 752, -3, 757) - -[node name="panel" type="TextureRect" parent="FloatingInventory"] -custom_minimum_size = Vector2(0, 160) -anchors_preset = 3 -anchor_left = 1.0 -anchor_top = 1.0 -anchor_right = 1.0 -anchor_bottom = 1.0 -offset_left = -1276.0 -offset_top = -160.0 -size_flags_horizontal = 3 -size_flags_vertical = 3 -expand_mode = 1 - -[node name="MarginContainer" type="MarginContainer" parent="FloatingInventory/panel"] -layout_mode = 1 -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 -offset_left = -4.0 -offset_top = 2.0 -offset_right = -16.0 -grow_horizontal = 2 -grow_vertical = 2 -size_flags_horizontal = 3 -size_flags_vertical = 3 -theme_override_constants/margin_left = 20 -theme_override_constants/margin_top = 20 -theme_override_constants/margin_right = 20 -theme_override_constants/margin_bottom = 20 - -[node name="ScrollContainer" type="ScrollContainer" parent="FloatingInventory/panel/MarginContainer"] +[node name="MarginContainer" type="MarginContainer" parent="."] +layout_mode = 2 + +[node name="ScrollContainer" type="ScrollContainer" parent="MarginContainer"] layout_mode = 2 -size_flags_horizontal = 3 -size_flags_vertical = 6 vertical_scroll_mode = 0 -[node name="container" type="HBoxContainer" parent="FloatingInventory/panel/MarginContainer/ScrollContainer"] +[node name="container" type="HBoxContainer" parent="MarginContainer/ScrollContainer"] layout_mode = 2 -size_flags_horizontal = 3 -size_flags_vertical = 3 -theme_override_constants/separation = 20 script = ExtResource("3") diff --git a/addons/escoria-ui-return-monkey-island/menus/language_selector/language_selector.tscn b/addons/escoria-ui-return-monkey-island/menus/language_selector/language_selector.tscn index 19e88453..4351c660 100644 --- a/addons/escoria-ui-return-monkey-island/menus/language_selector/language_selector.tscn +++ b/addons/escoria-ui-return-monkey-island/menus/language_selector/language_selector.tscn @@ -1,6 +1,7 @@ -[gd_scene load_steps=4 format=3 uid="uid://c0066wpl3qky4"] +[gd_scene load_steps=5 format=3 uid="uid://c0066wpl3qky4"] [ext_resource type="Script" uid="uid://bb2dncmckwtj2" path="res://addons/escoria-ui-return-monkey-island/menus/language_selector/language_selector.gd" id="1_rfy64"] +[ext_resource type="Theme" uid="uid://djtwqnfbbt5t8" path="res://addons/escoria-ui-return-monkey-island/theme/menu.tres" id="1_ygmpa"] [ext_resource type="Texture2D" uid="uid://d0ta8viehhtdj" path="res://addons/escoria-ui-return-monkey-island/icons/translation.svg" id="2_502ci"] [ext_resource type="Theme" uid="uid://dvpaon5mw2w8l" path="res://addons/escoria-ui-return-monkey-island/theme.tres" id="2_jw4w0"] @@ -12,6 +13,7 @@ anchor_right = 1.0 anchor_bottom = 1.0 grow_horizontal = 2 grow_vertical = 2 +theme = ExtResource("1_ygmpa") script = ExtResource("1_rfy64") [node name="Panel" type="Panel" parent="."] diff --git a/addons/escoria-ui-return-monkey-island/menus/main_menu/main_menu.tscn b/addons/escoria-ui-return-monkey-island/menus/main_menu/main_menu.tscn index 6f63eebd..a75e98d4 100644 --- a/addons/escoria-ui-return-monkey-island/menus/main_menu/main_menu.tscn +++ b/addons/escoria-ui-return-monkey-island/menus/main_menu/main_menu.tscn @@ -1,6 +1,7 @@ -[gd_scene load_steps=7 format=3 uid="uid://d3wdxi18u52c5"] +[gd_scene load_steps=8 format=3 uid="uid://d3wdxi18u52c5"] [ext_resource type="Script" uid="uid://cnlvmkxk41x6j" path="res://addons/escoria-ui-return-monkey-island/menus/main_menu/main_menu.gd" id="1"] +[ext_resource type="Theme" uid="uid://djtwqnfbbt5t8" path="res://addons/escoria-ui-return-monkey-island/theme/menu.tres" id="1_6gi1c"] [ext_resource type="Script" uid="uid://bfi05b2x5srm2" path="res://addons/escoria-ui-return-monkey-island/menus/RTMIMenuButtonWithSaveFeature.gd" id="2"] [ext_resource type="Texture2D" uid="uid://bgfi7t6khinjw" path="res://gymkhana/logo-small.png" id="3"] [ext_resource type="PackedScene" uid="uid://csxvnrljbqkr8" path="res://addons/escoria-ui-return-monkey-island/menus/options/options.tscn" id="4"] @@ -14,6 +15,7 @@ anchor_right = 1.0 anchor_bottom = 1.0 grow_horizontal = 2 grow_vertical = 2 +theme = ExtResource("1_6gi1c") script = ExtResource("1") [node name="load_game" parent="." instance=ExtResource("5")] @@ -41,7 +43,7 @@ anchor_right = 0.5 anchor_bottom = 1.0 offset_left = -308.0 offset_right = 308.0 -theme_override_constants/separation = 100 +theme_override_constants/separation = 50 alignment = 1 [node name="TextureRect" type="TextureRect" parent="main/main"] @@ -60,16 +62,19 @@ text = "NEW_GAME" script = ExtResource("5_4i6cp") [node name="load_game" type="Button" parent="main/main/buttons"] +custom_minimum_size = Vector2(0, 40) layout_mode = 2 text = "LOAD_GAME" script = ExtResource("2") [node name="options" type="Button" parent="main/main/buttons"] +custom_minimum_size = Vector2(0, 40) layout_mode = 2 text = "OPTIONS" script = ExtResource("5_4i6cp") [node name="quit" type="Button" parent="main/main/buttons"] +custom_minimum_size = Vector2(0, 40) layout_mode = 2 text = "QUIT" script = ExtResource("5_4i6cp") diff --git a/addons/escoria-ui-return-monkey-island/menus/options/options.tscn b/addons/escoria-ui-return-monkey-island/menus/options/options.tscn index 891a5808..43d000dd 100644 --- a/addons/escoria-ui-return-monkey-island/menus/options/options.tscn +++ b/addons/escoria-ui-return-monkey-island/menus/options/options.tscn @@ -1,156 +1,113 @@ -[gd_scene load_steps=3 format=3 uid="uid://csxvnrljbqkr8"] +[gd_scene load_steps=4 format=3 uid="uid://csxvnrljbqkr8"] -[ext_resource type="Texture2D" uid="uid://srnd5fwltb6k" path="res://addons/escoria-ui-return-monkey-island/menus/options/flags/de.png" id="1"] +[ext_resource type="Texture2D" uid="uid://yckfhmbqy4gy" path="res://addons/escoria-ui-return-monkey-island/menus/options/flags/de.png" id="1"] +[ext_resource type="Theme" uid="uid://djtwqnfbbt5t8" path="res://addons/escoria-ui-return-monkey-island/theme/menu.tres" id="1_h0rhj"] [ext_resource type="Script" uid="uid://bjl2eag8hh30h" path="res://addons/escoria-ui-return-monkey-island/menus/options/options.gd" id="4"] [node name="options" type="Control"] +layout_mode = 3 +anchors_preset = 15 anchor_right = 1.0 anchor_bottom = 1.0 +theme = ExtResource("1_h0rhj") script = ExtResource("4") [node name="Panel" type="Panel" parent="."] +layout_mode = 0 anchor_right = 1.0 anchor_bottom = 1.0 -__meta__ = { -"_editor_description_": "" -} [node name="VBoxContainer" type="VBoxContainer" parent="."] +layout_mode = 0 anchor_right = 1.0 anchor_bottom = 1.0 alignment = 1 [node name="MarginContainer" type="MarginContainer" parent="VBoxContainer"] -offset_left = 391.0 -offset_top = 241.0 -offset_right = 888.0 -offset_bottom = 484.0 +layout_mode = 2 size_flags_horizontal = 6 -theme_override_constants/margin_right = 20 -theme_override_constants/margin_top = 20 theme_override_constants/margin_left = 20 +theme_override_constants/margin_top = 20 +theme_override_constants/margin_right = 20 theme_override_constants/margin_bottom = 20 [node name="options" type="GridContainer" parent="VBoxContainer/MarginContainer"] -offset_left = 20.0 -offset_top = 20.0 -offset_right = 477.0 -offset_bottom = 223.0 +layout_mode = 2 size_flags_vertical = 6 theme_override_constants/h_separation = 40 columns = 2 -__meta__ = { -"_edit_use_anchors_": false -} [node name="label" type="Label" parent="VBoxContainer/MarginContainer/options"] -offset_top = 30.0 -offset_right = 137.0 -offset_bottom = 44.0 +layout_mode = 2 text = "OPTIONS_LANGUAGE" [node name="flags" type="HBoxContainer" parent="VBoxContainer/MarginContainer/options"] -offset_left = 177.0 -offset_right = 457.0 -offset_bottom = 75.0 +layout_mode = 2 size_flags_vertical = 3 theme_override_constants/separation = 30 alignment = 1 [node name="TextureRect2" type="TextureRect" parent="VBoxContainer/MarginContainer/options/flags"] -offset_right = 125.0 -offset_bottom = 75.0 +layout_mode = 2 texture = ExtResource("1") [node name="TextureRect3" type="TextureRect" parent="VBoxContainer/MarginContainer/options/flags"] -offset_left = 155.0 -offset_right = 280.0 -offset_bottom = 75.0 +layout_mode = 2 texture = ExtResource("1") [node name="label2" type="Label" parent="VBoxContainer/MarginContainer/options"] -offset_top = 80.0 -offset_right = 137.0 -offset_bottom = 94.0 +layout_mode = 2 text = "GENERAL_VOLUME" [node name="general_volume" type="HSlider" parent="VBoxContainer/MarginContainer/options"] -offset_left = 177.0 -offset_top = 79.0 -offset_right = 457.0 -offset_bottom = 95.0 +layout_mode = 2 size_flags_horizontal = 3 max_value = 1.0 step = 0.001 [node name="label3" type="Label" parent="VBoxContainer/MarginContainer/options"] -offset_top = 100.0 -offset_right = 137.0 -offset_bottom = 114.0 +layout_mode = 2 text = "SOUND_VOLUME" [node name="sound_volume" type="HSlider" parent="VBoxContainer/MarginContainer/options"] -offset_left = 177.0 -offset_top = 99.0 -offset_right = 457.0 -offset_bottom = 115.0 +layout_mode = 2 size_flags_horizontal = 3 max_value = 1.0 step = 0.001 [node name="label4" type="Label" parent="VBoxContainer/MarginContainer/options"] -offset_top = 120.0 -offset_right = 137.0 -offset_bottom = 134.0 +layout_mode = 2 text = "MUSIC_VOLUME" [node name="music_volume" type="HSlider" parent="VBoxContainer/MarginContainer/options"] -offset_left = 177.0 -offset_top = 119.0 -offset_right = 457.0 -offset_bottom = 135.0 +layout_mode = 2 size_flags_horizontal = 3 max_value = 1.0 step = 0.001 [node name="label5" type="Label" parent="VBoxContainer/MarginContainer/options"] -offset_top = 140.0 -offset_right = 137.0 -offset_bottom = 154.0 +layout_mode = 2 text = "SPEECH_VOLUME" [node name="speech_volume" type="HSlider" parent="VBoxContainer/MarginContainer/options"] -offset_left = 177.0 -offset_top = 139.0 -offset_right = 457.0 -offset_bottom = 155.0 +layout_mode = 2 size_flags_horizontal = 3 max_value = 1.0 step = 0.001 [node name="label6" type="Label" parent="VBoxContainer/MarginContainer/options"] -offset_top = 164.0 -offset_right = 137.0 -offset_bottom = 178.0 +layout_mode = 2 text = "FULLSCREEN" [node name="fullscreen" type="CheckBox" parent="VBoxContainer/MarginContainer/options"] -offset_left = 177.0 -offset_top = 159.0 -offset_right = 457.0 -offset_bottom = 183.0 +layout_mode = 2 [node name="label7" type="Label" parent="VBoxContainer/MarginContainer/options"] -offset_top = 188.0 -offset_right = 137.0 -offset_bottom = 202.0 +layout_mode = 2 text = "SPEECH_SPEED" [node name="speech_speed" type="HSlider" parent="VBoxContainer/MarginContainer/options"] -offset_left = 177.0 -offset_top = 187.0 -offset_right = 457.0 -offset_bottom = 203.0 +layout_mode = 2 size_flags_horizontal = 3 min_value = 10.0 max_value = 400.0 @@ -158,29 +115,17 @@ step = 10.0 value = 200.0 [node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer"] -offset_top = 488.0 -offset_right = 1280.0 -offset_bottom = 508.0 +layout_mode = 2 theme_override_constants/separation = 20 alignment = 1 [node name="back" type="Button" parent="VBoxContainer/HBoxContainer"] -offset_left = 549.0 -offset_right = 660.0 -offset_bottom = 20.0 +layout_mode = 2 text = "OPTIONS_BACK" -__meta__ = { -"_edit_use_anchors_": false -} [node name="apply" type="Button" parent="VBoxContainer/HBoxContainer"] -offset_left = 680.0 -offset_right = 731.0 -offset_bottom = 20.0 +layout_mode = 2 text = "APPLY" -__meta__ = { -"_edit_use_anchors_": false -} [connection signal="value_changed" from="VBoxContainer/MarginContainer/options/general_volume" to="." method="_on_general_volume_changed"] [connection signal="value_changed" from="VBoxContainer/MarginContainer/options/sound_volume" to="." method="_on_sound_volume_changed"] diff --git a/addons/escoria-ui-return-monkey-island/menus/pause_menu/pause_menu.tscn b/addons/escoria-ui-return-monkey-island/menus/pause_menu/pause_menu.tscn index 5ece9fe3..12a0b1ec 100644 --- a/addons/escoria-ui-return-monkey-island/menus/pause_menu/pause_menu.tscn +++ b/addons/escoria-ui-return-monkey-island/menus/pause_menu/pause_menu.tscn @@ -1,6 +1,7 @@ -[gd_scene load_steps=8 format=3 uid="uid://dl7w8oqk1rmhw"] +[gd_scene load_steps=9 format=3 uid="uid://dl7w8oqk1rmhw"] [ext_resource type="Script" uid="uid://ctu22fcrvjv4t" path="res://addons/escoria-ui-return-monkey-island/menus/pause_menu/pause_menu.gd" id="1"] +[ext_resource type="Theme" uid="uid://djtwqnfbbt5t8" path="res://addons/escoria-ui-return-monkey-island/theme/menu.tres" id="1_e0gqa"] [ext_resource type="PackedScene" uid="uid://csxvnrljbqkr8" path="res://addons/escoria-ui-return-monkey-island/menus/options/options.tscn" id="2"] [ext_resource type="Texture2D" uid="uid://bgfi7t6khinjw" path="res://gymkhana/logo-small.png" id="3"] [ext_resource type="PackedScene" uid="uid://cj440t8pub603" path="res://addons/escoria-core/ui_library/menus/load_save/save/save_game.tscn" id="4"] @@ -15,6 +16,7 @@ anchor_right = 1.0 anchor_bottom = 1.0 grow_horizontal = 2 grow_vertical = 2 +theme = ExtResource("1_e0gqa") script = ExtResource("1") [node name="Panel" type="Panel" parent="."] @@ -33,6 +35,8 @@ layout_mode = 1 [node name="options" parent="." instance=ExtResource("2")] visible = false anchors_preset = 0 +anchor_right = 0.0 +anchor_bottom = 0.0 [node name="VBoxContainer" type="VBoxContainer" parent="."] layout_mode = 1 @@ -46,49 +50,54 @@ offset_right = 308.0 offset_bottom = 44.0 grow_horizontal = 2 grow_vertical = 2 -scale = Vector2(0.92, 0.92) -theme_override_constants/separation = 100 +theme_override_constants/separation = 16 alignment = 1 [node name="TextureRect" type="TextureRect" parent="VBoxContainer"] layout_mode = 2 texture = ExtResource("3") +stretch_mode = 3 [node name="menuitems" type="VBoxContainer" parent="VBoxContainer"] layout_mode = 2 theme_override_constants/separation = 10 [node name="continue" type="Button" parent="VBoxContainer/menuitems"] -custom_minimum_size = Vector2(0, 150) +custom_minimum_size = Vector2(0, 120) layout_mode = 2 size_flags_vertical = 3 text = "CONTINUE_GAME" script = ExtResource("6_31lra") [node name="new_game" type="Button" parent="VBoxContainer/menuitems"] +custom_minimum_size = Vector2(0, 30) layout_mode = 2 size_flags_vertical = 3 text = "NEW_GAME" script = ExtResource("6_31lra") [node name="save_game" type="Button" parent="VBoxContainer/menuitems"] +custom_minimum_size = Vector2(0, 30) layout_mode = 2 size_flags_vertical = 3 text = "SAVE_GAME" script = ExtResource("7_e0gqa") [node name="load_game" type="Button" parent="VBoxContainer/menuitems"] +custom_minimum_size = Vector2(0, 30) layout_mode = 2 size_flags_vertical = 3 text = "LOAD_GAME" script = ExtResource("7_e0gqa") [node name="options" type="Button" parent="VBoxContainer/menuitems"] +custom_minimum_size = Vector2(0, 30) layout_mode = 2 text = "OPTIONS" script = ExtResource("6_31lra") [node name="quit" type="Button" parent="VBoxContainer/menuitems"] +custom_minimum_size = Vector2(0, 30) layout_mode = 2 size_flags_vertical = 3 text = "QUIT" diff --git a/addons/escoria-ui-return-monkey-island/overrides/esc_inventory_item.gd b/addons/escoria-ui-return-monkey-island/overrides/esc_inventory_item.gd index e1f8c7d0..30ba6e73 100644 --- a/addons/escoria-ui-return-monkey-island/overrides/esc_inventory_item.gd +++ b/addons/escoria-ui-return-monkey-island/overrides/esc_inventory_item.gd @@ -2,6 +2,8 @@ extends ESCInventoryItem class_name RTMIESCInventoryItem +var shader = preload("res://addons/escoria-ui-return-monkey-island/shaders/shadermaterial_outline_green5px.tres") + func _init(p_item: ESCItem) -> void: super._init(p_item) escoria.logger.info(self, "RTMIESCInventoryItem") @@ -10,3 +12,5 @@ func _init(p_item: ESCItem) -> void: texture_hovered = p_item._get_inventory_texture_hovered() if p_item is ESCItemWithTooltip: p_item.register_components() + p_item.hover_enabled = true + p_item.material = shader diff --git a/addons/escoria-ui-return-monkey-island/overrides/inventory_item.gd.uid b/addons/escoria-ui-return-monkey-island/overrides/inventory_item.gd.uid new file mode 100644 index 00000000..02ef48a3 --- /dev/null +++ b/addons/escoria-ui-return-monkey-island/overrides/inventory_item.gd.uid @@ -0,0 +1 @@ +uid://27e4yrrk30dp diff --git a/addons/escoria-ui-return-monkey-island/esc_rich_tooltip.gd b/addons/escoria-ui-return-monkey-island/rtmi_rich_tooltip.gd similarity index 99% rename from addons/escoria-ui-return-monkey-island/esc_rich_tooltip.gd rename to addons/escoria-ui-return-monkey-island/rtmi_rich_tooltip.gd index 1e125929..395fa62a 100644 --- a/addons/escoria-ui-return-monkey-island/esc_rich_tooltip.gd +++ b/addons/escoria-ui-return-monkey-island/rtmi_rich_tooltip.gd @@ -1,7 +1,7 @@ @tool # A tooltip displaying [] extends Node2D -class_name ESCRichTooltip +class_name RTMIRichTooltip # Maximum width of the label diff --git a/addons/escoria-ui-return-monkey-island/rtmi_rich_tooltip.gd.uid b/addons/escoria-ui-return-monkey-island/rtmi_rich_tooltip.gd.uid new file mode 100644 index 00000000..a399ddd2 --- /dev/null +++ b/addons/escoria-ui-return-monkey-island/rtmi_rich_tooltip.gd.uid @@ -0,0 +1 @@ +uid://b7sdsky8ovx75 diff --git a/addons/escoria-ui-return-monkey-island/esc_rich_tooltip.tscn b/addons/escoria-ui-return-monkey-island/rtmi_rich_tooltip.tscn similarity index 95% rename from addons/escoria-ui-return-monkey-island/esc_rich_tooltip.tscn rename to addons/escoria-ui-return-monkey-island/rtmi_rich_tooltip.tscn index df06cfdf..94c477a6 100644 --- a/addons/escoria-ui-return-monkey-island/esc_rich_tooltip.tscn +++ b/addons/escoria-ui-return-monkey-island/rtmi_rich_tooltip.tscn @@ -1,6 +1,6 @@ [gd_scene load_steps=5 format=3 uid="uid://d2kogebvoxy51"] -[ext_resource type="Script" uid="uid://bbf2w51korm6e" path="res://addons/escoria-ui-return-monkey-island/esc_rich_tooltip.gd" id="1"] +[ext_resource type="Script" uid="uid://bbf2w51korm6e" path="res://addons/escoria-ui-return-monkey-island/rtmi_rich_tooltip.gd" id="1"] [ext_resource type="Texture2D" uid="uid://cv545ye40v70b" path="res://addons/escoria-ui-return-monkey-island/cursors/rounded_mouse_right.png" id="2"] [ext_resource type="Texture2D" uid="uid://naf4ovsgrbyp" path="res://addons/escoria-ui-return-monkey-island/cursors/rounded_mouse_left.png" id="3"] [ext_resource type="Theme" uid="uid://bf2eet52fueam" path="res://addons/escoria-ui-return-monkey-island/theme/ui.tres" id="4"] diff --git a/addons/escoria-ui-return-monkey-island/shaders/outline.gdshader b/addons/escoria-ui-return-monkey-island/shaders/outline.gdshader new file mode 100644 index 00000000..a9250596 --- /dev/null +++ b/addons/escoria-ui-return-monkey-island/shaders/outline.gdshader @@ -0,0 +1,64 @@ +// Source : https://godotshaders.com/shader/2d-outline-inline/ + +shader_type canvas_item; + +uniform vec4 color : source_color = vec4(1.0); +uniform float width : hint_range(0, 10) = 1.0; +uniform int pattern : hint_range(0, 2) = 0; // diamond, circle, square +uniform bool inside = false; +uniform bool add_margins = true; // only useful when inside is false + +void vertex() { + if (add_margins) { + VERTEX += (UV * 2.0 - 1.0) * width; + } +} + +bool hasContraryNeighbour(vec2 uv, vec2 texture_pixel_size, sampler2D texture) { + for (float i = -ceil(width); i <= ceil(width); i++) { + float x = abs(i) > width ? width * sign(i) : i; + float offset; + + if (pattern == 0) { + offset = width - abs(x); + } else if (pattern == 1) { + offset = floor(sqrt(pow(width + 0.5, 2) - x * x)); + } else if (pattern == 2) { + offset = width; + } + + for (float j = -ceil(offset); j <= ceil(offset); j++) { + float y = abs(j) > offset ? offset * sign(j) : j; + vec2 xy = uv + texture_pixel_size * vec2(x, y); + + if ((xy != clamp(xy, vec2(0.0), vec2(1.0)) || texture(texture, xy).a <= 0.0) == inside) { + return true; + } + } + } + + return false; +} + +void fragment() { + vec2 uv = UV; + + if (add_margins) { + vec2 texture_pixel_size = vec2(1.0) / (vec2(1.0) / TEXTURE_PIXEL_SIZE + vec2(width * 2.0)); + + uv = (uv - texture_pixel_size * width) * TEXTURE_PIXEL_SIZE / texture_pixel_size; + + if (uv != clamp(uv, vec2(0.0), vec2(1.0))) { + COLOR.a = 0.0; + } else { + COLOR = texture(TEXTURE, uv); + } + } else { + COLOR = texture(TEXTURE, uv); + } + + if ((COLOR.a > 0.0) == inside && hasContraryNeighbour(uv, TEXTURE_PIXEL_SIZE, TEXTURE)) { + COLOR.rgb = inside ? mix(COLOR.rgb, color.rgb, color.a) : color.rgb; + COLOR.a += (1.0 - COLOR.a) * color.a; + } +} \ No newline at end of file diff --git a/addons/escoria-ui-return-monkey-island/shaders/outline.gdshader.uid b/addons/escoria-ui-return-monkey-island/shaders/outline.gdshader.uid new file mode 100644 index 00000000..b3f146ff --- /dev/null +++ b/addons/escoria-ui-return-monkey-island/shaders/outline.gdshader.uid @@ -0,0 +1 @@ +uid://crapjow6genqs diff --git a/addons/escoria-ui-return-monkey-island/shaders/shadermaterial_outline_green5px.tres b/addons/escoria-ui-return-monkey-island/shaders/shadermaterial_outline_green5px.tres new file mode 100644 index 00000000..990819cb --- /dev/null +++ b/addons/escoria-ui-return-monkey-island/shaders/shadermaterial_outline_green5px.tres @@ -0,0 +1,11 @@ +[gd_resource type="ShaderMaterial" load_steps=2 format=3 uid="uid://bredlcniiy5bp"] + +[ext_resource type="Shader" uid="uid://crapjow6genqs" path="res://addons/escoria-ui-return-monkey-island/shaders/outline.gdshader" id="1_2bktm"] + +[resource] +shader = ExtResource("1_2bktm") +shader_parameter/color = Color(0, 1, 0, 1) +shader_parameter/width = 5.0 +shader_parameter/pattern = 0 +shader_parameter/inside = false +shader_parameter/add_margins = true diff --git a/addons/escoria-ui-return-monkey-island/theme/inventory_ui.tres b/addons/escoria-ui-return-monkey-island/theme/inventory_ui.tres new file mode 100644 index 00000000..91d59002 --- /dev/null +++ b/addons/escoria-ui-return-monkey-island/theme/inventory_ui.tres @@ -0,0 +1,11 @@ +[gd_resource type="Theme" load_steps=2 format=3 uid="uid://23n73qci0qc3"] + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_3hnbv"] +bg_color = Color(0.173269, 0.0886366, 0, 1) + +[resource] +MarginContainer/constants/margin_bottom = 15 +MarginContainer/constants/margin_left = 15 +MarginContainer/constants/margin_right = 15 +MarginContainer/constants/margin_top = 15 +PanelContainer/styles/panel = SubResource("StyleBoxFlat_3hnbv") diff --git a/addons/escoria-ui-return-monkey-island/theme/menu.tres b/addons/escoria-ui-return-monkey-island/theme/menu.tres index b526cc61..b54e4198 100644 --- a/addons/escoria-ui-return-monkey-island/theme/menu.tres +++ b/addons/escoria-ui-return-monkey-island/theme/menu.tres @@ -1,4 +1,6 @@ -[gd_resource type="Theme" load_steps=4 format=3 uid="uid://djtwqnfbbt5t8"] +[gd_resource type="Theme" load_steps=7 format=3 uid="uid://djtwqnfbbt5t8"] + +[ext_resource type="FontFile" uid="uid://vqqxktsw0f34" path="res://addons/escoria-ui-return-monkey-island/fonts/determination.ttf" id="1_p03cv"] [sub_resource type="StyleBoxFlat" id="1"] bg_color = Color(0.14902, 0.14902, 0.14902, 0.784314) @@ -8,9 +10,25 @@ bg_color = Color(0.285156, 0.285156, 0.285156, 0.784314) [sub_resource type="StyleBoxFlat" id="3"] bg_color = Color(0.027451, 0.027451, 0.027451, 0.745098) +expand_margin_left = 2.0 +expand_margin_top = 2.0 +expand_margin_right = 2.0 +expand_margin_bottom = 2.0 + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_p03cv"] +bg_color = Color(0.219501, 0.219501, 0.219501, 1) + +[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_p03cv"] [resource] +Button/fonts/font = ExtResource("1_p03cv") Button/styles/focus = SubResource("1") Button/styles/hover = SubResource("2") Button/styles/normal = SubResource("1") Button/styles/pressed = SubResource("3") +MarginContainer/constants/margin_bottom = 5 +MarginContainer/constants/margin_left = 5 +MarginContainer/constants/margin_right = 5 +MarginContainer/constants/margin_top = 5 +Panel/styles/panel = SubResource("StyleBoxFlat_p03cv") +PanelContainer/styles/panel = SubResource("StyleBoxEmpty_p03cv") diff --git a/addons/escoria-ui-return-monkey-island/theme/ui.tres b/addons/escoria-ui-return-monkey-island/theme/ui.tres index 2c9f5660..3f577ff2 100644 --- a/addons/escoria-ui-return-monkey-island/theme/ui.tres +++ b/addons/escoria-ui-return-monkey-island/theme/ui.tres @@ -1,4 +1,8 @@ -[gd_resource type="Theme" load_steps=4 format=3 uid="uid://bf2eet52fueam"] +[gd_resource type="Theme" load_steps=7 format=3 uid="uid://bf2eet52fueam"] + +[ext_resource type="FontFile" uid="uid://vqqxktsw0f34" path="res://addons/escoria-ui-return-monkey-island/fonts/determination.ttf" id="1_6h504"] + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_6h504"] [sub_resource type="StyleBoxFlat" id="1"] content_margin_left = 4.0 @@ -10,6 +14,8 @@ corner_radius_top_right = 5 corner_radius_bottom_right = 5 expand_margin_left = 19.0 +[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_6h504"] + [sub_resource type="StyleBoxFlat" id="2"] bg_color = Color(0, 0, 0, 0.509804) corner_radius_top_left = 5 @@ -29,10 +35,20 @@ expand_margin_right = 5.0 expand_margin_bottom = 5.0 [resource] +Button/fonts/font = ExtResource("1_6h504") +Button/styles/hover = SubResource("StyleBoxFlat_6h504") Label/colors/font_color = Color(1, 1, 1, 1) Label/colors/font_color_shadow = Color(0, 0, 0, 0) Label/colors/font_outline_modulate = Color(1, 0, 0, 1) Label/colors/label_box_bg = Color(0, 0, 0, 0.745098) +Label/fonts/font = ExtResource("1_6h504") Label/styles/normal = SubResource("1") +MarginContainer/constants/margin_bottom = 5 +MarginContainer/constants/margin_left = 5 +MarginContainer/constants/margin_right = 5 +MarginContainer/constants/margin_top = 5 +PanelContainer/styles/panel = SubResource("StyleBoxEmpty_6h504") +RichTextLabel/fonts/mono_font = ExtResource("1_6h504") +RichTextLabel/fonts/normal_font = ExtResource("1_6h504") RichTextLabel/styles/focus = SubResource("2") RichTextLabel/styles/normal = SubResource("3") diff --git a/addons/escoria-ui-return-monkey-island/video_player/video_player.tscn b/addons/escoria-ui-return-monkey-island/video_player/video_player.tscn index ba2961f5..4941122f 100644 --- a/addons/escoria-ui-return-monkey-island/video_player/video_player.tscn +++ b/addons/escoria-ui-return-monkey-island/video_player/video_player.tscn @@ -1,39 +1,52 @@ [gd_scene load_steps=5 format=3 uid="uid://ctg3fukoficqk"] [ext_resource type="Script" uid="uid://ckl3iy3v3v68s" path="res://addons/escoria-ui-return-monkey-island/video_player/video_player.gd" id="1"] -[ext_resource type="Theme" uid="uid://djtwqnfbbt5t8" path="res://gymkhana.tres" id="2"] +[ext_resource type="Theme" uid="uid://bf2eet52fueam" path="res://addons/escoria-ui-return-monkey-island/theme/ui.tres" id="1_384st"] [sub_resource type="VideoStreamTheora" id="1"] [sub_resource type="Shortcut" id="3"] [node name="video_player" type="Control"] -offset_right = 1285.0 -offset_bottom = 753.0 +layout_mode = 3 +anchors_preset = 0 +offset_right = 1280.0 +offset_bottom = 720.0 +theme = ExtResource("1_384st") script = ExtResource("1") [node name="ColorRect" type="ColorRect" parent="."] -offset_left = -11.0 -offset_top = -3.0 -offset_right = 1285.0 -offset_bottom = 766.0 +layout_mode = 0 +offset_right = 1280.0 +offset_bottom = 720.0 color = Color(0, 0, 0, 1) [node name="VideoStreamPlayer" type="VideoStreamPlayer" parent="."] -offset_right = 1279.0 -offset_bottom = 771.0 +layout_mode = 0 +offset_right = 1280.0 +offset_bottom = 720.0 stream = SubResource("1") -expand = false -[node name="Skip" type="Button" parent="."] -offset_left = 1163.0 -offset_top = 680.0 -offset_right = 1250.0 -offset_bottom = 712.0 -theme = ExtResource("2") -shortcut_in_tooltip = false +[node name="PanelContainer" type="PanelContainer" parent="."] +layout_mode = 1 +anchors_preset = 3 +anchor_left = 1.0 +anchor_top = 1.0 +anchor_right = 1.0 +anchor_bottom = 1.0 +offset_left = -125.0 +offset_top = -40.0 +grow_horizontal = 0 +grow_vertical = 0 + +[node name="MarginContainer" type="MarginContainer" parent="PanelContainer"] +layout_mode = 2 + +[node name="Skip" type="Button" parent="PanelContainer/MarginContainer"] +layout_mode = 2 shortcut = SubResource("3") +shortcut_in_tooltip = false text = "Saltar video" [connection signal="finished" from="VideoStreamPlayer" to="." method="_on_VideoPlayer_finished"] -[connection signal="pressed" from="Skip" to="." method="_on_Skip_pressed"] +[connection signal="pressed" from="PanelContainer/MarginContainer/Skip" to="." method="_on_Skip_pressed"] diff --git a/gymkhana/characters/eneko/eneko_smoking.tscn b/gymkhana/characters/eneko/eneko_smoking.tscn index 774b6f46..e48407ab 100644 --- a/gymkhana/characters/eneko/eneko_smoking.tscn +++ b/gymkhana/characters/eneko/eneko_smoking.tscn @@ -2,23 +2,23 @@ [ext_resource type="Resource" uid="uid://c4lhcwvjqx5ty" path="res://gymkhana/characters/eneko/eneko_smoking_animatios.tres" id="1"] [ext_resource type="Script" uid="uid://clg4yrj7v7eae" path="res://addons/escoria-ui-return-monkey-island/esc_player_with_tooltip.gd" id="2"] -[ext_resource type="Texture2D" uid="uid://d3llwr16eq05e" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-005.png" id="4"] -[ext_resource type="Texture2D" uid="uid://bfsccuoj7pmbf" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-002.png" id="5"] -[ext_resource type="Texture2D" uid="uid://dttlqbxpeqwi2" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-003.png" id="6"] -[ext_resource type="Texture2D" uid="uid://cms1wfpspj3lm" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-001.png" id="7"] -[ext_resource type="Texture2D" uid="uid://dvn6aneqx6ki4" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-010.png" id="8"] -[ext_resource type="Texture2D" uid="uid://c3oauyuv2m63f" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-016.png" id="9"] -[ext_resource type="Texture2D" uid="uid://dj3afybpcing3" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-009.png" id="10"] -[ext_resource type="Texture2D" uid="uid://b2fp3wx3yc4ac" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-008.png" id="11"] -[ext_resource type="Texture2D" uid="uid://dc18o6ownjk4f" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-012.png" id="12"] -[ext_resource type="Texture2D" uid="uid://cwaa6byg1k8jp" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-013.png" id="13"] -[ext_resource type="Texture2D" uid="uid://b8dkc8xtqe4sh" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-004.png" id="14"] -[ext_resource type="Texture2D" uid="uid://bhj0jj26o1v24" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-006.png" id="15"] -[ext_resource type="Texture2D" uid="uid://cms3agh4k5nrs" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-007.png" id="16"] -[ext_resource type="Texture2D" uid="uid://deqj1jv3tlrnw" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-015.png" id="17"] -[ext_resource type="Texture2D" uid="uid://nrkwgky7ip6w" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-014.png" id="18"] +[ext_resource type="Texture2D" uid="uid://bb02qchp31qbk" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-005.png" id="4"] +[ext_resource type="Texture2D" uid="uid://d1077cyo2guax" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-002.png" id="5"] +[ext_resource type="Texture2D" uid="uid://cnnggyic1gucn" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-003.png" id="6"] +[ext_resource type="Texture2D" uid="uid://dv1wxodjpaugw" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-001.png" id="7"] +[ext_resource type="Texture2D" uid="uid://cekotf5gc6xbk" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-010.png" id="8"] +[ext_resource type="Texture2D" uid="uid://nfn7piw54ra0" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-016.png" id="9"] +[ext_resource type="Texture2D" uid="uid://cpi3eoydqcvqj" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-009.png" id="10"] +[ext_resource type="Texture2D" uid="uid://chr5s14dhyvqc" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-008.png" id="11"] +[ext_resource type="Texture2D" uid="uid://cjtv1xqse0yuy" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-012.png" id="12"] +[ext_resource type="Texture2D" uid="uid://6bsralxp8ndw" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-013.png" id="13"] +[ext_resource type="Texture2D" uid="uid://cxo2ep1tqvkqm" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-004.png" id="14"] +[ext_resource type="Texture2D" uid="uid://bs7od2dqskigr" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-006.png" id="15"] +[ext_resource type="Texture2D" uid="uid://c5ylkrfmvy4uj" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-007.png" id="16"] +[ext_resource type="Texture2D" uid="uid://bibmiuts6ow8w" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-015.png" id="17"] +[ext_resource type="Texture2D" uid="uid://ueswqch37ph4" path="res://gymkhana/characters/eneko/smoking_animation/unscreen-014.png" id="18"] [ext_resource type="Script" uid="uid://85bledusisk1" path="res://addons/escoria-core/game/core-scripts/esc_dialog_location.gd" id="19_maw5o"] -[ext_resource type="Texture2D" uid="uid://dh4jyr03r21c8" path="res://gymkhana/characters/eneko/assets/speak-2.png" id="20"] +[ext_resource type="Texture2D" uid="uid://d4lpmrlecmrj1" path="res://gymkhana/characters/eneko/assets/speak-2.png" id="20"] [sub_resource type="AtlasTexture" id="2"] atlas = ExtResource("20") @@ -127,6 +127,6 @@ flip_h = true polygon = PackedVector2Array(-5, 6, -4, 22, -7, 32, -10, 39, -6, 43, 7, 43, 12, 35, 14, 25, 12, 12, 10, -25, 31, -38, 32, 37, 48, 37, 49, 28, 46, 22, 50, -1, 51, -35, 57, -39, 57, -72, 58, -74, 70, -68, 76, -69, 79, -76, 78, -81, 72, -89, 67, -104, 56, -114, 47, -115, 45, -120, 46, -140, 38, -145, 34, -146, 28, -144, 24, -139, 22, -129, 24, -122, 23, -119, 17, -114, 5, -109, -7, -80, -7, -62, 4, -58, 5, -53, -7, -34) [node name="ESCDialogLocation" type="Marker2D" parent="."] -position = Vector2(40, -240) +position = Vector2(35, -270) script = ExtResource("19_maw5o") metadata/_custom_type_script = "uid://85bledusisk1" diff --git a/gymkhana/characters/oier/oier.tscn b/gymkhana/characters/oier/oier.tscn index 7f5b9435..99994e84 100644 --- a/gymkhana/characters/oier/oier.tscn +++ b/gymkhana/characters/oier/oier.tscn @@ -331,6 +331,6 @@ position = Vector2(5, -151) shape = SubResource("21") [node name="ESCDialogLocation" type="Marker2D" parent="."] -position = Vector2(10, -452) +position = Vector2(1, -452) script = ExtResource("5_10x32") metadata/_custom_type_script = "uid://85bledusisk1" diff --git a/project.godot b/project.godot index a8cfe58e..cbdd7a32 100644 --- a/project.godot +++ b/project.godot @@ -90,7 +90,7 @@ rtmi_dialog_simple/avatars_path="res://game/dialog_avatars" rtmi_dialog_simple/text_time_per_letter_ms=50 rtmi_dialog_simple/text_time_per_fast_letter_ms=10 rtmi_dialog_simple/clear_text_by_click_only=false -rtmi_dialog_simple/reading_speed_in_wpm=200 +rtmi_dialog_simple/reading_speed_in_wpm=100 rtmi_dialog_simple/left_click_action="Speed up" rtmi_dialog_simple/stop_talking_animation_on="End of audio" rtmi_ui/sound_library_folder="res://gymkhana/sounds/"