Initial commit of Escoria-Reloaded. Still a lot of missing stuff.

This commit is contained in:
Julian Murgia
2020-12-17 16:24:25 +01:00
commit f26d96f115
1794 changed files with 89611 additions and 0 deletions

View File

@@ -0,0 +1,82 @@
extends RichTextLabel
# Infinitive verb
var current_action : String
# Target item/hotspot
var current_target : String
# Preposition: on, with...
var current_prep : String = "with"
# Target 2 item/hotspot
var current_target2 : String
var waiting_for_target2 = false
func _ready():
escoria.esc_runner.connect("action_changed", self, "on_action_selected")
escoria.inputs_manager.connect("element_focused", self, "on_element_focused")
func on_action_selected() -> void:
current_action = escoria.esc_runner.current_action
update_tooltip_text()
func on_element_focused(element_id : String) -> void:
printt("action_target_tooltip.gd:on_element_focused()", "Element focused: ", element_id)
if element_id == "":
set_target("")
return
var object = escoria.esc_runner.get_object(element_id)
if object == null or !is_instance_valid(object):
escoria.report_warnings("action_target_tooltip.gd:on_element_focused()",
["Object exists but is not loaded for id " + element_id])
set_target(element_id)
return
if !escoria.esc_runner.get_interactive(element_id) and !object is ESCInventoryItem:
set_target("")
return
var wait_for_target = false
if object is ESCItem or object is ESCInventoryItem:
if current_action in object.combine_if_action_used_among:
wait_for_target = true
set_target(object.tooltip_name, wait_for_target)
func set_target(target : String, needs_second_target : bool = false) -> void:
current_target = target
if needs_second_target:
waiting_for_target2 = true
update_tooltip_text()
func set_target2(target2 : String) -> void:
current_target2 = target2
update_tooltip_text()
func update_tooltip_text():
bbcode_text = "[center]"
if !current_action.empty():
bbcode_text += current_action
bbcode_text += "\t"
bbcode_text += current_target
if waiting_for_target2 and current_target2.empty():
bbcode_text += "\t"
bbcode_text += current_prep
if !current_target2.empty():
bbcode_text += "\t"
bbcode_text += current_prep
bbcode_text += "\t"
bbcode_text += current_target2
bbcode_text += "[/center]"

View File

@@ -0,0 +1,26 @@
[gd_scene load_steps=5 format=2]
[ext_resource path="res://addons/escoria-core/game/assets/fonts/onesize/ONESIZE_.TTF" type="DynamicFontData" id=1]
[ext_resource path="res://addons/escoria-core/template_scenes/label/action_target_tooltip.gd" type="Script" id=2]
[sub_resource type="DynamicFont" id=1]
size = 30
font_data = ExtResource( 1 )
[sub_resource type="DynamicFont" id=2]
size = 30
font_data = ExtResource( 1 )
[node name="tooltip" type="RichTextLabel"]
anchor_right = 0.526
anchor_bottom = 0.06
margin_right = -0.280029
margin_bottom = -10.0
custom_fonts/mono_font = SubResource( 1 )
custom_fonts/normal_font = SubResource( 2 )
bbcode_enabled = true
scroll_active = false
script = ExtResource( 2 )
__meta__ = {
"_edit_use_anchors_": false
}

View File

@@ -0,0 +1,11 @@
extends RichTextLabel
var current_target : String
func set_target(target : String) -> void:
current_target = target
update_tooltip_text()
func update_tooltip_text():
bbcode_text = current_target

View File

@@ -0,0 +1,28 @@
[gd_scene load_steps=5 format=2]
[ext_resource path="res://addons/escoria-core/game/assets/fonts/onesize/ONESIZE_.TTF" type="DynamicFontData" id=1]
[ext_resource path="res://addons/escoria-core/template_scenes/label/target_tooltip.gd" type="Script" id=2]
[sub_resource type="DynamicFont" id=1]
size = 30
font_data = ExtResource( 1 )
[sub_resource type="DynamicFont" id=2]
size = 30
font_data = ExtResource( 1 )
[node name="tooltip" type="RichTextLabel"]
anchor_right = 0.7
anchor_bottom = 0.06
margin_left = 1.49829
margin_right = 1.21826
margin_bottom = -10.0
custom_fonts/mono_font = SubResource( 1 )
custom_fonts/normal_font = SubResource( 2 )
bbcode_enabled = true
bbcode_text = "[center][/center]"
scroll_active = false
script = ExtResource( 2 )
__meta__ = {
"_edit_use_anchors_": false
}