update dialogic to 1.1pre
|
@ -87,9 +87,9 @@ anchor_left = 0.5
|
||||||
anchor_top = 1.0
|
anchor_top = 1.0
|
||||||
anchor_right = 0.5
|
anchor_right = 0.5
|
||||||
anchor_bottom = 1.0
|
anchor_bottom = 1.0
|
||||||
margin_left = -455.0
|
margin_left = -250.0
|
||||||
margin_top = -207.0
|
margin_top = -207.0
|
||||||
margin_right = 455.0
|
margin_right = 250.0
|
||||||
margin_bottom = -40.0
|
margin_bottom = -40.0
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
"_edit_use_anchors_": false
|
"_edit_use_anchors_": false
|
||||||
|
@ -136,8 +136,6 @@ __meta__ = {
|
||||||
"_edit_use_anchors_": false
|
"_edit_use_anchors_": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[node name="Tween" type="Tween" parent="TextBubble"]
|
|
||||||
|
|
||||||
[node name="NextIndicator" type="TextureRect" parent="TextBubble"]
|
[node name="NextIndicator" type="TextureRect" parent="TextBubble"]
|
||||||
visible = false
|
visible = false
|
||||||
anchor_left = 1.0
|
anchor_left = 1.0
|
||||||
|
@ -203,6 +201,8 @@ __meta__ = {
|
||||||
"_edit_use_anchors_": false
|
"_edit_use_anchors_": false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[node name="Tween" type="Tween" parent="TextBubble"]
|
||||||
|
|
||||||
[node name="Options" type="VBoxContainer" parent="."]
|
[node name="Options" type="VBoxContainer" parent="."]
|
||||||
anchor_left = 0.5
|
anchor_left = 0.5
|
||||||
anchor_top = 0.5
|
anchor_top = 0.5
|
||||||
|
@ -340,8 +340,8 @@ __meta__ = {
|
||||||
[node name="Timer" type="Timer" parent="DefinitionInfo"]
|
[node name="Timer" type="Timer" parent="DefinitionInfo"]
|
||||||
|
|
||||||
[node name="WaitSeconds" type="Timer" parent="."]
|
[node name="WaitSeconds" type="Timer" parent="."]
|
||||||
|
|
||||||
[connection signal="meta_hover_ended" from="TextBubble/RichTextLabel" to="." method="_on_RichTextLabel_meta_hover_ended"]
|
[connection signal="meta_hover_ended" from="TextBubble/RichTextLabel" to="." method="_on_RichTextLabel_meta_hover_ended"]
|
||||||
[connection signal="meta_hover_started" from="TextBubble/RichTextLabel" to="." method="_on_RichTextLabel_meta_hover_started"]
|
[connection signal="meta_hover_started" from="TextBubble/RichTextLabel" to="." method="_on_RichTextLabel_meta_hover_started"]
|
||||||
[connection signal="tween_completed" from="TextBubble/Tween" to="." method="_on_Tween_tween_completed"]
|
|
||||||
[connection signal="timeout" from="DefinitionInfo/Timer" to="." method="_on_Definition_Timer_timeout"]
|
[connection signal="timeout" from="DefinitionInfo/Timer" to="." method="_on_Definition_Timer_timeout"]
|
||||||
[connection signal="timeout" from="WaitSeconds" to="." method="_on_WaitSeconds_timeout"]
|
[connection signal="timeout" from="WaitSeconds" to="." method="_on_WaitSeconds_timeout"]
|
||||||
|
|
|
@ -2,7 +2,7 @@ tool
|
||||||
extends ScrollContainer
|
extends ScrollContainer
|
||||||
|
|
||||||
var editor_reference
|
var editor_reference
|
||||||
onready var master_tree = get_node('../MasterTree')
|
onready var master_tree = get_node('../MasterTreeContainer/MasterTree')
|
||||||
var opened_character_data
|
var opened_character_data
|
||||||
var portrait_entry = load("res://addons/dialogic/Editor/CharacterEditor/PortraitEntry.tscn")
|
var portrait_entry = load("res://addons/dialogic/Editor/CharacterEditor/PortraitEntry.tscn")
|
||||||
onready var nodes = {
|
onready var nodes = {
|
||||||
|
|
|
@ -2,7 +2,7 @@ tool
|
||||||
extends ScrollContainer
|
extends ScrollContainer
|
||||||
|
|
||||||
var editor_reference
|
var editor_reference
|
||||||
onready var master_tree = get_node('../MasterTree')
|
onready var master_tree = get_node('../MasterTreeContainer/MasterTree')
|
||||||
var current_definition = null
|
var current_definition = null
|
||||||
|
|
||||||
onready var nodes = {
|
onready var nodes = {
|
||||||
|
|
|
@ -6,7 +6,7 @@ var editor_file_dialog # EditorFileDialog
|
||||||
var file_picker_data: Dictionary = {'method': '', 'node': self}
|
var file_picker_data: Dictionary = {'method': '', 'node': self}
|
||||||
var current_editor_view: String = 'Master'
|
var current_editor_view: String = 'Master'
|
||||||
var version_string: String
|
var version_string: String
|
||||||
onready var master_tree = $MainPanel/MasterTree
|
onready var master_tree = $MainPanel/MasterTreeContainer/MasterTree
|
||||||
onready var timeline_editor = $MainPanel/TimelineEditor
|
onready var timeline_editor = $MainPanel/TimelineEditor
|
||||||
onready var character_editor = $MainPanel/CharacterEditor
|
onready var character_editor = $MainPanel/CharacterEditor
|
||||||
onready var definition_editor = $MainPanel/DefinitionEditor
|
onready var definition_editor = $MainPanel/DefinitionEditor
|
||||||
|
@ -27,6 +27,40 @@ func _ready():
|
||||||
|
|
||||||
master_tree.connect("editor_selected", self, 'on_master_tree_editor_selected')
|
master_tree.connect("editor_selected", self, 'on_master_tree_editor_selected')
|
||||||
|
|
||||||
|
|
||||||
|
# Sizes
|
||||||
|
# This part of the code is a bit terrible. But there is no better way
|
||||||
|
# of doing this in Godot at the moment. I'm sorry.
|
||||||
|
var separation = get_constant("separation", "BoxContainer")
|
||||||
|
$MainPanel.margin_left = separation
|
||||||
|
$MainPanel.margin_right = separation * -1
|
||||||
|
$MainPanel.margin_bottom = separation * -1
|
||||||
|
$MainPanel.margin_top = 38
|
||||||
|
var modifier = ''
|
||||||
|
var _scale = get_constant("inspector_margin", "Editor")
|
||||||
|
_scale = _scale * 0.125
|
||||||
|
if _scale == 1:
|
||||||
|
$MainPanel.margin_top = 30
|
||||||
|
if _scale == 1.25:
|
||||||
|
modifier = '-1.25'
|
||||||
|
$MainPanel.margin_top = 37
|
||||||
|
if _scale == 1.5:
|
||||||
|
modifier = '-1.25'
|
||||||
|
$MainPanel.margin_top = 46
|
||||||
|
if _scale == 1.75:
|
||||||
|
modifier = '-1.25'
|
||||||
|
$MainPanel.margin_top = 53
|
||||||
|
if _scale == 2:
|
||||||
|
$MainPanel.margin_top = 59
|
||||||
|
modifier = '-2'
|
||||||
|
$ToolBar/NewTimelineButton.icon = load("res://addons/dialogic/Images/Toolbar/add-timeline" + modifier + ".svg")
|
||||||
|
$ToolBar/NewCharactersButton.icon = load("res://addons/dialogic/Images/Toolbar/add-character" + modifier + ".svg")
|
||||||
|
$ToolBar/NewDefinitionButton.icon = load("res://addons/dialogic/Images/Toolbar/add-definition" + modifier + ".svg")
|
||||||
|
$ToolBar/NewThemeButton.icon = load("res://addons/dialogic/Images/Toolbar/add-theme" + modifier + ".svg")
|
||||||
|
$ToolBar/NewThemeButton.icon = load("res://addons/dialogic/Images/Toolbar/add-theme" + modifier + ".svg")
|
||||||
|
|
||||||
|
$ToolBar/FoldTools/ButtonFold.icon = get_icon("GuiTreeArrowRight", "EditorIcons")
|
||||||
|
$ToolBar/FoldTools/ButtonUnfold.icon = get_icon("GuiTreeArrowDown", "EditorIcons")
|
||||||
# Toolbar
|
# Toolbar
|
||||||
$ToolBar/NewTimelineButton.connect('pressed', $MainPanel/TimelineEditor, 'new_timeline')
|
$ToolBar/NewTimelineButton.connect('pressed', $MainPanel/TimelineEditor, 'new_timeline')
|
||||||
$ToolBar/NewCharactersButton.connect('pressed', $MainPanel/CharacterEditor, 'new_character')
|
$ToolBar/NewCharactersButton.connect('pressed', $MainPanel/CharacterEditor, 'new_character')
|
||||||
|
@ -55,7 +89,9 @@ func _ready():
|
||||||
var err = config.load("res://addons/dialogic/plugin.cfg")
|
var err = config.load("res://addons/dialogic/plugin.cfg")
|
||||||
if err == OK:
|
if err == OK:
|
||||||
version_string = config.get_value("plugin", "version", "?")
|
version_string = config.get_value("plugin", "version", "?")
|
||||||
$ToolBar/Version.text = 'v' + version_string
|
$ToolBar/Version.text = 'Dialogic v' + version_string
|
||||||
|
|
||||||
|
$MainPanel/MasterTreeContainer/FilterMasterTreeEdit.right_icon = get_icon("Search", "EditorIcons")
|
||||||
|
|
||||||
|
|
||||||
func on_master_tree_editor_selected(editor: String):
|
func on_master_tree_editor_selected(editor: String):
|
||||||
|
@ -75,10 +111,10 @@ func _on_TimelinePopupMenu_id_pressed(id):
|
||||||
func _on_RemoveTimelineConfirmation_confirmed():
|
func _on_RemoveTimelineConfirmation_confirmed():
|
||||||
var dir = Directory.new()
|
var dir = Directory.new()
|
||||||
var target = $MainPanel/TimelineEditor.timeline_file
|
var target = $MainPanel/TimelineEditor.timeline_file
|
||||||
print('target: ', target)
|
#'target: ', target)
|
||||||
DialogicResources.delete_timeline(target)
|
DialogicResources.delete_timeline(target)
|
||||||
$MainPanel/MasterTree.remove_selected()
|
$MainPanel/MasterTreeContainer/MasterTree.remove_selected()
|
||||||
$MainPanel/MasterTree.hide_all_editors()
|
$MainPanel/MasterTreeContainer/MasterTree.hide_all_editors()
|
||||||
|
|
||||||
|
|
||||||
# Character context menu
|
# Character context menu
|
||||||
|
@ -95,6 +131,10 @@ func _on_ThemePopupMenu_id_pressed(id):
|
||||||
OS.shell_open(ProjectSettings.globalize_path(DialogicResources.get_path('THEME_DIR')))
|
OS.shell_open(ProjectSettings.globalize_path(DialogicResources.get_path('THEME_DIR')))
|
||||||
if id == 1:
|
if id == 1:
|
||||||
$RemoveThemeConfirmation.popup_centered()
|
$RemoveThemeConfirmation.popup_centered()
|
||||||
|
if id == 2:
|
||||||
|
var filename = $MainPanel/MasterTreeContainer/MasterTree.get_selected().get_metadata(0)['file']
|
||||||
|
if (filename.begins_with('theme-')):
|
||||||
|
theme_editor.duplicate_theme(filename)
|
||||||
|
|
||||||
|
|
||||||
# Definition context menu
|
# Definition context menu
|
||||||
|
@ -108,22 +148,22 @@ func _on_DefinitionPopupMenu_id_pressed(id):
|
||||||
func _on_RemoveDefinitionConfirmation_confirmed():
|
func _on_RemoveDefinitionConfirmation_confirmed():
|
||||||
var target = $MainPanel/DefinitionEditor.current_definition['id']
|
var target = $MainPanel/DefinitionEditor.current_definition['id']
|
||||||
DialogicResources.delete_default_definition(target)
|
DialogicResources.delete_default_definition(target)
|
||||||
$MainPanel/MasterTree.remove_selected()
|
$MainPanel/MasterTreeContainer/MasterTree.remove_selected()
|
||||||
$MainPanel/MasterTree.hide_all_editors()
|
$MainPanel/MasterTreeContainer/MasterTree.hide_all_editors()
|
||||||
|
|
||||||
|
|
||||||
func _on_RemoveCharacterConfirmation_confirmed():
|
func _on_RemoveCharacterConfirmation_confirmed():
|
||||||
var filename = DialogicResources.get_path('CHAR_DIR', $MainPanel/CharacterEditor.opened_character_data['id'])
|
var filename = $MainPanel/CharacterEditor.opened_character_data['id']
|
||||||
DialogicResources.delete_character(filename)
|
DialogicResources.delete_character(filename)
|
||||||
$MainPanel/MasterTree.remove_selected()
|
$MainPanel/MasterTreeContainer/MasterTree.remove_selected()
|
||||||
$MainPanel/MasterTree.hide_all_editors()
|
$MainPanel/MasterTreeContainer/MasterTree.hide_all_editors()
|
||||||
|
|
||||||
|
|
||||||
func _on_RemoveThemeConfirmation_confirmed():
|
func _on_RemoveThemeConfirmation_confirmed():
|
||||||
var filename = $MainPanel/MasterTree.get_selected().get_metadata(0)['file']
|
var filename = $MainPanel/MasterTreeContainer/MasterTree.get_selected().get_metadata(0)['file']
|
||||||
DialogicResources.delete_theme(filename)
|
DialogicResources.delete_theme(filename)
|
||||||
$MainPanel/MasterTree.remove_selected()
|
$MainPanel/MasterTreeContainer/MasterTree.remove_selected()
|
||||||
$MainPanel/MasterTree.hide_all_editors()
|
$MainPanel/MasterTreeContainer/MasterTree.hide_all_editors()
|
||||||
|
|
||||||
|
|
||||||
# Godot dialog
|
# Godot dialog
|
||||||
|
@ -157,12 +197,6 @@ func _on_file_selected(path):
|
||||||
dprint(path)
|
dprint(path)
|
||||||
|
|
||||||
|
|
||||||
func _on_Logo_gui_input(event) -> void:
|
|
||||||
# I should probably replace this with an "About Dialogic" dialog
|
|
||||||
if event is InputEventMouseButton and event.button_index == 1:
|
|
||||||
OS.shell_open("https://github.com/coppolaemilio/dialogic")
|
|
||||||
|
|
||||||
|
|
||||||
func dprint(what) -> void:
|
func dprint(what) -> void:
|
||||||
if debug_mode:
|
if debug_mode:
|
||||||
print(what)
|
print(what)
|
||||||
|
|
|
@ -1,24 +1,21 @@
|
||||||
[gd_scene load_steps=20 format=2]
|
[gd_scene load_steps=17 format=2]
|
||||||
|
|
||||||
[ext_resource path="res://addons/dialogic/Editor/EditorView.gd" type="Script" id=1]
|
[ext_resource path="res://addons/dialogic/Editor/EditorView.gd" type="Script" id=1]
|
||||||
[ext_resource path="res://addons/dialogic/Editor/TimelineEditor/TimelineEditor.tscn" type="PackedScene" id=2]
|
[ext_resource path="res://addons/dialogic/Editor/TimelineEditor/TimelineEditor.tscn" type="PackedScene" id=2]
|
||||||
[ext_resource path="res://addons/dialogic/Images/Toolbar/add-timeline.svg" type="Texture" id=3]
|
[ext_resource path="res://addons/dialogic/Images/Toolbar/add-character.svg" type="Texture" id=3]
|
||||||
[ext_resource path="res://addons/dialogic/Images/Toolbar/add-character.svg" type="Texture" id=4]
|
[ext_resource path="res://addons/dialogic/Images/Toolbar/add-timeline.svg" type="Texture" id=4]
|
||||||
[ext_resource path="res://addons/dialogic/Images/Toolbar/add-theme.svg" type="Texture" id=5]
|
[ext_resource path="res://addons/dialogic/Images/Toolbar/add-definition.svg" type="Texture" id=5]
|
||||||
[ext_resource path="res://addons/dialogic/Editor/SettingsEditor/SettingsEditor.tscn" type="PackedScene" id=6]
|
[ext_resource path="res://addons/dialogic/Editor/SettingsEditor/SettingsEditor.tscn" type="PackedScene" id=6]
|
||||||
[ext_resource path="res://addons/dialogic/Editor/CharacterEditor/CharacterEditor.tscn" type="PackedScene" id=7]
|
[ext_resource path="res://addons/dialogic/Editor/CharacterEditor/CharacterEditor.tscn" type="PackedScene" id=7]
|
||||||
[ext_resource path="res://addons/dialogic/Editor/ThemeEditor/ThemeEditor.tscn" type="PackedScene" id=8]
|
[ext_resource path="res://addons/dialogic/Editor/ThemeEditor/ThemeEditor.tscn" type="PackedScene" id=8]
|
||||||
[ext_resource path="res://addons/dialogic/Images/open-icon.svg" type="Texture" id=9]
|
|
||||||
[ext_resource path="res://addons/dialogic/Images/closed-icon.svg" type="Texture" id=10]
|
|
||||||
[ext_resource path="res://addons/dialogic/Images/ActionCopy.svg" type="Texture" id=11]
|
[ext_resource path="res://addons/dialogic/Images/ActionCopy.svg" type="Texture" id=11]
|
||||||
[ext_resource path="res://addons/dialogic/Editor/DefinitionEditor/DefinitionEditor.tscn" type="PackedScene" id=12]
|
[ext_resource path="res://addons/dialogic/Editor/DefinitionEditor/DefinitionEditor.tscn" type="PackedScene" id=12]
|
||||||
[ext_resource path="res://addons/dialogic/Images/Toolbar/add-definition.svg" type="Texture" id=13]
|
[ext_resource path="res://addons/dialogic/Images/Toolbar/add-theme.svg" type="Texture" id=13]
|
||||||
[ext_resource path="res://addons/dialogic/Images/logo.png" type="Texture" id=14]
|
|
||||||
[ext_resource path="res://addons/dialogic/Images/Remove.svg" type="Texture" id=22]
|
[ext_resource path="res://addons/dialogic/Images/Remove.svg" type="Texture" id=22]
|
||||||
[ext_resource path="res://addons/dialogic/Images/Filesystem.svg" type="Texture" id=26]
|
[ext_resource path="res://addons/dialogic/Images/Filesystem.svg" type="Texture" id=26]
|
||||||
[ext_resource path="res://addons/dialogic/Editor/MasterTree/MasterTree.tscn" type="PackedScene" id=35]
|
[ext_resource path="res://addons/dialogic/Editor/MasterTree/MasterTree.tscn" type="PackedScene" id=35]
|
||||||
|
|
||||||
[sub_resource type="Image" id=3]
|
[sub_resource type="Image" id=1]
|
||||||
data = {
|
data = {
|
||||||
"data": PoolByteArray( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ),
|
"data": PoolByteArray( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ),
|
||||||
"format": "LumAlpha8",
|
"format": "LumAlpha8",
|
||||||
|
@ -30,16 +27,12 @@ data = {
|
||||||
[sub_resource type="ImageTexture" id=2]
|
[sub_resource type="ImageTexture" id=2]
|
||||||
flags = 4
|
flags = 4
|
||||||
flags = 4
|
flags = 4
|
||||||
image = SubResource( 3 )
|
image = SubResource( 1 )
|
||||||
size = Vector2( 16, 16 )
|
size = Vector2( 16, 16 )
|
||||||
|
|
||||||
[node name="EditorView" type="Control"]
|
[node name="EditorView" type="Control"]
|
||||||
anchor_right = 1.0
|
anchor_right = 1.0
|
||||||
anchor_bottom = 1.0
|
anchor_bottom = 1.0
|
||||||
margin_left = 8.0
|
|
||||||
margin_top = 8.0
|
|
||||||
margin_right = -8.0
|
|
||||||
margin_bottom = -8.0
|
|
||||||
rect_min_size = Vector2( 0, 200 )
|
rect_min_size = Vector2( 0, 200 )
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
|
@ -50,7 +43,7 @@ __meta__ = {
|
||||||
|
|
||||||
[node name="ToolBar" type="HBoxContainer" parent="."]
|
[node name="ToolBar" type="HBoxContainer" parent="."]
|
||||||
anchor_right = 1.0
|
anchor_right = 1.0
|
||||||
margin_bottom = 30.0
|
margin_bottom = 32.0
|
||||||
custom_constants/separation = 0
|
custom_constants/separation = 0
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
"_edit_use_anchors_": false
|
"_edit_use_anchors_": false
|
||||||
|
@ -58,119 +51,118 @@ __meta__ = {
|
||||||
|
|
||||||
[node name="NewTimelineButton" type="Button" parent="ToolBar"]
|
[node name="NewTimelineButton" type="Button" parent="ToolBar"]
|
||||||
self_modulate = Color( 0.870588, 0.870588, 0.870588, 1 )
|
self_modulate = Color( 0.870588, 0.870588, 0.870588, 1 )
|
||||||
margin_right = 34.0
|
margin_right = 28.0
|
||||||
margin_bottom = 30.0
|
margin_bottom = 32.0
|
||||||
hint_tooltip = "New Timeline"
|
hint_tooltip = "New Timeline"
|
||||||
focus_mode = 0
|
focus_mode = 0
|
||||||
icon = ExtResource( 3 )
|
icon = ExtResource( 4 )
|
||||||
flat = true
|
flat = true
|
||||||
|
|
||||||
[node name="NewCharactersButton" type="ToolButton" parent="ToolBar"]
|
[node name="NewCharactersButton" type="ToolButton" parent="ToolBar"]
|
||||||
self_modulate = Color( 0.870588, 0.870588, 0.870588, 1 )
|
self_modulate = Color( 0.870588, 0.870588, 0.870588, 1 )
|
||||||
margin_left = 34.0
|
margin_left = 28.0
|
||||||
margin_right = 68.0
|
margin_right = 56.0
|
||||||
margin_bottom = 30.0
|
margin_bottom = 32.0
|
||||||
hint_tooltip = "New Character"
|
hint_tooltip = "New Character"
|
||||||
focus_mode = 0
|
focus_mode = 0
|
||||||
icon = ExtResource( 4 )
|
icon = ExtResource( 3 )
|
||||||
|
|
||||||
[node name="NewDefinitionButton" type="Button" parent="ToolBar"]
|
[node name="NewDefinitionButton" type="Button" parent="ToolBar"]
|
||||||
self_modulate = Color( 0.870588, 0.870588, 0.870588, 1 )
|
self_modulate = Color( 0.870588, 0.870588, 0.870588, 1 )
|
||||||
margin_left = 68.0
|
margin_left = 56.0
|
||||||
margin_right = 102.0
|
margin_right = 84.0
|
||||||
margin_bottom = 30.0
|
margin_bottom = 32.0
|
||||||
hint_tooltip = "New Definition"
|
hint_tooltip = "New Definition"
|
||||||
focus_mode = 0
|
focus_mode = 0
|
||||||
icon = ExtResource( 13 )
|
|
||||||
flat = true
|
|
||||||
|
|
||||||
[node name="NewThemeButton" type="Button" parent="ToolBar"]
|
|
||||||
self_modulate = Color( 0.870588, 0.870588, 0.870588, 1 )
|
|
||||||
margin_left = 102.0
|
|
||||||
margin_right = 136.0
|
|
||||||
margin_bottom = 30.0
|
|
||||||
hint_tooltip = "New Theme"
|
|
||||||
focus_mode = 0
|
|
||||||
icon = ExtResource( 5 )
|
icon = ExtResource( 5 )
|
||||||
flat = true
|
flat = true
|
||||||
|
|
||||||
|
[node name="NewThemeButton" type="Button" parent="ToolBar"]
|
||||||
|
self_modulate = Color( 0.870588, 0.870588, 0.870588, 1 )
|
||||||
|
margin_left = 84.0
|
||||||
|
margin_right = 112.0
|
||||||
|
margin_bottom = 32.0
|
||||||
|
hint_tooltip = "New Theme"
|
||||||
|
focus_mode = 0
|
||||||
|
icon = ExtResource( 13 )
|
||||||
|
flat = true
|
||||||
|
|
||||||
[node name="FoldTools" type="HBoxContainer" parent="ToolBar"]
|
[node name="FoldTools" type="HBoxContainer" parent="ToolBar"]
|
||||||
visible = false
|
visible = false
|
||||||
margin_left = 136.0
|
margin_left = 112.0
|
||||||
margin_right = 271.0
|
margin_right = 203.0
|
||||||
margin_bottom = 30.0
|
margin_bottom = 32.0
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="ToolBar/FoldTools"]
|
[node name="Label" type="Label" parent="ToolBar/FoldTools"]
|
||||||
margin_top = 8.0
|
margin_top = 9.0
|
||||||
margin_right = 59.0
|
margin_right = 59.0
|
||||||
margin_bottom = 22.0
|
margin_bottom = 23.0
|
||||||
text = " Fold "
|
text = " Fold "
|
||||||
|
|
||||||
[node name="ButtonFold" type="Button" parent="ToolBar/FoldTools"]
|
[node name="ButtonFold" type="ToolButton" parent="ToolBar/FoldTools"]
|
||||||
margin_left = 63.0
|
margin_left = 63.0
|
||||||
margin_right = 97.0
|
margin_right = 75.0
|
||||||
margin_bottom = 30.0
|
margin_bottom = 32.0
|
||||||
icon = ExtResource( 10 )
|
icon = SubResource( 2 )
|
||||||
align = 0
|
align = 0
|
||||||
|
|
||||||
[node name="ButtonUnfold" type="Button" parent="ToolBar/FoldTools"]
|
[node name="ButtonUnfold" type="ToolButton" parent="ToolBar/FoldTools"]
|
||||||
margin_left = 101.0
|
margin_left = 79.0
|
||||||
margin_right = 135.0
|
margin_right = 91.0
|
||||||
margin_bottom = 30.0
|
margin_bottom = 32.0
|
||||||
icon = ExtResource( 9 )
|
icon = SubResource( 2 )
|
||||||
align = 0
|
align = 0
|
||||||
|
|
||||||
[node name="Spacer" type="Control" parent="ToolBar"]
|
[node name="Spacer" type="Control" parent="ToolBar"]
|
||||||
margin_left = 136.0
|
margin_left = 112.0
|
||||||
margin_right = 751.0
|
margin_right = 832.0
|
||||||
margin_bottom = 30.0
|
margin_bottom = 32.0
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
|
|
||||||
[node name="Docs" type="ToolButton" parent="ToolBar"]
|
[node name="Docs" type="ToolButton" parent="ToolBar"]
|
||||||
self_modulate = Color( 0.870588, 0.870588, 0.870588, 1 )
|
self_modulate = Color( 0.870588, 0.870588, 0.870588, 1 )
|
||||||
margin_left = 751.0
|
margin_left = 832.0
|
||||||
margin_right = 861.0
|
margin_right = 942.0
|
||||||
margin_bottom = 30.0
|
margin_bottom = 32.0
|
||||||
hint_tooltip = "Theme Editor"
|
hint_tooltip = "Theme Editor"
|
||||||
mouse_default_cursor_shape = 2
|
mouse_default_cursor_shape = 2
|
||||||
text = "Online Docs"
|
text = "Online Docs"
|
||||||
icon = SubResource( 2 )
|
icon = SubResource( 2 )
|
||||||
|
|
||||||
[node name="Logo" type="TextureRect" parent="ToolBar"]
|
|
||||||
margin_left = 861.0
|
|
||||||
margin_right = 981.0
|
|
||||||
margin_bottom = 30.0
|
|
||||||
rect_min_size = Vector2( 120, 0 )
|
|
||||||
mouse_default_cursor_shape = 2
|
|
||||||
texture = ExtResource( 14 )
|
|
||||||
expand = true
|
|
||||||
stretch_mode = 5
|
|
||||||
|
|
||||||
[node name="Version" type="Label" parent="ToolBar"]
|
[node name="Version" type="Label" parent="ToolBar"]
|
||||||
self_modulate = Color( 1, 1, 1, 0.631373 )
|
self_modulate = Color( 1, 1, 1, 0.631373 )
|
||||||
margin_left = 981.0
|
margin_left = 942.0
|
||||||
margin_top = 8.0
|
margin_top = 9.0
|
||||||
margin_right = 1008.0
|
margin_right = 1024.0
|
||||||
margin_bottom = 22.0
|
margin_bottom = 23.0
|
||||||
text = "v1.0"
|
text = "Dialogic v1.1"
|
||||||
|
|
||||||
[node name="MainPanel" type="HSplitContainer" parent="."]
|
[node name="MainPanel" type="HSplitContainer" parent="."]
|
||||||
anchor_right = 1.0
|
anchor_right = 1.0
|
||||||
anchor_bottom = 1.0
|
anchor_bottom = 1.0
|
||||||
margin_left = 6.0
|
|
||||||
margin_top = 38.0
|
margin_top = 38.0
|
||||||
margin_right = -5.0
|
|
||||||
margin_bottom = -5.0
|
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
"_edit_use_anchors_": false
|
"_edit_use_anchors_": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[node name="MasterTree" parent="MainPanel" instance=ExtResource( 35 )]
|
[node name="MasterTreeContainer" type="VBoxContainer" parent="MainPanel"]
|
||||||
|
margin_right = 150.0
|
||||||
|
margin_bottom = 562.0
|
||||||
|
|
||||||
|
[node name="FilterMasterTreeEdit" type="LineEdit" parent="MainPanel/MasterTreeContainer"]
|
||||||
|
margin_right = 150.0
|
||||||
|
margin_bottom = 26.0
|
||||||
|
clear_button_enabled = true
|
||||||
|
right_icon = SubResource( 2 )
|
||||||
|
placeholder_text = "Filter"
|
||||||
|
|
||||||
|
[node name="MasterTree" parent="MainPanel/MasterTreeContainer" instance=ExtResource( 35 )]
|
||||||
anchor_right = 0.0
|
anchor_right = 0.0
|
||||||
anchor_bottom = 0.0
|
anchor_bottom = 0.0
|
||||||
margin_right = 180.0
|
margin_top = 30.0
|
||||||
margin_bottom = 541.0
|
margin_right = 150.0
|
||||||
rect_min_size = Vector2( 180, 0 )
|
margin_bottom = 562.0
|
||||||
|
rect_min_size = Vector2( 150, 0 )
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
|
|
||||||
[node name="TimelineEditor" parent="MainPanel" instance=ExtResource( 2 )]
|
[node name="TimelineEditor" parent="MainPanel" instance=ExtResource( 2 )]
|
||||||
|
@ -194,15 +186,15 @@ margin_right = 1253.0
|
||||||
margin_bottom = 661.0
|
margin_bottom = 661.0
|
||||||
|
|
||||||
[node name="Empty" type="CenterContainer" parent="MainPanel"]
|
[node name="Empty" type="CenterContainer" parent="MainPanel"]
|
||||||
margin_left = 192.0
|
margin_left = 162.0
|
||||||
margin_right = 997.0
|
margin_right = 1024.0
|
||||||
margin_bottom = 541.0
|
margin_bottom = 562.0
|
||||||
|
|
||||||
[node name="VBoxContainer" type="VBoxContainer" parent="MainPanel/Empty"]
|
[node name="VBoxContainer" type="VBoxContainer" parent="MainPanel/Empty"]
|
||||||
margin_left = 262.0
|
margin_left = 291.0
|
||||||
margin_top = 263.0
|
margin_top = 274.0
|
||||||
margin_right = 542.0
|
margin_right = 571.0
|
||||||
margin_bottom = 277.0
|
margin_bottom = 288.0
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="MainPanel/Empty/VBoxContainer"]
|
[node name="Label" type="Label" parent="MainPanel/Empty/VBoxContainer"]
|
||||||
margin_right = 280.0
|
margin_right = 280.0
|
||||||
|
@ -234,7 +226,7 @@ margin_left = 171.799
|
||||||
margin_top = 209.0
|
margin_top = 209.0
|
||||||
margin_right = 267.799
|
margin_right = 267.799
|
||||||
margin_bottom = 229.0
|
margin_bottom = 229.0
|
||||||
items = [ "Show in File Manager", ExtResource( 26 ), 0, false, false, 0, 0, null, "", false, "Remove Theme", ExtResource( 22 ), 0, false, false, 1, 0, null, "", false ]
|
items = [ "Show in File Manager", ExtResource( 26 ), 0, false, false, 0, 0, null, "", false, "Remove Theme", ExtResource( 22 ), 0, false, false, 1, 0, null, "", false, "Duplicate Theme", ExtResource( 11 ), 0, false, false, 2, 0, null, "", false ]
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
"_edit_use_anchors_": false
|
"_edit_use_anchors_": false
|
||||||
}
|
}
|
||||||
|
@ -298,4 +290,3 @@ dialog_text = "Are you sure you want to remove this timeline?
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
"_edit_use_anchors_": false
|
"_edit_use_anchors_": false
|
||||||
}
|
}
|
||||||
[connection signal="gui_input" from="ToolBar/Logo" to="." method="_on_Logo_gui_input"]
|
|
||||||
|
|
|
@ -1,26 +1,31 @@
|
||||||
tool
|
tool
|
||||||
extends Tree
|
extends Tree
|
||||||
|
|
||||||
onready var editor_reference = get_node('../..')
|
onready var editor_reference = get_node('../../../')
|
||||||
onready var timeline_editor = get_node('../TimelineEditor')
|
onready var timeline_editor = get_node('../../TimelineEditor')
|
||||||
onready var character_editor = get_node('../CharacterEditor')
|
onready var character_editor = get_node('../../CharacterEditor')
|
||||||
onready var definition_editor = get_node('../DefinitionEditor')
|
onready var definition_editor = get_node('../../DefinitionEditor')
|
||||||
onready var settings_editor = get_node('../SettingsEditor')
|
onready var settings_editor = get_node('../../SettingsEditor')
|
||||||
onready var theme_editor = get_node('../ThemeEditor')
|
onready var theme_editor = get_node('../../ThemeEditor')
|
||||||
onready var empty_editor = get_node('../Empty')
|
onready var empty_editor = get_node('../../Empty')
|
||||||
|
onready var filter_tree_edit = get_node('../FilterMasterTreeEdit')
|
||||||
|
|
||||||
onready var tree = self
|
onready var tree = self
|
||||||
var timeline_icon = load("res://addons/dialogic/Images/timeline.svg")
|
|
||||||
var character_icon = load("res://addons/dialogic/Images/character.svg")
|
var timeline_icon
|
||||||
var theme_icon = load("res://addons/dialogic/Images/Resources/theme.svg")
|
var character_icon
|
||||||
var definition_icon = load("res://addons/dialogic/Images/Resources/definition.svg")
|
var theme_icon
|
||||||
var glossary_icon = load("res://addons/dialogic/Images/Resources/glossary.svg")
|
var definition_icon
|
||||||
|
var glossary_icon
|
||||||
|
|
||||||
var timelines_tree
|
var timelines_tree
|
||||||
var characters_tree
|
var characters_tree
|
||||||
var definitions_tree
|
var definitions_tree
|
||||||
var themes_tree
|
var themes_tree
|
||||||
var settings_tree
|
var settings_tree
|
||||||
|
|
||||||
|
var filter_tree_term = ''
|
||||||
|
|
||||||
signal editor_selected(selected)
|
signal editor_selected(selected)
|
||||||
|
|
||||||
func _ready():
|
func _ready():
|
||||||
|
@ -28,26 +33,49 @@ func _ready():
|
||||||
var root = tree.create_item()
|
var root = tree.create_item()
|
||||||
tree.set_hide_root(true)
|
tree.set_hide_root(true)
|
||||||
|
|
||||||
|
var modifier = ''
|
||||||
|
var _scale = get_constant("inspector_margin", "Editor")
|
||||||
|
_scale = _scale * 0.125
|
||||||
|
rect_min_size.x = 150
|
||||||
|
if _scale == 1.25:
|
||||||
|
modifier = '-1.25'
|
||||||
|
rect_min_size.x = 180
|
||||||
|
if _scale == 1.5:
|
||||||
|
modifier = '-1.25'
|
||||||
|
rect_min_size.x = 250
|
||||||
|
if _scale == 1.75:
|
||||||
|
modifier = '-1.25'
|
||||||
|
rect_min_size.x = 250
|
||||||
|
if _scale == 2:
|
||||||
|
modifier = '-2'
|
||||||
|
rect_min_size.x = 360
|
||||||
|
rect_size.x = 0
|
||||||
|
timeline_icon = load("res://addons/dialogic/Images/Resources/timeline" + modifier + ".svg")
|
||||||
|
character_icon = load("res://addons/dialogic/Images/Resources/character" + modifier + ".svg")
|
||||||
|
theme_icon = load("res://addons/dialogic/Images/Resources/theme" + modifier + ".svg")
|
||||||
|
definition_icon = load("res://addons/dialogic/Images/Resources/definition" + modifier + ".svg")
|
||||||
|
glossary_icon = load("res://addons/dialogic/Images/Resources/glossary" + modifier + ".svg")
|
||||||
|
|
||||||
# Creating the parents
|
# Creating the parents
|
||||||
timelines_tree = tree.create_item(root)
|
timelines_tree = tree.create_item(root)
|
||||||
timelines_tree.set_selectable(0, false)
|
timelines_tree.set_selectable(0, false)
|
||||||
timelines_tree.set_text(0, "Timelines")
|
timelines_tree.set_text(0, "Timelines")
|
||||||
#timelines_tree.set_icon(0, get_icon("Folder", "EditorIcons"))
|
timelines_tree.set_icon(0, get_icon("Folder", "EditorIcons"))
|
||||||
|
|
||||||
characters_tree = tree.create_item(root)
|
characters_tree = tree.create_item(root)
|
||||||
characters_tree.set_selectable(0, false)
|
characters_tree.set_selectable(0, false)
|
||||||
characters_tree.set_text(0, "Characters")
|
characters_tree.set_text(0, "Characters")
|
||||||
#characters_tree.set_icon(0, get_icon("Folder", "EditorIcons"))
|
characters_tree.set_icon(0, get_icon("Folder", "EditorIcons"))
|
||||||
|
|
||||||
definitions_tree = tree.create_item(root)
|
definitions_tree = tree.create_item(root)
|
||||||
definitions_tree.set_selectable(0, false)
|
definitions_tree.set_selectable(0, false)
|
||||||
definitions_tree.set_text(0, "Definitions")
|
definitions_tree.set_text(0, "Definitions")
|
||||||
#definitions_tree.set_icon(0, get_icon("Folder", "EditorIcons"))
|
definitions_tree.set_icon(0, get_icon("Folder", "EditorIcons"))
|
||||||
|
|
||||||
themes_tree = tree.create_item(root)
|
themes_tree = tree.create_item(root)
|
||||||
themes_tree.set_selectable(0, false)
|
themes_tree.set_selectable(0, false)
|
||||||
themes_tree.set_text(0, "Themes")
|
themes_tree.set_text(0, "Themes")
|
||||||
#themes_tree.set_icon(0, get_icon("Folder", "EditorIcons"))
|
themes_tree.set_icon(0, get_icon("Folder", "EditorIcons"))
|
||||||
|
|
||||||
settings_tree = tree.create_item(root)
|
settings_tree = tree.create_item(root)
|
||||||
settings_tree.set_selectable(0, true)
|
settings_tree.set_selectable(0, true)
|
||||||
|
@ -62,6 +90,8 @@ func _ready():
|
||||||
connect('item_edited', self, '_on_item_edited')
|
connect('item_edited', self, '_on_item_edited')
|
||||||
$RenamerReset.connect("timeout", self, '_on_renamer_reset_timeout')
|
$RenamerReset.connect("timeout", self, '_on_renamer_reset_timeout')
|
||||||
|
|
||||||
|
filter_tree_edit.connect("text_changed", self, '_on_filter_tree_edit_changed')
|
||||||
|
|
||||||
#var subchild1 = tree.create_item(timelines_tree)
|
#var subchild1 = tree.create_item(timelines_tree)
|
||||||
#subchild1.set_text(0, "Subchild1")
|
#subchild1.set_text(0, "Subchild1")
|
||||||
|
|
||||||
|
@ -93,7 +123,13 @@ func _clear_tree_children(parent: TreeItem):
|
||||||
func build_timelines(selected_item: String=''):
|
func build_timelines(selected_item: String=''):
|
||||||
_clear_tree_children(timelines_tree)
|
_clear_tree_children(timelines_tree)
|
||||||
for t in DialogicUtil.get_sorted_timeline_list():
|
for t in DialogicUtil.get_sorted_timeline_list():
|
||||||
_add_timeline(t, not selected_item.empty() and t['file'] == selected_item)
|
if (filter_tree_term != ''):
|
||||||
|
if (filter_tree_term.to_lower() in t['file'].to_lower() or filter_tree_term.to_lower() in t['name'].to_lower()):
|
||||||
|
_add_timeline(t, not selected_item.empty() and t['file'] == selected_item)
|
||||||
|
else:
|
||||||
|
_add_timeline(t, not selected_item.empty() and t['file'] == selected_item)
|
||||||
|
# force redraw control
|
||||||
|
update()
|
||||||
|
|
||||||
|
|
||||||
func _add_timeline(timeline, select = false):
|
func _add_timeline(timeline, select = false):
|
||||||
|
@ -115,7 +151,13 @@ func _add_timeline(timeline, select = false):
|
||||||
func build_themes(selected_item: String=''):
|
func build_themes(selected_item: String=''):
|
||||||
_clear_tree_children(themes_tree)
|
_clear_tree_children(themes_tree)
|
||||||
for t in DialogicUtil.get_sorted_theme_list():
|
for t in DialogicUtil.get_sorted_theme_list():
|
||||||
_add_theme(t, not selected_item.empty() and t['file'] == selected_item)
|
if (filter_tree_term != ''):
|
||||||
|
if (filter_tree_term.to_lower() in t['file'].to_lower() or filter_tree_term.to_lower() in t['name'].to_lower()):
|
||||||
|
_add_theme(t, not selected_item.empty() and t['file'] == selected_item)
|
||||||
|
else:
|
||||||
|
_add_theme(t, not selected_item.empty() and t['file'] == selected_item)
|
||||||
|
# force redraw tree
|
||||||
|
update()
|
||||||
|
|
||||||
|
|
||||||
func _add_theme(theme_item, select = false):
|
func _add_theme(theme_item, select = false):
|
||||||
|
@ -133,7 +175,13 @@ func _add_theme(theme_item, select = false):
|
||||||
func build_characters(selected_item: String=''):
|
func build_characters(selected_item: String=''):
|
||||||
_clear_tree_children(characters_tree)
|
_clear_tree_children(characters_tree)
|
||||||
for t in DialogicUtil.get_sorted_character_list():
|
for t in DialogicUtil.get_sorted_character_list():
|
||||||
_add_character(t, not selected_item.empty() and t['file'] == selected_item)
|
if (filter_tree_term != ''):
|
||||||
|
if (filter_tree_term.to_lower() in t['file'].to_lower() or filter_tree_term.to_lower() in t['name'].to_lower()):
|
||||||
|
_add_character(t, not selected_item.empty() and t['file'] == selected_item)
|
||||||
|
else:
|
||||||
|
_add_character(t, not selected_item.empty() and t['file'] == selected_item)
|
||||||
|
# force redraw tree
|
||||||
|
update()
|
||||||
|
|
||||||
|
|
||||||
func _add_character(character, select = false):
|
func _add_character(character, select = false):
|
||||||
|
@ -156,7 +204,13 @@ func _add_character(character, select = false):
|
||||||
func build_definitions(selected_item: String=''):
|
func build_definitions(selected_item: String=''):
|
||||||
_clear_tree_children(definitions_tree)
|
_clear_tree_children(definitions_tree)
|
||||||
for t in DialogicUtil.get_sorted_default_definitions_list():
|
for t in DialogicUtil.get_sorted_default_definitions_list():
|
||||||
_add_definition(t, not selected_item.empty() and t['id'] == selected_item)
|
if (filter_tree_term != ''):
|
||||||
|
if (filter_tree_term.to_lower() in t['name'].to_lower()):
|
||||||
|
_add_definition(t, not selected_item.empty() and t['id'] == selected_item)
|
||||||
|
else:
|
||||||
|
_add_definition(t, not selected_item.empty() and t['id'] == selected_item)
|
||||||
|
# force redraw tree
|
||||||
|
update()
|
||||||
|
|
||||||
|
|
||||||
func _add_definition(definition, select = false):
|
func _add_definition(definition, select = false):
|
||||||
|
@ -209,6 +263,7 @@ func show_character_editor():
|
||||||
settings_editor.visible = false
|
settings_editor.visible = false
|
||||||
empty_editor.visible = false
|
empty_editor.visible = false
|
||||||
|
|
||||||
|
|
||||||
func show_timeline_editor():
|
func show_timeline_editor():
|
||||||
emit_signal("editor_selected", 'timeline')
|
emit_signal("editor_selected", 'timeline')
|
||||||
character_editor.visible = false
|
character_editor.visible = false
|
||||||
|
@ -218,6 +273,7 @@ func show_timeline_editor():
|
||||||
settings_editor.visible = false
|
settings_editor.visible = false
|
||||||
empty_editor.visible = false
|
empty_editor.visible = false
|
||||||
|
|
||||||
|
|
||||||
func show_definition_editor():
|
func show_definition_editor():
|
||||||
emit_signal("editor_selected", 'definition')
|
emit_signal("editor_selected", 'definition')
|
||||||
character_editor.visible = false
|
character_editor.visible = false
|
||||||
|
@ -227,6 +283,7 @@ func show_definition_editor():
|
||||||
settings_editor.visible = false
|
settings_editor.visible = false
|
||||||
empty_editor.visible = false
|
empty_editor.visible = false
|
||||||
|
|
||||||
|
|
||||||
func show_theme_editor():
|
func show_theme_editor():
|
||||||
emit_signal("editor_selected", 'theme')
|
emit_signal("editor_selected", 'theme')
|
||||||
character_editor.visible = false
|
character_editor.visible = false
|
||||||
|
@ -236,6 +293,7 @@ func show_theme_editor():
|
||||||
settings_editor.visible = false
|
settings_editor.visible = false
|
||||||
empty_editor.visible = false
|
empty_editor.visible = false
|
||||||
|
|
||||||
|
|
||||||
func show_settings_editor():
|
func show_settings_editor():
|
||||||
emit_signal("editor_selected", 'theme')
|
emit_signal("editor_selected", 'theme')
|
||||||
character_editor.visible = false
|
character_editor.visible = false
|
||||||
|
@ -245,6 +303,7 @@ func show_settings_editor():
|
||||||
settings_editor.visible = true
|
settings_editor.visible = true
|
||||||
empty_editor.visible = false
|
empty_editor.visible = false
|
||||||
|
|
||||||
|
|
||||||
func hide_all_editors():
|
func hide_all_editors():
|
||||||
emit_signal("editor_selected", 'none')
|
emit_signal("editor_selected", 'none')
|
||||||
character_editor.visible = false
|
character_editor.visible = false
|
||||||
|
@ -279,7 +338,8 @@ func remove_selected():
|
||||||
|
|
||||||
|
|
||||||
func refresh_timeline_list():
|
func refresh_timeline_list():
|
||||||
print('update timeline list')
|
#print('update timeline list')
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
func _on_renamer_reset_timeout():
|
func _on_renamer_reset_timeout():
|
||||||
|
@ -296,7 +356,6 @@ func _on_gui_input(event):
|
||||||
|
|
||||||
|
|
||||||
func _on_item_edited():
|
func _on_item_edited():
|
||||||
print('edited')
|
|
||||||
var item = get_selected()
|
var item = get_selected()
|
||||||
var metadata = item.get_metadata(0)
|
var metadata = item.get_metadata(0)
|
||||||
if metadata['editor'] == 'Timeline':
|
if metadata['editor'] == 'Timeline':
|
||||||
|
@ -322,6 +381,14 @@ func _on_autosave_timeout():
|
||||||
save_current_resource()
|
save_current_resource()
|
||||||
|
|
||||||
|
|
||||||
|
func _on_filter_tree_edit_changed(value):
|
||||||
|
filter_tree_term = value
|
||||||
|
build_timelines()
|
||||||
|
build_themes()
|
||||||
|
build_characters()
|
||||||
|
build_definitions()
|
||||||
|
|
||||||
|
|
||||||
func save_current_resource():
|
func save_current_resource():
|
||||||
var root = get_node('../..') # This is the same as the editor_reference
|
var root = get_node('../..') # This is the same as the editor_reference
|
||||||
if root.visible: #Only save if the editor is open
|
if root.visible: #Only save if the editor is open
|
||||||
|
@ -336,3 +403,56 @@ func save_current_resource():
|
||||||
if metadata['editor'] == 'Definition':
|
if metadata['editor'] == 'Definition':
|
||||||
definition_editor.save_definition()
|
definition_editor.save_definition()
|
||||||
# Note: Theme files auto saves on change
|
# Note: Theme files auto saves on change
|
||||||
|
|
||||||
|
|
||||||
|
func select_timeline_item(timeline_name):
|
||||||
|
if (timeline_name == ''):
|
||||||
|
return
|
||||||
|
|
||||||
|
var main_item = tree.get_root().get_children()
|
||||||
|
|
||||||
|
# wow, godots tree traversal is extremly odd, or I just don't get it
|
||||||
|
while (main_item):
|
||||||
|
|
||||||
|
if (main_item == null):
|
||||||
|
break
|
||||||
|
|
||||||
|
if (main_item.has_method("get_text") && main_item.get_text(0) == "Timelines"):
|
||||||
|
var item = main_item.get_children()
|
||||||
|
while (item):
|
||||||
|
|
||||||
|
if (not item.has_method("get_metadata")):
|
||||||
|
item = item.get_next()
|
||||||
|
continue
|
||||||
|
|
||||||
|
var meta = item.get_metadata(0)
|
||||||
|
|
||||||
|
if (meta == null):
|
||||||
|
item = item.get_next()
|
||||||
|
continue
|
||||||
|
|
||||||
|
if (not meta.has("editor") or meta["editor"] != "Timeline"):
|
||||||
|
item = item.get_next()
|
||||||
|
continue
|
||||||
|
|
||||||
|
# search for filename
|
||||||
|
if (meta.has("file") and meta["file"] == timeline_name):
|
||||||
|
# select this one
|
||||||
|
item.select(0)
|
||||||
|
return;
|
||||||
|
|
||||||
|
# search for name
|
||||||
|
if (meta.has("name") and meta["name"] == timeline_name):
|
||||||
|
# select this one
|
||||||
|
item.select(0)
|
||||||
|
return;
|
||||||
|
|
||||||
|
item = item.get_next()
|
||||||
|
break
|
||||||
|
else:
|
||||||
|
main_item = main_item.get_next()
|
||||||
|
|
||||||
|
# fallback
|
||||||
|
hide_all_editors()
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
93
addons/dialogic/Editor/Pieces/CallNode.gd
Normal file
|
@ -0,0 +1,93 @@
|
||||||
|
tool
|
||||||
|
extends Control
|
||||||
|
|
||||||
|
var editor_reference
|
||||||
|
var editorPopup
|
||||||
|
|
||||||
|
|
||||||
|
# This is the information of this event and it will get parsed and saved to the JSON file.
|
||||||
|
var event_data = {
|
||||||
|
'call_node': {
|
||||||
|
'target_node_path': '',
|
||||||
|
'method_name': '',
|
||||||
|
'arguments': []
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
func load_data(data):
|
||||||
|
event_data = data
|
||||||
|
|
||||||
|
if (not event_data['call_node']['arguments'] is Array):
|
||||||
|
event_data['call_node']['arguments'] = []
|
||||||
|
|
||||||
|
for i in range(event_data['call_node']['arguments'].size()):
|
||||||
|
if (event_data['call_node']['arguments'][i] == null):
|
||||||
|
event_data['call_node']['arguments'][i] = ''
|
||||||
|
|
||||||
|
$PanelContainer/VBoxContainer/Properties/TargetNodeEdit.text = event_data['call_node']['target_node_path']
|
||||||
|
$PanelContainer/VBoxContainer/Properties/CallMethodEdit.text = event_data['call_node']['method_name']
|
||||||
|
$PanelContainer/VBoxContainer/Properties/ArgumentsSpinBox.value = event_data['call_node']['arguments'].size()
|
||||||
|
|
||||||
|
_create_argument_controls()
|
||||||
|
|
||||||
|
|
||||||
|
# signal callbacks
|
||||||
|
|
||||||
|
func _on_Target_LineEdit_text_changed(new_text):
|
||||||
|
event_data['call_node']['target_node_path'] = new_text
|
||||||
|
|
||||||
|
func _on_Method_LineEdit_text_changed(new_text):
|
||||||
|
event_data['call_node']['method_name'] = new_text
|
||||||
|
|
||||||
|
func _on_ArgumentsSpinBox_value_changed(value):
|
||||||
|
event_data['call_node']['arguments'].resize(max(0, value))
|
||||||
|
|
||||||
|
for i in range(event_data['call_node']['arguments'].size()):
|
||||||
|
if (event_data['call_node']['arguments'][i] == null):
|
||||||
|
event_data['call_node']['arguments'][i] = ''
|
||||||
|
|
||||||
|
_create_argument_controls()
|
||||||
|
pass
|
||||||
|
|
||||||
|
func _on_argument_value_changed(value, arg_index):
|
||||||
|
if (arg_index < 0 or arg_index >= event_data['call_node']['arguments'].size()):
|
||||||
|
return
|
||||||
|
|
||||||
|
event_data['call_node']['arguments'][arg_index] = str(value)
|
||||||
|
pass
|
||||||
|
|
||||||
|
# helpers
|
||||||
|
func _create_argument_controls():
|
||||||
|
if (not event_data['call_node']['arguments'] is Array):
|
||||||
|
return
|
||||||
|
|
||||||
|
# clear old
|
||||||
|
for c in $PanelContainer/VBoxContainer/Arguments.get_children():
|
||||||
|
$PanelContainer/VBoxContainer/Arguments.remove_child(c)
|
||||||
|
c.queue_free()
|
||||||
|
|
||||||
|
# create controls
|
||||||
|
var index = 0
|
||||||
|
for a in event_data['call_node']['arguments']:
|
||||||
|
var container = HBoxContainer.new()
|
||||||
|
container.name = "Argument%s" % index
|
||||||
|
|
||||||
|
var label = Label.new()
|
||||||
|
label.name = "ArgumentLabel"
|
||||||
|
label.text = "Argument %s:" % index
|
||||||
|
label.rect_min_size.x = 100
|
||||||
|
container.add_child(label)
|
||||||
|
|
||||||
|
var edit = LineEdit.new()
|
||||||
|
edit.name = "ArgumentValue"
|
||||||
|
edit.text = str(a)
|
||||||
|
edit.connect("text_changed", self, "_on_argument_value_changed", [ index ])
|
||||||
|
edit.rect_min_size.x = 250
|
||||||
|
container.add_child(edit)
|
||||||
|
|
||||||
|
$PanelContainer/VBoxContainer/Arguments.add_child(container)
|
||||||
|
|
||||||
|
index += 1
|
||||||
|
|
||||||
|
pass
|
143
addons/dialogic/Editor/Pieces/CallNode.tscn
Normal file
|
@ -0,0 +1,143 @@
|
||||||
|
[gd_scene load_steps=6 format=2]
|
||||||
|
|
||||||
|
[ext_resource path="res://addons/dialogic/Images/Script.svg" type="Texture" id=1]
|
||||||
|
[ext_resource path="res://addons/dialogic/Editor/Pieces/CallNode.gd" type="Script" id=2]
|
||||||
|
[ext_resource path="res://addons/dialogic/Editor/Pieces/Common/Spacer.tscn" type="PackedScene" id=3]
|
||||||
|
[ext_resource path="res://addons/dialogic/Editor/Pieces/Common/PieceExtraSettings.tscn" type="PackedScene" id=4]
|
||||||
|
|
||||||
|
[sub_resource type="StyleBoxFlat" id=1]
|
||||||
|
content_margin_left = 16.0
|
||||||
|
content_margin_right = 6.0
|
||||||
|
content_margin_top = 6.0
|
||||||
|
content_margin_bottom = 6.0
|
||||||
|
bg_color = Color( 0.14902, 0.333333, 0.509804, 0.4 )
|
||||||
|
border_width_left = 2
|
||||||
|
border_width_top = 2
|
||||||
|
border_width_right = 2
|
||||||
|
border_width_bottom = 2
|
||||||
|
border_color = Color( 0.12549, 0.12549, 0.12549, 1 )
|
||||||
|
corner_radius_top_left = 6
|
||||||
|
corner_radius_top_right = 6
|
||||||
|
corner_radius_bottom_right = 6
|
||||||
|
corner_radius_bottom_left = 6
|
||||||
|
|
||||||
|
[node name="CallNode" type="HBoxContainer"]
|
||||||
|
margin_right = 1004.0
|
||||||
|
margin_bottom = 100.0
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
size_flags_vertical = 9
|
||||||
|
script = ExtResource( 2 )
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_use_anchors_": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="Indent" type="Control" parent="."]
|
||||||
|
visible = false
|
||||||
|
margin_bottom = 42.0
|
||||||
|
|
||||||
|
[node name="PanelContainer" type="PanelContainer" parent="."]
|
||||||
|
margin_right = 1004.0
|
||||||
|
margin_bottom = 100.0
|
||||||
|
mouse_filter = 1
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
size_flags_vertical = 3
|
||||||
|
custom_styles/panel = SubResource( 1 )
|
||||||
|
__meta__ = {
|
||||||
|
"_edit_use_anchors_": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="VBoxContainer" type="VBoxContainer" parent="PanelContainer"]
|
||||||
|
margin_left = 16.0
|
||||||
|
margin_top = 6.0
|
||||||
|
margin_right = 998.0
|
||||||
|
margin_bottom = 94.0
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
|
||||||
|
[node name="Header" type="HBoxContainer" parent="PanelContainer/VBoxContainer"]
|
||||||
|
margin_right = 982.0
|
||||||
|
margin_bottom = 28.0
|
||||||
|
|
||||||
|
[node name="TextureRect" type="TextureRect" parent="PanelContainer/VBoxContainer/Header"]
|
||||||
|
margin_right = 22.0
|
||||||
|
margin_bottom = 28.0
|
||||||
|
texture = ExtResource( 1 )
|
||||||
|
stretch_mode = 6
|
||||||
|
|
||||||
|
[node name="Title" type="Label" parent="PanelContainer/VBoxContainer/Header"]
|
||||||
|
margin_left = 26.0
|
||||||
|
margin_top = 7.0
|
||||||
|
margin_right = 87.0
|
||||||
|
margin_bottom = 21.0
|
||||||
|
text = "Call Node"
|
||||||
|
|
||||||
|
[node name="Preview" type="Label" parent="PanelContainer/VBoxContainer/Header"]
|
||||||
|
margin_left = 91.0
|
||||||
|
margin_top = 7.0
|
||||||
|
margin_right = 91.0
|
||||||
|
margin_bottom = 21.0
|
||||||
|
custom_colors/font_color = Color( 1, 1, 1, 0.513726 )
|
||||||
|
|
||||||
|
[node name="Spacer" parent="PanelContainer/VBoxContainer/Header" instance=ExtResource( 3 )]
|
||||||
|
margin_left = 95.0
|
||||||
|
margin_right = 941.0
|
||||||
|
margin_bottom = 28.0
|
||||||
|
|
||||||
|
[node name="OptionButton" parent="PanelContainer/VBoxContainer/Header" instance=ExtResource( 4 )]
|
||||||
|
margin_left = 945.0
|
||||||
|
margin_right = 982.0
|
||||||
|
margin_bottom = 28.0
|
||||||
|
items = [ "Move Up", null, 0, false, false, 0, 0, null, "", false, "Move Down", null, 0, false, false, 1, 0, null, "", false, "", null, 0, false, false, 2, 0, null, "", true, "Remove", null, 0, false, false, 3, 0, null, "", false ]
|
||||||
|
|
||||||
|
[node name="Properties" type="HBoxContainer" parent="PanelContainer/VBoxContainer"]
|
||||||
|
margin_top = 32.0
|
||||||
|
margin_right = 982.0
|
||||||
|
margin_bottom = 56.0
|
||||||
|
custom_constants/separation = 8
|
||||||
|
|
||||||
|
[node name="TargetNodeLabel" type="Label" parent="PanelContainer/VBoxContainer/Properties"]
|
||||||
|
margin_top = 5.0
|
||||||
|
margin_right = 81.0
|
||||||
|
margin_bottom = 19.0
|
||||||
|
text = "Target Node:"
|
||||||
|
|
||||||
|
[node name="TargetNodeEdit" type="LineEdit" parent="PanelContainer/VBoxContainer/Properties"]
|
||||||
|
margin_left = 89.0
|
||||||
|
margin_right = 339.0
|
||||||
|
margin_bottom = 24.0
|
||||||
|
rect_min_size = Vector2( 250, 0 )
|
||||||
|
|
||||||
|
[node name="CallMethodLabel" type="Label" parent="PanelContainer/VBoxContainer/Properties"]
|
||||||
|
margin_left = 347.0
|
||||||
|
margin_top = 5.0
|
||||||
|
margin_right = 427.0
|
||||||
|
margin_bottom = 19.0
|
||||||
|
text = "Call Method:"
|
||||||
|
|
||||||
|
[node name="CallMethodEdit" type="LineEdit" parent="PanelContainer/VBoxContainer/Properties"]
|
||||||
|
margin_left = 435.0
|
||||||
|
margin_right = 635.0
|
||||||
|
margin_bottom = 24.0
|
||||||
|
rect_min_size = Vector2( 200, 0 )
|
||||||
|
|
||||||
|
[node name="ArgumentsLabel" type="Label" parent="PanelContainer/VBoxContainer/Properties"]
|
||||||
|
margin_left = 643.0
|
||||||
|
margin_top = 5.0
|
||||||
|
margin_right = 717.0
|
||||||
|
margin_bottom = 19.0
|
||||||
|
text = "Arguments:"
|
||||||
|
|
||||||
|
[node name="ArgumentsSpinBox" type="SpinBox" parent="PanelContainer/VBoxContainer/Properties"]
|
||||||
|
margin_left = 725.0
|
||||||
|
margin_right = 799.0
|
||||||
|
margin_bottom = 24.0
|
||||||
|
max_value = 99.0
|
||||||
|
|
||||||
|
[node name="Arguments" type="VBoxContainer" parent="PanelContainer/VBoxContainer"]
|
||||||
|
margin_top = 60.0
|
||||||
|
margin_right = 982.0
|
||||||
|
margin_bottom = 60.0
|
||||||
|
custom_constants/separation = 5
|
||||||
|
|
||||||
|
[connection signal="text_changed" from="PanelContainer/VBoxContainer/Properties/TargetNodeEdit" to="." method="_on_Target_LineEdit_text_changed"]
|
||||||
|
[connection signal="text_changed" from="PanelContainer/VBoxContainer/Properties/CallMethodEdit" to="." method="_on_Method_LineEdit_text_changed"]
|
||||||
|
[connection signal="value_changed" from="PanelContainer/VBoxContainer/Properties/ArgumentsSpinBox" to="." method="_on_ArgumentsSpinBox_value_changed"]
|
|
@ -21,8 +21,7 @@ func _on_OptionSelected(index):
|
||||||
timeline_editor.move_block(current_piece, 'down')
|
timeline_editor.move_block(current_piece, 'down')
|
||||||
elif index == 3:
|
elif index == 3:
|
||||||
# Removing a piece
|
# Removing a piece
|
||||||
if timeline_editor.selected_item == current_piece:
|
if timeline_editor.selected_item != current_piece:
|
||||||
timeline_editor.selected_item = null
|
timeline_editor._select_item(current_piece)
|
||||||
# TODO: Add a warning here if the event has changes
|
timeline_editor.delete_event()
|
||||||
current_piece.queue_free()
|
|
||||||
timeline_editor.indent_events()
|
timeline_editor.indent_events()
|
||||||
|
|
|
@ -11,7 +11,7 @@ text = "Item 0"
|
||||||
icon = ExtResource( 1 )
|
icon = ExtResource( 1 )
|
||||||
clip_text = true
|
clip_text = true
|
||||||
align = 2
|
align = 2
|
||||||
items = [ "Move Up", null, 0, false, false, 0, 0, null, "", false, "Move Down", null, 0, false, false, 1, 0, null, "", false, "", null, 0, false, false, 2, 0, null, "", true, "Remove", null, 0, false, false, 3, 0, null, "", false ]
|
items = [ "Move Up (Alt+Up)", null, 0, false, false, 0, 0, null, "", false, "Move Down (Alt+Down)", null, 0, false, false, 1, 0, null, "", false, "", null, 0, false, false, 2, 0, null, "", true, "Remove", null, 0, false, false, 3, 0, null, "", false ]
|
||||||
script = ExtResource( 2 )
|
script = ExtResource( 2 )
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
"_edit_use_anchors_": false
|
"_edit_use_anchors_": false
|
||||||
|
|
|
@ -0,0 +1,8 @@
|
||||||
|
tool
|
||||||
|
extends SpinBox
|
||||||
|
|
||||||
|
func can_drop_data(position, data):
|
||||||
|
# this prevents locking the mouse
|
||||||
|
# on some operating systems
|
||||||
|
# due to a godot editor bug with SpinBox drag/drop
|
||||||
|
return false
|
|
@ -75,8 +75,9 @@ margin_bottom = 28.0
|
||||||
|
|
||||||
[node name="CustomLineEdit" parent="PanelContainer/VBoxContainer/Header" instance=ExtResource( 6 )]
|
[node name="CustomLineEdit" parent="PanelContainer/VBoxContainer/Header" instance=ExtResource( 6 )]
|
||||||
margin_left = 256.0
|
margin_left = 256.0
|
||||||
margin_right = 304.0
|
margin_right = 352.0
|
||||||
margin_bottom = 28.0
|
margin_bottom = 28.0
|
||||||
|
hint_tooltip = "you can enter a text-value, a number or you can enter the name of another definition to compare against."
|
||||||
|
|
||||||
[node name="Preview" type="Label" parent="PanelContainer/VBoxContainer/Header"]
|
[node name="Preview" type="Label" parent="PanelContainer/VBoxContainer/Header"]
|
||||||
margin_left = 308.0
|
margin_left = 308.0
|
||||||
|
|
|
@ -18,7 +18,7 @@ func _ready():
|
||||||
|
|
||||||
|
|
||||||
func _on_ImageButton_pressed():
|
func _on_ImageButton_pressed():
|
||||||
editor_reference.godot_dialog("*.png, *.jpg, *.jpeg, *.tga, *.svg, *.svgz, *.bmp, *.webp;Image")
|
editor_reference.godot_dialog("*.png, *.jpg, *.jpeg, *.tga, *.svg, *.svgz, *.bmp, *.webp, *.tscn")
|
||||||
editor_reference.godot_dialog_connect(self, "_on_file_selected")
|
editor_reference.godot_dialog_connect(self, "_on_file_selected")
|
||||||
|
|
||||||
|
|
||||||
|
@ -33,8 +33,8 @@ func load_data(data):
|
||||||
|
|
||||||
func load_image(img_src):
|
func load_image(img_src):
|
||||||
event_data['background'] = img_src
|
event_data['background'] = img_src
|
||||||
if event_data['background'] != '':
|
$PanelContainer/VBoxContainer/HBoxContainer/LineEdit.text = event_data['background']
|
||||||
$PanelContainer/VBoxContainer/HBoxContainer/LineEdit.text = event_data['background']
|
if event_data['background'] != '' and not event_data['background'].ends_with('.tscn'):
|
||||||
$PanelContainer/VBoxContainer/TextureRect.texture = load(event_data['background'])
|
$PanelContainer/VBoxContainer/TextureRect.texture = load(event_data['background'])
|
||||||
$PanelContainer/VBoxContainer/TextureRect.rect_min_size = Vector2(200,200)
|
$PanelContainer/VBoxContainer/TextureRect.rect_min_size = Vector2(200,200)
|
||||||
preview = event_data['background']
|
preview = event_data['background']
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
tool
|
tool
|
||||||
extends Control
|
extends Control
|
||||||
|
|
||||||
var text_height = 26
|
var text_height = 21
|
||||||
var editor_reference
|
var editor_reference
|
||||||
var preview = ''
|
var preview = ''
|
||||||
onready var toggler = get_node("PanelContainer/VBoxContainer/Header/VisibleToggle")
|
onready var toggler = get_node("PanelContainer/VBoxContainer/Header/VisibleToggle")
|
||||||
|
@ -16,7 +16,11 @@ var event_data = {
|
||||||
onready var portrait_picker = $PanelContainer/VBoxContainer/Header/PortraitPicker
|
onready var portrait_picker = $PanelContainer/VBoxContainer/Header/PortraitPicker
|
||||||
|
|
||||||
func _ready():
|
func _ready():
|
||||||
|
var _scale = get_constant("inspector_margin", "Editor")
|
||||||
|
_scale = _scale * 0.125
|
||||||
|
text_height = text_height * _scale
|
||||||
connect("gui_input", self, '_on_gui_input')
|
connect("gui_input", self, '_on_gui_input')
|
||||||
|
$PanelContainer/VBoxContainer/TextEdit.connect("focus_entered", self, "_on_TextEdit_focus_entered")
|
||||||
$PanelContainer/VBoxContainer/TextEdit.set("rect_min_size", Vector2(0, 80))
|
$PanelContainer/VBoxContainer/TextEdit.set("rect_min_size", Vector2(0, 80))
|
||||||
$PanelContainer/VBoxContainer/Header/CharacterPicker.connect('character_selected', self , '_on_character_selected')
|
$PanelContainer/VBoxContainer/Header/CharacterPicker.connect('character_selected', self , '_on_character_selected')
|
||||||
portrait_picker.get_popup().connect("index_pressed", self, '_on_portrait_selected')
|
portrait_picker.get_popup().connect("index_pressed", self, '_on_portrait_selected')
|
||||||
|
@ -96,5 +100,26 @@ func _on_gui_input(event):
|
||||||
toggler.pressed = true
|
toggler.pressed = true
|
||||||
|
|
||||||
|
|
||||||
|
func _on_TextEdit_focus_entered():
|
||||||
|
# propagate to timeline to make this text event as active selected
|
||||||
|
# to help improve keyboard shortcut workflows
|
||||||
|
# only maybe only do this on left click since mouse wheel and
|
||||||
|
# touch scrolling may triggers this event too
|
||||||
|
if (Input.is_mouse_button_pressed(BUTTON_LEFT)):
|
||||||
|
var timeline_editor = editor_reference.get_node_or_null('MainPanel/TimelineEditor')
|
||||||
|
if (timeline_editor != null):
|
||||||
|
# @todo select item and clear selection is marked as "private" in TimelineEditor.gd
|
||||||
|
# consider to make it "public" or add a public helper function
|
||||||
|
timeline_editor._clear_selection()
|
||||||
|
timeline_editor._select_item(self)
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
func _on_saver_timer_timeout():
|
func _on_saver_timer_timeout():
|
||||||
update_preview()
|
update_preview()
|
||||||
|
|
||||||
|
|
||||||
|
# gets called when the user selects this node in the timeline
|
||||||
|
func on_timeline_selected():
|
||||||
|
$PanelContainer/VBoxContainer/TextEdit.grab_focus()
|
||||||
|
pass
|
||||||
|
|
|
@ -76,9 +76,9 @@ stretch_mode = 6
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="PanelContainer/VBoxContainer/Header"]
|
[node name="Label" type="Label" parent="PanelContainer/VBoxContainer/Header"]
|
||||||
visible = false
|
visible = false
|
||||||
margin_left = 60.0
|
margin_left = 35.0
|
||||||
margin_top = 8.0
|
margin_top = 8.0
|
||||||
margin_right = 103.0
|
margin_right = 78.0
|
||||||
margin_bottom = 22.0
|
margin_bottom = 22.0
|
||||||
text = " Text "
|
text = " Text "
|
||||||
|
|
||||||
|
@ -93,6 +93,8 @@ margin_right = 149.0
|
||||||
|
|
||||||
[node name="PortraitPicker" parent="PanelContainer/VBoxContainer/Header" instance=ExtResource( 7 )]
|
[node name="PortraitPicker" parent="PanelContainer/VBoxContainer/Header" instance=ExtResource( 7 )]
|
||||||
visible = false
|
visible = false
|
||||||
|
margin_left = 153.0
|
||||||
|
margin_right = 187.0
|
||||||
|
|
||||||
[node name="VisibleToggle" parent="PanelContainer/VBoxContainer/Header" instance=ExtResource( 2 )]
|
[node name="VisibleToggle" parent="PanelContainer/VBoxContainer/Header" instance=ExtResource( 2 )]
|
||||||
margin_left = 153.0
|
margin_left = 153.0
|
||||||
|
@ -127,4 +129,5 @@ size_flags_vertical = 3
|
||||||
show_line_numbers = true
|
show_line_numbers = true
|
||||||
smooth_scrolling = true
|
smooth_scrolling = true
|
||||||
wrap_enabled = true
|
wrap_enabled = true
|
||||||
|
|
||||||
[connection signal="text_changed" from="PanelContainer/VBoxContainer/TextEdit" to="." method="_on_TextEdit_text_changed"]
|
[connection signal="text_changed" from="PanelContainer/VBoxContainer/TextEdit" to="." method="_on_TextEdit_text_changed"]
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
[gd_scene load_steps=6 format=2]
|
[gd_scene load_steps=8 format=2]
|
||||||
|
|
||||||
[ext_resource path="res://addons/dialogic/Images/Events/Wait.svg" type="Texture" id=1]
|
[ext_resource path="res://addons/dialogic/Images/Events/Wait.svg" type="Texture" id=1]
|
||||||
[ext_resource path="res://addons/dialogic/Editor/Pieces/WaitSeconds.gd" type="Script" id=2]
|
[ext_resource path="res://addons/dialogic/Editor/Pieces/WaitSeconds.gd" type="Script" id=2]
|
||||||
[ext_resource path="res://addons/dialogic/Editor/Pieces/Common/Spacer.tscn" type="PackedScene" id=3]
|
[ext_resource path="res://addons/dialogic/Editor/Pieces/Common/Spacer.tscn" type="PackedScene" id=3]
|
||||||
[ext_resource path="res://addons/dialogic/Editor/Pieces/Common/PieceExtraSettings.tscn" type="PackedScene" id=4]
|
[ext_resource path="res://addons/dialogic/Editor/Pieces/Common/PieceExtraSettings.tscn" type="PackedScene" id=4]
|
||||||
|
[ext_resource path="res://addons/dialogic/Editor/Pieces/Common/SpinBoxPreventDnD.gd" type="Script" id=6]
|
||||||
|
|
||||||
[sub_resource type="StyleBoxFlat" id=1]
|
[sub_resource type="StyleBoxFlat" id=1]
|
||||||
content_margin_left = 16.0
|
content_margin_left = 16.0
|
||||||
|
@ -78,6 +79,7 @@ min_value = 0.1
|
||||||
value = 0.1
|
value = 0.1
|
||||||
allow_greater = true
|
allow_greater = true
|
||||||
align = 1
|
align = 1
|
||||||
|
script = ExtResource( 6 )
|
||||||
|
|
||||||
[node name="Title2" type="Label" parent="PanelContainer/VBoxContainer/Header"]
|
[node name="Title2" type="Label" parent="PanelContainer/VBoxContainer/Header"]
|
||||||
margin_left = 157.0
|
margin_left = 157.0
|
||||||
|
|
|
@ -7,7 +7,10 @@ onready var nodes = {
|
||||||
'remove_empty_messages': $VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2/HBoxContainer/RemoveEmptyMessages,
|
'remove_empty_messages': $VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2/HBoxContainer/RemoveEmptyMessages,
|
||||||
'auto_color_names': $VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2/HBoxContainer3/AutoColorNames,
|
'auto_color_names': $VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2/HBoxContainer3/AutoColorNames,
|
||||||
'propagate_input': $VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2/HBoxContainer4/PropagateInput,
|
'propagate_input': $VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2/HBoxContainer4/PropagateInput,
|
||||||
|
'dim_characters': $VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2/HBoxContainer5/DimCharacters,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
func _ready():
|
func _ready():
|
||||||
update_data()
|
update_data()
|
||||||
|
|
||||||
|
@ -16,6 +19,7 @@ func _ready():
|
||||||
nodes['remove_empty_messages'].connect('toggled', self, '_on_remove_empty_message_toggled')
|
nodes['remove_empty_messages'].connect('toggled', self, '_on_remove_empty_message_toggled')
|
||||||
nodes['auto_color_names'].connect('toggled', self, '_on_auto_color_names_toggled')
|
nodes['auto_color_names'].connect('toggled', self, '_on_auto_color_names_toggled')
|
||||||
nodes['propagate_input'].connect('toggled', self, '_on_propagate_input_toggled')
|
nodes['propagate_input'].connect('toggled', self, '_on_propagate_input_toggled')
|
||||||
|
nodes['dim_characters'].connect('toggled', self, '_on_dim_characters_toggled')
|
||||||
|
|
||||||
|
|
||||||
func update_data():
|
func update_data():
|
||||||
|
@ -33,6 +37,8 @@ func dialog_options(settings):
|
||||||
nodes['auto_color_names'].pressed = settings.get_value('dialog', 'auto_color_names')
|
nodes['auto_color_names'].pressed = settings.get_value('dialog', 'auto_color_names')
|
||||||
if settings.has_section_key('dialog', 'propagate_input'):
|
if settings.has_section_key('dialog', 'propagate_input'):
|
||||||
nodes['propagate_input'].pressed = settings.get_value('dialog', 'propagate_input')
|
nodes['propagate_input'].pressed = settings.get_value('dialog', 'propagate_input')
|
||||||
|
if settings.has_section_key('dialog', 'dim_characters'):
|
||||||
|
nodes['dim_characters'].pressed = settings.get_value('dialog', 'dim_characters')
|
||||||
|
|
||||||
|
|
||||||
func refresh_themes(settings):
|
func refresh_themes(settings):
|
||||||
|
@ -74,10 +80,14 @@ func _on_new_line_toggled(value):
|
||||||
func _on_auto_color_names_toggled(value):
|
func _on_auto_color_names_toggled(value):
|
||||||
set_value('dialog', 'auto_color_names', value)
|
set_value('dialog', 'auto_color_names', value)
|
||||||
|
|
||||||
|
|
||||||
func _on_propagate_input_toggled(value):
|
func _on_propagate_input_toggled(value):
|
||||||
set_value('dialog', 'propagate_input', value)
|
set_value('dialog', 'propagate_input', value)
|
||||||
|
|
||||||
|
|
||||||
|
func _on_dim_characters_toggled(value):
|
||||||
|
set_value('dialog', 'dim_characters', value)
|
||||||
|
|
||||||
# Reading and saving data to the settings file
|
# Reading and saving data to the settings file
|
||||||
func set_value(section, key, value):
|
func set_value(section, key, value):
|
||||||
DialogicResources.set_settings_value(section, key, value)
|
DialogicResources.set_settings_value(section, key, value)
|
||||||
|
|
|
@ -18,19 +18,19 @@ size_flags_vertical = 3
|
||||||
|
|
||||||
[node name="HBoxContainer3" type="HBoxContainer" parent="VBoxContainer"]
|
[node name="HBoxContainer3" type="HBoxContainer" parent="VBoxContainer"]
|
||||||
margin_right = 1024.0
|
margin_right = 1024.0
|
||||||
margin_bottom = 212.0
|
margin_bottom = 240.0
|
||||||
|
|
||||||
[node name="VBoxContainer" type="VBoxContainer" parent="VBoxContainer/HBoxContainer3"]
|
[node name="VBoxContainer" type="VBoxContainer" parent="VBoxContainer/HBoxContainer3"]
|
||||||
margin_right = 288.0
|
margin_right = 304.0
|
||||||
margin_bottom = 212.0
|
margin_bottom = 240.0
|
||||||
custom_constants/separation = 16
|
custom_constants/separation = 16
|
||||||
|
|
||||||
[node name="VBoxContainer" type="VBoxContainer" parent="VBoxContainer/HBoxContainer3/VBoxContainer"]
|
[node name="VBoxContainer" type="VBoxContainer" parent="VBoxContainer/HBoxContainer3/VBoxContainer"]
|
||||||
margin_right = 288.0
|
margin_right = 304.0
|
||||||
margin_bottom = 54.0
|
margin_bottom = 54.0
|
||||||
|
|
||||||
[node name="Panel" type="Panel" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer"]
|
[node name="Panel" type="Panel" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer"]
|
||||||
margin_right = 288.0
|
margin_right = 304.0
|
||||||
margin_bottom = 30.0
|
margin_bottom = 30.0
|
||||||
rect_min_size = Vector2( 0, 30 )
|
rect_min_size = Vector2( 0, 30 )
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
|
@ -45,7 +45,7 @@ __meta__ = {
|
||||||
|
|
||||||
[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer"]
|
[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer"]
|
||||||
margin_top = 34.0
|
margin_top = 34.0
|
||||||
margin_right = 288.0
|
margin_right = 304.0
|
||||||
margin_bottom = 54.0
|
margin_bottom = 54.0
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer/HBoxContainer"]
|
[node name="Label" type="Label" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer/HBoxContainer"]
|
||||||
|
@ -59,19 +59,23 @@ margin_left = 50.0
|
||||||
margin_right = 190.0
|
margin_right = 190.0
|
||||||
margin_bottom = 20.0
|
margin_bottom = 20.0
|
||||||
rect_min_size = Vector2( 140, 0 )
|
rect_min_size = Vector2( 140, 0 )
|
||||||
text = "test"
|
text = "Basic"
|
||||||
items = [ "test", null, false, 0, {
|
items = [ "Alternative", null, false, 0, {
|
||||||
"file": "theme-1616687382.cfg"
|
"file": "theme-1617143167.cfg"
|
||||||
|
}, "Basic", null, false, 1, {
|
||||||
|
"file": "theme-1616778229.cfg"
|
||||||
|
}, "New Theme", null, false, 2, {
|
||||||
|
"file": "theme-1617143282.cfg"
|
||||||
} ]
|
} ]
|
||||||
selected = 0
|
selected = 1
|
||||||
|
|
||||||
[node name="VBoxContainer2" type="VBoxContainer" parent="VBoxContainer/HBoxContainer3/VBoxContainer"]
|
[node name="VBoxContainer2" type="VBoxContainer" parent="VBoxContainer/HBoxContainer3/VBoxContainer"]
|
||||||
margin_top = 70.0
|
margin_top = 70.0
|
||||||
margin_right = 288.0
|
margin_right = 304.0
|
||||||
margin_bottom = 212.0
|
margin_bottom = 240.0
|
||||||
|
|
||||||
[node name="Panel2" type="Panel" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2"]
|
[node name="Panel2" type="Panel" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2"]
|
||||||
margin_right = 288.0
|
margin_right = 304.0
|
||||||
margin_bottom = 30.0
|
margin_bottom = 30.0
|
||||||
rect_min_size = Vector2( 0, 30 )
|
rect_min_size = Vector2( 0, 30 )
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
|
@ -86,7 +90,7 @@ __meta__ = {
|
||||||
|
|
||||||
[node name="HBoxContainer2" type="HBoxContainer" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2"]
|
[node name="HBoxContainer2" type="HBoxContainer" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2"]
|
||||||
margin_top = 34.0
|
margin_top = 34.0
|
||||||
margin_right = 288.0
|
margin_right = 304.0
|
||||||
margin_bottom = 58.0
|
margin_bottom = 58.0
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2/HBoxContainer2"]
|
[node name="Label" type="Label" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2/HBoxContainer2"]
|
||||||
|
@ -105,7 +109,7 @@ pressed = true
|
||||||
|
|
||||||
[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2"]
|
[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2"]
|
||||||
margin_top = 62.0
|
margin_top = 62.0
|
||||||
margin_right = 288.0
|
margin_right = 304.0
|
||||||
margin_bottom = 86.0
|
margin_bottom = 86.0
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2/HBoxContainer"]
|
[node name="Label" type="Label" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2/HBoxContainer"]
|
||||||
|
@ -116,14 +120,14 @@ text = "Remove empty messages"
|
||||||
|
|
||||||
[node name="RemoveEmptyMessages" type="CheckBox" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2/HBoxContainer"]
|
[node name="RemoveEmptyMessages" type="CheckBox" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2/HBoxContainer"]
|
||||||
margin_left = 169.0
|
margin_left = 169.0
|
||||||
margin_right = 288.0
|
margin_right = 304.0
|
||||||
margin_bottom = 24.0
|
margin_bottom = 24.0
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
pressed = true
|
pressed = true
|
||||||
|
|
||||||
[node name="HBoxContainer3" type="HBoxContainer" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2"]
|
[node name="HBoxContainer3" type="HBoxContainer" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2"]
|
||||||
margin_top = 90.0
|
margin_top = 90.0
|
||||||
margin_right = 288.0
|
margin_right = 304.0
|
||||||
margin_bottom = 114.0
|
margin_bottom = 114.0
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2/HBoxContainer3"]
|
[node name="Label" type="Label" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2/HBoxContainer3"]
|
||||||
|
@ -140,7 +144,7 @@ pressed = true
|
||||||
|
|
||||||
[node name="HBoxContainer4" type="HBoxContainer" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2"]
|
[node name="HBoxContainer4" type="HBoxContainer" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2"]
|
||||||
margin_top = 118.0
|
margin_top = 118.0
|
||||||
margin_right = 288.0
|
margin_right = 304.0
|
||||||
margin_bottom = 142.0
|
margin_bottom = 142.0
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2/HBoxContainer4"]
|
[node name="Label" type="Label" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2/HBoxContainer4"]
|
||||||
|
@ -154,3 +158,20 @@ margin_left = 223.0
|
||||||
margin_right = 247.0
|
margin_right = 247.0
|
||||||
margin_bottom = 24.0
|
margin_bottom = 24.0
|
||||||
pressed = true
|
pressed = true
|
||||||
|
|
||||||
|
[node name="HBoxContainer5" type="HBoxContainer" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2"]
|
||||||
|
margin_top = 146.0
|
||||||
|
margin_right = 304.0
|
||||||
|
margin_bottom = 170.0
|
||||||
|
|
||||||
|
[node name="Label" type="Label" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2/HBoxContainer5"]
|
||||||
|
margin_top = 5.0
|
||||||
|
margin_right = 276.0
|
||||||
|
margin_bottom = 19.0
|
||||||
|
text = "Dim characters when they are not speaking"
|
||||||
|
|
||||||
|
[node name="DimCharacters" type="CheckBox" parent="VBoxContainer/HBoxContainer3/VBoxContainer/VBoxContainer2/HBoxContainer5"]
|
||||||
|
margin_left = 280.0
|
||||||
|
margin_right = 304.0
|
||||||
|
margin_bottom = 24.0
|
||||||
|
pressed = true
|
||||||
|
|
|
@ -2,68 +2,78 @@ tool
|
||||||
extends Control
|
extends Control
|
||||||
|
|
||||||
var editor_reference
|
var editor_reference
|
||||||
onready var master_tree = get_node('../MasterTree')
|
onready var master_tree = get_node('../MasterTreeContainer/MasterTree')
|
||||||
onready var settings_editor = get_node('../SettingsEditor')
|
onready var settings_editor = get_node('../SettingsEditor')
|
||||||
var current_theme = ''
|
var current_theme = ''
|
||||||
|
|
||||||
|
# When loading the variables to the input fields in the
|
||||||
|
# load_theme function, every element thinks the value was updated
|
||||||
|
# so it has to perform a "saving" of that property.
|
||||||
|
# The loading variable is a way to check if the values should be saved
|
||||||
|
# or not.
|
||||||
|
var loading = true
|
||||||
|
|
||||||
# The amazing and revolutionary path system that magically works and you can't
|
# The amazing and revolutionary path system that magically works and you can't
|
||||||
# complain because "that is not how you are supposed to work". If there was only
|
# complain because "that is not how you are supposed to work". If there was only
|
||||||
# a way to set an id and then access that node via id...
|
# a way to set an id and then access that node via id...
|
||||||
# Here you have paths in all its glory. Praise the paths (っ´ω`c)♡
|
# Here you have paths in all its glory. Praise the paths (っ´ω`c)♡
|
||||||
onready var n = {
|
onready var n = {
|
||||||
# Text
|
# Text
|
||||||
'theme_text_shadow': $VBoxContainer/HBoxContainer2/Text/GridContainer/HBoxContainer2/CheckBoxShadow,
|
'theme_text_shadow': $VBoxContainer/TabContainer/Text/Column/GridContainer/HBoxContainer2/CheckBoxShadow,
|
||||||
'theme_text_shadow_color': $VBoxContainer/HBoxContainer2/Text/GridContainer/HBoxContainer2/ColorPickerButtonShadow,
|
'theme_text_shadow_color': $VBoxContainer/TabContainer/Text/Column/GridContainer/HBoxContainer2/ColorPickerButtonShadow,
|
||||||
'theme_text_color': $VBoxContainer/HBoxContainer2/Text/GridContainer/ColorPickerButton,
|
'theme_text_color': $VBoxContainer/TabContainer/Text/Column/GridContainer/ColorPickerButton,
|
||||||
'theme_font': $VBoxContainer/HBoxContainer2/Text/GridContainer/FontButton,
|
'theme_font': $VBoxContainer/TabContainer/Text/Column/GridContainer/FontButton,
|
||||||
'theme_shadow_offset_x': $VBoxContainer/HBoxContainer2/Text/GridContainer/HBoxContainer/ShadowOffsetX,
|
'theme_shadow_offset_x': $VBoxContainer/TabContainer/Text/Column/GridContainer/HBoxContainer/ShadowOffsetX,
|
||||||
'theme_shadow_offset_y': $VBoxContainer/HBoxContainer2/Text/GridContainer/HBoxContainer/ShadowOffsetY,
|
'theme_shadow_offset_y': $VBoxContainer/TabContainer/Text/Column/GridContainer/HBoxContainer/ShadowOffsetY,
|
||||||
'theme_text_speed': $VBoxContainer/HBoxContainer2/Text/GridContainer/TextSpeed,
|
'theme_text_speed': $VBoxContainer/TabContainer/Text/Column/GridContainer/TextSpeed,
|
||||||
'alignment': $VBoxContainer/HBoxContainer2/Text/GridContainer/HBoxContainer3/Alignment,
|
'alignment': $VBoxContainer/TabContainer/Text/Column/GridContainer/HBoxContainer3/Alignment,
|
||||||
|
|
||||||
# Dialog box
|
# Dialog box
|
||||||
'background_texture_button_visible': $VBoxContainer/HBoxContainer2/DialogBox/GridContainer/HBoxContainer3/CheckBox,
|
'background_texture_button_visible': $"VBoxContainer/TabContainer/Dialog Box/Column/GridContainer/HBoxContainer3/CheckBox",
|
||||||
'theme_background_image': $VBoxContainer/HBoxContainer2/DialogBox/GridContainer/HBoxContainer3/BackgroundTextureButton,
|
'theme_background_image': $"VBoxContainer/TabContainer/Dialog Box/Column/GridContainer/HBoxContainer3/BackgroundTextureButton",
|
||||||
'theme_next_image': $VBoxContainer/HBoxContainer2/DialogBox/GridContainer/NextIndicatorButton,
|
'theme_next_image': $"VBoxContainer/TabContainer/Dialog Box/Column/GridContainer/NextIndicatorButton",
|
||||||
'next_animation': $VBoxContainer/HBoxContainer2/DialogBox/GridContainer/NextAnimation,
|
'next_animation': $"VBoxContainer/TabContainer/Dialog Box/Column/GridContainer/NextAnimation",
|
||||||
'theme_action_key': $VBoxContainer/HBoxContainer2/DialogBox/GridContainer/BoxContainer/ActionOptionButton,
|
'theme_action_key': $"VBoxContainer/TabContainer/Dialog Box/Column/GridContainer/BoxContainer/ActionOptionButton",
|
||||||
'theme_background_color_visible': $VBoxContainer/HBoxContainer2/DialogBox/GridContainer/HBoxContainer2/CheckBox,
|
'theme_background_color_visible': $"VBoxContainer/TabContainer/Dialog Box/Column/GridContainer/HBoxContainer2/CheckBox",
|
||||||
'theme_background_color': $VBoxContainer/HBoxContainer2/DialogBox/GridContainer/HBoxContainer2/ColorPickerButton,
|
'theme_background_color': $"VBoxContainer/TabContainer/Dialog Box/Column/GridContainer/HBoxContainer2/ColorPickerButton",
|
||||||
'theme_text_margin': $VBoxContainer/HBoxContainer2/DialogBox/GridContainer/HBoxContainer/TextOffsetV,
|
'theme_text_margin': $"VBoxContainer/TabContainer/Dialog Box/Column/GridContainer/HBoxContainer/TextOffsetV",
|
||||||
'theme_text_margin_h': $VBoxContainer/HBoxContainer2/DialogBox/GridContainer/HBoxContainer/TextOffsetH,
|
'theme_text_margin_h': $"VBoxContainer/TabContainer/Dialog Box/Column/GridContainer/HBoxContainer/TextOffsetH",
|
||||||
'size_w': $VBoxContainer/HBoxContainer2/DialogBox/GridContainer/HBoxContainer4/BoxSizeW,
|
'size_w': $"VBoxContainer/TabContainer/Dialog Box/Column/GridContainer/HBoxContainer4/BoxSizeW",
|
||||||
'size_h': $VBoxContainer/HBoxContainer2/DialogBox/GridContainer/HBoxContainer4/BoxSizeH,
|
'size_h': $"VBoxContainer/TabContainer/Dialog Box/Column/GridContainer/HBoxContainer4/BoxSizeH",
|
||||||
'bottom_gap': $VBoxContainer/HBoxContainer2/DialogBox/GridContainer/HBoxContainer5/BottomGap,
|
'bottom_gap': $"VBoxContainer/TabContainer/Dialog Box/Column/GridContainer/HBoxContainer5/BottomGap",
|
||||||
|
'background_modulation': $"VBoxContainer/TabContainer/Dialog Box/Column/GridContainer/HBoxContainer6/CheckBox",
|
||||||
|
'background_modulation_color': $"VBoxContainer/TabContainer/Dialog Box/Column/GridContainer/HBoxContainer6/ColorPickerButton",
|
||||||
|
|
||||||
|
|
||||||
# Buttons
|
# Buttons
|
||||||
'button_text_color_enabled': $VBoxContainer/HBoxContainer2/ButtonStyle/GridContainer/HBoxContainer4/CheckBox2,
|
'button_text_color_enabled': $"VBoxContainer/TabContainer/Choice Buttons/Column/GridContainer/HBoxContainer4/CheckBox2",
|
||||||
'button_text_color': $VBoxContainer/HBoxContainer2/ButtonStyle/GridContainer/HBoxContainer4/ButtonTextColor,
|
'button_text_color': $"VBoxContainer/TabContainer/Choice Buttons/Column/GridContainer/HBoxContainer4/ButtonTextColor",
|
||||||
'button_background': $VBoxContainer/HBoxContainer2/ButtonStyle/GridContainer/HBoxContainer2/ColorPickerButton,
|
'button_background': $"VBoxContainer/TabContainer/Choice Buttons/Column/GridContainer/HBoxContainer2/ColorPickerButton",
|
||||||
'button_background_visible': $VBoxContainer/HBoxContainer2/ButtonStyle/GridContainer/HBoxContainer2/CheckBox,
|
'button_background_visible': $"VBoxContainer/TabContainer/Choice Buttons/Column/GridContainer/HBoxContainer2/CheckBox",
|
||||||
'button_image': $VBoxContainer/HBoxContainer2/ButtonStyle/GridContainer/HBoxContainer3/BackgroundTextureButton,
|
'button_image': $"VBoxContainer/TabContainer/Choice Buttons/Column/GridContainer/HBoxContainer3/BackgroundTextureButton",
|
||||||
'button_image_visible': $VBoxContainer/HBoxContainer2/ButtonStyle/GridContainer/HBoxContainer3/CheckBox,
|
'button_image_visible': $"VBoxContainer/TabContainer/Choice Buttons/Column/GridContainer/HBoxContainer3/CheckBox",
|
||||||
'button_offset_x': $VBoxContainer/HBoxContainer2/ButtonStyle/GridContainer/HBoxContainer/TextOffsetH,
|
'button_offset_x': $"VBoxContainer/TabContainer/Choice Buttons/Column/GridContainer/HBoxContainer/TextOffsetH",
|
||||||
'button_offset_y': $VBoxContainer/HBoxContainer2/ButtonStyle/GridContainer/HBoxContainer/TextOffsetV,
|
'button_offset_y': $"VBoxContainer/TabContainer/Choice Buttons/Column/GridContainer/HBoxContainer/TextOffsetV",
|
||||||
'button_separation': $VBoxContainer/HBoxContainer2/ButtonStyle/GridContainer/VerticalSeparation,
|
'button_separation': $"VBoxContainer/TabContainer/Choice Buttons/Column/GridContainer/VerticalSeparation",
|
||||||
|
|
||||||
# Definitions
|
# Definitions
|
||||||
'glossary_font': $VBoxContainer/HBoxContainer2/Glossary/GridContainer/FontButton,
|
'glossary_font': $VBoxContainer/TabContainer/Glossary/Column/GridContainer/FontButton,
|
||||||
'glossary_color': $VBoxContainer/HBoxContainer2/Glossary/GridContainer/ColorPickerButton,
|
'glossary_color': $VBoxContainer/TabContainer/Glossary/Column/GridContainer/ColorPickerButton,
|
||||||
|
|
||||||
# Text preview
|
# Text preview
|
||||||
'preview_panel': $VBoxContainer/Panel,
|
|
||||||
'text_preview': $VBoxContainer/HBoxContainer3/TextEdit,
|
'text_preview': $VBoxContainer/HBoxContainer3/TextEdit,
|
||||||
|
|
||||||
# Character Names
|
# Character Names
|
||||||
'name_auto_color': $VBoxContainer/HBoxContainer2/Glossary/GridContainer2/CheckBox,
|
'name_auto_color': $"VBoxContainer/TabContainer/Name Label/Column/GridContainer/CheckBox",
|
||||||
'name_background_visible': $VBoxContainer/HBoxContainer2/Glossary/GridContainer2/HBoxContainer2/CheckBox,
|
'name_background_visible': $"VBoxContainer/TabContainer/Name Label/Column/GridContainer/HBoxContainer2/CheckBox",
|
||||||
'name_background': $VBoxContainer/HBoxContainer2/Glossary/GridContainer2/HBoxContainer2/ColorPickerButton,
|
'name_background': $"VBoxContainer/TabContainer/Name Label/Column/GridContainer/HBoxContainer2/ColorPickerButton",
|
||||||
'name_image': $VBoxContainer/HBoxContainer2/Glossary/GridContainer2/HBoxContainer3/BackgroundTextureButton,
|
'name_image': $"VBoxContainer/TabContainer/Name Label/Column/GridContainer/HBoxContainer3/BackgroundTextureButton",
|
||||||
'name_image_visible': $VBoxContainer/HBoxContainer2/Glossary/GridContainer2/HBoxContainer3/CheckBox,
|
'name_image_visible': $"VBoxContainer/TabContainer/Name Label/Column/GridContainer/HBoxContainer3/CheckBox",
|
||||||
'name_shadow': $VBoxContainer/HBoxContainer2/Glossary/GridContainer2/HBoxContainer4/ColorPickerButtonShadow,
|
'name_shadow': $"VBoxContainer/TabContainer/Name Label/Column/GridContainer/HBoxContainer4/ColorPickerButtonShadow",
|
||||||
'name_shadow_visible': $VBoxContainer/HBoxContainer2/Glossary/GridContainer2/HBoxContainer4/CheckBoxShadow,
|
'name_shadow_visible': $"VBoxContainer/TabContainer/Name Label/Column/GridContainer/HBoxContainer4/CheckBoxShadow",
|
||||||
'name_shadow_offset_x': $VBoxContainer/HBoxContainer2/Glossary/GridContainer2/HBoxContainer/ShadowOffsetX,
|
'name_shadow_offset_x': $"VBoxContainer/TabContainer/Name Label/Column/GridContainer/HBoxContainer/ShadowOffsetX",
|
||||||
'name_shadow_offset_y': $VBoxContainer/HBoxContainer2/Glossary/GridContainer2/HBoxContainer/ShadowOffsetY,
|
'name_shadow_offset_y': $"VBoxContainer/TabContainer/Name Label/Column/GridContainer/HBoxContainer/ShadowOffsetY",
|
||||||
'name_bottom_gap': $VBoxContainer/HBoxContainer2/Glossary/GridContainer2/HBoxContainer5/BottomGap,
|
'name_bottom_gap': $"VBoxContainer/TabContainer/Name Label/Column/GridContainer/HBoxContainer5/BottomGap",
|
||||||
}
|
}
|
||||||
|
|
||||||
func _ready():
|
func _ready():
|
||||||
|
@ -73,11 +83,15 @@ func _ready():
|
||||||
$VBoxContainer/HBoxContainer3/PreviewButton.icon = load("res://addons/dialogic/Images/Plugin/plugin-editor-icon-dark-theme.svg")
|
$VBoxContainer/HBoxContainer3/PreviewButton.icon = load("res://addons/dialogic/Images/Plugin/plugin-editor-icon-dark-theme.svg")
|
||||||
else:
|
else:
|
||||||
$VBoxContainer/HBoxContainer3/PreviewButton.icon = load("res://addons/dialogic/Images/Plugin/plugin-editor-icon-light-theme.svg")
|
$VBoxContainer/HBoxContainer3/PreviewButton.icon = load("res://addons/dialogic/Images/Plugin/plugin-editor-icon-light-theme.svg")
|
||||||
|
|
||||||
|
$DelayPreviewTimer.one_shot = true
|
||||||
|
$DelayPreviewTimer.connect("timeout", self, '_on_DelayPreview_timer_timeout')
|
||||||
# Force preview update
|
# Force preview update
|
||||||
_on_visibility_changed()
|
_on_visibility_changed()
|
||||||
|
|
||||||
|
|
||||||
func load_theme(filename):
|
func load_theme(filename):
|
||||||
|
loading = true
|
||||||
current_theme = filename
|
current_theme = filename
|
||||||
var theme = DialogicResources.get_theme_config(filename)
|
var theme = DialogicResources.get_theme_config(filename)
|
||||||
# Settings
|
# Settings
|
||||||
|
@ -90,6 +104,10 @@ func load_theme(filename):
|
||||||
n['theme_background_color_visible'].pressed = theme.get_value('background', 'use_color', false)
|
n['theme_background_color_visible'].pressed = theme.get_value('background', 'use_color', false)
|
||||||
n['theme_next_image'].text = DialogicResources.get_filename_from_path(theme.get_value('next_indicator', 'image', 'res://addons/dialogic/Images/next-indicator.png'))
|
n['theme_next_image'].text = DialogicResources.get_filename_from_path(theme.get_value('next_indicator', 'image', 'res://addons/dialogic/Images/next-indicator.png'))
|
||||||
|
|
||||||
|
n['background_modulation'].pressed = theme.get_value('background', 'modulation', false)
|
||||||
|
n['background_modulation_color'].color = Color(theme.get_value('background', 'modulation_color', '#ffffffff'))
|
||||||
|
|
||||||
|
|
||||||
var size_value = theme.get_value('box', 'size', Vector2(910, 167))
|
var size_value = theme.get_value('box', 'size', Vector2(910, 167))
|
||||||
n['size_w'].value = size_value.x
|
n['size_w'].value = size_value.x
|
||||||
n['size_h'].value = size_value.y
|
n['size_h'].value = size_value.y
|
||||||
|
@ -160,6 +178,8 @@ func load_theme(filename):
|
||||||
# Preview text
|
# Preview text
|
||||||
n['text_preview'].text = theme.get_value('text', 'preview', 'This is preview text. You can use [color=#A5EFAC]BBCode[/color] to style it.\n[wave amp=50 freq=2]You can even use effects![/wave]')
|
n['text_preview'].text = theme.get_value('text', 'preview', 'This is preview text. You can use [color=#A5EFAC]BBCode[/color] to style it.\n[wave amp=50 freq=2]You can even use effects![/wave]')
|
||||||
|
|
||||||
|
# Finished loading
|
||||||
|
loading = false
|
||||||
# Updating the preview
|
# Updating the preview
|
||||||
_on_PreviewButton_pressed()
|
_on_PreviewButton_pressed()
|
||||||
|
|
||||||
|
@ -171,18 +191,29 @@ func new_theme():
|
||||||
load_theme(theme_file)
|
load_theme(theme_file)
|
||||||
# Check if it is the only theme to set as default
|
# Check if it is the only theme to set as default
|
||||||
if DialogicUtil.get_theme_list().size() == 1:
|
if DialogicUtil.get_theme_list().size() == 1:
|
||||||
print('only theme, setting as default')
|
#print('only theme, setting as default')
|
||||||
settings_editor.set_value('theme', 'default', theme_file)
|
settings_editor.set_value('theme', 'default', theme_file)
|
||||||
|
|
||||||
|
|
||||||
|
func duplicate_theme(from_filename):
|
||||||
|
var duplicate_theme = 'theme-' + str(OS.get_unix_time()) + '.cfg'
|
||||||
|
DialogicResources.duplicate_theme(from_filename, duplicate_theme)
|
||||||
|
DialogicResources.set_theme_value(duplicate_theme, 'settings', 'name', duplicate_theme)
|
||||||
|
master_tree.build_themes(duplicate_theme)
|
||||||
|
load_theme(duplicate_theme)
|
||||||
|
|
||||||
|
|
||||||
func _on_BackgroundTextureButton_pressed():
|
func _on_BackgroundTextureButton_pressed():
|
||||||
editor_reference.godot_dialog("*.png")
|
editor_reference.godot_dialog("*.png")
|
||||||
editor_reference.godot_dialog_connect(self, "_on_background_selected")
|
editor_reference.godot_dialog_connect(self, "_on_background_selected")
|
||||||
|
|
||||||
|
|
||||||
func _on_background_selected(path, target):
|
func _on_background_selected(path, target):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'background','image', path)
|
DialogicResources.set_theme_value(current_theme, 'background','image', path)
|
||||||
n['theme_background_image'].text = DialogicResources.get_filename_from_path(path)
|
n['theme_background_image'].text = DialogicResources.get_filename_from_path(path)
|
||||||
|
_on_PreviewButton_pressed() # Refreshing the preview
|
||||||
|
|
||||||
|
|
||||||
func _on_NextIndicatorButton_pressed():
|
func _on_NextIndicatorButton_pressed():
|
||||||
|
@ -191,36 +222,54 @@ func _on_NextIndicatorButton_pressed():
|
||||||
|
|
||||||
|
|
||||||
func _on_indicator_selected(path, target):
|
func _on_indicator_selected(path, target):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'next_indicator','image', path)
|
DialogicResources.set_theme_value(current_theme, 'next_indicator','image', path)
|
||||||
n['theme_next_image'].text = DialogicResources.get_filename_from_path(path)
|
n['theme_next_image'].text = DialogicResources.get_filename_from_path(path)
|
||||||
|
_on_PreviewButton_pressed() # Refreshing the preview
|
||||||
|
|
||||||
|
|
||||||
func _on_NextAnimation_item_selected(index):
|
func _on_NextAnimation_item_selected(index):
|
||||||
DialogicResources.set_theme_value(current_theme, 'next_indicator', 'animation', n['next_animation'].get_item_text(index))
|
DialogicResources.set_theme_value(current_theme, 'next_indicator', 'animation', n['next_animation'].get_item_text(index))
|
||||||
|
_on_PreviewButton_pressed() # Refreshing the preview
|
||||||
|
|
||||||
|
|
||||||
func _on_ColorPickerButton_color_changed(color):
|
func _on_ColorPickerButton_color_changed(color):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'text','color', '#' + color.to_html())
|
DialogicResources.set_theme_value(current_theme, 'text','color', '#' + color.to_html())
|
||||||
|
$DelayPreviewTimer.start(0.5) # Calling a timer so the update doesn't get triggered many times
|
||||||
|
|
||||||
|
|
||||||
func _on_ColorPickerButtonShadow_color_changed(color):
|
func _on_ColorPickerButtonShadow_color_changed(color):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'text','shadow_color', '#' + color.to_html())
|
DialogicResources.set_theme_value(current_theme, 'text','shadow_color', '#' + color.to_html())
|
||||||
|
$DelayPreviewTimer.start(0.5) # Calling a timer so the update doesn't get triggered many times
|
||||||
|
|
||||||
|
|
||||||
func _on_CheckBoxShadow_toggled(button_pressed):
|
func _on_CheckBoxShadow_toggled(button_pressed):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'text','shadow', button_pressed)
|
DialogicResources.set_theme_value(current_theme, 'text','shadow', button_pressed)
|
||||||
|
_on_PreviewButton_pressed() # Refreshing the preview
|
||||||
|
|
||||||
|
|
||||||
func _on_ShadowOffset_value_changed(_value):
|
func _on_ShadowOffset_value_changed(_value):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'text','shadow_offset', Vector2(n['theme_shadow_offset_x'].value,n['theme_shadow_offset_y'].value))
|
DialogicResources.set_theme_value(current_theme, 'text','shadow_offset', Vector2(n['theme_shadow_offset_x'].value,n['theme_shadow_offset_y'].value))
|
||||||
|
_on_PreviewButton_pressed() # Refreshing the preview
|
||||||
|
|
||||||
|
|
||||||
func _on_PreviewButton_pressed():
|
func _on_PreviewButton_pressed():
|
||||||
for i in n['preview_panel'].get_children():
|
for i in $VBoxContainer/Panel.get_children():
|
||||||
i.free()
|
i.free()
|
||||||
var dialogic_node = load("res://addons/dialogic/Dialog.tscn")
|
var dialogic_node = load("res://addons/dialogic/Dialog.tscn")
|
||||||
var preview_dialog = dialogic_node.instance()
|
var preview_dialog = dialogic_node.instance()
|
||||||
|
preview_dialog.timeline = ''
|
||||||
preview_dialog.preview = true
|
preview_dialog.preview = true
|
||||||
|
preview_dialog.debug_mode = false
|
||||||
preview_dialog.get_node('DefinitionInfo').in_theme_editor = true
|
preview_dialog.get_node('DefinitionInfo').in_theme_editor = true
|
||||||
|
|
||||||
# Random character preview if there are any
|
# Random character preview if there are any
|
||||||
|
@ -230,21 +279,27 @@ func _on_PreviewButton_pressed():
|
||||||
characters.shuffle()
|
characters.shuffle()
|
||||||
character_file = characters[0]['file']
|
character_file = characters[0]['file']
|
||||||
|
|
||||||
|
# Loading the theme here because I need it for the parse_alignment
|
||||||
|
preview_dialog.current_theme = preview_dialog.load_theme(current_theme)
|
||||||
|
|
||||||
# Creating the one event timeline for the dialog
|
# Creating the one event timeline for the dialog
|
||||||
|
var text = preview_dialog.parse_definitions(n['text_preview'].text)
|
||||||
preview_dialog.dialog_script['events'] = [{
|
preview_dialog.dialog_script['events'] = [{
|
||||||
"character": character_file,
|
"character": character_file,
|
||||||
"portrait":'',
|
"portrait":'',
|
||||||
"text": preview_dialog.parse_definitions(n['text_preview'].text)
|
"text": text
|
||||||
}]
|
}]
|
||||||
preview_dialog.parse_characters(preview_dialog.dialog_script)
|
preview_dialog.parse_characters(preview_dialog.dialog_script)
|
||||||
preview_dialog.settings = DialogicResources.get_settings_config()
|
preview_dialog.settings = DialogicResources.get_settings_config()
|
||||||
|
|
||||||
# Alignment
|
# Alignment
|
||||||
n['preview_panel'].add_child(preview_dialog)
|
$VBoxContainer/Panel.add_child(preview_dialog)
|
||||||
|
|
||||||
preview_dialog.load_dialog()
|
preview_dialog.load_dialog()
|
||||||
|
# Reloading the theme
|
||||||
preview_dialog.current_theme = preview_dialog.load_theme(current_theme)
|
preview_dialog.current_theme = preview_dialog.load_theme(current_theme)
|
||||||
|
|
||||||
|
|
||||||
# When not performing this step, the dialog name doesn't update the color for some reason
|
# When not performing this step, the dialog name doesn't update the color for some reason
|
||||||
# I should probably refactor the preview dialog to stop making everything manually.
|
# I should probably refactor the preview dialog to stop making everything manually.
|
||||||
if n['name_auto_color'].pressed:
|
if n['name_auto_color'].pressed:
|
||||||
|
@ -252,11 +307,13 @@ func _on_PreviewButton_pressed():
|
||||||
preview_dialog.get_node('TextBubble/NameLabel').set('custom_colors/font_color', characters[0]['color'])
|
preview_dialog.get_node('TextBubble/NameLabel').set('custom_colors/font_color', characters[0]['color'])
|
||||||
|
|
||||||
# maintaining the preview panel big enough for the dialog box
|
# maintaining the preview panel big enough for the dialog box
|
||||||
n['preview_panel'].rect_min_size.y = preview_dialog.current_theme.get_value('box', 'size', Vector2(910, 167)).y + 90 + preview_dialog.current_theme.get_value('box', 'bottom_gap', 40)
|
$VBoxContainer/Panel.rect_min_size.y = preview_dialog.current_theme.get_value('box', 'size', Vector2(910, 167)).y + 90 + preview_dialog.current_theme.get_value('box', 'bottom_gap', 40)
|
||||||
n['preview_panel'].rect_size.y = 0
|
$VBoxContainer/Panel.rect_size.y = 0
|
||||||
|
|
||||||
|
|
||||||
func _on_ActionOptionButton_item_selected(index):
|
func _on_ActionOptionButton_item_selected(index):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'settings','action_key', n['theme_action_key'].text)
|
DialogicResources.set_theme_value(current_theme, 'settings','action_key', n['theme_action_key'].text)
|
||||||
|
|
||||||
|
|
||||||
|
@ -274,43 +331,68 @@ func _on_FontButton_pressed():
|
||||||
|
|
||||||
|
|
||||||
func _on_Font_selected(path, target):
|
func _on_Font_selected(path, target):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'text','font', path)
|
DialogicResources.set_theme_value(current_theme, 'text','font', path)
|
||||||
n['theme_font'].text = DialogicResources.get_filename_from_path(path)
|
n['theme_font'].text = DialogicResources.get_filename_from_path(path)
|
||||||
|
_on_PreviewButton_pressed() # Refreshing the preview
|
||||||
|
|
||||||
|
|
||||||
func _on_textSpeed_value_changed(value):
|
func _on_textSpeed_value_changed(value):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'text','speed', value)
|
DialogicResources.set_theme_value(current_theme, 'text','speed', value)
|
||||||
|
_on_PreviewButton_pressed() # Refreshing the preview
|
||||||
|
|
||||||
|
|
||||||
func _on_TextMargin_value_changed(value):
|
func _on_TextMargin_value_changed(value):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
var final_vector = Vector2(
|
var final_vector = Vector2(
|
||||||
n['theme_text_margin'].value,
|
n['theme_text_margin'].value,
|
||||||
n['theme_text_margin_h'].value
|
n['theme_text_margin_h'].value
|
||||||
)
|
)
|
||||||
DialogicResources.set_theme_value(current_theme, 'text', 'margin', final_vector)
|
DialogicResources.set_theme_value(current_theme, 'text', 'margin', final_vector)
|
||||||
|
_on_PreviewButton_pressed() # Refreshing the preview
|
||||||
|
|
||||||
|
|
||||||
func _on_BackgroundColor_CheckBox_toggled(button_pressed):
|
func _on_BackgroundColor_CheckBox_toggled(button_pressed):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'background', 'use_color', button_pressed)
|
DialogicResources.set_theme_value(current_theme, 'background', 'use_color', button_pressed)
|
||||||
|
_on_PreviewButton_pressed() # Refreshing the preview
|
||||||
|
|
||||||
|
|
||||||
func _on_BackgroundColor_ColorPickerButton_color_changed(color):
|
func _on_BackgroundColor_ColorPickerButton_color_changed(color):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'background', 'color', '#' + color.to_html())
|
DialogicResources.set_theme_value(current_theme, 'background', 'color', '#' + color.to_html())
|
||||||
|
$DelayPreviewTimer.start(0.5) # Calling a timer so the update doesn't get triggered many times
|
||||||
|
|
||||||
|
|
||||||
func _on_BackgroundTexture_CheckBox_toggled(button_pressed):
|
func _on_BackgroundTexture_CheckBox_toggled(button_pressed):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'background', 'use_image', button_pressed)
|
DialogicResources.set_theme_value(current_theme, 'background', 'use_image', button_pressed)
|
||||||
|
_on_PreviewButton_pressed() # Refreshing the preview
|
||||||
|
|
||||||
|
|
||||||
func _on_button_background_visible_toggled(button_pressed):
|
func _on_button_background_visible_toggled(button_pressed):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'buttons', 'use_background_color', button_pressed)
|
DialogicResources.set_theme_value(current_theme, 'buttons', 'use_background_color', button_pressed)
|
||||||
|
|
||||||
|
|
||||||
func _on_button_background_color_color_changed(color):
|
func _on_button_background_color_color_changed(color):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'buttons', 'background_color', '#' + color.to_html())
|
DialogicResources.set_theme_value(current_theme, 'buttons', 'background_color', '#' + color.to_html())
|
||||||
|
$DelayPreviewTimer.start(0.5) # Calling a timer so the update doesn't get triggered many times
|
||||||
|
|
||||||
|
|
||||||
func _on_ButtonOffset_value_changed(value):
|
func _on_ButtonOffset_value_changed(value):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
var final_vector = Vector2(
|
var final_vector = Vector2(
|
||||||
n['button_offset_x'].value,
|
n['button_offset_x'].value,
|
||||||
n['button_offset_y'].value
|
n['button_offset_y'].value
|
||||||
|
@ -319,10 +401,14 @@ func _on_ButtonOffset_value_changed(value):
|
||||||
|
|
||||||
|
|
||||||
func _on_VerticalSeparation_value_changed(value):
|
func _on_VerticalSeparation_value_changed(value):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'buttons', 'gap', n['button_separation'].value)
|
DialogicResources.set_theme_value(current_theme, 'buttons', 'gap', n['button_separation'].value)
|
||||||
|
|
||||||
|
|
||||||
func _on_button_texture_toggled(button_pressed):
|
func _on_button_texture_toggled(button_pressed):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'buttons', 'use_image', button_pressed)
|
DialogicResources.set_theme_value(current_theme, 'buttons', 'use_image', button_pressed)
|
||||||
|
|
||||||
|
|
||||||
|
@ -332,29 +418,43 @@ func _on_ButtonTextureButton_pressed():
|
||||||
|
|
||||||
|
|
||||||
func _on_button_texture_selected(path, target):
|
func _on_button_texture_selected(path, target):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'buttons', 'image', path)
|
DialogicResources.set_theme_value(current_theme, 'buttons', 'image', path)
|
||||||
n['button_image'].text = DialogicResources.get_filename_from_path(path)
|
n['button_image'].text = DialogicResources.get_filename_from_path(path)
|
||||||
|
|
||||||
|
|
||||||
func _on_ButtonTextColor_color_changed(color):
|
func _on_ButtonTextColor_color_changed(color):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'buttons', 'text_color', '#' + color.to_html())
|
DialogicResources.set_theme_value(current_theme, 'buttons', 'text_color', '#' + color.to_html())
|
||||||
|
$DelayPreviewTimer.start(0.5) # Calling a timer so the update doesn't get triggered many times
|
||||||
|
|
||||||
|
|
||||||
func _on_Custom_Button_Color_toggled(button_pressed):
|
func _on_Custom_Button_Color_toggled(button_pressed):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'buttons', 'text_color_enabled', button_pressed)
|
DialogicResources.set_theme_value(current_theme, 'buttons', 'text_color_enabled', button_pressed)
|
||||||
|
|
||||||
|
|
||||||
func _on_GlossaryColorPicker_color_changed(color):
|
func _on_GlossaryColorPicker_color_changed(color):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'definitions', 'color', '#' + color.to_html())
|
DialogicResources.set_theme_value(current_theme, 'definitions', 'color', '#' + color.to_html())
|
||||||
|
$DelayPreviewTimer.start(0.5) # Calling a timer so the update doesn't get triggered many times
|
||||||
|
|
||||||
|
|
||||||
func _on_GlossaryFontButton_pressed():
|
func _on_GlossaryFontButton_pressed():
|
||||||
editor_reference.godot_dialog("*.tres")
|
editor_reference.godot_dialog("*.tres")
|
||||||
editor_reference.godot_dialog_connect(self, "_on_Glossary_Font_selected")
|
editor_reference.godot_dialog_connect(self, "_on_Glossary_Font_selected")
|
||||||
|
|
||||||
|
|
||||||
func _on_Glossary_Font_selected(path, target):
|
func _on_Glossary_Font_selected(path, target):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'definitions', 'font', path)
|
DialogicResources.set_theme_value(current_theme, 'definitions', 'font', path)
|
||||||
n['glossary_font'].text = DialogicResources.get_filename_from_path(path)
|
n['glossary_font'].text = DialogicResources.get_filename_from_path(path)
|
||||||
|
_on_PreviewButton_pressed() # Refreshing the preview
|
||||||
|
|
||||||
|
|
||||||
func _on_visibility_changed():
|
func _on_visibility_changed():
|
||||||
|
@ -364,47 +464,69 @@ func _on_visibility_changed():
|
||||||
else:
|
else:
|
||||||
# Erasing all previews since them keeps working
|
# Erasing all previews since them keeps working
|
||||||
# on background
|
# on background
|
||||||
for i in n['preview_panel'].get_children():
|
for i in $VBoxContainer/Panel.get_children():
|
||||||
i.queue_free()
|
i.queue_free()
|
||||||
|
|
||||||
|
|
||||||
func _on_BoxSize_value_changed(value):
|
func _on_BoxSize_value_changed(value):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
var size_value = Vector2(n['size_w'].value, n['size_h'].value)
|
var size_value = Vector2(n['size_w'].value, n['size_h'].value)
|
||||||
DialogicResources.set_theme_value(current_theme, 'box', 'size', size_value)
|
DialogicResources.set_theme_value(current_theme, 'box', 'size', size_value)
|
||||||
|
_on_PreviewButton_pressed() # Refreshing the preview
|
||||||
|
|
||||||
|
|
||||||
func _on_BottomGap_value_changed(value):
|
func _on_BottomGap_value_changed(value):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'box', 'bottom_gap', value)
|
DialogicResources.set_theme_value(current_theme, 'box', 'bottom_gap', value)
|
||||||
|
_on_PreviewButton_pressed() # Refreshing the preview
|
||||||
|
|
||||||
|
|
||||||
func _on_Alignment_item_selected(index):
|
func _on_Alignment_item_selected(index):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
if index == 0:
|
if index == 0:
|
||||||
DialogicResources.set_theme_value(current_theme, 'text', 'alignment', 'Left')
|
DialogicResources.set_theme_value(current_theme, 'text', 'alignment', 'Left')
|
||||||
elif index == 1:
|
elif index == 1:
|
||||||
DialogicResources.set_theme_value(current_theme, 'text', 'alignment', 'Center')
|
DialogicResources.set_theme_value(current_theme, 'text', 'alignment', 'Center')
|
||||||
elif index == 2:
|
elif index == 2:
|
||||||
DialogicResources.set_theme_value(current_theme, 'text', 'alignment', 'Right')
|
DialogicResources.set_theme_value(current_theme, 'text', 'alignment', 'Right')
|
||||||
|
_on_PreviewButton_pressed() # Refreshing the preview
|
||||||
|
|
||||||
|
|
||||||
func _on_Preview_text_changed():
|
func _on_Preview_text_changed():
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'text', 'preview', n['text_preview'].text)
|
DialogicResources.set_theme_value(current_theme, 'text', 'preview', n['text_preview'].text)
|
||||||
|
|
||||||
|
|
||||||
func _on_name_auto_color_toggled(button_pressed):
|
func _on_name_auto_color_toggled(button_pressed):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'name', 'auto_color', button_pressed)
|
DialogicResources.set_theme_value(current_theme, 'name', 'auto_color', button_pressed)
|
||||||
|
_on_PreviewButton_pressed() # Refreshing the preview
|
||||||
|
|
||||||
|
|
||||||
func _on_name_background_visible_toggled(button_pressed):
|
func _on_name_background_visible_toggled(button_pressed):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'name', 'background_visible', button_pressed)
|
DialogicResources.set_theme_value(current_theme, 'name', 'background_visible', button_pressed)
|
||||||
|
_on_PreviewButton_pressed() # Refreshing the preview
|
||||||
|
|
||||||
|
|
||||||
func _on_name_background_color_changed(color):
|
func _on_name_background_color_changed(color):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'name', 'background', '#' + color.to_html())
|
DialogicResources.set_theme_value(current_theme, 'name', 'background', '#' + color.to_html())
|
||||||
|
$DelayPreviewTimer.start(0.5) # Calling a timer so the update doesn't get triggered many times
|
||||||
|
|
||||||
|
|
||||||
func _on_name_image_visible_toggled(button_pressed):
|
func _on_name_image_visible_toggled(button_pressed):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'name', 'image_visible', button_pressed)
|
DialogicResources.set_theme_value(current_theme, 'name', 'image_visible', button_pressed)
|
||||||
|
_on_PreviewButton_pressed() # Refreshing the preview
|
||||||
|
|
||||||
|
|
||||||
func _on_name_image_pressed():
|
func _on_name_image_pressed():
|
||||||
|
@ -413,22 +535,55 @@ func _on_name_image_pressed():
|
||||||
|
|
||||||
|
|
||||||
func _on_name_texture_selected(path, target):
|
func _on_name_texture_selected(path, target):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'name', 'image', path)
|
DialogicResources.set_theme_value(current_theme, 'name', 'image', path)
|
||||||
n['name_image'].text = DialogicResources.get_filename_from_path(path)
|
n['name_image'].text = DialogicResources.get_filename_from_path(path)
|
||||||
|
_on_PreviewButton_pressed() # Refreshing the preview
|
||||||
|
|
||||||
|
|
||||||
func _on_shadow_visible_toggled(button_pressed):
|
func _on_shadow_visible_toggled(button_pressed):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'name', 'shadow_visible', button_pressed)
|
DialogicResources.set_theme_value(current_theme, 'name', 'shadow_visible', button_pressed)
|
||||||
|
_on_PreviewButton_pressed() # Refreshing the preview
|
||||||
|
|
||||||
|
|
||||||
func _on_name_shadow_color_changed(color):
|
func _on_name_shadow_color_changed(color):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'name', 'shadow', '#' + color.to_html())
|
DialogicResources.set_theme_value(current_theme, 'name', 'shadow', '#' + color.to_html())
|
||||||
|
$DelayPreviewTimer.start(0.5) # Calling a timer so the update doesn't get triggered many times
|
||||||
|
|
||||||
|
|
||||||
func _on_name_ShadowOffset_value_changed(_value):
|
func _on_name_ShadowOffset_value_changed(_value):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'name','shadow_offset',
|
DialogicResources.set_theme_value(current_theme, 'name','shadow_offset',
|
||||||
Vector2(n['name_shadow_offset_x'].value,n['name_shadow_offset_y'].value))
|
Vector2(n['name_shadow_offset_x'].value,n['name_shadow_offset_y'].value))
|
||||||
|
_on_PreviewButton_pressed() # Refreshing the preview
|
||||||
|
|
||||||
|
|
||||||
func _on_name_BottomGap_value_changed(value):
|
func _on_name_BottomGap_value_changed(value):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
DialogicResources.set_theme_value(current_theme, 'name', 'bottom_gap', value)
|
DialogicResources.set_theme_value(current_theme, 'name', 'bottom_gap', value)
|
||||||
|
_on_PreviewButton_pressed() # Refreshing the preview
|
||||||
|
|
||||||
|
|
||||||
|
func _on_DelayPreview_timer_timeout():
|
||||||
|
_on_PreviewButton_pressed() # Refreshing the preview
|
||||||
|
|
||||||
|
|
||||||
|
func _on_BackgroundTexture_Modulation_toggled(button_pressed):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
|
DialogicResources.set_theme_value(current_theme, 'background', 'modulation', button_pressed)
|
||||||
|
_on_PreviewButton_pressed() # Refreshing the preview
|
||||||
|
|
||||||
|
|
||||||
|
func _on_ColorPicker_Background_texture_modulation_color_changed(color):
|
||||||
|
if loading == true:
|
||||||
|
return
|
||||||
|
DialogicResources.set_theme_value(current_theme, 'background', 'modulation_color', '#' + color.to_html())
|
||||||
|
$DelayPreviewTimer.start(0.5) # Calling a timer so the update doesn't get triggered many times
|
||||||
|
|
16
addons/dialogic/Editor/TimelineEditor/EventButton.gd
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
tool
|
||||||
|
extends Button
|
||||||
|
|
||||||
|
export (String) var EventName = ''
|
||||||
|
|
||||||
|
func get_drag_data(position):
|
||||||
|
var preview_label = Label.new()
|
||||||
|
|
||||||
|
if (self.text != ''):
|
||||||
|
preview_label.text = text
|
||||||
|
else:
|
||||||
|
preview_label.text = 'Add Event %s' % [ EventName ]
|
||||||
|
|
||||||
|
set_drag_preview(preview_label)
|
||||||
|
|
||||||
|
return { "source": "EventButton", "event_name": EventName }
|
139
addons/dialogic/Editor/TimelineEditor/TimelineArea.gd
Normal file
|
@ -0,0 +1,139 @@
|
||||||
|
tool
|
||||||
|
extends ScrollContainer
|
||||||
|
|
||||||
|
var _drag_drop_indicator = null
|
||||||
|
# store last attempts since godot sometimes misses drop events
|
||||||
|
var _is_drag_receiving = false
|
||||||
|
var _last_event_button_drop_attempt = ''
|
||||||
|
var _mouse_exited = false
|
||||||
|
|
||||||
|
func _ready():
|
||||||
|
connect("mouse_entered", self, '_on_mouse_entered')
|
||||||
|
connect("mouse_exited", self, '_on_mouse_exited')
|
||||||
|
connect("gui_input", self, '_on_gui_input')
|
||||||
|
|
||||||
|
|
||||||
|
func can_drop_data(position, data):
|
||||||
|
if (data != null and data is Dictionary and data.has("source")):
|
||||||
|
if (data["source"] == "EventButton"):
|
||||||
|
# position drop indicator
|
||||||
|
_set_indicator_position(position)
|
||||||
|
_is_drag_receiving = true
|
||||||
|
_last_event_button_drop_attempt = data["event_name"]
|
||||||
|
return true
|
||||||
|
|
||||||
|
_remove_drop_indicator()
|
||||||
|
return false
|
||||||
|
|
||||||
|
|
||||||
|
func cancel_drop():
|
||||||
|
_is_drag_receiving = false
|
||||||
|
_last_event_button_drop_attempt = ''
|
||||||
|
_remove_drop_indicator()
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
func drop_data(position, data):
|
||||||
|
# todo, getting timeline like this is prone to fail someday
|
||||||
|
var timeline_editor = get_parent()
|
||||||
|
|
||||||
|
# add event
|
||||||
|
if (data["source"] == "EventButton"):
|
||||||
|
var piece = timeline_editor.create_event(data["event_name"])
|
||||||
|
if (piece != null and _drag_drop_indicator != null):
|
||||||
|
var parent = piece.get_parent()
|
||||||
|
if (parent != null):
|
||||||
|
parent.remove_child(piece)
|
||||||
|
parent.add_child_below_node(_drag_drop_indicator, piece)
|
||||||
|
timeline_editor.indent_events()
|
||||||
|
# @todo _select_item seems to be a "private" function
|
||||||
|
# maybe expose it as "public" or add a public helper function
|
||||||
|
# to TimelineEditor.gd
|
||||||
|
timeline_editor._select_item(piece)
|
||||||
|
|
||||||
|
_is_drag_receiving = false
|
||||||
|
_last_event_button_drop_attempt = ''
|
||||||
|
_remove_drop_indicator()
|
||||||
|
|
||||||
|
|
||||||
|
func _on_mouse_exited():
|
||||||
|
_mouse_exited = true
|
||||||
|
|
||||||
|
|
||||||
|
func _on_mouse_entered():
|
||||||
|
_mouse_exited = false
|
||||||
|
|
||||||
|
|
||||||
|
func _input(event):
|
||||||
|
if (event is InputEventMouseButton and is_visible_in_tree() and event.button_index == BUTTON_LEFT):
|
||||||
|
if (_mouse_exited and _is_drag_receiving):
|
||||||
|
cancel_drop()
|
||||||
|
|
||||||
|
|
||||||
|
func _on_gui_input(event):
|
||||||
|
# godot sometimes misses drop events
|
||||||
|
if (event is InputEventMouseButton and event.button_index == BUTTON_LEFT):
|
||||||
|
if (_is_drag_receiving):
|
||||||
|
if (_last_event_button_drop_attempt != ''):
|
||||||
|
drop_data(Vector2.ZERO, { "source": "EventButton", "event_name": _last_event_button_drop_attempt} )
|
||||||
|
_is_drag_receiving = false
|
||||||
|
_remove_drop_indicator()
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
func _create_drop_indicator():
|
||||||
|
_remove_drop_indicator()
|
||||||
|
|
||||||
|
var timeline = get_child(0)
|
||||||
|
if (timeline == null):
|
||||||
|
return
|
||||||
|
|
||||||
|
var indicator = ColorRect.new()
|
||||||
|
indicator.name = "DropIndicator"
|
||||||
|
indicator.rect_size.y = 100
|
||||||
|
indicator.rect_min_size.y = 100
|
||||||
|
indicator.color = Color(0.35, 0.37, 0.44) # default editor light blue
|
||||||
|
indicator.mouse_filter = MOUSE_FILTER_IGNORE
|
||||||
|
|
||||||
|
# add indent node like the other scene nodes have
|
||||||
|
var indent = Control.new()
|
||||||
|
indent.rect_min_size.x = 25
|
||||||
|
indent.visible = false
|
||||||
|
indent.name = "Indent"
|
||||||
|
indicator.add_child(indent)
|
||||||
|
|
||||||
|
var label = Label.new()
|
||||||
|
label.text = "Drop here"
|
||||||
|
indicator.add_child(label)
|
||||||
|
|
||||||
|
timeline.add_child(indicator)
|
||||||
|
|
||||||
|
_drag_drop_indicator = indicator
|
||||||
|
|
||||||
|
|
||||||
|
func _remove_drop_indicator():
|
||||||
|
if (_drag_drop_indicator != null):
|
||||||
|
_drag_drop_indicator.get_parent().remove_child(_drag_drop_indicator)
|
||||||
|
_drag_drop_indicator.queue_free()
|
||||||
|
|
||||||
|
_drag_drop_indicator = null
|
||||||
|
|
||||||
|
|
||||||
|
func _set_indicator_position(position):
|
||||||
|
var timeline = get_child(0)
|
||||||
|
if (timeline == null):
|
||||||
|
return
|
||||||
|
|
||||||
|
if (_drag_drop_indicator == null):
|
||||||
|
_create_drop_indicator()
|
||||||
|
|
||||||
|
var highest_index = 0
|
||||||
|
var index = 0
|
||||||
|
for child in timeline.get_children():
|
||||||
|
if child.get_local_mouse_position().y > 0 and index > highest_index:
|
||||||
|
highest_index = index
|
||||||
|
index += 1
|
||||||
|
|
||||||
|
if (_drag_drop_indicator.is_inside_tree()):
|
||||||
|
timeline.move_child(_drag_drop_indicator, max(0, highest_index))
|
||||||
|
pass
|
|
@ -6,7 +6,7 @@ var timeline_name: String = ''
|
||||||
var timeline_file: String = ''
|
var timeline_file: String = ''
|
||||||
var current_timeline: Dictionary = {}
|
var current_timeline: Dictionary = {}
|
||||||
|
|
||||||
onready var master_tree = get_node('../MasterTree')
|
onready var master_tree = get_node('../MasterTreeContainer/MasterTree')
|
||||||
onready var timeline = $TimelineArea/TimeLine
|
onready var timeline = $TimelineArea/TimeLine
|
||||||
onready var events_warning = $ScrollContainer/EventContainer/EventsWarning
|
onready var events_warning = $ScrollContainer/EventContainer/EventsWarning
|
||||||
|
|
||||||
|
@ -18,8 +18,26 @@ var selected_item : Node
|
||||||
|
|
||||||
|
|
||||||
var moving_piece = null
|
var moving_piece = null
|
||||||
|
var piece_was_dragged = false
|
||||||
|
|
||||||
func _ready():
|
func _ready():
|
||||||
|
var modifier = ''
|
||||||
|
var _scale = get_constant("inspector_margin", "Editor")
|
||||||
|
_scale = _scale * 0.125
|
||||||
|
$ScrollContainer.rect_min_size.x = 180
|
||||||
|
if _scale == 1.25:
|
||||||
|
modifier = '-1.25'
|
||||||
|
$ScrollContainer.rect_min_size.x = 200
|
||||||
|
if _scale == 1.5:
|
||||||
|
modifier = '-1.25'
|
||||||
|
$ScrollContainer.rect_min_size.x = 200
|
||||||
|
if _scale == 1.75:
|
||||||
|
modifier = '-1.25'
|
||||||
|
$ScrollContainer.rect_min_size.x = 390
|
||||||
|
if _scale == 2:
|
||||||
|
modifier = '-2'
|
||||||
|
$ScrollContainer.rect_min_size.x = 390
|
||||||
|
|
||||||
# We connect all the event buttons to the event creation functions
|
# We connect all the event buttons to the event creation functions
|
||||||
for b in $ScrollContainer/EventContainer.get_children():
|
for b in $ScrollContainer/EventContainer.get_children():
|
||||||
if b is Button:
|
if b is Button:
|
||||||
|
@ -34,6 +52,136 @@ func _ready():
|
||||||
style.set('bg_color', get_color("dark_color_1", "Editor"))
|
style.set('bg_color', get_color("dark_color_1", "Editor"))
|
||||||
|
|
||||||
|
|
||||||
|
func delete_event():
|
||||||
|
# get next element
|
||||||
|
var next = min(timeline.get_child_count() - 1, selected_item.get_index() + 1)
|
||||||
|
var next_node = timeline.get_child(next)
|
||||||
|
if (next_node == selected_item):
|
||||||
|
next_node = null
|
||||||
|
|
||||||
|
# remove current
|
||||||
|
selected_item.get_parent().remove_child(selected_item)
|
||||||
|
selected_item.queue_free()
|
||||||
|
selected_item = null
|
||||||
|
|
||||||
|
# select next
|
||||||
|
if (next_node != null):
|
||||||
|
_select_item(next_node)
|
||||||
|
else:
|
||||||
|
if (timeline.get_child_count() > 0):
|
||||||
|
next_node = timeline.get_child(max(0, timeline.get_child_count() - 1))
|
||||||
|
if (next_node != null):
|
||||||
|
_select_item(next_node)
|
||||||
|
|
||||||
|
indent_events()
|
||||||
|
|
||||||
|
func _input(event):
|
||||||
|
# some shortcuts need to get handled in the common input event
|
||||||
|
# especially CTRL-based
|
||||||
|
# because certain godot controls swallow events (like textedit)
|
||||||
|
# we protect this with is_visible_in_tree to not
|
||||||
|
# invoke a shortcut by accident
|
||||||
|
if (event is InputEventKey and event is InputEventWithModifiers and is_visible_in_tree()):
|
||||||
|
# CTRL UP
|
||||||
|
if (event.pressed
|
||||||
|
and event.alt == false
|
||||||
|
and event.shift == false
|
||||||
|
and event.control == true
|
||||||
|
and event.scancode == KEY_UP
|
||||||
|
and event.echo == false
|
||||||
|
):
|
||||||
|
# select previous
|
||||||
|
if (selected_item != null):
|
||||||
|
var prev = max(0, selected_item.get_index() - 1)
|
||||||
|
var prev_node = timeline.get_child(prev)
|
||||||
|
if (prev_node != selected_item):
|
||||||
|
_select_item(prev_node)
|
||||||
|
get_tree().set_input_as_handled()
|
||||||
|
|
||||||
|
pass
|
||||||
|
|
||||||
|
# CTRL DOWN
|
||||||
|
if (event.pressed
|
||||||
|
and event.alt == false
|
||||||
|
and event.shift == false
|
||||||
|
and event.control == true
|
||||||
|
and event.scancode == KEY_DOWN
|
||||||
|
and event.echo == false
|
||||||
|
):
|
||||||
|
# select next
|
||||||
|
if (selected_item != null):
|
||||||
|
var next = min(timeline.get_child_count() - 1, selected_item.get_index() + 1)
|
||||||
|
var next_node = timeline.get_child(next)
|
||||||
|
if (next_node != selected_item):
|
||||||
|
_select_item(next_node)
|
||||||
|
get_tree().set_input_as_handled()
|
||||||
|
|
||||||
|
pass
|
||||||
|
|
||||||
|
# CTRL DELETE
|
||||||
|
if (event.pressed
|
||||||
|
and event.alt == false
|
||||||
|
and event.shift == false
|
||||||
|
and event.control == true
|
||||||
|
and event.scancode == KEY_DELETE
|
||||||
|
and event.echo == false
|
||||||
|
):
|
||||||
|
if (selected_item != null):
|
||||||
|
delete_event()
|
||||||
|
get_tree().set_input_as_handled()
|
||||||
|
pass
|
||||||
|
|
||||||
|
# CTRL T
|
||||||
|
if (event.pressed
|
||||||
|
and event.alt == false
|
||||||
|
and event.shift == false
|
||||||
|
and event.control == true
|
||||||
|
and event.scancode == KEY_T
|
||||||
|
and event.echo == false
|
||||||
|
):
|
||||||
|
var new_text = create_event("TextBlock")
|
||||||
|
_select_item(new_text)
|
||||||
|
indent_events()
|
||||||
|
get_tree().set_input_as_handled()
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
func _unhandled_key_input(event):
|
||||||
|
if (event is InputEventWithModifiers):
|
||||||
|
# ALT UP
|
||||||
|
if (event.pressed
|
||||||
|
and event.alt == true
|
||||||
|
and event.shift == false
|
||||||
|
and event.control == false
|
||||||
|
and event.scancode == KEY_UP
|
||||||
|
and event.echo == false
|
||||||
|
):
|
||||||
|
# move selected up
|
||||||
|
if (selected_item != null):
|
||||||
|
move_block(selected_item, "up")
|
||||||
|
indent_events()
|
||||||
|
get_tree().set_input_as_handled()
|
||||||
|
|
||||||
|
pass
|
||||||
|
|
||||||
|
# ALT DOWN
|
||||||
|
if (event.pressed
|
||||||
|
and event.alt == true
|
||||||
|
and event.shift == false
|
||||||
|
and event.control == false
|
||||||
|
and event.scancode == KEY_DOWN
|
||||||
|
and event.echo == false
|
||||||
|
):
|
||||||
|
# move selected down
|
||||||
|
if (selected_item != null):
|
||||||
|
move_block(selected_item, "down")
|
||||||
|
indent_events()
|
||||||
|
get_tree().set_input_as_handled()
|
||||||
|
|
||||||
|
pass
|
||||||
|
|
||||||
|
pass
|
||||||
|
|
||||||
func _process(delta):
|
func _process(delta):
|
||||||
if moving_piece != null:
|
if moving_piece != null:
|
||||||
var current_position = get_global_mouse_position()
|
var current_position = get_global_mouse_position()
|
||||||
|
@ -45,10 +193,12 @@ func _process(delta):
|
||||||
up_offset = (up_offset / 2) + 5
|
up_offset = (up_offset / 2) + 5
|
||||||
if current_position.y < node_position - up_offset:
|
if current_position.y < node_position - up_offset:
|
||||||
move_block(moving_piece, 'up')
|
move_block(moving_piece, 'up')
|
||||||
|
piece_was_dragged = true
|
||||||
if down_offset != null:
|
if down_offset != null:
|
||||||
down_offset = height + (down_offset / 2) + 5
|
down_offset = height + (down_offset / 2) + 5
|
||||||
if current_position.y > node_position + down_offset:
|
if current_position.y > node_position + down_offset:
|
||||||
move_block(moving_piece, 'down')
|
move_block(moving_piece, 'down')
|
||||||
|
piece_was_dragged = true
|
||||||
|
|
||||||
|
|
||||||
func _clear_selection():
|
func _clear_selection():
|
||||||
|
@ -56,6 +206,7 @@ func _clear_selection():
|
||||||
var selected_panel: PanelContainer = selected_item.get_node("PanelContainer")
|
var selected_panel: PanelContainer = selected_item.get_node("PanelContainer")
|
||||||
if selected_panel != null:
|
if selected_panel != null:
|
||||||
selected_panel.set('custom_styles/panel', saved_style)
|
selected_panel.set('custom_styles/panel', saved_style)
|
||||||
|
|
||||||
selected_item = null
|
selected_item = null
|
||||||
saved_style = null
|
saved_style = null
|
||||||
|
|
||||||
|
@ -75,18 +226,28 @@ func _select_item(item: Node):
|
||||||
panel.set('custom_styles/panel', selected_style_text)
|
panel.set('custom_styles/panel', selected_style_text)
|
||||||
else:
|
else:
|
||||||
panel.set('custom_styles/panel', selected_style)
|
panel.set('custom_styles/panel', selected_style)
|
||||||
|
# allow event panels to do additional operation when getting selected
|
||||||
|
if (selected_item.has_method("on_timeline_selected")):
|
||||||
|
selected_item.on_timeline_selected()
|
||||||
else:
|
else:
|
||||||
_clear_selection()
|
_clear_selection()
|
||||||
|
|
||||||
|
|
||||||
func _on_gui_input(event, item: Node):
|
func _on_gui_input(event, item: Node):
|
||||||
if event is InputEventMouseButton and event.button_index == 1:
|
if event is InputEventMouseButton and event.button_index == 1:
|
||||||
if event.is_pressed():
|
if (not event.is_pressed()):
|
||||||
|
if (not piece_was_dragged and moving_piece != null):
|
||||||
|
_clear_selection()
|
||||||
|
if (moving_piece != null):
|
||||||
|
indent_events()
|
||||||
|
moving_piece = null
|
||||||
|
elif event.is_pressed():
|
||||||
|
moving_piece = item
|
||||||
if not _is_item_selected(item):
|
if not _is_item_selected(item):
|
||||||
_select_item(item)
|
_select_item(item)
|
||||||
moving_piece = item
|
piece_was_dragged = true
|
||||||
else:
|
else:
|
||||||
moving_piece = null
|
piece_was_dragged = false
|
||||||
|
|
||||||
|
|
||||||
# Event Creation signal for buttons
|
# Event Creation signal for buttons
|
||||||
|
@ -154,8 +315,14 @@ func indent_events() -> void:
|
||||||
for event in event_list:
|
for event in event_list:
|
||||||
var indent_node = event.get_node("Indent")
|
var indent_node = event.get_node("Indent")
|
||||||
indent_node.visible = false
|
indent_node.visible = false
|
||||||
|
|
||||||
# Adding new indents
|
# Adding new indents
|
||||||
for event in event_list:
|
for event in event_list:
|
||||||
|
# since there are indicators now, not all elements
|
||||||
|
# in this list have an event_data property
|
||||||
|
if (not "event_data" in event):
|
||||||
|
continue
|
||||||
|
|
||||||
if event.event_data.has('question') or event.event_data.has('condition'):
|
if event.event_data.has('question') or event.event_data.has('condition'):
|
||||||
indent += 1
|
indent += 1
|
||||||
starter = true
|
starter = true
|
||||||
|
@ -186,8 +353,8 @@ func indent_events() -> void:
|
||||||
|
|
||||||
|
|
||||||
func load_timeline(filename: String):
|
func load_timeline(filename: String):
|
||||||
print('---------------------------')
|
#print('---------------------------')
|
||||||
print('Loading: ', filename)
|
#print('Loading: ', filename)
|
||||||
clear_timeline()
|
clear_timeline()
|
||||||
var start_time = OS.get_system_time_msecs()
|
var start_time = OS.get_system_time_msecs()
|
||||||
timeline_file = filename
|
timeline_file = filename
|
||||||
|
@ -234,6 +401,8 @@ func load_timeline(filename: String):
|
||||||
create_event("SetValue", i)
|
create_event("SetValue", i)
|
||||||
{'set_theme'}:
|
{'set_theme'}:
|
||||||
create_event("SetTheme", i)
|
create_event("SetTheme", i)
|
||||||
|
{'call_node'}:
|
||||||
|
create_event("CallNode", i)
|
||||||
|
|
||||||
if data.size() < 1:
|
if data.size() < 1:
|
||||||
events_warning.visible = true
|
events_warning.visible = true
|
||||||
|
@ -243,7 +412,7 @@ func load_timeline(filename: String):
|
||||||
#fold_all_nodes()
|
#fold_all_nodes()
|
||||||
|
|
||||||
var elapsed_time = (OS.get_system_time_msecs() - start_time) * 0.001
|
var elapsed_time = (OS.get_system_time_msecs() - start_time) * 0.001
|
||||||
editor_reference.dprint("Loading time: " + str(elapsed_time))
|
#editor_reference.dprint("Loading time: " + str(elapsed_time))
|
||||||
|
|
||||||
|
|
||||||
func clear_timeline():
|
func clear_timeline():
|
||||||
|
@ -317,6 +486,9 @@ func generate_save_data():
|
||||||
'events': []
|
'events': []
|
||||||
}
|
}
|
||||||
for event in timeline.get_children():
|
for event in timeline.get_children():
|
||||||
|
# check that event has event_data (e.g. drag drop indicators)
|
||||||
|
if (not "event_data" in event):
|
||||||
|
continue
|
||||||
if event.is_queued_for_deletion() == false: # Checking that the event is not waiting to be removed
|
if event.is_queued_for_deletion() == false: # Checking that the event is not waiting to be removed
|
||||||
info_to_save['events'].append(event.event_data)
|
info_to_save['events'].append(event.event_data)
|
||||||
return info_to_save
|
return info_to_save
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
[gd_scene load_steps=22 format=2]
|
[gd_scene load_steps=25 format=2]
|
||||||
|
|
||||||
[ext_resource path="res://addons/dialogic/Images/character-join.svg" type="Texture" id=1]
|
[ext_resource path="res://addons/dialogic/Images/character-join.svg" type="Texture" id=1]
|
||||||
[ext_resource path="res://addons/dialogic/Images/dialog.svg" type="Texture" id=2]
|
[ext_resource path="res://addons/dialogic/Images/dialog.svg" type="Texture" id=2]
|
||||||
|
@ -19,6 +19,9 @@
|
||||||
[ext_resource path="res://addons/dialogic/Editor/TimelineEditor/TimelineEditor.gd" type="Script" id=17]
|
[ext_resource path="res://addons/dialogic/Editor/TimelineEditor/TimelineEditor.gd" type="Script" id=17]
|
||||||
[ext_resource path="res://addons/dialogic/Images/theme.svg" type="Texture" id=18]
|
[ext_resource path="res://addons/dialogic/Images/theme.svg" type="Texture" id=18]
|
||||||
[ext_resource path="res://addons/dialogic/Images/Events/background-music.svg" type="Texture" id=19]
|
[ext_resource path="res://addons/dialogic/Images/Events/background-music.svg" type="Texture" id=19]
|
||||||
|
[ext_resource path="res://addons/dialogic/Images/Script.svg" type="Texture" id=20]
|
||||||
|
[ext_resource path="res://addons/dialogic/Editor/TimelineEditor/EventButton.gd" type="Script" id=21]
|
||||||
|
[ext_resource path="res://addons/dialogic/Editor/TimelineEditor/TimelineArea.gd" type="Script" id=22]
|
||||||
|
|
||||||
[sub_resource type="StyleBoxFlat" id=1]
|
[sub_resource type="StyleBoxFlat" id=1]
|
||||||
content_margin_left = 5.0
|
content_margin_left = 5.0
|
||||||
|
@ -48,7 +51,6 @@ anchor_bottom = 1.0
|
||||||
margin_bottom = 138.0
|
margin_bottom = 138.0
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
custom_constants/separation = 0
|
|
||||||
split_offset = 7
|
split_offset = 7
|
||||||
script = ExtResource( 17 )
|
script = ExtResource( 17 )
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
|
@ -56,11 +58,12 @@ __meta__ = {
|
||||||
}
|
}
|
||||||
|
|
||||||
[node name="TimelineArea" type="ScrollContainer" parent="."]
|
[node name="TimelineArea" type="ScrollContainer" parent="."]
|
||||||
margin_right = 816.0
|
margin_right = 836.0
|
||||||
margin_bottom = 738.0
|
margin_bottom = 738.0
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
custom_styles/bg = SubResource( 1 )
|
custom_styles/bg = SubResource( 1 )
|
||||||
|
script = ExtResource( 22 )
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
"_edit_use_anchors_": false
|
"_edit_use_anchors_": false
|
||||||
}
|
}
|
||||||
|
@ -68,7 +71,7 @@ __meta__ = {
|
||||||
[node name="TimeLine" type="VBoxContainer" parent="TimelineArea"]
|
[node name="TimeLine" type="VBoxContainer" parent="TimelineArea"]
|
||||||
margin_left = 5.0
|
margin_left = 5.0
|
||||||
margin_top = 5.0
|
margin_top = 5.0
|
||||||
margin_right = 811.0
|
margin_right = 831.0
|
||||||
margin_bottom = 733.0
|
margin_bottom = 733.0
|
||||||
grow_horizontal = 2
|
grow_horizontal = 2
|
||||||
grow_vertical = 2
|
grow_vertical = 2
|
||||||
|
@ -76,13 +79,13 @@ size_flags_horizontal = 3
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
|
|
||||||
[node name="ScrollContainer" type="ScrollContainer" parent="."]
|
[node name="ScrollContainer" type="ScrollContainer" parent="."]
|
||||||
margin_left = 824.0
|
margin_left = 844.0
|
||||||
margin_right = 1024.0
|
margin_right = 1024.0
|
||||||
margin_bottom = 738.0
|
margin_bottom = 738.0
|
||||||
rect_min_size = Vector2( 200, 0 )
|
rect_min_size = Vector2( 180, 0 )
|
||||||
|
|
||||||
[node name="EventContainer" type="VBoxContainer" parent="ScrollContainer"]
|
[node name="EventContainer" type="VBoxContainer" parent="ScrollContainer"]
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 738.0
|
margin_bottom = 738.0
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
|
@ -91,14 +94,14 @@ __meta__ = {
|
||||||
}
|
}
|
||||||
|
|
||||||
[node name="EventsWarning" type="PanelContainer" parent="ScrollContainer/EventContainer"]
|
[node name="EventsWarning" type="PanelContainer" parent="ScrollContainer/EventContainer"]
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 60.0
|
margin_bottom = 68.0
|
||||||
custom_styles/panel = SubResource( 2 )
|
custom_styles/panel = SubResource( 2 )
|
||||||
|
|
||||||
[node name="HBoxContainer" type="HBoxContainer" parent="ScrollContainer/EventContainer/EventsWarning"]
|
[node name="HBoxContainer" type="HBoxContainer" parent="ScrollContainer/EventContainer/EventsWarning"]
|
||||||
margin_top = 10.0
|
margin_top = 10.0
|
||||||
margin_right = 194.0
|
margin_right = 174.0
|
||||||
margin_bottom = 50.0
|
margin_bottom = 58.0
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
__meta__ = {
|
__meta__ = {
|
||||||
|
@ -107,15 +110,15 @@ __meta__ = {
|
||||||
|
|
||||||
[node name="TextureRect" type="TextureRect" parent="ScrollContainer/EventContainer/EventsWarning/HBoxContainer"]
|
[node name="TextureRect" type="TextureRect" parent="ScrollContainer/EventContainer/EventsWarning/HBoxContainer"]
|
||||||
margin_right = 40.0
|
margin_right = 40.0
|
||||||
margin_bottom = 40.0
|
margin_bottom = 48.0
|
||||||
rect_min_size = Vector2( 40, 40 )
|
rect_min_size = Vector2( 40, 40 )
|
||||||
texture = ExtResource( 13 )
|
texture = ExtResource( 13 )
|
||||||
stretch_mode = 4
|
stretch_mode = 4
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="ScrollContainer/EventContainer/EventsWarning/HBoxContainer"]
|
[node name="Label" type="Label" parent="ScrollContainer/EventContainer/EventsWarning/HBoxContainer"]
|
||||||
margin_left = 44.0
|
margin_left = 44.0
|
||||||
margin_right = 194.0
|
margin_right = 174.0
|
||||||
margin_bottom = 40.0
|
margin_bottom = 48.0
|
||||||
rect_min_size = Vector2( 100, 0 )
|
rect_min_size = Vector2( 100, 0 )
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
size_flags_vertical = 1
|
size_flags_vertical = 1
|
||||||
|
@ -124,9 +127,9 @@ text = "Add an event to start building your timeline"
|
||||||
autowrap = true
|
autowrap = true
|
||||||
|
|
||||||
[node name="HBoxContainer6" type="HBoxContainer" parent="ScrollContainer/EventContainer"]
|
[node name="HBoxContainer6" type="HBoxContainer" parent="ScrollContainer/EventContainer"]
|
||||||
margin_top = 64.0
|
margin_top = 72.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 78.0
|
margin_bottom = 86.0
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="ScrollContainer/EventContainer/HBoxContainer6"]
|
[node name="Label" type="Label" parent="ScrollContainer/EventContainer/HBoxContainer6"]
|
||||||
margin_right = 77.0
|
margin_right = 77.0
|
||||||
|
@ -135,38 +138,44 @@ text = "Main Events"
|
||||||
|
|
||||||
[node name="HSeparator2" type="HSeparator" parent="ScrollContainer/EventContainer/HBoxContainer6"]
|
[node name="HSeparator2" type="HSeparator" parent="ScrollContainer/EventContainer/HBoxContainer6"]
|
||||||
margin_left = 81.0
|
margin_left = 81.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 14.0
|
margin_bottom = 14.0
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
|
|
||||||
[node name="TextBlock" type="Button" parent="ScrollContainer/EventContainer"]
|
[node name="TextBlock" type="Button" parent="ScrollContainer/EventContainer"]
|
||||||
margin_top = 82.0
|
margin_top = 90.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 110.0
|
margin_bottom = 118.0
|
||||||
text = " Text Event"
|
text = " Text Event"
|
||||||
icon = ExtResource( 2 )
|
icon = ExtResource( 2 )
|
||||||
align = 0
|
align = 0
|
||||||
|
script = ExtResource( 21 )
|
||||||
|
EventName = "TextBlock"
|
||||||
|
|
||||||
[node name="CharacterJoinBlock" type="Button" parent="ScrollContainer/EventContainer"]
|
[node name="CharacterJoinBlock" type="Button" parent="ScrollContainer/EventContainer"]
|
||||||
margin_top = 114.0
|
margin_top = 122.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 142.0
|
margin_bottom = 150.0
|
||||||
text = " Character Join"
|
text = " Character Join"
|
||||||
icon = ExtResource( 1 )
|
icon = ExtResource( 1 )
|
||||||
align = 0
|
align = 0
|
||||||
|
script = ExtResource( 21 )
|
||||||
|
EventName = "CharacterJoinBlock"
|
||||||
|
|
||||||
[node name="CharacterLeaveBlock" type="Button" parent="ScrollContainer/EventContainer"]
|
[node name="CharacterLeaveBlock" type="Button" parent="ScrollContainer/EventContainer"]
|
||||||
margin_top = 146.0
|
margin_top = 154.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 174.0
|
margin_bottom = 182.0
|
||||||
text = " Character Leave"
|
text = " Character Leave"
|
||||||
icon = ExtResource( 7 )
|
icon = ExtResource( 7 )
|
||||||
align = 0
|
align = 0
|
||||||
|
script = ExtResource( 21 )
|
||||||
|
EventName = "CharacterLeaveBlock"
|
||||||
|
|
||||||
[node name="HBoxContainer5" type="HBoxContainer" parent="ScrollContainer/EventContainer"]
|
[node name="HBoxContainer5" type="HBoxContainer" parent="ScrollContainer/EventContainer"]
|
||||||
margin_top = 178.0
|
margin_top = 186.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 192.0
|
margin_bottom = 200.0
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="ScrollContainer/EventContainer/HBoxContainer5"]
|
[node name="Label" type="Label" parent="ScrollContainer/EventContainer/HBoxContainer5"]
|
||||||
margin_right = 33.0
|
margin_right = 33.0
|
||||||
|
@ -175,54 +184,64 @@ text = "Logic"
|
||||||
|
|
||||||
[node name="HSeparator2" type="HSeparator" parent="ScrollContainer/EventContainer/HBoxContainer5"]
|
[node name="HSeparator2" type="HSeparator" parent="ScrollContainer/EventContainer/HBoxContainer5"]
|
||||||
margin_left = 37.0
|
margin_left = 37.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 14.0
|
margin_bottom = 14.0
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
|
|
||||||
[node name="ButtonQuestion" type="Button" parent="ScrollContainer/EventContainer"]
|
[node name="ButtonQuestion" type="Button" parent="ScrollContainer/EventContainer"]
|
||||||
margin_top = 196.0
|
margin_top = 204.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 224.0
|
margin_bottom = 232.0
|
||||||
text = " Question"
|
text = " Question"
|
||||||
icon = ExtResource( 8 )
|
icon = ExtResource( 8 )
|
||||||
align = 0
|
align = 0
|
||||||
|
script = ExtResource( 21 )
|
||||||
|
EventName = "Question"
|
||||||
|
|
||||||
[node name="Choice" type="Button" parent="ScrollContainer/EventContainer"]
|
[node name="Choice" type="Button" parent="ScrollContainer/EventContainer"]
|
||||||
margin_top = 228.0
|
margin_top = 236.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 256.0
|
margin_bottom = 264.0
|
||||||
text = " Choice"
|
text = " Choice"
|
||||||
icon = ExtResource( 12 )
|
icon = ExtResource( 12 )
|
||||||
align = 0
|
align = 0
|
||||||
|
script = ExtResource( 21 )
|
||||||
|
EventName = "Choice"
|
||||||
|
|
||||||
[node name="IfCondition" type="Button" parent="ScrollContainer/EventContainer"]
|
[node name="IfCondition" type="Button" parent="ScrollContainer/EventContainer"]
|
||||||
margin_top = 260.0
|
margin_top = 268.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 288.0
|
margin_bottom = 296.0
|
||||||
text = " Condition"
|
text = " Condition"
|
||||||
icon = ExtResource( 5 )
|
icon = ExtResource( 5 )
|
||||||
align = 0
|
align = 0
|
||||||
|
script = ExtResource( 21 )
|
||||||
|
EventName = "IfCondition"
|
||||||
|
|
||||||
[node name="EndBranch" type="Button" parent="ScrollContainer/EventContainer"]
|
[node name="EndBranch" type="Button" parent="ScrollContainer/EventContainer"]
|
||||||
margin_top = 292.0
|
margin_top = 300.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 320.0
|
margin_bottom = 328.0
|
||||||
text = " End Branch"
|
text = " End Branch"
|
||||||
icon = ExtResource( 9 )
|
icon = ExtResource( 9 )
|
||||||
align = 0
|
align = 0
|
||||||
|
script = ExtResource( 21 )
|
||||||
|
EventName = "EndBranch"
|
||||||
|
|
||||||
[node name="SetValue" type="Button" parent="ScrollContainer/EventContainer"]
|
[node name="SetValue" type="Button" parent="ScrollContainer/EventContainer"]
|
||||||
margin_top = 324.0
|
margin_top = 332.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 352.0
|
margin_bottom = 354.0
|
||||||
text = " Set Value"
|
text = " Set Value"
|
||||||
icon = ExtResource( 11 )
|
icon = ExtResource( 11 )
|
||||||
align = 0
|
align = 0
|
||||||
|
script = ExtResource( 21 )
|
||||||
|
EventName = "SetValue"
|
||||||
|
|
||||||
[node name="HBoxContainer3" type="HBoxContainer" parent="ScrollContainer/EventContainer"]
|
[node name="HBoxContainer3" type="HBoxContainer" parent="ScrollContainer/EventContainer"]
|
||||||
margin_top = 356.0
|
margin_top = 358.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 370.0
|
margin_bottom = 372.0
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="ScrollContainer/EventContainer/HBoxContainer3"]
|
[node name="Label" type="Label" parent="ScrollContainer/EventContainer/HBoxContainer3"]
|
||||||
margin_right = 56.0
|
margin_right = 56.0
|
||||||
|
@ -231,55 +250,65 @@ text = "Timeline"
|
||||||
|
|
||||||
[node name="HSeparator2" type="HSeparator" parent="ScrollContainer/EventContainer/HBoxContainer3"]
|
[node name="HSeparator2" type="HSeparator" parent="ScrollContainer/EventContainer/HBoxContainer3"]
|
||||||
margin_left = 60.0
|
margin_left = 60.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 14.0
|
margin_bottom = 14.0
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
|
|
||||||
[node name="ChangeTimeline" type="Button" parent="ScrollContainer/EventContainer"]
|
[node name="ChangeTimeline" type="Button" parent="ScrollContainer/EventContainer"]
|
||||||
margin_top = 374.0
|
margin_top = 376.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 402.0
|
margin_bottom = 404.0
|
||||||
hint_tooltip = "This will instantly teleport you to the start of the desired timeline."
|
hint_tooltip = "This will instantly teleport you to the start of the desired timeline."
|
||||||
text = " Change Timeline"
|
text = " Change Timeline"
|
||||||
icon = ExtResource( 10 )
|
icon = ExtResource( 10 )
|
||||||
align = 0
|
align = 0
|
||||||
|
script = ExtResource( 21 )
|
||||||
|
EventName = "ChangeTimeline"
|
||||||
|
|
||||||
[node name="SceneEvent" type="Button" parent="ScrollContainer/EventContainer"]
|
[node name="SceneEvent" type="Button" parent="ScrollContainer/EventContainer"]
|
||||||
margin_top = 406.0
|
margin_top = 408.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 434.0
|
margin_bottom = 436.0
|
||||||
text = " Scene Event"
|
text = " Scene Event"
|
||||||
icon = ExtResource( 4 )
|
icon = ExtResource( 4 )
|
||||||
align = 0
|
align = 0
|
||||||
|
script = ExtResource( 21 )
|
||||||
|
EventName = "SceneEvent"
|
||||||
|
|
||||||
[node name="CloseDialog" type="Button" parent="ScrollContainer/EventContainer"]
|
[node name="CloseDialog" type="Button" parent="ScrollContainer/EventContainer"]
|
||||||
margin_top = 438.0
|
margin_top = 440.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 466.0
|
margin_bottom = 468.0
|
||||||
text = " Close Dialog"
|
text = " Close Dialog"
|
||||||
icon = ExtResource( 6 )
|
icon = ExtResource( 6 )
|
||||||
align = 0
|
align = 0
|
||||||
|
script = ExtResource( 21 )
|
||||||
|
EventName = "CloseDialog"
|
||||||
|
|
||||||
[node name="WaitSeconds" type="Button" parent="ScrollContainer/EventContainer"]
|
[node name="WaitSeconds" type="Button" parent="ScrollContainer/EventContainer"]
|
||||||
margin_top = 470.0
|
margin_top = 472.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 498.0
|
margin_bottom = 500.0
|
||||||
text = " Wait Seconds"
|
text = " Wait Seconds"
|
||||||
icon = ExtResource( 14 )
|
icon = ExtResource( 14 )
|
||||||
align = 0
|
align = 0
|
||||||
|
script = ExtResource( 21 )
|
||||||
|
EventName = "WaitSeconds"
|
||||||
|
|
||||||
[node name="SetTheme" type="Button" parent="ScrollContainer/EventContainer"]
|
[node name="SetTheme" type="Button" parent="ScrollContainer/EventContainer"]
|
||||||
margin_top = 502.0
|
margin_top = 504.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 530.0
|
margin_bottom = 532.0
|
||||||
text = " Set Theme"
|
text = " Set Theme"
|
||||||
icon = ExtResource( 18 )
|
icon = ExtResource( 18 )
|
||||||
align = 0
|
align = 0
|
||||||
|
script = ExtResource( 21 )
|
||||||
|
EventName = "SetTheme"
|
||||||
|
|
||||||
[node name="HBoxContainer4" type="HBoxContainer" parent="ScrollContainer/EventContainer"]
|
[node name="HBoxContainer4" type="HBoxContainer" parent="ScrollContainer/EventContainer"]
|
||||||
margin_top = 534.0
|
margin_top = 536.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 548.0
|
margin_bottom = 550.0
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="ScrollContainer/EventContainer/HBoxContainer4"]
|
[node name="Label" type="Label" parent="ScrollContainer/EventContainer/HBoxContainer4"]
|
||||||
margin_right = 37.0
|
margin_right = 37.0
|
||||||
|
@ -288,30 +317,34 @@ text = "Audio"
|
||||||
|
|
||||||
[node name="HSeparator2" type="HSeparator" parent="ScrollContainer/EventContainer/HBoxContainer4"]
|
[node name="HSeparator2" type="HSeparator" parent="ScrollContainer/EventContainer/HBoxContainer4"]
|
||||||
margin_left = 41.0
|
margin_left = 41.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 14.0
|
margin_bottom = 14.0
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
|
|
||||||
[node name="AudioBlock" type="Button" parent="ScrollContainer/EventContainer"]
|
[node name="AudioBlock" type="Button" parent="ScrollContainer/EventContainer"]
|
||||||
margin_top = 552.0
|
margin_top = 554.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 580.0
|
margin_bottom = 582.0
|
||||||
text = " Audio Event"
|
text = " Audio Event"
|
||||||
icon = ExtResource( 3 )
|
icon = ExtResource( 3 )
|
||||||
align = 0
|
align = 0
|
||||||
|
script = ExtResource( 21 )
|
||||||
|
EventName = "AudioBlock"
|
||||||
|
|
||||||
[node name="BackgroundMusic" type="Button" parent="ScrollContainer/EventContainer"]
|
[node name="BackgroundMusic" type="Button" parent="ScrollContainer/EventContainer"]
|
||||||
margin_top = 584.0
|
margin_top = 586.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 612.0
|
margin_bottom = 614.0
|
||||||
text = " Background Music"
|
text = " Background Music"
|
||||||
icon = ExtResource( 19 )
|
icon = ExtResource( 19 )
|
||||||
align = 0
|
align = 0
|
||||||
|
script = ExtResource( 21 )
|
||||||
|
EventName = "BackgroundMusic"
|
||||||
|
|
||||||
[node name="HBoxContainer" type="HBoxContainer" parent="ScrollContainer/EventContainer"]
|
[node name="HBoxContainer" type="HBoxContainer" parent="ScrollContainer/EventContainer"]
|
||||||
margin_top = 616.0
|
margin_top = 618.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 630.0
|
margin_bottom = 632.0
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="ScrollContainer/EventContainer/HBoxContainer"]
|
[node name="Label" type="Label" parent="ScrollContainer/EventContainer/HBoxContainer"]
|
||||||
margin_right = 39.0
|
margin_right = 39.0
|
||||||
|
@ -320,24 +353,38 @@ text = "Godot"
|
||||||
|
|
||||||
[node name="HSeparator2" type="HSeparator" parent="ScrollContainer/EventContainer/HBoxContainer"]
|
[node name="HSeparator2" type="HSeparator" parent="ScrollContainer/EventContainer/HBoxContainer"]
|
||||||
margin_left = 43.0
|
margin_left = 43.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 14.0
|
margin_bottom = 14.0
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
|
|
||||||
[node name="EmitSignal" type="Button" parent="ScrollContainer/EventContainer"]
|
[node name="EmitSignal" type="Button" parent="ScrollContainer/EventContainer"]
|
||||||
margin_top = 634.0
|
margin_top = 636.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 662.0
|
margin_bottom = 664.0
|
||||||
text = " Emit Signal"
|
text = " Emit Signal"
|
||||||
icon = ExtResource( 16 )
|
icon = ExtResource( 16 )
|
||||||
align = 0
|
align = 0
|
||||||
|
script = ExtResource( 21 )
|
||||||
|
EventName = "EmitSignal"
|
||||||
|
|
||||||
[node name="ChangeScene" type="Button" parent="ScrollContainer/EventContainer"]
|
[node name="ChangeScene" type="Button" parent="ScrollContainer/EventContainer"]
|
||||||
margin_top = 666.0
|
margin_top = 668.0
|
||||||
margin_right = 200.0
|
margin_right = 180.0
|
||||||
margin_bottom = 694.0
|
margin_bottom = 696.0
|
||||||
hint_tooltip = "This will instantly change
|
hint_tooltip = "This will instantly change
|
||||||
the current scene."
|
the current scene."
|
||||||
text = " Change Scene"
|
text = " Change Scene"
|
||||||
icon = ExtResource( 15 )
|
icon = ExtResource( 15 )
|
||||||
align = 0
|
align = 0
|
||||||
|
script = ExtResource( 21 )
|
||||||
|
EventName = "ChangeScene"
|
||||||
|
|
||||||
|
[node name="CallNode" type="Button" parent="ScrollContainer/EventContainer"]
|
||||||
|
margin_top = 700.0
|
||||||
|
margin_right = 180.0
|
||||||
|
margin_bottom = 728.0
|
||||||
|
text = " Call Node"
|
||||||
|
icon = ExtResource( 20 )
|
||||||
|
align = 0
|
||||||
|
script = ExtResource( 21 )
|
||||||
|
EventName = "CallNode"
|
||||||
|
|
4
addons/dialogic/Images/Resources/character-1.25.svg
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<circle cx="11" cy="6" r="5" fill="white"/>
|
||||||
|
<path d="M17 18.4118C17 21 14.3137 21 11 21C7.68629 21 5 21 5 18.4118C5 13.7661 7.68629 10 11 10C14.3137 10 17 13.7661 17 18.4118Z" fill="white"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 294 B |
34
addons/dialogic/Images/Resources/character-1.25.svg.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/character-1.25.svg-f8560c64a6c9ea126837d22490545cc1.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://addons/dialogic/Images/Resources/character-1.25.svg"
|
||||||
|
dest_files=[ "res://.import/character-1.25.svg-f8560c64a6c9ea126837d22490545cc1.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/bptc_ldr=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
process/invert_color=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
4
addons/dialogic/Images/Resources/character-2.svg
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M23.2727 8.72726C23.2727 12.7439 20.0166 16 16 16C11.9834 16 8.72725 12.7439 8.72725 8.72726C8.72725 4.71064 11.9834 1.45453 16 1.45453C20.0166 1.45453 23.2727 4.71064 23.2727 8.72726Z" fill="white"/>
|
||||||
|
<path d="M24.7272 26.7807C24.7272 30.5454 20.8199 30.5454 16 30.5454C11.18 30.5454 7.27271 30.5454 7.27271 26.7807C7.27271 20.0234 11.18 14.5454 16 14.5454C20.8199 14.5454 24.7272 20.0234 24.7272 26.7807Z" fill="white"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 534 B |
34
addons/dialogic/Images/Resources/character-2.svg.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/character-2.svg-6a7c147375663e487c6aad504c0ac5e9.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://addons/dialogic/Images/Resources/character-2.svg"
|
||||||
|
dest_files=[ "res://.import/character-2.svg-6a7c147375663e487c6aad504c0ac5e9.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/bptc_ldr=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
process/invert_color=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
4
addons/dialogic/Images/Resources/character.svg
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M11.6364 4.36363C11.6364 6.37194 10.0083 7.99999 8 7.99999C5.99169 7.99999 4.36363 6.37194 4.36363 4.36363C4.36363 2.35532 5.99169 0.727264 8 0.727264C10.0083 0.727264 11.6364 2.35532 11.6364 4.36363Z" fill="white"/>
|
||||||
|
<path d="M12.3636 13.3904C12.3636 15.2727 10.41 15.2727 8 15.2727C5.59003 15.2727 3.63636 15.2727 3.63636 13.3904C3.63636 10.0117 5.59003 7.27272 8 7.27272C10.41 7.27272 12.3636 10.0117 12.3636 13.3904Z" fill="white"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 548 B |
|
@ -2,15 +2,15 @@
|
||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="StreamTexture"
|
type="StreamTexture"
|
||||||
path="res://.import/icon.svg-ea02ac3b105238214f20335b7e707d35.stex"
|
path="res://.import/character.svg-dce8982b5c5669e98479bbff64aab08f.stex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"vram_texture": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://addons/dialogic/Images/icon.svg"
|
source_file="res://addons/dialogic/Images/Resources/character.svg"
|
||||||
dest_files=[ "res://.import/icon.svg-ea02ac3b105238214f20335b7e707d35.stex" ]
|
dest_files=[ "res://.import/character.svg-dce8982b5c5669e98479bbff64aab08f.stex" ]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
3
addons/dialogic/Images/Resources/definition-1.25.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M19.2012 3.61523L17.6631 7.18359C17.3623 6.9375 17.0273 6.72559 16.6582 6.54785C16.3027 6.35645 15.9336 6.26074 15.5508 6.26074C15.25 6.26074 14.9629 6.32227 14.6895 6.44531C14.4297 6.56836 14.1904 6.73242 13.9717 6.9375C13.7529 7.14258 13.5615 7.375 13.3975 7.63477C13.2334 7.88086 13.0967 8.12695 12.9873 8.37305L12.5771 9.54199C12.8643 10.1436 13.1445 10.7178 13.418 11.2646C13.6504 11.7295 13.8896 12.2012 14.1357 12.6797C14.3818 13.1445 14.5869 13.5137 14.751 13.7871C15.0107 14.1836 15.2705 14.5938 15.5303 15.0176C15.79 15.4277 16.0771 15.8037 16.3916 16.1455C16.5283 16.2959 16.6924 16.3984 16.8838 16.4531C17.0889 16.4941 17.2734 16.5146 17.4375 16.5146C17.6973 16.5146 17.9434 16.4805 18.1758 16.4121C18.4082 16.3438 18.627 16.2549 18.832 16.1455L19.3447 16.8018C19.1533 17.1025 18.9209 17.4033 18.6475 17.7041C18.374 18.0049 18.0732 18.2783 17.7451 18.5244C17.4307 18.7705 17.0889 18.9688 16.7197 19.1191C16.3643 19.2832 16.002 19.3652 15.6328 19.3652C15.3047 19.3652 15.0107 19.3105 14.751 19.2012C14.5049 19.1055 14.2793 18.9756 14.0742 18.8115C13.8691 18.6338 13.6777 18.4287 13.5 18.1963C13.3223 17.9639 13.1377 17.7246 12.9463 17.4785C12.7959 17.2461 12.6318 16.9658 12.4541 16.6377C12.29 16.2959 12.1191 15.9473 11.9414 15.5918C11.7637 15.2363 11.5859 14.8945 11.4082 14.5664C11.2305 14.2246 11.0596 13.9375 10.8955 13.7051C10.8271 13.9375 10.7656 14.1699 10.7109 14.4023C10.6562 14.5938 10.5947 14.792 10.5264 14.9971C10.458 15.2021 10.3965 15.3594 10.3418 15.4688C10.1367 15.9062 9.87695 16.3574 9.5625 16.8223C9.24805 17.2871 8.88574 17.7109 8.47559 18.0938C8.0791 18.4629 7.6416 18.7705 7.16309 19.0166C6.68457 19.249 6.17871 19.3652 5.64551 19.3652C5.16699 19.3652 4.70215 19.2695 4.25098 19.0781C3.7998 18.9004 3.38281 18.6611 3 18.3604L4.29199 14.9561C4.72949 15.2295 5.20801 15.4756 5.72754 15.6943C6.24707 15.8994 6.7666 16.002 7.28613 16.002C7.4502 16.002 7.62109 15.9883 7.79883 15.9609C7.97656 15.9199 8.14746 15.8652 8.31152 15.7969C8.48926 15.7148 8.64648 15.6191 8.7832 15.5098C8.91992 15.3867 9.02246 15.2432 9.09082 15.0791C9.18652 14.9014 9.28906 14.6689 9.39844 14.3818C9.50781 14.0947 9.61719 13.8076 9.72656 13.5205C9.84961 13.1924 9.97266 12.8438 10.0957 12.4746L6.24023 6.30176C6.0625 6.09668 5.84375 5.93262 5.58398 5.80957C5.33789 5.67285 5.07812 5.60449 4.80469 5.60449C4.57227 5.60449 4.35352 5.65234 4.14844 5.74805C3.94336 5.83008 3.74512 5.94629 3.55371 6.09668L3 5.37891C3.19141 5.0918 3.41699 4.81152 3.67676 4.53809C3.9502 4.25098 4.24414 3.99805 4.55859 3.7793C4.87305 3.54688 5.20801 3.3623 5.56348 3.22559C5.91895 3.0752 6.28125 3 6.65039 3C7.10156 3 7.51855 3.11621 7.90137 3.34863C8.28418 3.56738 8.63965 3.84082 8.96777 4.16895C9.2959 4.49707 9.59668 4.85254 9.87012 5.23535C10.1436 5.61816 10.3896 5.97363 10.6084 6.30176C10.7178 6.45215 10.834 6.64355 10.957 6.87598C11.0938 7.09473 11.2236 7.31348 11.3467 7.53223C11.4971 7.77832 11.6406 8.04492 11.7773 8.33203C11.9141 8.00391 12.0576 7.67578 12.208 7.34766C12.3311 7.07422 12.4541 6.79395 12.5771 6.50684C12.7139 6.20605 12.8369 5.94629 12.9463 5.72754C13.1514 5.34473 13.3838 4.98926 13.6436 4.66113C13.9033 4.33301 14.1904 4.0459 14.5049 3.7998C14.833 3.55371 15.1885 3.3623 15.5713 3.22559C15.9541 3.0752 16.3711 3 16.8223 3C17.2461 3 17.6562 3.05469 18.0527 3.16406C18.4492 3.27344 18.832 3.42383 19.2012 3.61523Z" fill="white"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 3.4 KiB |
34
addons/dialogic/Images/Resources/definition-1.25.svg.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/definition-1.25.svg-7298ef82f76fa611485bd53d1f0aebe0.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://addons/dialogic/Images/Resources/definition-1.25.svg"
|
||||||
|
dest_files=[ "res://.import/definition-1.25.svg-7298ef82f76fa611485bd53d1f0aebe0.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/bptc_ldr=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
process/invert_color=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
3
addons/dialogic/Images/Resources/definition-2.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M27.929 5.25853L25.6918 10.4489C25.2543 10.0909 24.7671 9.78268 24.2301 9.52416C23.7131 9.24575 23.1761 9.10655 22.6193 9.10655C22.1818 9.10655 21.7642 9.19603 21.3665 9.37501C20.9886 9.55399 20.6406 9.79262 20.3225 10.0909C20.0043 10.3892 19.7259 10.7273 19.4872 11.1051C19.2486 11.4631 19.0497 11.821 18.8906 12.179L18.294 13.8793C18.7117 14.7543 19.1193 15.5895 19.5171 16.385C19.8551 17.0611 20.2031 17.7472 20.5611 18.4432C20.919 19.1193 21.2173 19.6563 21.456 20.054C21.8338 20.6307 22.2117 21.2273 22.5895 21.8438C22.9673 22.4404 23.385 22.9872 23.8423 23.4844C24.0412 23.7031 24.2798 23.8523 24.5583 23.9318C24.8565 23.9915 25.125 24.0213 25.3636 24.0213C25.7415 24.0213 26.0994 23.9716 26.4375 23.8722C26.7756 23.7727 27.0938 23.6435 27.3921 23.4844L28.1378 24.4389C27.8594 24.8764 27.5213 25.3139 27.1236 25.7514C26.7259 26.1889 26.2884 26.5867 25.8111 26.9446C25.3537 27.3026 24.8565 27.5909 24.3196 27.8097C23.8026 28.0483 23.2756 28.1676 22.7386 28.1676C22.2614 28.1676 21.8338 28.0881 21.456 27.929C21.098 27.7898 20.7699 27.6009 20.4716 27.3622C20.1733 27.1037 19.8949 26.8054 19.6364 26.4673C19.3779 26.1293 19.1094 25.7813 18.831 25.4233C18.6122 25.0852 18.3736 24.6776 18.1151 24.2003C17.8764 23.7031 17.6279 23.196 17.3693 22.679C17.1108 22.1619 16.8523 21.6648 16.5938 21.1875C16.3352 20.6904 16.0867 20.2727 15.848 19.9347C15.7486 20.2727 15.6591 20.6108 15.5796 20.9489C15.5 21.2273 15.4105 21.5156 15.3111 21.8139C15.2117 22.1122 15.1222 22.3409 15.0426 22.5C14.7443 23.1364 14.3665 23.7926 13.9091 24.4688C13.4517 25.1449 12.9247 25.7614 12.3281 26.3182C11.7514 26.8551 11.1151 27.3026 10.419 27.6605C9.72302 27.9986 8.98723 28.1676 8.21166 28.1676C7.51564 28.1676 6.8395 28.0284 6.18325 27.75C5.527 27.4915 4.92047 27.1435 4.36365 26.706L6.24291 21.7543C6.87927 22.152 7.5753 22.51 8.33098 22.8281C9.08666 23.1264 9.84234 23.2756 10.598 23.2756C10.8367 23.2756 11.0852 23.2557 11.3438 23.2159C11.6023 23.1563 11.8509 23.0767 12.0895 22.9773C12.348 22.858 12.5767 22.7188 12.7756 22.5597C12.9744 22.3807 13.1236 22.1719 13.223 21.9333C13.3622 21.6747 13.5114 21.3367 13.6705 20.919C13.8296 20.5014 13.9886 20.0838 14.1477 19.6662C14.3267 19.1889 14.5057 18.6818 14.6847 18.1449L9.07672 9.1662C8.81819 8.86791 8.50001 8.62927 8.12217 8.4503C7.76422 8.25143 7.38637 8.152 6.98865 8.152C6.65058 8.152 6.3324 8.2216 6.0341 8.36081C5.73581 8.48012 5.44745 8.64916 5.16905 8.86791L4.36365 7.82387C4.64206 7.40626 4.97018 6.99859 5.34802 6.60086C5.74575 6.18325 6.17331 5.81535 6.63069 5.49717C7.08808 5.1591 7.5753 4.89064 8.09234 4.69177C8.60939 4.47302 9.13637 4.36365 9.67331 4.36365C10.3296 4.36365 10.9361 4.53268 11.4929 4.87075C12.0497 5.18893 12.5668 5.58666 13.044 6.06393C13.5213 6.5412 13.9588 7.05825 14.3565 7.61507C14.7543 8.17189 15.1122 8.68893 15.4304 9.1662C15.5895 9.38495 15.7585 9.66336 15.9375 10.0014C16.1364 10.3196 16.3253 10.6378 16.5043 10.956C16.723 11.3139 16.9318 11.7017 17.1307 12.1193C17.3296 11.6421 17.5384 11.1648 17.7571 10.6875C17.9361 10.2898 18.1151 9.88211 18.294 9.4645C18.4929 9.027 18.6719 8.64916 18.831 8.33098C19.1293 7.77416 19.4673 7.25711 19.8452 6.77984C20.223 6.30257 20.6406 5.88495 21.098 5.527C21.5753 5.16905 22.0923 4.89064 22.6492 4.69177C23.206 4.47302 23.8125 4.36365 24.4688 4.36365C25.0852 4.36365 25.6818 4.44319 26.2585 4.60228C26.8352 4.76137 27.3921 4.98012 27.929 5.25853Z" fill="white"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 3.4 KiB |
34
addons/dialogic/Images/Resources/definition-2.svg.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/definition-2.svg-533f2834cedbb3e21c178f7a40ec34a3.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://addons/dialogic/Images/Resources/definition-2.svg"
|
||||||
|
dest_files=[ "res://.import/definition-2.svg-533f2834cedbb3e21c178f7a40ec34a3.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/bptc_ldr=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
process/invert_color=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
|
@ -1,3 +1,3 @@
|
||||||
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
|
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
<path d="M19.2012 3.61523L17.6631 7.18359C17.3623 6.9375 17.0273 6.72559 16.6582 6.54785C16.3027 6.35645 15.9336 6.26074 15.5508 6.26074C15.25 6.26074 14.9629 6.32227 14.6895 6.44531C14.4297 6.56836 14.1904 6.73242 13.9717 6.9375C13.7529 7.14258 13.5615 7.375 13.3975 7.63477C13.2334 7.88086 13.0967 8.12695 12.9873 8.37305L12.5771 9.54199C12.8643 10.1436 13.1445 10.7178 13.418 11.2646C13.6504 11.7295 13.8896 12.2012 14.1357 12.6797C14.3818 13.1445 14.5869 13.5137 14.751 13.7871C15.0107 14.1836 15.2705 14.5938 15.5303 15.0176C15.79 15.4277 16.0771 15.8037 16.3916 16.1455C16.5283 16.2959 16.6924 16.3984 16.8838 16.4531C17.0889 16.4941 17.2734 16.5146 17.4375 16.5146C17.6973 16.5146 17.9434 16.4805 18.1758 16.4121C18.4082 16.3438 18.627 16.2549 18.832 16.1455L19.3447 16.8018C19.1533 17.1025 18.9209 17.4033 18.6475 17.7041C18.374 18.0049 18.0732 18.2783 17.7451 18.5244C17.4307 18.7705 17.0889 18.9688 16.7197 19.1191C16.3643 19.2832 16.002 19.3652 15.6328 19.3652C15.3047 19.3652 15.0107 19.3105 14.751 19.2012C14.5049 19.1055 14.2793 18.9756 14.0742 18.8115C13.8691 18.6338 13.6777 18.4287 13.5 18.1963C13.3223 17.9639 13.1377 17.7246 12.9463 17.4785C12.7959 17.2461 12.6318 16.9658 12.4541 16.6377C12.29 16.2959 12.1191 15.9473 11.9414 15.5918C11.7637 15.2363 11.5859 14.8945 11.4082 14.5664C11.2305 14.2246 11.0596 13.9375 10.8955 13.7051C10.8271 13.9375 10.7656 14.1699 10.7109 14.4023C10.6562 14.5938 10.5947 14.792 10.5264 14.9971C10.458 15.2021 10.3965 15.3594 10.3418 15.4688C10.1367 15.9062 9.87695 16.3574 9.5625 16.8223C9.24805 17.2871 8.88574 17.7109 8.47559 18.0938C8.0791 18.4629 7.6416 18.7705 7.16309 19.0166C6.68457 19.249 6.17871 19.3652 5.64551 19.3652C5.16699 19.3652 4.70215 19.2695 4.25098 19.0781C3.7998 18.9004 3.38281 18.6611 3 18.3604L4.29199 14.9561C4.72949 15.2295 5.20801 15.4756 5.72754 15.6943C6.24707 15.8994 6.7666 16.002 7.28613 16.002C7.4502 16.002 7.62109 15.9883 7.79883 15.9609C7.97656 15.9199 8.14746 15.8652 8.31152 15.7969C8.48926 15.7148 8.64648 15.6191 8.7832 15.5098C8.91992 15.3867 9.02246 15.2432 9.09082 15.0791C9.18652 14.9014 9.28906 14.6689 9.39844 14.3818C9.50781 14.0947 9.61719 13.8076 9.72656 13.5205C9.84961 13.1924 9.97266 12.8438 10.0957 12.4746L6.24023 6.30176C6.0625 6.09668 5.84375 5.93262 5.58398 5.80957C5.33789 5.67285 5.07812 5.60449 4.80469 5.60449C4.57227 5.60449 4.35352 5.65234 4.14844 5.74805C3.94336 5.83008 3.74512 5.94629 3.55371 6.09668L3 5.37891C3.19141 5.0918 3.41699 4.81152 3.67676 4.53809C3.9502 4.25098 4.24414 3.99805 4.55859 3.7793C4.87305 3.54688 5.20801 3.3623 5.56348 3.22559C5.91895 3.0752 6.28125 3 6.65039 3C7.10156 3 7.51855 3.11621 7.90137 3.34863C8.28418 3.56738 8.63965 3.84082 8.96777 4.16895C9.2959 4.49707 9.59668 4.85254 9.87012 5.23535C10.1436 5.61816 10.3896 5.97363 10.6084 6.30176C10.7178 6.45215 10.834 6.64355 10.957 6.87598C11.0938 7.09473 11.2236 7.31348 11.3467 7.53223C11.4971 7.77832 11.6406 8.04492 11.7773 8.33203C11.9141 8.00391 12.0576 7.67578 12.208 7.34766C12.3311 7.07422 12.4541 6.79395 12.5771 6.50684C12.7139 6.20605 12.8369 5.94629 12.9463 5.72754C13.1514 5.34473 13.3838 4.98926 13.6436 4.66113C13.9033 4.33301 14.1904 4.0459 14.5049 3.7998C14.833 3.55371 15.1885 3.3623 15.5713 3.22559C15.9541 3.0752 16.3711 3 16.8223 3C17.2461 3 17.6562 3.05469 18.0527 3.16406C18.4492 3.27344 18.832 3.42383 19.2012 3.61523Z" fill="white"/>
|
<path d="M13.9645 2.62927L12.8459 5.22444C12.6271 5.04546 12.3835 4.89134 12.1151 4.76208C11.8565 4.62287 11.5881 4.55327 11.3097 4.55327C11.0909 4.55327 10.8821 4.59802 10.6832 4.68751C10.4943 4.77699 10.3203 4.89631 10.1612 5.04546C10.0021 5.19461 9.86293 5.36364 9.74361 5.55256C9.6243 5.73154 9.52486 5.91052 9.44532 6.08949L9.14702 6.93964C9.35583 7.37714 9.55966 7.79475 9.75853 8.19248C9.92756 8.53055 10.1016 8.87359 10.2805 9.2216C10.4595 9.55966 10.6087 9.82813 10.728 10.027C10.9169 10.3153 11.1058 10.6136 11.2948 10.9219C11.4837 11.2202 11.6925 11.4936 11.9212 11.7422C12.0206 11.8516 12.1399 11.9261 12.2791 11.9659C12.4283 11.9957 12.5625 12.0107 12.6818 12.0107C12.8707 12.0107 13.0497 11.9858 13.2188 11.9361C13.3878 11.8864 13.5469 11.8217 13.696 11.7422L14.0689 12.2195C13.9297 12.4382 13.7607 12.657 13.5618 12.8757C13.3629 13.0945 13.1442 13.2933 12.9055 13.4723C12.6769 13.6513 12.4283 13.7955 12.1598 13.9048C11.9013 14.0242 11.6378 14.0838 11.3693 14.0838C11.1307 14.0838 10.9169 14.044 10.728 13.9645C10.549 13.8949 10.3849 13.8004 10.2358 13.6811C10.0867 13.5519 9.94745 13.4027 9.81819 13.2337C9.68893 13.0646 9.55469 12.8906 9.41549 12.7117C9.30611 12.5426 9.1868 12.3388 9.05753 12.1001C8.93822 11.8516 8.81393 11.598 8.68466 11.3395C8.5554 11.081 8.42614 10.8324 8.29688 10.5938C8.16762 10.3452 8.04333 10.1364 7.92401 9.96734C7.8743 10.1364 7.82955 10.3054 7.78978 10.4744C7.75001 10.6136 7.70526 10.7578 7.65555 10.907C7.60583 11.0561 7.56109 11.1705 7.52131 11.25C7.37216 11.5682 7.18324 11.8963 6.95455 12.2344C6.72586 12.5724 6.46236 12.8807 6.16407 13.1591C5.87572 13.4276 5.55753 13.6513 5.20952 13.8303C4.86151 13.9993 4.49361 14.0838 4.10583 14.0838C3.75782 14.0838 3.41975 14.0142 3.09162 13.875C2.7635 13.7457 2.46023 13.5717 2.18182 13.353L3.12145 10.8771C3.43964 11.076 3.78765 11.255 4.16549 11.4141C4.54333 11.5632 4.92117 11.6378 5.29901 11.6378C5.41833 11.6378 5.54262 11.6278 5.67188 11.608C5.80114 11.5781 5.92543 11.5384 6.04475 11.4886C6.17401 11.429 6.28836 11.3594 6.38779 11.2798C6.48722 11.1903 6.5618 11.0859 6.61151 10.9666C6.68111 10.8374 6.75569 10.6683 6.83523 10.4595C6.91478 10.2507 6.99432 10.0419 7.07387 9.8331C7.16336 9.59447 7.25285 9.34091 7.34234 9.07245L4.53836 4.5831C4.4091 4.43395 4.25001 4.31464 4.06109 4.22515C3.88211 4.12572 3.69319 4.076 3.49432 4.076C3.32529 4.076 3.1662 4.1108 3.01705 4.1804C2.8679 4.24006 2.72373 4.32458 2.58452 4.43395L2.18182 3.91194C2.32103 3.70313 2.48509 3.4993 2.67401 3.30043C2.87287 3.09162 3.08665 2.90768 3.31535 2.74859C3.54404 2.57955 3.78765 2.44532 4.04617 2.34589C4.30469 2.23651 4.56819 2.18182 4.83665 2.18182C5.16478 2.18182 5.46805 2.26634 5.74645 2.43537C6.02486 2.59447 6.28339 2.79333 6.52202 3.03197C6.76066 3.2706 6.97941 3.52912 7.17827 3.80753C7.37714 4.08594 7.55611 4.34447 7.7152 4.5831C7.79475 4.69248 7.87927 4.83168 7.96876 5.00072C8.06819 5.15981 8.16265 5.3189 8.25214 5.47799C8.36151 5.65697 8.46591 5.85086 8.56535 6.05966C8.66478 5.82103 8.76918 5.58239 8.87856 5.34376C8.96805 5.14489 9.05753 4.94106 9.14702 4.73225C9.24645 4.5135 9.33594 4.32458 9.41549 4.16549C9.56464 3.88708 9.73367 3.62856 9.92259 3.38992C10.1115 3.15128 10.3203 2.94248 10.549 2.7635C10.7876 2.58452 11.0462 2.44532 11.3246 2.34589C11.603 2.23651 11.9063 2.18182 12.2344 2.18182C12.5426 2.18182 12.8409 2.2216 13.1293 2.30114C13.4176 2.38069 13.696 2.49006 13.9645 2.62927Z" fill="white"/>
|
||||||
</svg>
|
</svg>
|
||||||
|
|
Before Width: | Height: | Size: 3.4 KiB After Width: | Height: | Size: 3.4 KiB |
3
addons/dialogic/Images/Resources/glossary-1.25.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 3H18V19H4V3ZM6.33333 5.28571H15.6667V7.57143H6.33333V5.28571ZM15.6667 9.85714H6.33333V12.1429H15.6667V9.85714ZM6.33333 14.4286H15.6667V16.7143H6.33333V14.4286Z" fill="white"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 331 B |
34
addons/dialogic/Images/Resources/glossary-1.25.svg.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/glossary-1.25.svg-853d6e210a417c56901de57c59157131.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://addons/dialogic/Images/Resources/glossary-1.25.svg"
|
||||||
|
dest_files=[ "res://.import/glossary-1.25.svg-853d6e210a417c56901de57c59157131.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/bptc_ldr=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
process/invert_color=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
3
addons/dialogic/Images/Resources/glossary-2.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M5.81818 4.36365H26.1818V27.6364H5.81818V4.36365ZM9.21212 7.68832H22.7879V11.013H9.21212V7.68832ZM22.7879 14.3377H9.21212V17.6623H22.7879V14.3377ZM9.21212 20.987H22.7879V24.3117H9.21212V20.987Z" fill="white"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 362 B |
34
addons/dialogic/Images/Resources/glossary-2.svg.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/glossary-2.svg-6efb4c020432fe8dab1483fce35f5665.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://addons/dialogic/Images/Resources/glossary-2.svg"
|
||||||
|
dest_files=[ "res://.import/glossary-2.svg-6efb4c020432fe8dab1483fce35f5665.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/bptc_ldr=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
process/invert_color=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
|
@ -1,3 +1,3 @@
|
||||||
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
|
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 3H18V19H4V3ZM6.33333 5.28571H15.6667V7.57143H6.33333V5.28571ZM15.6667 9.85714H6.33333V12.1429H15.6667V9.85714ZM6.33333 14.4286H15.6667V16.7143H6.33333V14.4286Z" fill="white"/>
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M2.90909 2.18182H13.0909V13.8182H2.90909V2.18182ZM4.60606 3.84416H11.3939V5.5065H4.60606V3.84416ZM11.3939 7.16884H4.60606V8.83117H11.3939V7.16884ZM4.60606 10.4935H11.3939V12.1558H4.60606V10.4935Z" fill="white"/>
|
||||||
</svg>
|
</svg>
|
||||||
|
|
Before Width: | Height: | Size: 331 B After Width: | Height: | Size: 364 B |
4
addons/dialogic/Images/Resources/theme-1.25.svg
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M2 3C2 2.44772 2.44772 2 3 2H19C19.5523 2 20 2.44772 20 3V14C20 15 19 15.5 19 15.5L9 20L11 15H3C2.44772 15 2 14.5523 2 14V3Z" fill="white"/>
|
||||||
|
<path d="M8.32939 6.132C8.68939 5.972 9.12939 5.84 9.64939 5.736C10.1774 5.632 10.7214 5.58 11.2814 5.58C11.7214 5.58 12.0894 5.632 12.3854 5.736C12.6894 5.84 12.9294 5.992 13.1054 6.192C13.2814 6.384 13.4054 6.62 13.4774 6.9C13.5574 7.172 13.5974 7.476 13.5974 7.812C13.5974 8.22 13.5814 8.624 13.5494 9.024C13.5174 9.424 13.5014 9.848 13.5014 10.296C13.5014 10.6 13.5214 10.896 13.5614 11.184C13.6014 11.472 13.6654 11.748 13.7534 12.012H12.3854L12.1094 11.076H11.9654C11.7574 11.356 11.4934 11.596 11.1734 11.796C10.8534 11.996 10.4414 12.096 9.93739 12.096C9.63339 12.096 9.35339 12.052 9.09739 11.964C8.84939 11.876 8.63339 11.752 8.44939 11.592C8.27339 11.424 8.13339 11.228 8.02939 11.004C7.93339 10.78 7.88539 10.536 7.88539 10.272C7.88539 9.56 8.12139 9.024 8.59339 8.664C9.07339 8.296 9.79739 8.112 10.7654 8.112C10.9894 8.112 11.2134 8.132 11.4374 8.172C11.6614 8.204 11.8174 8.228 11.9054 8.244C11.9294 8.076 11.9414 7.932 11.9414 7.812C11.9414 7.508 11.8654 7.284 11.7134 7.14C11.5614 6.996 11.2774 6.924 10.8614 6.924C10.4774 6.924 10.1014 6.972 9.73339 7.068C9.37339 7.156 9.05339 7.268 8.77339 7.404L8.32939 6.132ZM10.5254 10.752C10.9014 10.752 11.2014 10.664 11.4254 10.488C11.6494 10.312 11.8134 10.128 11.9174 9.936V9.216C11.8774 9.2 11.8134 9.184 11.7254 9.168C11.6454 9.152 11.5534 9.136 11.4494 9.12C11.3534 9.104 11.2534 9.092 11.1494 9.084C11.0534 9.076 10.9654 9.072 10.8854 9.072C10.4534 9.072 10.1334 9.152 9.92539 9.312C9.71739 9.464 9.61339 9.656 9.61339 9.888C9.61339 10.176 9.69339 10.392 9.85339 10.536C10.0214 10.68 10.2454 10.752 10.5254 10.752Z" fill="#939393"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 1.8 KiB |
34
addons/dialogic/Images/Resources/theme-1.25.svg.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/theme-1.25.svg-77e4506f492a590268d4307cdc31e4f8.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://addons/dialogic/Images/Resources/theme-1.25.svg"
|
||||||
|
dest_files=[ "res://.import/theme-1.25.svg-77e4506f492a590268d4307cdc31e4f8.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/bptc_ldr=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
process/invert_color=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
4
addons/dialogic/Images/Resources/theme-2.svg
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M2.90912 4.36366C2.90912 3.56034 3.56034 2.90912 4.36366 2.90912H27.6364C28.4397 2.90912 29.0909 3.56034 29.0909 4.36366V20.3637C29.0909 21.8182 27.6364 22.5455 27.6364 22.5455L13.0909 29.0909L16 21.8182H4.36366C3.56034 21.8182 2.90912 21.167 2.90912 20.3637V4.36366Z" fill="white"/>
|
||||||
|
<path d="M12.1155 8.9193C12.6391 8.68658 13.2791 8.49458 14.0355 8.3433C14.8035 8.19203 15.5948 8.11639 16.4093 8.11639C17.0493 8.11639 17.5846 8.19203 18.0151 8.3433C18.4573 8.49458 18.8064 8.71567 19.0624 9.00658C19.3184 9.28585 19.4988 9.62912 19.6035 10.0364C19.7198 10.432 19.778 10.8742 19.778 11.3629C19.778 11.9564 19.7548 12.544 19.7082 13.1258C19.6617 13.7077 19.6384 14.3244 19.6384 14.976C19.6384 15.4182 19.6675 15.8488 19.7257 16.2677C19.7838 16.6866 19.8769 17.088 20.0049 17.472H18.0151L17.6137 16.1106H17.4042C17.1017 16.5178 16.7177 16.8669 16.2522 17.1578C15.7868 17.4488 15.1875 17.5942 14.4544 17.5942C14.0122 17.5942 13.6049 17.5302 13.2326 17.4022C12.8718 17.2742 12.5577 17.0938 12.29 16.8611C12.034 16.6168 11.8304 16.3317 11.6791 16.0058C11.5395 15.68 11.4697 15.3251 11.4697 14.9411C11.4697 13.9055 11.8129 13.1258 12.4995 12.6022C13.1977 12.0669 14.2508 11.7993 15.6588 11.7993C15.9846 11.7993 16.3104 11.8284 16.6362 11.8866C16.962 11.9331 17.1889 11.968 17.3169 11.9913C17.3518 11.7469 17.3693 11.5375 17.3693 11.3629C17.3693 10.9208 17.2588 10.5949 17.0377 10.3855C16.8166 10.176 16.4035 10.0713 15.7984 10.0713C15.2398 10.0713 14.6929 10.1411 14.1577 10.2808C13.634 10.4088 13.1686 10.5717 12.7613 10.7695L12.1155 8.9193ZM15.3097 15.6393C15.8566 15.6393 16.2929 15.5113 16.6188 15.2553C16.9446 14.9993 17.1831 14.7317 17.3344 14.4524V13.4051C17.2762 13.3818 17.1831 13.3586 17.0551 13.3353C16.9388 13.312 16.8049 13.2888 16.6537 13.2655C16.514 13.2422 16.3686 13.2248 16.2173 13.2131C16.0777 13.2015 15.9497 13.1957 15.8333 13.1957C15.2049 13.1957 14.7395 13.312 14.4369 13.5448C14.1344 13.7658 13.9831 14.0451 13.9831 14.3826C13.9831 14.8015 14.0995 15.1157 14.3322 15.3251C14.5766 15.5346 14.9024 15.6393 15.3097 15.6393Z" fill="#939393"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 2.1 KiB |
|
@ -2,15 +2,15 @@
|
||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="StreamTexture"
|
type="StreamTexture"
|
||||||
path="res://.import/Tools.svg-55329d2aaa20f24bd86cd6875ebc09c7.stex"
|
path="res://.import/theme-2.svg-17486fa9879ca7d5056e82b248808b3d.stex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"vram_texture": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://addons/dialogic/Images/Tools.svg"
|
source_file="res://addons/dialogic/Images/Resources/theme-2.svg"
|
||||||
dest_files=[ "res://.import/Tools.svg-55329d2aaa20f24bd86cd6875ebc09c7.stex" ]
|
dest_files=[ "res://.import/theme-2.svg-17486fa9879ca7d5056e82b248808b3d.stex" ]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
|
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
<path d="M2 3C2 2.44772 2.44772 2 3 2H19C19.5523 2 20 2.44772 20 3V14C20 15 19 15.5 19 15.5L9 20L11 15H3C2.44772 15 2 14.5523 2 14V3Z" fill="white"/>
|
<path d="M1.45454 2.18183C1.45454 1.78017 1.78016 1.45456 2.18182 1.45456H13.8182C14.2198 1.45456 14.5455 1.78017 14.5455 2.18183V10.1818C14.5455 10.9091 13.8182 11.2727 13.8182 11.2727L6.54545 14.5455L8 10.9091H2.18182C1.78016 10.9091 1.45454 10.5835 1.45454 10.1818V2.18183Z" fill="white"/>
|
||||||
<path d="M8.32939 6.132C8.68939 5.972 9.12939 5.84 9.64939 5.736C10.1774 5.632 10.7214 5.58 11.2814 5.58C11.7214 5.58 12.0894 5.632 12.3854 5.736C12.6894 5.84 12.9294 5.992 13.1054 6.192C13.2814 6.384 13.4054 6.62 13.4774 6.9C13.5574 7.172 13.5974 7.476 13.5974 7.812C13.5974 8.22 13.5814 8.624 13.5494 9.024C13.5174 9.424 13.5014 9.848 13.5014 10.296C13.5014 10.6 13.5214 10.896 13.5614 11.184C13.6014 11.472 13.6654 11.748 13.7534 12.012H12.3854L12.1094 11.076H11.9654C11.7574 11.356 11.4934 11.596 11.1734 11.796C10.8534 11.996 10.4414 12.096 9.93739 12.096C9.63339 12.096 9.35339 12.052 9.09739 11.964C8.84939 11.876 8.63339 11.752 8.44939 11.592C8.27339 11.424 8.13339 11.228 8.02939 11.004C7.93339 10.78 7.88539 10.536 7.88539 10.272C7.88539 9.56 8.12139 9.024 8.59339 8.664C9.07339 8.296 9.79739 8.112 10.7654 8.112C10.9894 8.112 11.2134 8.132 11.4374 8.172C11.6614 8.204 11.8174 8.228 11.9054 8.244C11.9294 8.076 11.9414 7.932 11.9414 7.812C11.9414 7.508 11.8654 7.284 11.7134 7.14C11.5614 6.996 11.2774 6.924 10.8614 6.924C10.4774 6.924 10.1014 6.972 9.73339 7.068C9.37339 7.156 9.05339 7.268 8.77339 7.404L8.32939 6.132ZM10.5254 10.752C10.9014 10.752 11.2014 10.664 11.4254 10.488C11.6494 10.312 11.8134 10.128 11.9174 9.936V9.216C11.8774 9.2 11.8134 9.184 11.7254 9.168C11.6454 9.152 11.5534 9.136 11.4494 9.12C11.3534 9.104 11.2534 9.092 11.1494 9.084C11.0534 9.076 10.9654 9.072 10.8854 9.072C10.4534 9.072 10.1334 9.152 9.92539 9.312C9.71739 9.464 9.61339 9.656 9.61339 9.888C9.61339 10.176 9.69339 10.392 9.85339 10.536C10.0214 10.68 10.2454 10.752 10.5254 10.752Z" fill="#939393"/>
|
<path d="M6.05774 4.45965C6.31956 4.34329 6.63956 4.24729 7.01774 4.17165C7.40174 4.09602 7.79738 4.0582 8.20465 4.0582C8.52465 4.0582 8.79229 4.09602 9.00756 4.17165C9.22865 4.24729 9.4032 4.35783 9.5312 4.50329C9.6592 4.64292 9.74938 4.81456 9.80174 5.0182C9.85992 5.21601 9.88901 5.43711 9.88901 5.68147C9.88901 5.9782 9.87738 6.27202 9.85411 6.56292C9.83083 6.85383 9.8192 7.1622 9.8192 7.48801C9.8192 7.70911 9.83374 7.92438 9.86283 8.13383C9.89192 8.34329 9.93847 8.54402 10.0025 8.73602H9.00756L8.80683 8.05529H8.70211C8.55083 8.25892 8.35883 8.43347 8.12611 8.57892C7.89338 8.72438 7.59374 8.79711 7.2272 8.79711C7.00611 8.79711 6.80247 8.76511 6.61629 8.70111C6.43592 8.63711 6.27883 8.54692 6.14501 8.43056C6.01701 8.30838 5.9152 8.16583 5.83956 8.00292C5.76974 7.84001 5.73483 7.66256 5.73483 7.47056C5.73483 6.95274 5.90647 6.56292 6.24974 6.30111C6.59883 6.03347 7.12538 5.89965 7.82938 5.89965C7.99229 5.89965 8.1552 5.9142 8.31811 5.94329C8.48101 5.96656 8.59447 5.98401 8.65847 5.99565C8.67592 5.87347 8.68465 5.76874 8.68465 5.68147C8.68465 5.46038 8.62938 5.29747 8.51883 5.19274C8.40829 5.08801 8.20174 5.03565 7.8992 5.03565C7.61992 5.03565 7.34647 5.07056 7.07883 5.14038C6.81701 5.20438 6.58429 5.28583 6.38065 5.38474L6.05774 4.45965ZM7.65483 7.81965C7.92829 7.81965 8.14647 7.75565 8.30938 7.62765C8.47229 7.49965 8.59156 7.36583 8.6672 7.2262V6.70256C8.63811 6.69092 8.59156 6.67929 8.52756 6.66765C8.46938 6.65602 8.40247 6.64438 8.32683 6.63274C8.25701 6.62111 8.18429 6.61238 8.10865 6.60656C8.03883 6.60074 7.97483 6.59783 7.91665 6.59783C7.60247 6.59783 7.36974 6.65602 7.21847 6.77238C7.0672 6.88292 6.99156 7.02256 6.99156 7.19129C6.99156 7.40074 7.04974 7.55783 7.16611 7.66256C7.28829 7.76729 7.4512 7.81965 7.65483 7.81965Z" fill="#939393"/>
|
||||||
</svg>
|
</svg>
|
||||||
|
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 2.1 KiB |
6
addons/dialogic/Images/Resources/timeline-1.25.svg
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M2 8C2 7.44772 2.44772 7 3 7H19C19.5523 7 20 7.44772 20 8V9C20 9.55228 19.5523 10 19 10H3C2.44772 10 2 9.55228 2 9V8Z" fill="white"/>
|
||||||
|
<path d="M2 13C2 12.4477 2.44772 12 3 12H19C19.5523 12 20 12.4477 20 13V14C20 14.5523 19.5523 15 19 15H3C2.44772 15 2 14.5523 2 14V13Z" fill="white"/>
|
||||||
|
<path d="M2 3C2 2.44772 2.44772 2 3 2H19C19.5523 2 20 2.44772 20 3V4C20 4.55228 19.5523 5 19 5H3C2.44772 5 2 4.55228 2 4V3Z" fill="white"/>
|
||||||
|
<path d="M2 18C2 17.4477 2.44772 17 3 17H19C19.5523 17 20 17.4477 20 18V19C20 19.5523 19.5523 20 19 20H3C2.44772 20 2 19.5523 2 19V18Z" fill="white"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 688 B |
34
addons/dialogic/Images/Resources/timeline-1.25.svg.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/timeline-1.25.svg-1c9e495370ebe35a5587d303d470cad6.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://addons/dialogic/Images/Resources/timeline-1.25.svg"
|
||||||
|
dest_files=[ "res://.import/timeline-1.25.svg-1c9e495370ebe35a5587d303d470cad6.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/bptc_ldr=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
process/invert_color=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
6
addons/dialogic/Images/Resources/timeline-2.svg
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M2.90912 4.36366C2.90912 3.56034 3.56034 2.90912 4.36366 2.90912H27.6364C28.4397 2.90912 29.0909 3.56034 29.0909 4.36366V5.81821C29.0909 6.62153 28.4397 7.27276 27.6364 7.27276H4.36366C3.56034 7.27276 2.90912 6.62153 2.90912 5.81821V4.36366Z" fill="white"/>
|
||||||
|
<path d="M2.90912 11.6364C2.90912 10.8331 3.56034 10.1818 4.36366 10.1818H27.6364C28.4397 10.1818 29.0909 10.8331 29.0909 11.6364V13.0909C29.0909 13.8943 28.4397 14.5455 27.6364 14.5455H4.36366C3.56034 14.5455 2.90912 13.8943 2.90912 13.0909V11.6364Z" fill="white"/>
|
||||||
|
<path d="M2.90912 18.9091C2.90912 18.1058 3.56034 17.4546 4.36366 17.4546H27.6364C28.4397 17.4546 29.0909 18.1058 29.0909 18.9091V20.3637C29.0909 21.167 28.4397 21.8182 27.6364 21.8182H4.36366C3.56034 21.8182 2.90912 21.167 2.90912 20.3637V18.9091Z" fill="white"/>
|
||||||
|
<path d="M2.90912 26.1818C2.90912 25.3785 3.56034 24.7273 4.36366 24.7273H27.6364C28.4397 24.7273 29.0909 25.3785 29.0909 26.1818V27.6364C29.0909 28.4397 28.4397 29.0909 27.6364 29.0909H4.36366C3.56034 29.0909 2.90912 28.4397 2.90912 27.6364V26.1818Z" fill="white"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 1.1 KiB |
34
addons/dialogic/Images/Resources/timeline-2.svg.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/timeline-2.svg-48d1e0a121d5a544a47b67fe1241eed2.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://addons/dialogic/Images/Resources/timeline-2.svg"
|
||||||
|
dest_files=[ "res://.import/timeline-2.svg-48d1e0a121d5a544a47b67fe1241eed2.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/bptc_ldr=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
process/invert_color=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
7
addons/dialogic/Images/Resources/timeline.svg
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M1.45454 2.18183C1.45454 1.78017 1.78016 1.45456 2.18182 1.45456H13.8182C14.2198 1.45456 14.5455 1.78017 14.5455 2.18183V2.9091C14.5455 3.31077 14.2198 3.63638 13.8182 3.63638H2.18182C1.78016 3.63638 1.45454 3.31077 1.45454 2.9091V2.18183Z" fill="white"/>
|
||||||
|
<path d="M1.45454 5.8182C1.45454 5.41653 1.78016 5.09092 2.18182 5.09092H13.8182C14.2198 5.09092 14.5455 5.41653 14.5455 5.8182V6.54547C14.5455 6.94713 14.2198 7.27274 13.8182 7.27274H2.18182C1.78016 7.27274 1.45454 6.94713 1.45454 6.54547V5.8182Z" fill="white"/>
|
||||||
|
<path d="M1.45454 9.45456C1.45454 9.0529 1.78016 8.72729 2.18182 8.72729H13.8182C14.2198 8.72729 14.5455 9.0529 14.5455 9.45456V10.1818C14.5455 10.5835 14.2198 10.9091 13.8182 10.9091H2.18182C1.78016 10.9091 1.45454 10.5835 1.45454 10.1818V9.45456Z" fill="white"/>
|
||||||
|
<path d="M1.45454 13.0909C1.45454 12.6893 1.78016 12.3637 2.18182 12.3637H13.8182C14.2198 12.3637 14.5455 12.6893 14.5455 13.0909V13.8182C14.5455 14.2199 14.2198 14.5455 13.8182 14.5455H2.18182C1.78016 14.5455 1.45454 14.2199 1.45454 13.8182V13.0909Z" fill="white"/>
|
||||||
|
</svg>
|
||||||
|
|
After Width: | Height: | Size: 1.1 KiB |
|
@ -2,15 +2,15 @@
|
||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="StreamTexture"
|
type="StreamTexture"
|
||||||
path="res://.import/logo.png-f156ce86697c9eb967d19393aa69e86f.stex"
|
path="res://.import/timeline.svg-4646668e3960b7f37ecffae1640eccc7.stex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"vram_texture": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://addons/dialogic/Images/logo.png"
|
source_file="res://addons/dialogic/Images/Resources/timeline.svg"
|
||||||
dest_files=[ "res://.import/logo.png-f156ce86697c9eb967d19393aa69e86f.stex" ]
|
dest_files=[ "res://.import/timeline.svg-4646668e3960b7f37ecffae1640eccc7.stex" ]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
4
addons/dialogic/Images/Toolbar/add-character-1.25.svg
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M18 13H21V15H18V18H16V15H13V13H16V10H18V13Z" fill="#A5EFAC"/>
|
||||||
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M15.0004 9C15.6281 8.16434 16 7.12561 16 6C16 3.23858 13.7614 1 11 1C8.23858 1 6 3.23858 6 6C6 8.0077 7.18332 9.73902 8.89057 10.5346C6.61752 11.7315 5 14.8068 5 18.4118C5 21 7.68629 21 11 21C14.0408 21 16.5533 21 16.9465 19H15V16H12V12H14.884C14.3618 11.3777 13.7627 10.8786 13.1094 10.5346C13.8593 10.1851 14.5081 9.65514 15 9.00048V9H15.0004Z" fill="white"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 585 B |
34
addons/dialogic/Images/Toolbar/add-character-1.25.svg.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/add-character-1.25.svg-3c1ef7e0cdcd97fe5a24f5d6eb32b444.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://addons/dialogic/Images/Toolbar/add-character-1.25.svg"
|
||||||
|
dest_files=[ "res://.import/add-character-1.25.svg-3c1ef7e0cdcd97fe5a24f5d6eb32b444.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/bptc_ldr=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
process/invert_color=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
4
addons/dialogic/Images/Toolbar/add-character-2.svg
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M26.1818 18.9091H30.5455V21.8182H26.1818V26.1818H23.2727V21.8182H18.9091V18.9091H23.2727V14.5455H26.1818V18.9091Z" fill="#A5EFAC"/>
|
||||||
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M21.8187 13.0909C22.7317 11.8754 23.2727 10.3645 23.2727 8.72726C23.2727 4.71064 20.0166 1.45453 16 1.45453C11.9834 1.45453 8.72727 4.71064 8.72727 8.72726C8.72727 11.6475 10.4485 14.1658 12.9317 15.323C9.62549 17.064 7.27273 21.5372 7.27273 26.7807C7.27273 30.5454 11.1801 30.5454 16 30.5454C20.423 30.5454 24.0775 30.5454 24.6494 27.6363H21.8182V23.2727H17.4545V17.4545H21.6494C20.8899 16.5494 20.0185 15.8234 19.0683 15.323C20.159 14.8147 21.1028 14.0438 21.8182 13.0916V13.0909H21.8187Z" fill="white"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 800 B |
34
addons/dialogic/Images/Toolbar/add-character-2.svg.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/add-character-2.svg-9c2d45663361c0aec7fda875cb579ae0.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://addons/dialogic/Images/Toolbar/add-character-2.svg"
|
||||||
|
dest_files=[ "res://.import/add-character-2.svg-9c2d45663361c0aec7fda875cb579ae0.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/bptc_ldr=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
process/invert_color=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
|
@ -1,4 +1,4 @@
|
||||||
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
|
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
<path d="M18 13H21V15H18V18H16V15H13V13H16V10H18V13Z" fill="#A5EFAC"/>
|
<path d="M13.0909 9.45455H15.2727V10.9091H13.0909V13.0909H11.6364V10.9091H9.45454V9.45455H11.6364V7.27274H13.0909V9.45455Z" fill="#A5EFAC"/>
|
||||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M15.0004 9C15.6281 8.16434 16 7.12561 16 6C16 3.23858 13.7614 1 11 1C8.23858 1 6 3.23858 6 6C6 8.0077 7.18332 9.73902 8.89057 10.5346C6.61752 11.7315 5 14.8068 5 18.4118C5 21 7.68629 21 11 21C14.0408 21 16.5533 21 16.9465 19H15V16H12V12H14.884C14.3618 11.3777 13.7627 10.8786 13.1094 10.5346C13.8593 10.1851 14.5081 9.65514 15 9.00049V9H15.0004Z" fill="white"/>
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M10.9094 6.54545C11.3659 5.93769 11.6364 5.18225 11.6364 4.36363C11.6364 2.35532 10.0083 0.727264 8 0.727264C5.99169 0.727264 4.36363 2.35532 4.36363 4.36363C4.36363 5.82377 5.22423 7.08291 6.46587 7.66149C4.81274 8.532 3.63636 10.7686 3.63636 13.3904C3.63636 15.2727 5.59003 15.2727 8 15.2727C10.2115 15.2727 12.0388 15.2727 12.3247 13.8182H10.9091V11.6364H8.72727V8.72726H10.8247C10.445 8.2747 10.0092 7.91168 9.53412 7.66149C10.0795 7.40735 10.5514 7.02191 10.9091 6.5458V6.54545H10.9094Z" fill="white"/>
|
||||||
</svg>
|
</svg>
|
||||||
|
|
Before Width: | Height: | Size: 585 B After Width: | Height: | Size: 801 B |
4
addons/dialogic/Images/Toolbar/add-definition-1.25.svg
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M18 13H21V15H18V18H16V15H13V13H16V10H18V13Z" fill="#A5EFAC"/>
|
||||||
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M16.6631 7.18359L18.2012 3.61523C17.832 3.42383 17.4492 3.27344 17.0527 3.16406C16.6563 3.05469 16.2461 3 15.8223 3C15.3711 3 14.9541 3.0752 14.5713 3.22559C14.1885 3.3623 13.833 3.55371 13.5049 3.7998C13.1904 4.0459 12.9033 4.33301 12.6436 4.66113C12.3838 4.98926 12.1514 5.34473 11.9463 5.72754C11.8369 5.94629 11.7139 6.20606 11.5771 6.50684C11.4541 6.79395 11.3311 7.07422 11.208 7.34766C11.0576 7.67578 10.9141 8.00391 10.7773 8.33203C10.6406 8.04492 10.4971 7.77832 10.3467 7.53223C10.2236 7.31348 10.0938 7.09473 9.95703 6.87598C9.83398 6.64356 9.71777 6.45215 9.6084 6.30176C9.38965 5.97363 9.14355 5.61816 8.87012 5.23535C8.59668 4.85254 8.2959 4.49707 7.96777 4.16895C7.63965 3.84082 7.28418 3.56738 6.90137 3.34863C6.51855 3.11621 6.10156 3 5.65039 3C5.28125 3 4.91895 3.0752 4.56348 3.22559C4.20801 3.3623 3.87305 3.54688 3.55859 3.7793C3.24414 3.99805 2.9502 4.25098 2.67676 4.53809C2.41699 4.81152 2.19141 5.0918 2 5.37891L2.55371 6.09668C2.74512 5.94629 2.94336 5.83008 3.14844 5.74805C3.35352 5.65234 3.57227 5.60449 3.80469 5.60449C4.07812 5.60449 4.33789 5.67285 4.58398 5.80957C4.84375 5.93262 5.0625 6.09668 5.24023 6.30176L9.0957 12.4746C8.97266 12.8438 8.84961 13.1924 8.72656 13.5205L8.39844 14.3818C8.28906 14.6689 8.18652 14.9014 8.09082 15.0791C8.02246 15.2432 7.91992 15.3867 7.7832 15.5098C7.64648 15.6191 7.48926 15.7148 7.31152 15.7969C7.14746 15.8652 6.97656 15.9199 6.79883 15.9609C6.62109 15.9883 6.4502 16.002 6.28613 16.002C5.7666 16.002 5.24707 15.8994 4.72754 15.6943C4.20801 15.4756 3.72949 15.2295 3.29199 14.9561L2 18.3604C2.38281 18.6611 2.7998 18.9004 3.25098 19.0781C3.70215 19.2695 4.16699 19.3652 4.64551 19.3652C5.17871 19.3652 5.68457 19.249 6.16309 19.0166C6.6416 18.7705 7.0791 18.4629 7.47559 18.0938C7.88574 17.7109 8.24805 17.2871 8.5625 16.8223C8.87695 16.3574 9.13672 15.9063 9.3418 15.4688C9.39648 15.3594 9.45801 15.2021 9.52637 14.9971C9.59473 14.792 9.65625 14.5938 9.71094 14.4023C9.76562 14.1699 9.82715 13.9375 9.89551 13.7051C10.0596 13.9375 10.2305 14.2246 10.4082 14.5664C10.5859 14.8945 10.7637 15.2363 10.9414 15.5918C11.1191 15.9473 11.29 16.2959 11.4541 16.6377C11.6318 16.9658 11.7959 17.2461 11.9463 17.4785C12.1377 17.7246 12.3223 17.9639 12.5 18.1963C12.6777 18.4287 12.8691 18.6338 13.0742 18.8115C13.2793 18.9756 13.5049 19.1055 13.751 19.2012C14.0107 19.3105 14.3047 19.3652 14.6328 19.3652C15.002 19.3652 15.3643 19.2832 15.7197 19.1191C15.8102 19.0823 15.8989 19.0426 15.9861 19H15V16H12V12H12.7885C12.6631 11.753 12.5396 11.5079 12.418 11.2646C12.1445 10.7178 11.8643 10.1436 11.5771 9.54199L11.9873 8.37305C12.0967 8.12695 12.2334 7.88086 12.3975 7.63477C12.5615 7.375 12.7529 7.14258 12.9717 6.9375C13.1904 6.73242 13.4297 6.56836 13.6895 6.44531C13.9629 6.32227 14.25 6.26074 14.5508 6.26074C14.9336 6.26074 15.3027 6.35645 15.6582 6.54785C16.0273 6.72559 16.3623 6.9375 16.6631 7.18359Z" fill="white"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 3 KiB |
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/add-definition-1.25.svg-4ebed8c9b38e990b8d2551e3cef70881.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://addons/dialogic/Images/Toolbar/add-definition-1.25.svg"
|
||||||
|
dest_files=[ "res://.import/add-definition-1.25.svg-4ebed8c9b38e990b8d2551e3cef70881.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/bptc_ldr=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
process/invert_color=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
4
addons/dialogic/Images/Toolbar/add-definition-2.svg
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M26.1818 18.9091H30.5454V21.8182H26.1818V26.1818H23.2727V21.8182H18.9091V18.9091H23.2727V14.5455H26.1818V18.9091Z" fill="#A5EFAC"/>
|
||||||
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M24.2372 10.4489L26.4744 5.25853C25.9375 4.98012 25.3807 4.76137 24.804 4.60228C24.2273 4.44319 23.6307 4.36365 23.0142 4.36365C22.358 4.36365 21.7514 4.47302 21.1946 4.69177C20.6378 4.89064 20.1207 5.16905 19.6435 5.527C19.1861 5.88495 18.7685 6.30257 18.3906 6.77984C18.0128 7.25711 17.6747 7.77416 17.3764 8.33098C17.2173 8.64916 17.0384 9.027 16.8395 9.4645C16.6605 9.88211 16.4815 10.2898 16.3026 10.6875C16.0838 11.1648 15.875 11.6421 15.6761 12.1193C15.4773 11.7017 15.2685 11.3139 15.0497 10.956C14.8707 10.6378 14.6818 10.3196 14.483 10.0014C14.304 9.66336 14.1349 9.38495 13.9759 9.1662C13.6577 8.68893 13.2997 8.17189 12.902 7.61507C12.5043 7.05825 12.0668 6.5412 11.5895 6.06393C11.1122 5.58666 10.5952 5.18893 10.0384 4.87075C9.48153 4.53268 8.875 4.36365 8.21875 4.36365C7.68182 4.36365 7.15483 4.47302 6.63778 4.69177C6.12074 4.89064 5.63352 5.1591 5.17613 5.49717C4.71875 5.81535 4.29119 6.18325 3.89346 6.60086C3.51562 6.99859 3.1875 7.40626 2.90909 7.82387L3.71449 8.86791C3.9929 8.64916 4.28125 8.48012 4.57954 8.36081C4.87784 8.2216 5.19602 8.152 5.53409 8.152C5.93182 8.152 6.30966 8.25143 6.66761 8.4503C7.04545 8.62927 7.36363 8.86791 7.62216 9.1662L13.2301 18.1449C13.0511 18.6818 12.8722 19.1889 12.6932 19.6662L12.2159 20.919C12.0568 21.3367 11.9077 21.6747 11.7685 21.9333C11.669 22.1719 11.5199 22.3807 11.321 22.5597C11.1222 22.7188 10.8935 22.858 10.6349 22.9773C10.3963 23.0767 10.1477 23.1563 9.8892 23.2159C9.63068 23.2557 9.3821 23.2756 9.14346 23.2756C8.38778 23.2756 7.6321 23.1264 6.87642 22.8281C6.12074 22.51 5.42471 22.152 4.78835 21.7543L2.90909 26.706C3.46591 27.1435 4.07244 27.4915 4.72869 27.75C5.38494 28.0284 6.06108 28.1676 6.7571 28.1676C7.53267 28.1676 8.26846 27.9986 8.96449 27.6605C9.66051 27.3026 10.2969 26.8551 10.8736 26.3182C11.4702 25.7614 11.9972 25.1449 12.4545 24.4688C12.9119 23.7926 13.2898 23.1364 13.5881 22.5C13.6676 22.3409 13.7571 22.1122 13.8565 21.8139C13.956 21.5156 14.0455 21.2273 14.125 20.9489C14.2045 20.6108 14.294 20.2727 14.3935 19.9347C14.6321 20.2727 14.8807 20.6904 15.1392 21.1875C15.3977 21.6648 15.6562 22.1619 15.9148 22.679C16.1733 23.196 16.4219 23.7031 16.6605 24.2003C16.919 24.6776 17.1577 25.0852 17.3764 25.4233C17.6548 25.7813 17.9233 26.1293 18.1818 26.4673C18.4403 26.8054 18.7187 27.1037 19.017 27.3622C19.3153 27.6009 19.6435 27.7898 20.0014 27.929C20.3793 28.0881 20.8068 28.1676 21.2841 28.1676C21.821 28.1676 22.348 28.0483 22.8651 27.8097C22.9966 27.7561 23.1257 27.6983 23.2525 27.6364H21.8182V23.2727H17.4545V17.4546H18.6014C18.419 17.0953 18.2394 16.7388 18.0625 16.385C17.6648 15.5895 17.2571 14.7543 16.8395 13.8793L17.4361 12.179C17.5952 11.821 17.794 11.4631 18.0327 11.1051C18.2713 10.7273 18.5497 10.3892 18.8679 10.0909C19.1861 9.79262 19.5341 9.55399 19.9119 9.37501C20.3097 9.19603 20.7273 9.10655 21.1648 9.10655C21.7216 9.10655 22.2585 9.24575 22.7756 9.52416C23.3125 9.78268 23.7997 10.0909 24.2372 10.4489Z" fill="white"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 3.2 KiB |
34
addons/dialogic/Images/Toolbar/add-definition-2.svg.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/add-definition-2.svg-454918059b27eb1572e6513a053c2567.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://addons/dialogic/Images/Toolbar/add-definition-2.svg"
|
||||||
|
dest_files=[ "res://.import/add-definition-2.svg-454918059b27eb1572e6513a053c2567.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/bptc_ldr=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
process/invert_color=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
|
@ -1,4 +1,4 @@
|
||||||
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
|
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
<path d="M18 13H21V15H18V18H16V15H13V13H16V10H18V13Z" fill="#A5EFAC"/>
|
<path d="M13.0909 9.45455H15.2727V10.9091H13.0909V13.0909H11.6364V10.9091H9.45454V9.45455H11.6364V7.27274H13.0909V9.45455Z" fill="#A5EFAC"/>
|
||||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M16.6631 7.18359L18.2012 3.61523C17.832 3.42383 17.4492 3.27344 17.0527 3.16406C16.6562 3.05469 16.2461 3 15.8223 3C15.3711 3 14.9541 3.0752 14.5713 3.22559C14.1885 3.3623 13.833 3.55371 13.5049 3.7998C13.1904 4.0459 12.9033 4.33301 12.6436 4.66113C12.3838 4.98926 12.1514 5.34473 11.9463 5.72754C11.8369 5.94629 11.7139 6.20605 11.5771 6.50684C11.4541 6.79395 11.3311 7.07422 11.208 7.34766C11.0576 7.67578 10.9141 8.00391 10.7773 8.33203C10.6406 8.04492 10.4971 7.77832 10.3467 7.53223C10.2236 7.31348 10.0938 7.09473 9.95703 6.87598C9.83398 6.64355 9.71777 6.45215 9.6084 6.30176C9.38965 5.97363 9.14355 5.61816 8.87012 5.23535C8.59668 4.85254 8.2959 4.49707 7.96777 4.16895C7.63965 3.84082 7.28418 3.56738 6.90137 3.34863C6.51855 3.11621 6.10156 3 5.65039 3C5.28125 3 4.91895 3.0752 4.56348 3.22559C4.20801 3.3623 3.87305 3.54688 3.55859 3.7793C3.24414 3.99805 2.9502 4.25098 2.67676 4.53809C2.41699 4.81152 2.19141 5.0918 2 5.37891L2.55371 6.09668C2.74512 5.94629 2.94336 5.83008 3.14844 5.74805C3.35352 5.65234 3.57227 5.60449 3.80469 5.60449C4.07812 5.60449 4.33789 5.67285 4.58398 5.80957C4.84375 5.93262 5.0625 6.09668 5.24023 6.30176L9.0957 12.4746C8.97266 12.8438 8.84961 13.1924 8.72656 13.5205L8.39844 14.3818C8.28906 14.6689 8.18652 14.9014 8.09082 15.0791C8.02246 15.2432 7.91992 15.3867 7.7832 15.5098C7.64648 15.6191 7.48926 15.7148 7.31152 15.7969C7.14746 15.8652 6.97656 15.9199 6.79883 15.9609C6.62109 15.9883 6.4502 16.002 6.28613 16.002C5.7666 16.002 5.24707 15.8994 4.72754 15.6943C4.20801 15.4756 3.72949 15.2295 3.29199 14.9561L2 18.3604C2.38281 18.6611 2.7998 18.9004 3.25098 19.0781C3.70215 19.2695 4.16699 19.3652 4.64551 19.3652C5.17871 19.3652 5.68457 19.249 6.16309 19.0166C6.6416 18.7705 7.0791 18.4629 7.47559 18.0938C7.88574 17.7109 8.24805 17.2871 8.5625 16.8223C8.87695 16.3574 9.13672 15.9062 9.3418 15.4688C9.39648 15.3594 9.45801 15.2021 9.52637 14.9971C9.59473 14.792 9.65625 14.5938 9.71094 14.4023C9.76562 14.1699 9.82715 13.9375 9.89551 13.7051C10.0596 13.9375 10.2305 14.2246 10.4082 14.5664C10.5859 14.8945 10.7637 15.2363 10.9414 15.5918C11.1191 15.9473 11.29 16.2959 11.4541 16.6377C11.6318 16.9658 11.7959 17.2461 11.9463 17.4785C12.1377 17.7246 12.3223 17.9639 12.5 18.1963C12.6777 18.4287 12.8691 18.6338 13.0742 18.8115C13.2793 18.9756 13.5049 19.1055 13.751 19.2012C14.0107 19.3105 14.3047 19.3652 14.6328 19.3652C15.002 19.3652 15.3643 19.2832 15.7197 19.1191C15.8102 19.0823 15.8989 19.0426 15.9861 19H15V16H12V12H12.7885C12.6631 11.753 12.5396 11.5079 12.418 11.2646C12.1445 10.7178 11.8643 10.1436 11.5771 9.54199L11.9873 8.37305C12.0967 8.12695 12.2334 7.88086 12.3975 7.63477C12.5615 7.375 12.7529 7.14258 12.9717 6.9375C13.1904 6.73242 13.4297 6.56836 13.6895 6.44531C13.9629 6.32227 14.25 6.26074 14.5508 6.26074C14.9336 6.26074 15.3027 6.35645 15.6582 6.54785C16.0273 6.72559 16.3623 6.9375 16.6631 7.18359Z" fill="white"/>
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M12.1186 5.22444L13.2372 2.62927C12.9687 2.49006 12.6903 2.38069 12.402 2.30114C12.1136 2.2216 11.8153 2.18182 11.5071 2.18182C11.179 2.18182 10.8757 2.23651 10.5973 2.34589C10.3189 2.44532 10.0604 2.58452 9.82173 2.7635C9.59304 2.94248 9.38423 3.15128 9.19531 3.38992C9.00639 3.62856 8.83736 3.88708 8.68821 4.16549C8.60866 4.32458 8.51917 4.5135 8.41974 4.73225C8.33025 4.94106 8.24077 5.14489 8.15128 5.34376C8.0419 5.58239 7.9375 5.82103 7.83807 6.05966C7.73863 5.85086 7.63423 5.65697 7.52486 5.47799C7.43537 5.3189 7.34091 5.15981 7.24148 5.00072C7.15199 4.83168 7.06747 4.69248 6.98792 4.5831C6.82883 4.34447 6.64986 4.08594 6.45099 3.80753C6.25213 3.52912 6.03338 3.2706 5.79474 3.03197C5.55611 2.79333 5.29758 2.59447 5.01917 2.43537C4.74077 2.26634 4.4375 2.18182 4.10937 2.18182C3.84091 2.18182 3.57741 2.23651 3.31889 2.34589C3.06037 2.44532 2.81676 2.57955 2.58807 2.74859C2.35937 2.90768 2.1456 3.09162 1.94673 3.30043C1.75781 3.4993 1.59375 3.70313 1.45454 3.91194L1.85724 4.43395C1.99645 4.32458 2.14062 4.24006 2.28977 4.1804C2.43892 4.1108 2.59801 4.076 2.76704 4.076C2.96591 4.076 3.15483 4.12572 3.33381 4.22515C3.52273 4.31464 3.68182 4.43395 3.81108 4.5831L6.61506 9.07245C6.52557 9.34091 6.43608 9.59447 6.34659 9.8331L6.10795 10.4595C6.02841 10.6683 5.95383 10.8374 5.88423 10.9666C5.83452 11.0859 5.75994 11.1903 5.66051 11.2798C5.56108 11.3594 5.44673 11.429 5.31747 11.4886C5.19815 11.5384 5.07386 11.5781 4.9446 11.608C4.81534 11.6278 4.69105 11.6378 4.57173 11.6378C4.19389 11.6378 3.81605 11.5632 3.43821 11.4141C3.06037 11.255 2.71236 11.076 2.39417 10.8771L1.45454 13.353C1.73295 13.5717 2.03622 13.7457 2.36435 13.875C2.69247 14.0142 3.03054 14.0838 3.37855 14.0838C3.76633 14.0838 4.13423 13.9993 4.48224 13.8303C4.83025 13.6513 5.14844 13.4276 5.43679 13.1591C5.73508 12.8807 5.99858 12.5724 6.22727 12.2344C6.45596 11.8963 6.64488 11.5682 6.79403 11.25C6.83381 11.1705 6.87855 11.0561 6.92827 10.907C6.97798 10.7578 7.02273 10.6136 7.0625 10.4744C7.10227 10.3054 7.14702 10.1364 7.19673 9.96734C7.31605 10.1364 7.44034 10.3452 7.5696 10.5938C7.69886 10.8324 7.82812 11.081 7.95738 11.3395C8.08665 11.598 8.21094 11.8516 8.33025 12.1001C8.45952 12.3388 8.57883 12.5426 8.68821 12.7117C8.82741 12.8906 8.96165 13.0646 9.09091 13.2337C9.22017 13.4027 9.35937 13.5519 9.50852 13.6811C9.65767 13.8004 9.82173 13.8949 10.0007 13.9645C10.1896 14.044 10.4034 14.0838 10.642 14.0838C10.9105 14.0838 11.174 14.0242 11.4325 13.9048C11.4983 13.878 11.5629 13.8492 11.6262 13.8182H10.9091V11.6364H8.72727V8.72728H9.30069C9.20952 8.54765 9.1197 8.36938 9.03125 8.19248C8.83238 7.79475 8.62855 7.37714 8.41974 6.93964L8.71804 6.08949C8.79758 5.91052 8.89702 5.73154 9.01633 5.55256C9.13565 5.36364 9.27486 5.19461 9.43395 5.04546C9.59304 4.89631 9.76704 4.77699 9.95596 4.68751C10.1548 4.59802 10.3636 4.55327 10.5824 4.55327C10.8608 4.55327 11.1293 4.62287 11.3878 4.76208C11.6562 4.89134 11.8999 5.04546 12.1186 5.22444Z" fill="white"/>
|
||||||
</svg>
|
</svg>
|
||||||
|
|
Before Width: | Height: | Size: 3 KiB After Width: | Height: | Size: 3.2 KiB |
4
addons/dialogic/Images/Toolbar/add-glossary-1.25.svg
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M17 4H5V18H14V16H7V14H11V12H7V10H14V9H17V4ZM15 6H7V8H15V6Z" fill="white"/>
|
||||||
|
<path d="M17 13H20V15H17V18H15V15H12V13H15V10H17V13Z" fill="#A5EFAC"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 298 B |
34
addons/dialogic/Images/Toolbar/add-glossary-1.25.svg.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/add-glossary-1.25.svg-2a0f52cc956c5e96cc6cd47ec2e7c9fc.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://addons/dialogic/Images/Toolbar/add-glossary-1.25.svg"
|
||||||
|
dest_files=[ "res://.import/add-glossary-1.25.svg-2a0f52cc956c5e96cc6cd47ec2e7c9fc.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/bptc_ldr=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
process/invert_color=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
4
addons/dialogic/Images/Toolbar/add-glossary-2.svg
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M24.7273 5.81818H7.27273V26.1818H20.3636V23.2727H10.1818V20.3636H16V17.4545H10.1818V14.5455H20.3636V13.0909H24.7273V5.81818ZM21.8182 8.72727H10.1818V11.6364H21.8182V8.72727Z" fill="white"/>
|
||||||
|
<path d="M24.7273 18.9091H29.0909V21.8182H24.7273V26.1818H21.8182V21.8182H17.4545V18.9091H21.8182V14.5455H24.7273V18.9091Z" fill="#A5EFAC"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 483 B |
34
addons/dialogic/Images/Toolbar/add-glossary-2.svg.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/add-glossary-2.svg-df70e38f107b9fc6109af658c7e14964.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://addons/dialogic/Images/Toolbar/add-glossary-2.svg"
|
||||||
|
dest_files=[ "res://.import/add-glossary-2.svg-df70e38f107b9fc6109af658c7e14964.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/bptc_ldr=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
process/invert_color=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
4
addons/dialogic/Images/Toolbar/add-glossary.svg
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M12.3636 2.90909H3.63637V13.0909H10.1818V11.6364H5.09091V10.1818H8V8.72727H5.09091V7.27272H10.1818V6.54545H12.3636V2.90909ZM10.9091 4.36363H5.09091V5.81818H10.9091V4.36363Z" fill="white"/>
|
||||||
|
<path d="M12.3636 9.45455H14.5455V10.9091H12.3636V13.0909H10.9091V10.9091H8.72727V9.45455H10.9091V7.27274H12.3636V9.45455Z" fill="#A5EFAC"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 482 B |
34
addons/dialogic/Images/Toolbar/add-glossary.svg.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/add-glossary.svg-ca3a2211ead16a8ddd6c7fce1fbd838d.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://addons/dialogic/Images/Toolbar/add-glossary.svg"
|
||||||
|
dest_files=[ "res://.import/add-glossary.svg-ca3a2211ead16a8ddd6c7fce1fbd838d.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/bptc_ldr=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
process/invert_color=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
5
addons/dialogic/Images/Toolbar/add-theme-1.25.svg
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M18 13H21V15H18V18H16V15H13V13H16V10H18V13Z" fill="#A5EFAC"/>
|
||||||
|
<path d="M2 3C2 2.44772 2.44772 2 3 2H19C19.5523 2 20 2.44772 20 3V12H19V9H15V12H12V16H15V17L9 20L11 15H3C2.44772 15 2 14.5523 2 14V3Z" fill="white"/>
|
||||||
|
<path d="M8.32939 6.13202C8.68939 5.97202 9.12939 5.84002 9.64939 5.73602C10.1774 5.63202 10.7214 5.58002 11.2814 5.58002C11.7214 5.58002 12.0894 5.63202 12.3854 5.73602C12.6894 5.84002 12.9294 5.99202 13.1054 6.19202C13.2814 6.38402 13.4054 6.62002 13.4774 6.90002C13.5574 7.17202 13.5974 7.47602 13.5974 7.81202C13.5974 8.22002 13.5814 8.62402 13.5494 9.02402C13.5174 9.42402 13.5014 9.84802 13.5014 10.296C13.5014 10.6 13.5214 10.896 13.5614 11.184C13.6014 11.472 13.6654 11.748 13.7534 12.012H12.3854L12.1094 11.076H11.9654C11.7574 11.356 11.4934 11.596 11.1734 11.796C10.8534 11.996 10.4414 12.096 9.93739 12.096C9.63339 12.096 9.35339 12.052 9.09739 11.964C8.84939 11.876 8.63339 11.752 8.44939 11.592C8.27339 11.424 8.13339 11.228 8.02939 11.004C7.93339 10.78 7.88539 10.536 7.88539 10.272C7.88539 9.56002 8.12139 9.02402 8.59339 8.66402C9.07339 8.29602 9.79739 8.11202 10.7654 8.11202C10.9894 8.11202 11.2134 8.13202 11.4374 8.17202C11.6614 8.20402 11.8174 8.22802 11.9054 8.24402C11.9294 8.07602 11.9414 7.93202 11.9414 7.81202C11.9414 7.50802 11.8654 7.28402 11.7134 7.14002C11.5614 6.99602 11.2774 6.92402 10.8614 6.92402C10.4774 6.92402 10.1014 6.97202 9.73339 7.06802C9.37339 7.15602 9.05339 7.26802 8.77339 7.40402L8.32939 6.13202ZM10.5254 10.752C10.9014 10.752 11.2014 10.664 11.4254 10.488C11.6494 10.312 11.8134 10.128 11.9174 9.93602V9.21602C11.8774 9.20002 11.8134 9.18402 11.7254 9.16802C11.6454 9.15202 11.5534 9.13602 11.4494 9.12002C11.3534 9.10402 11.2534 9.09202 11.1494 9.08402C11.0534 9.07602 10.9654 9.07202 10.8854 9.07202C10.4534 9.07202 10.1334 9.15202 9.92539 9.31202C9.71739 9.46402 9.61339 9.65602 9.61339 9.88802C9.61339 10.176 9.69339 10.392 9.85339 10.536C10.0214 10.68 10.2454 10.752 10.5254 10.752Z" fill="#939393"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 2 KiB |
34
addons/dialogic/Images/Toolbar/add-theme-1.25.svg.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/add-theme-1.25.svg-4a12f9dc653eaf7ddeb686d60e81dccd.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://addons/dialogic/Images/Toolbar/add-theme-1.25.svg"
|
||||||
|
dest_files=[ "res://.import/add-theme-1.25.svg-4a12f9dc653eaf7ddeb686d60e81dccd.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/bptc_ldr=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
process/invert_color=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
5
addons/dialogic/Images/Toolbar/add-theme-2.svg
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M26.1818 18.9091H30.5455V21.8182H26.1818V26.1818H23.2727V21.8182H18.9091V18.9091H23.2727V14.5455H26.1818V18.9091Z" fill="#A5EFAC"/>
|
||||||
|
<path d="M2.90909 4.36363C2.90909 3.56031 3.56031 2.90909 4.36363 2.90909H27.6364C28.4397 2.90909 29.0909 3.56031 29.0909 4.36363V17.4545H27.6364V13.0909H21.8182V17.4545H17.4545V23.2727H21.8182V24.7273L13.0909 29.0909L16 21.8182H4.36363C3.56031 21.8182 2.90909 21.167 2.90909 20.3636V4.36363Z" fill="white"/>
|
||||||
|
<path d="M12.1155 8.9193C12.6391 8.68658 13.2791 8.49458 14.0355 8.3433C14.8035 8.19203 15.5947 8.11639 16.4093 8.11639C17.0493 8.11639 17.5846 8.19203 18.0151 8.3433C18.4573 8.49458 18.8064 8.71567 19.0624 9.00658C19.3184 9.28585 19.4987 9.62912 19.6035 10.0364C19.7198 10.432 19.778 10.8742 19.778 11.3629C19.778 11.9564 19.7548 12.544 19.7082 13.1258C19.6617 13.7077 19.6384 14.3244 19.6384 14.976C19.6384 15.4182 19.6675 15.8488 19.7257 16.2677C19.7838 16.6866 19.8769 17.088 20.0049 17.472H18.0151L17.6137 16.1106H17.4042C17.1017 16.5178 16.7177 16.8669 16.2522 17.1578C15.7867 17.4488 15.1875 17.5942 14.4544 17.5942C14.0122 17.5942 13.6049 17.5302 13.2326 17.4022C12.8718 17.2742 12.5577 17.0938 12.29 16.8611C12.034 16.6168 11.8304 16.3317 11.6791 16.0058C11.5395 15.68 11.4697 15.3251 11.4697 14.9411C11.4697 13.9055 11.8129 13.1258 12.4995 12.6022C13.1977 12.0669 14.2507 11.7993 15.6587 11.7993C15.9846 11.7993 16.3104 11.8284 16.6362 11.8866C16.962 11.9331 17.1889 11.968 17.3169 11.9913C17.3518 11.7469 17.3693 11.5375 17.3693 11.3629C17.3693 10.9208 17.2587 10.5949 17.0377 10.3855C16.8166 10.176 16.4035 10.0713 15.7984 10.0713C15.2398 10.0713 14.6929 10.1411 14.1577 10.2808C13.634 10.4088 13.1686 10.5717 12.7613 10.7695L12.1155 8.9193ZM15.3097 15.6393C15.8566 15.6393 16.2929 15.5113 16.6187 15.2553C16.9446 14.9993 17.1831 14.7317 17.3344 14.4524V13.4051C17.2762 13.3818 17.1831 13.3586 17.0551 13.3353C16.9387 13.312 16.8049 13.2888 16.6537 13.2655C16.514 13.2422 16.3686 13.2248 16.2173 13.2131C16.0777 13.2015 15.9497 13.1957 15.8333 13.1957C15.2049 13.1957 14.7395 13.312 14.4369 13.5448C14.1344 13.7658 13.9831 14.0451 13.9831 14.3826C13.9831 14.8015 14.0995 15.1157 14.3322 15.3251C14.5766 15.5346 14.9024 15.6393 15.3097 15.6393Z" fill="#939393"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 2.3 KiB |
34
addons/dialogic/Images/Toolbar/add-theme-2.svg.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/add-theme-2.svg-c08a48497308cf495f82550c69ecc0ef.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://addons/dialogic/Images/Toolbar/add-theme-2.svg"
|
||||||
|
dest_files=[ "res://.import/add-theme-2.svg-c08a48497308cf495f82550c69ecc0ef.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/bptc_ldr=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
process/invert_color=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
|
@ -1,5 +1,5 @@
|
||||||
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
|
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
<path d="M18 13H21V15H18V18H16V15H13V13H16V10H18V13Z" fill="#A5EFAC"/>
|
<path d="M13.0909 9.45455H15.2727V10.9091H13.0909V13.0909H11.6364V10.9091H9.45454V9.45455H11.6364V7.27274H13.0909V9.45455Z" fill="#A5EFAC"/>
|
||||||
<path d="M2 3C2 2.44772 2.44772 2 3 2H19C19.5523 2 20 2.44772 20 3V12H19V9H15V12H12V16H15V17L9 20L11 15H3C2.44772 15 2 14.5523 2 14V3Z" fill="white"/>
|
<path d="M1.45454 2.18183C1.45454 1.78017 1.78016 1.45456 2.18182 1.45456H13.8182C14.2198 1.45456 14.5455 1.78017 14.5455 2.18183V8.72729H13.8182V6.54547H10.9091V8.72729H8.72727V11.6364H10.9091V12.3637L6.54545 14.5455L8 10.9091H2.18182C1.78016 10.9091 1.45454 10.5835 1.45454 10.1818V2.18183Z" fill="white"/>
|
||||||
<path d="M8.32939 6.132C8.68939 5.972 9.12939 5.84 9.64939 5.736C10.1774 5.632 10.7214 5.58 11.2814 5.58C11.7214 5.58 12.0894 5.632 12.3854 5.736C12.6894 5.84 12.9294 5.992 13.1054 6.192C13.2814 6.384 13.4054 6.62 13.4774 6.9C13.5574 7.172 13.5974 7.476 13.5974 7.812C13.5974 8.22 13.5814 8.624 13.5494 9.024C13.5174 9.424 13.5014 9.848 13.5014 10.296C13.5014 10.6 13.5214 10.896 13.5614 11.184C13.6014 11.472 13.6654 11.748 13.7534 12.012H12.3854L12.1094 11.076H11.9654C11.7574 11.356 11.4934 11.596 11.1734 11.796C10.8534 11.996 10.4414 12.096 9.93739 12.096C9.63339 12.096 9.35339 12.052 9.09739 11.964C8.84939 11.876 8.63339 11.752 8.44939 11.592C8.27339 11.424 8.13339 11.228 8.02939 11.004C7.93339 10.78 7.88539 10.536 7.88539 10.272C7.88539 9.56 8.12139 9.024 8.59339 8.664C9.07339 8.296 9.79739 8.112 10.7654 8.112C10.9894 8.112 11.2134 8.132 11.4374 8.172C11.6614 8.204 11.8174 8.228 11.9054 8.244C11.9294 8.076 11.9414 7.932 11.9414 7.812C11.9414 7.508 11.8654 7.284 11.7134 7.14C11.5614 6.996 11.2774 6.924 10.8614 6.924C10.4774 6.924 10.1014 6.972 9.73339 7.068C9.37339 7.156 9.05339 7.268 8.77339 7.404L8.32939 6.132ZM10.5254 10.752C10.9014 10.752 11.2014 10.664 11.4254 10.488C11.6494 10.312 11.8134 10.128 11.9174 9.936V9.216C11.8774 9.2 11.8134 9.184 11.7254 9.168C11.6454 9.152 11.5534 9.136 11.4494 9.12C11.3534 9.104 11.2534 9.092 11.1494 9.084C11.0534 9.076 10.9654 9.072 10.8854 9.072C10.4534 9.072 10.1334 9.152 9.92539 9.312C9.71739 9.464 9.61339 9.656 9.61339 9.888C9.61339 10.176 9.69339 10.392 9.85339 10.536C10.0214 10.68 10.2454 10.752 10.5254 10.752Z" fill="#939393"/>
|
<path d="M6.05774 4.45965C6.31956 4.34329 6.63956 4.24729 7.01774 4.17165C7.40174 4.09602 7.79738 4.0582 8.20465 4.0582C8.52465 4.0582 8.79229 4.09602 9.00756 4.17165C9.22865 4.24729 9.4032 4.35783 9.5312 4.50329C9.6592 4.64292 9.74938 4.81456 9.80174 5.0182C9.85992 5.21602 9.88901 5.43711 9.88901 5.68147C9.88901 5.9782 9.87738 6.27202 9.85411 6.56292C9.83083 6.85383 9.8192 7.1622 9.8192 7.48801C9.8192 7.70911 9.83374 7.92438 9.86283 8.13383C9.89192 8.34329 9.93847 8.54401 10.0025 8.73601H9.00756L8.80683 8.05529H8.70211C8.55083 8.25892 8.35883 8.43347 8.12611 8.57892C7.89338 8.72438 7.59374 8.79711 7.2272 8.79711C7.00611 8.79711 6.80247 8.76511 6.61629 8.70111C6.43592 8.63711 6.27883 8.54692 6.14501 8.43056C6.01701 8.30838 5.9152 8.16583 5.83956 8.00292C5.76974 7.84001 5.73483 7.66256 5.73483 7.47056C5.73483 6.95274 5.90647 6.56292 6.24974 6.30111C6.59883 6.03347 7.12538 5.89965 7.82938 5.89965C7.99229 5.89965 8.1552 5.9142 8.31811 5.94329C8.48101 5.96656 8.59447 5.98401 8.65847 5.99565C8.67592 5.87347 8.68465 5.76874 8.68465 5.68147C8.68465 5.46038 8.62938 5.29747 8.51883 5.19274C8.40829 5.08802 8.20174 5.03565 7.8992 5.03565C7.61992 5.03565 7.34647 5.07056 7.07883 5.14038C6.81701 5.20438 6.58429 5.28583 6.38065 5.38474L6.05774 4.45965ZM7.65483 7.81965C7.92829 7.81965 8.14647 7.75565 8.30938 7.62765C8.47229 7.49965 8.59156 7.36583 8.6672 7.2262V6.70256C8.63811 6.69092 8.59156 6.67929 8.52756 6.66765C8.46938 6.65601 8.40247 6.64438 8.32683 6.63274C8.25701 6.62111 8.18429 6.61238 8.10865 6.60656C8.03883 6.60074 7.97483 6.59783 7.91665 6.59783C7.60247 6.59783 7.36974 6.65602 7.21847 6.77238C7.0672 6.88292 6.99156 7.02256 6.99156 7.19129C6.99156 7.40074 7.04974 7.55783 7.16611 7.66256C7.28829 7.76729 7.4512 7.81965 7.65483 7.81965Z" fill="#939393"/>
|
||||||
</svg>
|
</svg>
|
||||||
|
|
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 2.3 KiB |
7
addons/dialogic/Images/Toolbar/add-timeline-1.25.svg
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M2 3C2 2.44772 2.44772 2 3 2H19C19.5523 2 20 2.44772 20 3V4C20 4.55229 19.5523 5 19 5H3C2.44772 5 2 4.55229 2 4V3Z" fill="white"/>
|
||||||
|
<path d="M2 8C2 7.44772 2.44772 7 3 7H19C19.5523 7 20 7.44772 20 8V9C20 9.55229 19.5523 10 19 10V9H15V10H3C2.44772 10 2 9.55229 2 9V8Z" fill="white"/>
|
||||||
|
<path d="M2 13C2 12.4477 2.44772 12 3 12H12C12 12 12 12.4477 12 13V14C12 14.5523 12 15 12 15H3C2.44772 15 2 14.5523 2 14V13Z" fill="white"/>
|
||||||
|
<path d="M2 18C2 17.4477 2.44772 17 3 17H15V19H19V17C19.5523 17 20 17.4477 20 18V19C20 19.5523 19.5523 20 19 20H3C2.44772 20 2 19.5523 2 19V18Z" fill="white"/>
|
||||||
|
<path d="M18 13H21V15H18V18H16V15H13V13H16V10H18V13Z" fill="#A5EFAC"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 766 B |
34
addons/dialogic/Images/Toolbar/add-timeline-1.25.svg.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/add-timeline-1.25.svg-67e7c82a2cbaaed1f1477d82ecb8ce71.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://addons/dialogic/Images/Toolbar/add-timeline-1.25.svg"
|
||||||
|
dest_files=[ "res://.import/add-timeline-1.25.svg-67e7c82a2cbaaed1f1477d82ecb8ce71.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/bptc_ldr=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
process/invert_color=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
7
addons/dialogic/Images/Toolbar/add-timeline-2.svg
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M2.90909 4.36363C2.90909 3.56031 3.56031 2.90909 4.36363 2.90909H27.6364C28.4397 2.90909 29.0909 3.56031 29.0909 4.36363V5.81818C29.0909 6.6215 28.4397 7.27272 27.6364 7.27272H4.36363C3.56031 7.27272 2.90909 6.6215 2.90909 5.81818V4.36363Z" fill="white"/>
|
||||||
|
<path d="M2.90909 11.6364C2.90909 10.833 3.56031 10.1818 4.36363 10.1818H27.6364C28.4397 10.1818 29.0909 10.833 29.0909 11.6364V13.0909C29.0909 13.8942 28.4397 14.5455 27.6364 14.5455V13.0909H21.8182V14.5455H4.36363C3.56031 14.5455 2.90909 13.8942 2.90909 13.0909V11.6364Z" fill="white"/>
|
||||||
|
<path d="M2.90909 18.9091C2.90909 18.1058 3.56031 17.4545 4.36363 17.4545H17.4545C17.4545 17.4545 17.4545 18.1058 17.4545 18.9091V20.3636C17.4545 21.167 17.4545 21.8182 17.4545 21.8182H4.36363C3.56031 21.8182 2.90909 21.167 2.90909 20.3636V18.9091Z" fill="white"/>
|
||||||
|
<path d="M2.90909 26.1818C2.90909 25.3785 3.56031 24.7273 4.36363 24.7273H21.8182V27.6364H27.6364V24.7273C28.4397 24.7273 29.0909 25.3785 29.0909 26.1818V27.6364C29.0909 28.4397 28.4397 29.0909 27.6364 29.0909H4.36363C3.56031 29.0909 2.90909 28.4397 2.90909 27.6364V26.1818Z" fill="white"/>
|
||||||
|
<path d="M26.1818 18.9091H30.5454V21.8182H26.1818V26.1818H23.2727V21.8182H18.9091V18.9091H23.2727V14.5455H26.1818V18.9091Z" fill="#A5EFAC"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 1.3 KiB |
34
addons/dialogic/Images/Toolbar/add-timeline-2.svg.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/add-timeline-2.svg-00b3bf905c7bd2ca1fece872d753dfef.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://addons/dialogic/Images/Toolbar/add-timeline-2.svg"
|
||||||
|
dest_files=[ "res://.import/add-timeline-2.svg-00b3bf905c7bd2ca1fece872d753dfef.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/bptc_ldr=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=true
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
process/invert_color=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=true
|
||||||
|
svg/scale=1.0
|
|
@ -1,7 +1,7 @@
|
||||||
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
|
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
<path d="M2 3C2 2.44772 2.44772 2 3 2H19C19.5523 2 20 2.44772 20 3V4C20 4.55228 19.5523 5 19 5H3C2.44772 5 2 4.55228 2 4V3Z" fill="white"/>
|
<path d="M1.45454 2.18183C1.45454 1.78017 1.78016 1.45456 2.18182 1.45456H13.8182C14.2198 1.45456 14.5455 1.78017 14.5455 2.18183V2.9091C14.5455 3.31077 14.2198 3.63638 13.8182 3.63638H2.18182C1.78016 3.63638 1.45454 3.31077 1.45454 2.9091V2.18183Z" fill="white"/>
|
||||||
<path d="M2 8C2 7.44772 2.44772 7 3 7H19C19.5523 7 20 7.44772 20 8V9C20 9.55228 19.5523 10 19 10V9H15V10H3C2.44772 10 2 9.55228 2 9V8Z" fill="white"/>
|
<path d="M1.45454 5.8182C1.45454 5.41653 1.78016 5.09092 2.18182 5.09092H13.8182C14.2198 5.09092 14.5455 5.41653 14.5455 5.8182V6.54547C14.5455 6.94713 14.2198 7.27274 13.8182 7.27274V6.54547H10.9091V7.27274H2.18182C1.78016 7.27274 1.45454 6.94713 1.45454 6.54547V5.8182Z" fill="white"/>
|
||||||
<path d="M2 13C2 12.4477 2.44772 12 3 12H12C12 12 12 12.4477 12 13V14C12 14.5523 12 15 12 15H3C2.44772 15 2 14.5523 2 14V13Z" fill="white"/>
|
<path d="M1.45454 9.45456C1.45454 9.0529 1.78016 8.72729 2.18182 8.72729H8.72727C8.72727 8.72729 8.72727 9.0529 8.72727 9.45456V10.1818C8.72727 10.5835 8.72727 10.9091 8.72727 10.9091H2.18182C1.78016 10.9091 1.45454 10.5835 1.45454 10.1818V9.45456Z" fill="white"/>
|
||||||
<path d="M2 18C2 17.4477 2.44772 17 3 17H15V19H19V17C19.5523 17 20 17.4477 20 18V19C20 19.5523 19.5523 20 19 20H3C2.44772 20 2 19.5523 2 19V18Z" fill="white"/>
|
<path d="M1.45454 13.0909C1.45454 12.6893 1.78016 12.3637 2.18182 12.3637H10.9091V13.8182H13.8182V12.3637C14.2198 12.3637 14.5455 12.6893 14.5455 13.0909V13.8182C14.5455 14.2199 14.2198 14.5455 13.8182 14.5455H2.18182C1.78016 14.5455 1.45454 14.2199 1.45454 13.8182V13.0909Z" fill="white"/>
|
||||||
<path d="M18 13H21V15H18V18H16V15H13V13H16V10H18V13Z" fill="#A5EFAC"/>
|
<path d="M13.0909 9.45455H15.2727V10.9091H13.0909V13.0909H11.6364V10.9091H9.45454V9.45455H11.6364V7.27274H13.0909V9.45455Z" fill="#A5EFAC"/>
|
||||||
</svg>
|
</svg>
|
||||||
|
|
Before Width: | Height: | Size: 766 B After Width: | Height: | Size: 1.3 KiB |
|
@ -1 +0,0 @@
|
||||||
<svg height="16" viewBox="0 0 16 16" width="16" xmlns="http://www.w3.org/2000/svg"><path d="m4 1-1 2 1 2v4h-2v3 .5c0 1.385 1.115 2.5 2.5 2.5s2.5-1.115 2.5-2.5v-1-2.5h-2v-4l1-2-1-2zm6 .17383a3 3 0 0 0 -2 2.8262 3 3 0 0 0 2 2.8262v6.1738 1c0 .554.446 1 1 1s1-.446 1-1v-4-3.1758a3 3 0 0 0 2-2.8242 3 3 0 0 0 -2-2.8242v2.8242a1 1 0 0 1 -1 1 1 1 0 0 1 -1-1v-2.8262z" fill="#e0e0e0"/></svg>
|
|
Before Width: | Height: | Size: 385 B |
|
@ -1,5 +0,0 @@
|
||||||
<svg width="64" height="64" viewBox="0 0 64 64" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
||||||
<rect x="6" y="50" width="52" height="10" rx="2" fill="#A5EFAC"/>
|
|
||||||
<rect x="4" y="7" width="56" height="28" rx="9" fill="#A5EFAC"/>
|
|
||||||
<path d="M22 47.5L9 32.5L18 29L22 47.5Z" fill="#A5EFAC"/>
|
|
||||||
</svg>
|
|
Before Width: | Height: | Size: 292 B |
Before Width: | Height: | Size: 4.8 KiB |
|
@ -36,6 +36,8 @@ onready var Portrait = load("res://addons/dialogic/Nodes/Portrait.tscn")
|
||||||
var dialog_script = {}
|
var dialog_script = {}
|
||||||
var questions #for keeping track of the questions answered
|
var questions #for keeping track of the questions answered
|
||||||
|
|
||||||
|
onready var tween_node = $TextBubble/Tween
|
||||||
|
|
||||||
func _ready():
|
func _ready():
|
||||||
# Loading the config files
|
# Loading the config files
|
||||||
load_config_files()
|
load_config_files()
|
||||||
|
@ -59,6 +61,8 @@ func _ready():
|
||||||
$TextBubble/RichTextLabel.meta_underlined = false
|
$TextBubble/RichTextLabel.meta_underlined = false
|
||||||
$DefinitionInfo.visible = false
|
$DefinitionInfo.visible = false
|
||||||
|
|
||||||
|
tween_node.connect("tween_completed", self, '_on_Tween_tween_completed')
|
||||||
|
|
||||||
# Getting the character information
|
# Getting the character information
|
||||||
characters = DialogicUtil.get_character_list()
|
characters = DialogicUtil.get_character_list()
|
||||||
|
|
||||||
|
@ -89,7 +93,8 @@ func resize_main():
|
||||||
set_deferred('rect_size', get_viewport().size)
|
set_deferred('rect_size', get_viewport().size)
|
||||||
dprint("Viewport", get_viewport().size)
|
dprint("Viewport", get_viewport().size)
|
||||||
$TextBubble.rect_position.x = (rect_size.x / 2) - ($TextBubble.rect_size.x / 2)
|
$TextBubble.rect_position.x = (rect_size.x / 2) - ($TextBubble.rect_size.x / 2)
|
||||||
$TextBubble.rect_position.y = (rect_size.y) - ($TextBubble.rect_size.y) - current_theme.get_value('box', 'bottom_gap', 40)
|
if current_theme != null:
|
||||||
|
$TextBubble.rect_position.y = (rect_size.y) - ($TextBubble.rect_size.y) - current_theme.get_value('box', 'bottom_gap', 40)
|
||||||
|
|
||||||
|
|
||||||
func set_current_dialog(dialog_path: String):
|
func set_current_dialog(dialog_path: String):
|
||||||
|
@ -128,7 +133,6 @@ func parse_characters(dialog_script):
|
||||||
func parse_text_lines(unparsed_dialog_script: Dictionary) -> Dictionary:
|
func parse_text_lines(unparsed_dialog_script: Dictionary) -> Dictionary:
|
||||||
var parsed_dialog: Dictionary = unparsed_dialog_script
|
var parsed_dialog: Dictionary = unparsed_dialog_script
|
||||||
var new_events: Array = []
|
var new_events: Array = []
|
||||||
var alignment = 'Left'
|
|
||||||
var split_new_lines = true
|
var split_new_lines = true
|
||||||
var remove_empty_messages = true
|
var remove_empty_messages = true
|
||||||
|
|
||||||
|
@ -142,10 +146,6 @@ func parse_text_lines(unparsed_dialog_script: Dictionary) -> Dictionary:
|
||||||
if settings.has_section_key('dialog', 'new_lines'):
|
if settings.has_section_key('dialog', 'new_lines'):
|
||||||
split_new_lines = settings.get_value('dialog', 'new_lines')
|
split_new_lines = settings.get_value('dialog', 'new_lines')
|
||||||
|
|
||||||
if current_theme != null:
|
|
||||||
alignment = current_theme.get_value('text', 'alignment', 'Left')
|
|
||||||
|
|
||||||
dprint('preview ', preview)
|
|
||||||
# Parsing
|
# Parsing
|
||||||
for event in unparsed_dialog_script['events']:
|
for event in unparsed_dialog_script['events']:
|
||||||
if event.has('text') and event.has('character') and event.has('portrait'):
|
if event.has('text') and event.has('character') and event.has('portrait'):
|
||||||
|
@ -155,24 +155,14 @@ func parse_text_lines(unparsed_dialog_script: Dictionary) -> Dictionary:
|
||||||
var lines = event['text'].split('\n')
|
var lines = event['text'].split('\n')
|
||||||
var i = 0
|
var i = 0
|
||||||
for line in lines:
|
for line in lines:
|
||||||
var text = lines[i]
|
|
||||||
if alignment == 'Center':
|
|
||||||
text = '[center]' + lines[i] + '[/center]'
|
|
||||||
elif alignment == 'Right':
|
|
||||||
text = '[right]' + lines[i] + '[/right]'
|
|
||||||
var _e = {
|
var _e = {
|
||||||
'text': text,
|
'text': lines[i],
|
||||||
'character': event['character'],
|
'character': event['character'],
|
||||||
'portrait': event['portrait']
|
'portrait': event['portrait']
|
||||||
}
|
}
|
||||||
new_events.append(_e)
|
new_events.append(_e)
|
||||||
i += 1
|
i += 1
|
||||||
else:
|
else:
|
||||||
var text = event['text']
|
|
||||||
if alignment == 'Center':
|
|
||||||
event['text'] = '[center]' + text + '[/center]'
|
|
||||||
elif alignment == 'Right':
|
|
||||||
event['text'] = '[right]' + text + '[/right]'
|
|
||||||
new_events.append(event)
|
new_events.append(event)
|
||||||
else:
|
else:
|
||||||
new_events.append(event)
|
new_events.append(event)
|
||||||
|
@ -182,6 +172,16 @@ func parse_text_lines(unparsed_dialog_script: Dictionary) -> Dictionary:
|
||||||
return parsed_dialog
|
return parsed_dialog
|
||||||
|
|
||||||
|
|
||||||
|
func parse_alignment(text):
|
||||||
|
var alignment = current_theme.get_value('text', 'alignment', 'Left')
|
||||||
|
var fname = current_theme.get_value('settings', 'name', 'none')
|
||||||
|
if alignment == 'Center':
|
||||||
|
text = '[center]' + text + '[/center]'
|
||||||
|
elif alignment == 'Right':
|
||||||
|
text = '[right]' + text + '[/right]'
|
||||||
|
return text
|
||||||
|
|
||||||
|
|
||||||
func parse_branches(dialog_script: Dictionary) -> Dictionary:
|
func parse_branches(dialog_script: Dictionary) -> Dictionary:
|
||||||
questions = [] # Resetting the questions
|
questions = [] # Resetting the questions
|
||||||
|
|
||||||
|
@ -228,15 +228,16 @@ func parse_branches(dialog_script: Dictionary) -> Dictionary:
|
||||||
return dialog_script
|
return dialog_script
|
||||||
|
|
||||||
|
|
||||||
func parse_definitions(text: String):
|
func parse_definitions(text: String, variables: bool = true, glossary: bool = true):
|
||||||
var words = []
|
|
||||||
if Engine.is_editor_hint():
|
if Engine.is_editor_hint():
|
||||||
# Loading variables again to avoid issues in the preview dialog
|
# Loading variables again to avoid issues in the preview dialog
|
||||||
load_config_files()
|
load_config_files()
|
||||||
|
|
||||||
var final_text: String;
|
var final_text: String = text
|
||||||
final_text = _insert_variable_definitions(text)
|
if variables:
|
||||||
final_text = _insert_glossary_definitions(final_text)
|
final_text = _insert_variable_definitions(text)
|
||||||
|
if glossary:
|
||||||
|
final_text = _insert_glossary_definitions(final_text)
|
||||||
return final_text
|
return final_text
|
||||||
|
|
||||||
|
|
||||||
|
@ -249,7 +250,7 @@ func _insert_variable_definitions(text: String):
|
||||||
|
|
||||||
|
|
||||||
func _insert_glossary_definitions(text: String):
|
func _insert_glossary_definitions(text: String):
|
||||||
var color = self.current_theme.get_value('definitions', 'color', '#ffbebebe')
|
var color = current_theme.get_value('definitions', 'color', '#ffbebebe')
|
||||||
var final_text := text;
|
var final_text := text;
|
||||||
# I should use regex here, but this is way easier :)
|
# I should use regex here, but this is way easier :)
|
||||||
for d in definitions['glossary']:
|
for d in definitions['glossary']:
|
||||||
|
@ -273,9 +274,9 @@ func _process(delta):
|
||||||
|
|
||||||
func _input(event: InputEvent) -> void:
|
func _input(event: InputEvent) -> void:
|
||||||
if not Engine.is_editor_hint() and event.is_action_pressed(input_next) and not waiting:
|
if not Engine.is_editor_hint() and event.is_action_pressed(input_next) and not waiting:
|
||||||
if $TextBubble/Tween.is_active():
|
if tween_node.is_active():
|
||||||
# Skip to end if key is pressed during the text animation
|
# Skip to end if key is pressed during the text animation
|
||||||
$TextBubble/Tween.seek(999)
|
tween_node.seek(999)
|
||||||
finished = true
|
finished = true
|
||||||
else:
|
else:
|
||||||
if waiting_for_answer == false and waiting_for_input == false:
|
if waiting_for_answer == false and waiting_for_input == false:
|
||||||
|
@ -290,14 +291,8 @@ func show_dialog():
|
||||||
visible = true
|
visible = true
|
||||||
|
|
||||||
|
|
||||||
func start_text_tween():
|
func _on_Tween_tween_completed(object, key):
|
||||||
# This will start the animation that makes the text appear letter by letter
|
finished = true
|
||||||
var tween_duration = text_speed * $TextBubble/RichTextLabel.get_total_character_count()
|
|
||||||
$TextBubble/Tween.interpolate_property(
|
|
||||||
$TextBubble/RichTextLabel, "percent_visible", 0, 1, tween_duration,
|
|
||||||
Tween.TRANS_LINEAR, Tween.EASE_IN_OUT
|
|
||||||
)
|
|
||||||
$TextBubble/Tween.start()
|
|
||||||
|
|
||||||
|
|
||||||
func update_name(character, color: Color = Color.white) -> void:
|
func update_name(character, color: Color = Color.white) -> void:
|
||||||
|
@ -308,20 +303,22 @@ func update_name(character, color: Color = Color.white) -> void:
|
||||||
parsed_name = character['display_name']
|
parsed_name = character['display_name']
|
||||||
if character.has('color'):
|
if character.has('color'):
|
||||||
color = character['color']
|
color = character['color']
|
||||||
parsed_name = parse_definitions(parsed_name)
|
parsed_name = parse_definitions(parsed_name, true, false)
|
||||||
$TextBubble/NameLabel.visible = true
|
$TextBubble/NameLabel.visible = true
|
||||||
# Hack to reset the size
|
# Hack to reset the size
|
||||||
$TextBubble/NameLabel.rect_min_size = Vector2(0, 0)
|
$TextBubble/NameLabel.rect_min_size = Vector2(0, 0)
|
||||||
$TextBubble/NameLabel.rect_size = Vector2(-1, 40)
|
$TextBubble/NameLabel.rect_size = Vector2(-1, 40)
|
||||||
# Setting the color and text
|
# Setting the color and text
|
||||||
$TextBubble/NameLabel.text = parsed_name
|
$TextBubble/NameLabel.text = parsed_name
|
||||||
$TextBubble/NameLabel.set('custom_colors/font_color', color)
|
if current_theme.get_value('name', 'auto_color', true):
|
||||||
|
$TextBubble/NameLabel.set('custom_colors/font_color', color)
|
||||||
else:
|
else:
|
||||||
$TextBubble/NameLabel.visible = false
|
$TextBubble/NameLabel.visible = false
|
||||||
|
|
||||||
|
|
||||||
func update_text(text):
|
func update_text(text):
|
||||||
# Updating the text and starting the animation from 0
|
# Updating the text and starting the animation from 0
|
||||||
|
text = parse_alignment(text)
|
||||||
$TextBubble/RichTextLabel.bbcode_text = parse_definitions(text)
|
$TextBubble/RichTextLabel.bbcode_text = parse_definitions(text)
|
||||||
$TextBubble/RichTextLabel.percent_visible = 0
|
$TextBubble/RichTextLabel.percent_visible = 0
|
||||||
|
|
||||||
|
@ -331,6 +328,16 @@ func update_text(text):
|
||||||
return true
|
return true
|
||||||
|
|
||||||
|
|
||||||
|
func start_text_tween():
|
||||||
|
# This will start the animation that makes the text appear letter by letter
|
||||||
|
var tween_duration = text_speed * $TextBubble/RichTextLabel.get_total_character_count()
|
||||||
|
tween_node.interpolate_property(
|
||||||
|
$TextBubble/RichTextLabel, "percent_visible", 0, 1, tween_duration,
|
||||||
|
Tween.TRANS_LINEAR, Tween.EASE_IN_OUT
|
||||||
|
)
|
||||||
|
tween_node.start()
|
||||||
|
|
||||||
|
|
||||||
func on_timeline_start():
|
func on_timeline_start():
|
||||||
if not Engine.is_editor_hint():
|
if not Engine.is_editor_hint():
|
||||||
DialogicSingleton.save_definitions()
|
DialogicSingleton.save_definitions()
|
||||||
|
@ -360,7 +367,9 @@ func load_dialog(skip_add = false):
|
||||||
# This will load the next entry in the dialog_script array.
|
# This will load the next entry in the dialog_script array.
|
||||||
if dialog_script.has('events'):
|
if dialog_script.has('events'):
|
||||||
if dialog_index < dialog_script['events'].size():
|
if dialog_index < dialog_script['events'].size():
|
||||||
event_handler(dialog_script['events'][dialog_index])
|
var func_state = event_handler(dialog_script['events'][dialog_index])
|
||||||
|
if (func_state is GDScriptFunctionState):
|
||||||
|
yield(func_state, "completed")
|
||||||
else:
|
else:
|
||||||
if Engine.is_editor_hint() == false:
|
if Engine.is_editor_hint() == false:
|
||||||
queue_free()
|
queue_free()
|
||||||
|
@ -426,8 +435,7 @@ func event_handler(event: Dictionary):
|
||||||
emit_signal("event_start", "action", event)
|
emit_signal("event_start", "action", event)
|
||||||
if event['action'] == 'leaveall':
|
if event['action'] == 'leaveall':
|
||||||
if event['character'] == '[All]':
|
if event['character'] == '[All]':
|
||||||
for p in $Portraits.get_children():
|
characters_leave_all()
|
||||||
p.fade_out()
|
|
||||||
else:
|
else:
|
||||||
for p in $Portraits.get_children():
|
for p in $Portraits.get_children():
|
||||||
if p.character_data['file'] == event['character']:
|
if p.character_data['file'] == event['character']:
|
||||||
|
@ -455,7 +463,18 @@ func event_handler(event: Dictionary):
|
||||||
{'background'}:
|
{'background'}:
|
||||||
emit_signal("event_start", "background", event)
|
emit_signal("event_start", "background", event)
|
||||||
$Background.visible = true
|
$Background.visible = true
|
||||||
$Background.texture = load(event['background'])
|
$Background.texture = null
|
||||||
|
if ($Background.get_child_count() > 0):
|
||||||
|
for c in $Background.get_children():
|
||||||
|
c.get_parent().remove_child(c)
|
||||||
|
c.queue_free()
|
||||||
|
if (event['background'].ends_with('.tscn')):
|
||||||
|
var bg_scene = load(event['background'])
|
||||||
|
if (bg_scene):
|
||||||
|
bg_scene = bg_scene.instance()
|
||||||
|
$Background.add_child(bg_scene)
|
||||||
|
elif (event['background'] != ''):
|
||||||
|
$Background.texture = load(event['background'])
|
||||||
go_to_next_event()
|
go_to_next_event()
|
||||||
{'audio'}, {'audio', 'file'}:
|
{'audio'}, {'audio', 'file'}:
|
||||||
emit_signal("event_start", "audio", event)
|
emit_signal("event_start", "audio", event)
|
||||||
|
@ -483,8 +502,7 @@ func event_handler(event: Dictionary):
|
||||||
go_to_next_event()
|
go_to_next_event()
|
||||||
{'close_dialog'}:
|
{'close_dialog'}:
|
||||||
emit_signal("event_start", "close_dialog", event)
|
emit_signal("event_start", "close_dialog", event)
|
||||||
on_timeline_end()
|
close_dialog_event()
|
||||||
queue_free()
|
|
||||||
{'set_theme'}:
|
{'set_theme'}:
|
||||||
emit_signal("event_start", "set_theme", event)
|
emit_signal("event_start", "set_theme", event)
|
||||||
if event['set_theme'] != '':
|
if event['set_theme'] != '':
|
||||||
|
@ -524,6 +542,31 @@ func event_handler(event: Dictionary):
|
||||||
operation = event["operation"]
|
operation = event["operation"]
|
||||||
DialogicSingleton.set_variable_from_id(event['definition'], event['set_value'], operation)
|
DialogicSingleton.set_variable_from_id(event['definition'], event['set_value'], operation)
|
||||||
go_to_next_event()
|
go_to_next_event()
|
||||||
|
{'call_node', ..}:
|
||||||
|
dprint('[!] Call Node signal: dialogic_signal(call_node) ', var2str(event['call_node']))
|
||||||
|
emit_signal("event_start", "call_node", event)
|
||||||
|
$TextBubble.visible = false
|
||||||
|
waiting = true
|
||||||
|
var target = get_node_or_null(event['call_node']['target_node_path'])
|
||||||
|
var method_name = event['call_node']['method_name']
|
||||||
|
var args = event['call_node']['arguments']
|
||||||
|
if (not args is Array):
|
||||||
|
args = []
|
||||||
|
|
||||||
|
if (target != null):
|
||||||
|
if (target.has_method(method_name)):
|
||||||
|
if (args.empty()):
|
||||||
|
var func_result = target.call(method_name)
|
||||||
|
if (func_result is GDScriptFunctionState):
|
||||||
|
yield(func_result, "completed")
|
||||||
|
else:
|
||||||
|
var func_result = target.call(method_name, args)
|
||||||
|
if (func_result is GDScriptFunctionState):
|
||||||
|
yield(func_result, "completed")
|
||||||
|
|
||||||
|
waiting = false
|
||||||
|
$TextBubble.visible = true
|
||||||
|
go_to_next_event()
|
||||||
_:
|
_:
|
||||||
visible = false
|
visible = false
|
||||||
dprint('Other event. ', event)
|
dprint('Other event. ', event)
|
||||||
|
@ -621,11 +664,6 @@ func _on_option_selected(option, variable, value):
|
||||||
dprint('[!] Option selected: ', option.text, ' value= ' , value)
|
dprint('[!] Option selected: ', option.text, ' value= ' , value)
|
||||||
|
|
||||||
|
|
||||||
func _on_Tween_tween_completed(object, key):
|
|
||||||
#$TextBubble/RichTextLabel.meta_underlined = true
|
|
||||||
finished = true
|
|
||||||
|
|
||||||
|
|
||||||
func _on_TextInputDialog_confirmed():
|
func _on_TextInputDialog_confirmed():
|
||||||
pass # Replace with function body.
|
pass # Replace with function body.
|
||||||
|
|
||||||
|
@ -638,15 +676,22 @@ func go_to_next_event():
|
||||||
|
|
||||||
func grab_portrait_focus(character_data, event: Dictionary = {}) -> bool:
|
func grab_portrait_focus(character_data, event: Dictionary = {}) -> bool:
|
||||||
var exists = false
|
var exists = false
|
||||||
|
var visually_focus = true
|
||||||
|
if settings.has_section_key('dialog', 'dim_characters'):
|
||||||
|
visually_focus = settings.get_value('dialog', 'dim_characters')
|
||||||
|
|
||||||
for portrait in $Portraits.get_children():
|
for portrait in $Portraits.get_children():
|
||||||
if portrait.character_data == character_data:
|
if portrait.character_data == character_data:
|
||||||
exists = true
|
exists = true
|
||||||
portrait.focus()
|
|
||||||
|
if visually_focus:
|
||||||
|
portrait.focus()
|
||||||
if event.has('portrait'):
|
if event.has('portrait'):
|
||||||
if event['portrait'] != '':
|
if event['portrait'] != '':
|
||||||
portrait.set_portrait(event['portrait'])
|
portrait.set_portrait(event['portrait'])
|
||||||
else:
|
else:
|
||||||
portrait.focusout()
|
if visually_focus:
|
||||||
|
portrait.focusout()
|
||||||
return exists
|
return exists
|
||||||
|
|
||||||
|
|
||||||
|
@ -712,6 +757,11 @@ func load_theme(filename):
|
||||||
$TextBubble/TextureRect.texture = load(theme.get_value('background','image', "res://addons/dialogic/Images/background/background-2.png"))
|
$TextBubble/TextureRect.texture = load(theme.get_value('background','image', "res://addons/dialogic/Images/background/background-2.png"))
|
||||||
$TextBubble/ColorRect.color = Color(theme.get_value('background','color', "#ff000000"))
|
$TextBubble/ColorRect.color = Color(theme.get_value('background','color', "#ff000000"))
|
||||||
|
|
||||||
|
if theme.get_value('background', 'modulation', false) == true:
|
||||||
|
$TextBubble/TextureRect.modulate = Color(theme.get_value('background', 'modulation_color', '#ffffffff'))
|
||||||
|
else:
|
||||||
|
$TextBubble/TextureRect.modulate = Color('#ffffffff')
|
||||||
|
|
||||||
$TextBubble/ColorRect.visible = theme.get_value('background', 'use_color', false)
|
$TextBubble/ColorRect.visible = theme.get_value('background', 'use_color', false)
|
||||||
$TextBubble/TextureRect.visible = theme.get_value('background', 'use_image', true)
|
$TextBubble/TextureRect.visible = theme.get_value('background', 'use_image', true)
|
||||||
|
|
||||||
|
@ -731,7 +781,7 @@ func load_theme(filename):
|
||||||
$TextBubble/NameLabel/TextureRect.visible = theme.get_value('name', 'image_visible', false)
|
$TextBubble/NameLabel/TextureRect.visible = theme.get_value('name', 'image_visible', false)
|
||||||
$TextBubble/NameLabel/TextureRect.texture = load(theme.get_value('name','image', "res://addons/dialogic/Images/background/background-2.png"))
|
$TextBubble/NameLabel/TextureRect.texture = load(theme.get_value('name','image', "res://addons/dialogic/Images/background/background-2.png"))
|
||||||
var name_shadow_offset = theme.get_value('name', 'shadow_offset', Vector2(2,2))
|
var name_shadow_offset = theme.get_value('name', 'shadow_offset', Vector2(2,2))
|
||||||
if theme.get_value('name', 'shadow_visible', false):
|
if theme.get_value('name', 'shadow_visible', true):
|
||||||
$TextBubble/NameLabel.set('custom_colors/font_color_shadow', Color(theme.get_value('name', 'shadow', '#9e000000')))
|
$TextBubble/NameLabel.set('custom_colors/font_color_shadow', Color(theme.get_value('name', 'shadow', '#9e000000')))
|
||||||
$TextBubble/NameLabel.set('custom_constants/shadow_offset_x', name_shadow_offset.x)
|
$TextBubble/NameLabel.set('custom_constants/shadow_offset_x', name_shadow_offset.x)
|
||||||
$TextBubble/NameLabel.set('custom_constants/shadow_offset_y', name_shadow_offset.y)
|
$TextBubble/NameLabel.set('custom_constants/shadow_offset_y', name_shadow_offset.y)
|
||||||
|
@ -758,7 +808,7 @@ func _on_RichTextLabel_meta_hover_started(meta):
|
||||||
'color': current_theme.get_value('definitions', 'color', '#ffbebebe'),
|
'color': current_theme.get_value('definitions', 'color', '#ffbebebe'),
|
||||||
})
|
})
|
||||||
correct_type = true
|
correct_type = true
|
||||||
print(d)
|
dprint(d)
|
||||||
|
|
||||||
if correct_type:
|
if correct_type:
|
||||||
definition_visible = true
|
definition_visible = true
|
||||||
|
@ -802,6 +852,11 @@ func dprint(string, arg1='', arg2='', arg3='', arg4='' ):
|
||||||
func _compare_definitions(def_value: String, event_value: String, condition: String):
|
func _compare_definitions(def_value: String, event_value: String, condition: String):
|
||||||
var condition_met = false;
|
var condition_met = false;
|
||||||
if def_value != null and event_value != null:
|
if def_value != null and event_value != null:
|
||||||
|
# check if event_value equals a definition name and use that instead
|
||||||
|
for d in definitions['variables']:
|
||||||
|
if (d['name'] != '' and d['name'] == event_value):
|
||||||
|
event_value = d['value']
|
||||||
|
break;
|
||||||
var converted_def_value = def_value
|
var converted_def_value = def_value
|
||||||
var converted_event_value = event_value
|
var converted_event_value = event_value
|
||||||
if def_value.is_valid_float() and event_value.is_valid_float():
|
if def_value.is_valid_float() and event_value.is_valid_float():
|
||||||
|
@ -821,3 +876,27 @@ func _compare_definitions(def_value: String, event_value: String, condition: Str
|
||||||
"<=":
|
"<=":
|
||||||
condition_met = converted_def_value <= converted_event_value
|
condition_met = converted_def_value <= converted_event_value
|
||||||
return condition_met
|
return condition_met
|
||||||
|
|
||||||
|
|
||||||
|
func characters_leave_all():
|
||||||
|
for p in $Portraits.get_children():
|
||||||
|
p.fade_out()
|
||||||
|
|
||||||
|
|
||||||
|
func close_dialog_event():
|
||||||
|
var tween = Tween.new()
|
||||||
|
add_child(tween)
|
||||||
|
tween.interpolate_property($TextBubble, "modulate",
|
||||||
|
$TextBubble.modulate, Color('#00ffffff'), 1,
|
||||||
|
Tween.TRANS_LINEAR, Tween.EASE_IN_OUT)
|
||||||
|
tween.start()
|
||||||
|
var close_dialog_timer = Timer.new()
|
||||||
|
close_dialog_timer.connect("timeout", self, '_on_close_dialog_timeout')
|
||||||
|
add_child(close_dialog_timer)
|
||||||
|
close_dialog_timer.start(2)
|
||||||
|
characters_leave_all()
|
||||||
|
|
||||||
|
|
||||||
|
func _on_close_dialog_timeout():
|
||||||
|
on_timeline_end()
|
||||||
|
queue_free()
|
||||||
|
|
|
@ -166,6 +166,33 @@ static func create_empty_file(path):
|
||||||
file.close()
|
file.close()
|
||||||
|
|
||||||
|
|
||||||
|
static func copy_file(path_from, path_to):
|
||||||
|
if (path_from == ''):
|
||||||
|
push_error("[Dialogic] Could not copy empty filename")
|
||||||
|
return ERR_FILE_BAD_PATH
|
||||||
|
|
||||||
|
if (path_to == ''):
|
||||||
|
push_error("[Dialogic] Could not copy to empty filename")
|
||||||
|
return ERR_FILE_BAD_PATH
|
||||||
|
|
||||||
|
var dir = Directory.new()
|
||||||
|
if (not dir.file_exists(path_from)):
|
||||||
|
push_error("[Dialogic] Could not copy file %s, File does not exists" % [ path_from ])
|
||||||
|
return ERR_FILE_NOT_FOUND
|
||||||
|
|
||||||
|
if (dir.file_exists(path_to)):
|
||||||
|
push_error("[Dialogic] Could not copy file to %s, file already exists" % [ path_to ])
|
||||||
|
return ERR_ALREADY_EXISTS
|
||||||
|
|
||||||
|
var error = dir.copy(path_from, path_to)
|
||||||
|
if (error):
|
||||||
|
push_error("[Dialogic] Error while copying %s to %s" % [ path_from, path_to ])
|
||||||
|
push_error(error)
|
||||||
|
return error
|
||||||
|
|
||||||
|
return OK
|
||||||
|
pass
|
||||||
|
|
||||||
# CONFIG UTIL
|
# CONFIG UTIL
|
||||||
|
|
||||||
|
|
||||||
|
@ -184,7 +211,12 @@ static func get_config(id: String) -> ConfigFile:
|
||||||
|
|
||||||
static func remove_file(path: String):
|
static func remove_file(path: String):
|
||||||
var dir = Directory.new()
|
var dir = Directory.new()
|
||||||
dir.remove(path)
|
var _err = dir.remove(path)
|
||||||
|
|
||||||
|
if _err != OK:
|
||||||
|
print("[D] There was an error when deleting file at {filepath}. Error: {error}".format(
|
||||||
|
{"filepath":path,"error":_err}
|
||||||
|
))
|
||||||
|
|
||||||
|
|
||||||
# JSON UTIL
|
# JSON UTIL
|
||||||
|
@ -265,6 +297,10 @@ static func add_theme(filename: String):
|
||||||
static func delete_theme(filename: String):
|
static func delete_theme(filename: String):
|
||||||
remove_file(get_path('THEME_DIR', filename))
|
remove_file(get_path('THEME_DIR', filename))
|
||||||
|
|
||||||
|
|
||||||
|
static func duplicate_theme(from_filename: String, to_filename: String):
|
||||||
|
copy_file(get_path('THEME_DIR', from_filename), get_path('THEME_DIR', to_filename))
|
||||||
|
|
||||||
# SETTINGS
|
# SETTINGS
|
||||||
# Can only be edited in the editor
|
# Can only be edited in the editor
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
extends EditorInspectorPlugin
|
extends EditorInspectorPlugin
|
||||||
|
|
||||||
var TimelinePicker = preload("res://addons/dialogic/Other/timeline_picker.gd")
|
var TimelinePicker = preload("res://addons/dialogic/Other/timeline_picker.gd")
|
||||||
|
var dialogic_editor_plugin = null
|
||||||
|
var dialogic_editor_view = null
|
||||||
|
|
||||||
|
|
||||||
func can_handle(object):
|
func can_handle(object):
|
||||||
|
@ -15,8 +17,21 @@ func parse_property(object, type, path, hint, hint_text, usage):
|
||||||
if type == TYPE_STRING:
|
if type == TYPE_STRING:
|
||||||
# Create an instance of the custom property editor and register
|
# Create an instance of the custom property editor and register
|
||||||
# it to a specific property path.
|
# it to a specific property path.
|
||||||
add_property_editor(path, TimelinePicker.new())
|
var picker = TimelinePicker.new()
|
||||||
|
picker.editor_inspector_plugin = self
|
||||||
|
add_property_editor(path, picker)
|
||||||
# Inform the editor to remove the default property editor for
|
# Inform the editor to remove the default property editor for
|
||||||
# this property type.
|
# this property type.
|
||||||
return true
|
return true
|
||||||
return false
|
return false
|
||||||
|
|
||||||
|
|
||||||
|
func switch_to_dialogic_timeline(timeline: String):
|
||||||
|
prints("switchting", timeline, dialogic_editor_plugin, dialogic_editor_view)
|
||||||
|
if (dialogic_editor_plugin != null):
|
||||||
|
dialogic_editor_plugin.get_editor_interface().set_main_screen_editor("Dialogic")
|
||||||
|
|
||||||
|
if (dialogic_editor_view != null and dialogic_editor_view.master_tree != null):
|
||||||
|
dialogic_editor_view.master_tree.show_timeline_editor()
|
||||||
|
dialogic_editor_view.master_tree.select_timeline_item(timeline)
|
||||||
|
pass
|
||||||
|
|
|
@ -1,23 +1,49 @@
|
||||||
tool
|
tool
|
||||||
extends EditorProperty
|
extends EditorProperty
|
||||||
|
|
||||||
|
# The main controls for editing the property.
|
||||||
# The main control for editing the property.
|
|
||||||
var timelines_dropdown = MenuButton.new()
|
var timelines_dropdown = MenuButton.new()
|
||||||
|
var container = HBoxContainer.new()
|
||||||
|
var edit_button = Button.new()
|
||||||
|
|
||||||
|
# reference to the inspector plugin
|
||||||
|
var editor_inspector_plugin = null
|
||||||
|
|
||||||
# An internal value of the property.
|
# An internal value of the property.
|
||||||
var current_value = ''
|
var current_value = ''
|
||||||
# A guard against internal changes when the property is updated.
|
# A guard against internal changes when the property is updated.
|
||||||
var updating = false
|
var updating = false
|
||||||
|
|
||||||
|
# @Override
|
||||||
|
func get_tooltip_text():
|
||||||
|
return "Click to select a Dialogic timeline.\nPress the tool button to directly switch to the editor"
|
||||||
|
|
||||||
|
|
||||||
|
func _ready():
|
||||||
|
edit_button.icon = get_icon("Tools", "EditorIcons")
|
||||||
|
|
||||||
|
|
||||||
func _init():
|
func _init():
|
||||||
# Add the control as a direct child of EditorProperty node.
|
# setup controls
|
||||||
add_child(timelines_dropdown)
|
timelines_dropdown.rect_min_size.x = 80
|
||||||
|
timelines_dropdown.set_h_size_flags(SIZE_EXPAND_FILL)
|
||||||
|
timelines_dropdown.clip_text = true
|
||||||
|
container.add_child(timelines_dropdown)
|
||||||
|
container.add_child(edit_button)
|
||||||
|
edit_button.flat = true
|
||||||
|
edit_button.hint_tooltip = "Edit Timeline"
|
||||||
|
edit_button.disabled = true
|
||||||
|
|
||||||
|
# Add the container as a direct child
|
||||||
|
add_child(container)
|
||||||
|
|
||||||
# Make sure the control is able to retain the focus.
|
# Make sure the control is able to retain the focus.
|
||||||
add_focusable(timelines_dropdown)
|
add_focusable(timelines_dropdown)
|
||||||
|
|
||||||
# Setup the initial state and connect to the signal to track changes.
|
# Setup the initial state and connect to the signal to track changes.
|
||||||
timelines_dropdown.connect("about_to_show", self, "_about_to_show_menu")
|
timelines_dropdown.connect("about_to_show", self, "_about_to_show_menu")
|
||||||
timelines_dropdown.get_popup().connect("index_pressed", self, '_on_timeline_selected')
|
timelines_dropdown.get_popup().connect("index_pressed", self, '_on_timeline_selected')
|
||||||
|
edit_button.connect("pressed", self, "_on_editTimelineButton_pressed")
|
||||||
|
|
||||||
|
|
||||||
func _about_to_show_menu():
|
func _about_to_show_menu():
|
||||||
|
@ -33,17 +59,27 @@ func _about_to_show_menu():
|
||||||
timelines_dropdown.get_popup().set_item_metadata(index, {'file': c['file'], 'color': c['color']})
|
timelines_dropdown.get_popup().set_item_metadata(index, {'file': c['file'], 'color': c['color']})
|
||||||
index += 1
|
index += 1
|
||||||
|
|
||||||
|
|
||||||
func _on_timeline_selected(index):
|
func _on_timeline_selected(index):
|
||||||
var text = timelines_dropdown.get_popup().get_item_text(index)
|
var text = timelines_dropdown.get_popup().get_item_text(index)
|
||||||
var metadata = timelines_dropdown.get_popup().get_item_metadata(index)
|
var metadata = timelines_dropdown.get_popup().get_item_metadata(index)
|
||||||
current_value = metadata['file']
|
current_value = metadata['file']
|
||||||
timelines_dropdown.text = text
|
timelines_dropdown.text = text
|
||||||
|
timelines_dropdown.hint_tooltip = text
|
||||||
|
_update_edit_button(current_value)
|
||||||
emit_changed(get_edited_property(), current_value)
|
emit_changed(get_edited_property(), current_value)
|
||||||
|
|
||||||
|
|
||||||
|
func _on_editTimelineButton_pressed():
|
||||||
|
if (current_value != '' and editor_inspector_plugin != null):
|
||||||
|
editor_inspector_plugin.switch_to_dialogic_timeline(current_value)
|
||||||
|
|
||||||
|
|
||||||
func update_property():
|
func update_property():
|
||||||
# Read the current value from the property.
|
# Read the current value from the property.
|
||||||
var new_value = get_edited_object()[get_edited_property()]
|
var new_value = get_edited_object()[get_edited_property()]
|
||||||
|
_update_edit_button(new_value)
|
||||||
|
|
||||||
if (new_value == current_value):
|
if (new_value == current_value):
|
||||||
return
|
return
|
||||||
|
|
||||||
|
@ -51,7 +87,23 @@ func update_property():
|
||||||
updating = true
|
updating = true
|
||||||
current_value = new_value
|
current_value = new_value
|
||||||
# Checking for the display name
|
# Checking for the display name
|
||||||
|
timelines_dropdown.text = ''
|
||||||
|
|
||||||
|
if (current_value == ''):
|
||||||
|
timelines_dropdown.hint_tooltip = 'Click to select a timeline'
|
||||||
|
|
||||||
for c in DialogicUtil.get_timeline_list():
|
for c in DialogicUtil.get_timeline_list():
|
||||||
if c['file'] == current_value:
|
if c['file'] == current_value:
|
||||||
timelines_dropdown.text = c['name']
|
timelines_dropdown.text = c['name']
|
||||||
|
timelines_dropdown.hint_tooltip = c['name']
|
||||||
|
|
||||||
updating = false
|
updating = false
|
||||||
|
|
||||||
|
_update_edit_button(current_value)
|
||||||
|
|
||||||
|
|
||||||
|
func _update_edit_button(value):
|
||||||
|
if (value == ''):
|
||||||
|
edit_button.disabled = true
|
||||||
|
else:
|
||||||
|
edit_button.disabled = false
|
||||||
|
|
|
@ -17,6 +17,8 @@ func _enter_tree() -> void:
|
||||||
_add_custom_editor_view()
|
_add_custom_editor_view()
|
||||||
get_editor_interface().get_editor_viewport().add_child(_editor_view)
|
get_editor_interface().get_editor_viewport().add_child(_editor_view)
|
||||||
make_visible(false)
|
make_visible(false)
|
||||||
|
_parts_inspector.dialogic_editor_plugin = self
|
||||||
|
_parts_inspector.dialogic_editor_view = _editor_view
|
||||||
|
|
||||||
|
|
||||||
func _ready():
|
func _ready():
|
||||||
|
|
|
@ -4,5 +4,5 @@ name="Dialogic"
|
||||||
description="Create dialogs, characters and scenes to display conversations in your Godot games.
|
description="Create dialogs, characters and scenes to display conversations in your Godot games.
|
||||||
https://github.com/coppolaemilio/dialogic"
|
https://github.com/coppolaemilio/dialogic"
|
||||||
author="Emilio Coppola"
|
author="Emilio Coppola"
|
||||||
version="1.0"
|
version="1.1"
|
||||||
script="dialogic.gd"
|
script="dialogic.gd"
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
{"color":"#ff1b2f99","default_speaker":false,"description":"bip bip nouveau mail","display_name":"","display_name_bool":false,"id":"character-1616658471.json","name":"Mail","offset_x":0,"offset_y":-100,"portraits":[{"name":"Default","path":"res://characters/mail.png"}],"scale":100}
|
{"color":"#ff1b5899","default_speaker":false,"description":"bip bip nouveau mail","display_name":"","display_name_bool":false,"id":"character-1616658471.json","name":"Mail","offset_x":0,"offset_y":-100,"portraits":[{"name":"Default","path":"res://characters/mail.png"}],"scale":100}
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
{"events":[{"background":"res://backgrounds/bureauGroupe-2.jpg"},{"set_theme":"theme-1616657657.cfg"},{"options":[],"question":"Il est 10 heures, ce ne serait pas l'heure de la pause ?"},{"choice":"oui, j'ai soif !"},{"choice":"un petit café ne me ferait pas de mal"},{"choice":"Je vais voir mes merveilleux collègues !"},{"endbranch":""},{"change_timeline":"timeline-1616657347.json"}],"metadata":{"dialogic-version":"1.0","file":"timeline-1616656510.json","name":"question-cafe"}}
|
{"events":[{"background":"res://backgrounds/bureauGroupe-2.jpg"},{"set_theme":"theme-1616657657.cfg"},{"options":[],"question":"Il est 10 heures, ce ne serait pas l'heure de la pause ?"},{"choice":"oui, j'ai soif !"},{"choice":"un petit café ne me ferait pas de mal"},{"choice":"Je vais voir mes merveilleux collègues !"},{"endbranch":""},{"change_timeline":"timeline-1616657347.json"}],"metadata":{"dialogic-version":"1.1","file":"timeline-1616656510.json","name":"question-cafe"}}
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
{"events":[{"background":"res://backgrounds/coffeeRoom.jpg"},{"action":"join","character":"character-1616658373.json","portrait":"","position":{"0":false,"1":true,"2":false,"3":false,"4":false}},{"character":"","portrait":"","text":"Vous arrivez à la machine à café, Evelyne est déjà là"},{"definition":"1616657225-648","set_value":"5"},{"emit_signal":"value increment 10"},{"character":"character-1616658373.json","portrait":"","text":"Coucou !\nMoi c’est Evelyne, je suis dans ton service!\nJ’ai hâte de travailler avec toi, nous allons faire de belles choses ensemble !\nJ’ai entendu que le boss t’avais mis sur le projet du nouveau téléphone.\nC’est un gros projet pour commencer."},{"character":"character-1616658355.json","portrait":"","text":"Ouais c’est super mais ça me met la pression.\nEn plus je dois essayer de me démarquer des téléphones des autres entreprises en ajoutant de nouvelles fonctionnalités."},{"character":"character-1616658373.json","portrait":"","text":"Justement je voulais te parler d’un truc que j’ai en tête depuis un moment, je n’ai jamais eu l’occasion de le mettre en application, mais ton projet est parfait pour ça.\nAs-tu déjà entendu parlé du recyclage de pièces de téléphone ?"},{"options":[],"question":"Le recyclage, ça vous dit quelquechose ?"},{"choice":"Très brièvement…"},{"choice":"On m'en a parlé un peu"},{"character":"character-1616658355.json","portrait":"","text":"Quelqu’un m’en a parlé il y a longtemps mais je ne m’en souviens pas vraiment … "},{"endbranch":""},{"character":"character-1616658373.json","portrait":"","text":"En gros, contrairement aux derniers modèles de téléphones, le principe est que ton téléphone est démontable.\nDu coup, si tu as un problème sur une certaine pièce, comme la batterie, tu peux simplement la changer.\nÇa évite de devoir faire réparer ton téléphone entier ou d’en racheter un nouveau.\nTu peux imaginer l’économie que tu fais non seulement pour ton porte-monnaie, mais aussi pour la planète.\nSi tu l’appliques pour ton projet ça permettrait de donner une image éco-responsable de l’entreprise mais aussi de te démarquer de toutes ces marques qui poussent à la surconsommation."},{"options":[],"question":"Qu'en pensez vous ?"},{"choice":"C’est vrai que c’est intéressant je vais y réfléchir!"},{"character":"character-1616658373.json","portrait":"","text":"Super !"},{"choice":"Mouais…"},{"character":"character-1616658373.json","portrait":"","text":"Réfléchis-y, c'est important !"},{"endbranch":""},{"character":"character-1616658373.json","portrait":"","text":"Bon courage et à une prochaine pause café !"},{"action":"leaveall","character":"[All]"},{"wait_seconds":0},{"change_timeline":"timeline-1616659153.json"}],"metadata":{"dialogic-version":"1.0","file":"timeline-1616657347.json","name":"info-evelyne"}}
|
{"events":[{"background":"res://backgrounds/coffeeRoom.jpg"},{"action":"join","character":"character-1616658373.json","portrait":"","position":{"0":false,"1":true,"2":false,"3":false,"4":false}},{"character":"","portrait":"","text":"Vous arrivez à la machine à café, Evelyne est déjà là"},{"definition":"1616657225-648","set_value":"5"},{"emit_signal":"value increment 10"},{"character":"character-1616658373.json","portrait":"","text":"Coucou !\nMoi c’est Evelyne, je suis dans ton service!\nJ’ai hâte de travailler avec toi, nous allons faire de belles choses ensemble !\nJ’ai entendu que le boss t’avais mis sur le projet du nouveau téléphone.\nC’est un gros projet pour commencer."},{"character":"character-1616658355.json","portrait":"","text":"Ouais c’est super mais ça me met la pression.\nEn plus je dois essayer de me démarquer des téléphones des autres entreprises en ajoutant de nouvelles fonctionnalités."},{"character":"character-1616658373.json","portrait":"","text":"Justement je voulais te parler d’un truc que j’ai en tête depuis un moment, je n’ai jamais eu l’occasion de le mettre en application, mais ton projet est parfait pour ça.\nAs-tu déjà entendu parlé du recyclage de pièces de téléphone ?"},{"options":[],"question":"Le recyclage, ça vous dit quelquechose ?"},{"choice":"Très brièvement…"},{"choice":"On m'en a parlé un peu"},{"character":"character-1616658355.json","portrait":"","text":"Quelqu’un m’en a parlé il y a longtemps mais je ne m’en souviens pas vraiment … "},{"endbranch":""},{"character":"character-1616658373.json","portrait":"","text":"En gros, contrairement aux derniers modèles de téléphones, le principe est que ton téléphone est démontable.\nDu coup, si tu as un problème sur une certaine pièce, comme la batterie, tu peux simplement la changer.\nÇa évite de devoir faire réparer ton téléphone entier ou d’en racheter un nouveau.\nTu peux imaginer l’économie que tu fais non seulement pour ton porte-monnaie, mais aussi pour la planète.\nSi tu l’appliques pour ton projet ça permettrait de donner une image éco-responsable de l’entreprise mais aussi de te démarquer de toutes ces marques qui poussent à la surconsommation."},{"options":[],"question":"Qu'en pensez vous ?"},{"choice":"C’est vrai que c’est intéressant je vais y réfléchir!"},{"character":"character-1616658373.json","portrait":"","text":"Super !"},{"choice":"Mouais…"},{"character":"character-1616658373.json","portrait":"","text":"Réfléchis-y, c'est important !"},{"endbranch":""},{"character":"character-1616658373.json","portrait":"","text":"Bon courage et à une prochaine pause café !"},{"action":"leaveall","character":"[All]"},{"wait_seconds":0},{"change_timeline":"timeline-1616659153.json"}],"metadata":{"dialogic-version":"1.1","file":"timeline-1616657347.json","name":"info-evelyne"}}
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
{"events":[{"background":"res://backgrounds/bureauGroupe-2.jpg"},{"character":"","portrait":"","text":"Vous vous dirigez vers votre bureau"},{"action":"join","character":"character-1616658435.json","portrait":"","position":{"0":false,"1":false,"2":false,"3":true,"4":false}},{"character":"character-1616658435.json","portrait":"","text":"Salut toi ! Bienvenue parmi nous. Tu viens d’où mon ami ?"},{"character":"character-1616658355.json","portrait":"","text":"Oh rien d’original je viens de région parisienne et toi ?"},{"character":"character-1616658435.json","portrait":"","text":"Alors … C’est compliqué … Je crois que je suis suisse."},{"character":"character-1616658355.json","portrait":"","text":"Tu crois ?"},{"character":"character-1616658435.json","portrait":"","text":"Je ne suis pas sûr … Bisous ! Bienvenue parmi nous"},{"action":"leaveall","character":"[All]"},{"change_timeline":"timeline-1616659608.json"}],"metadata":{"dialogic-version":"1.0","file":"timeline-1616659153.json","name":"merde-patrick-1"}}
|
{"events":[{"background":"res://backgrounds/bureauGroupe-2.jpg"},{"character":"","portrait":"","text":"Vous vous dirigez vers votre bureau"},{"action":"join","character":"character-1616658435.json","portrait":"","position":{"0":false,"1":false,"2":false,"3":true,"4":false}},{"character":"character-1616658435.json","portrait":"","text":"Salut toi ! Bienvenue parmi nous. Tu viens d’où mon ami ?"},{"character":"character-1616658355.json","portrait":"","text":"Oh rien d’original je viens de région parisienne et toi ?"},{"character":"character-1616658435.json","portrait":"","text":"Alors … C’est compliqué … Je crois que je suis suisse."},{"character":"character-1616658355.json","portrait":"","text":"Tu crois ?"},{"character":"character-1616658435.json","portrait":"","text":"Je ne suis pas sûr … Bisous ! Bienvenue parmi nous"},{"action":"leaveall","character":"[All]"},{"change_timeline":"timeline-1616659608.json"}],"metadata":{"dialogic-version":"1.1","file":"timeline-1616659153.json","name":"merde-patrick-1"}}
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
{"events":[{"change_timeline":"timeline-1616656510.json"}],"metadata":{"dialogic-version":"1.0","file":"timeline-1616659306.json","name":"_start"}}
|
{"events":[{"change_timeline":"timeline-1616656510.json"}],"metadata":{"dialogic-version":"1.1","file":"timeline-1616659306.json","name":"_start"}}
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
{"events":[{"background":"res://backgrounds/bureauPerso.jpg"},{"action":"join","character":"character-1616658435.json","portrait":"","position":{"0":false,"1":true,"2":false,"3":false,"4":false}},{"character":"character-1616658435.json","portrait":"","text":"Tu savais que l’escargot le plus gros du monde peut peser jusqu’à 1,5 kg ?"},{"character":"character-1616658355.json","portrait":"","text":"Oh c’est toi ! Tu m’as fait peur... Mais non je ne savais pas c’est impressionnant !"},{"character":"character-1616658435.json","portrait":"","text":"Tu te coucheras moins bête ce soir !\nBisous !\nÀ plus dans le bus !"},{"action":"leaveall","character":"[All]"},{"wait_seconds":1},{"character":"character-1616658355.json","portrait":"","text":"Étrange collègue ce Patrick."},{"change_timeline":"timeline-1616660188.json"}],"metadata":{"dialogic-version":"1.0","file":"timeline-1616659917.json","name":"merde-patrick-2"}}
|
{"events":[{"background":"res://backgrounds/bureauPerso.jpg"},{"action":"join","character":"character-1616658435.json","portrait":"","position":{"0":false,"1":true,"2":false,"3":false,"4":false}},{"character":"character-1616658435.json","portrait":"","text":"Tu savais que l’escargot le plus gros du monde peut peser jusqu’à 1,5 kg ?"},{"character":"character-1616658355.json","portrait":"","text":"Oh c’est toi ! Tu m’as fait peur... Mais non je ne savais pas c’est impressionnant !"},{"character":"character-1616658435.json","portrait":"","text":"Tu te coucheras moins bête ce soir !\nBisous !\nÀ plus dans le bus !"},{"action":"leaveall","character":"[All]"},{"wait_seconds":1},{"character":"character-1616658355.json","portrait":"","text":"Étrange collègue ce Patrick."},{"change_timeline":"timeline-1616660188.json"}],"metadata":{"dialogic-version":"1.1","file":"timeline-1616659917.json","name":"merde-patrick-2"}}
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
{"events":[{"background":"res://backgrounds/bureauPerso.jpg"},{"action":"join","character":"character-1616660196.json","portrait":"","position":{"0":false,"1":false,"2":true,"3":false,"4":false}},{"character":"","portrait":"","text":"Vous avez reçu une notification d’un article parlant du recyclage des pièces en cas de panne des téléphones."},{"character":"character-1616660196.json","portrait":"","text":"Le dépannage représente également une alternative idéale au gaspillage généré par la consommation excessive d’appareils électroniques.\nDe plus en plus d’enseignes se consacrent à la réparation de smartphones et/ou commercialisent des pièces de rechange.\n Si auparavant, la plupart des utilisateurs de smartphones laissaient leur appareil à l’abandon suite à une panne quelconque, le constat n’est plus le même aujourd’hui.\nEn effet, les pièces de rechange, majoritairement issus du processus de recyclage, sont vendues à des prix très abordables.\nFace à la concurrence grandissante dans le domaine du dépannage de mobile, le coût des services est à la baisse.\nAu plus grand profit des utilisateurs de smartphones.\nFaire réparer son smartphone constitue une alternative plus économique que d’investir dans l’acquisition d’un nouvel appareil. "},{"action":"leaveall","character":"[All]"},{"change_timeline":"timeline-1616660446.json"}],"metadata":{"dialogic-version":"1.0","file":"timeline-1616660188.json","name":"notification-1"}}
|
{"events":[{"background":"res://backgrounds/bureauPerso.jpg"},{"action":"join","character":"character-1616660196.json","portrait":"","position":{"0":false,"1":false,"2":true,"3":false,"4":false}},{"character":"","portrait":"","text":"Vous avez reçu une notification d’un article parlant du recyclage des pièces en cas de panne des téléphones."},{"character":"character-1616660196.json","portrait":"","text":"Le dépannage représente également une alternative idéale au gaspillage généré par la consommation excessive d’appareils électroniques.\nDe plus en plus d’enseignes se consacrent à la réparation de smartphones et/ou commercialisent des pièces de rechange.\n Si auparavant, la plupart des utilisateurs de smartphones laissaient leur appareil à l’abandon suite à une panne quelconque, le constat n’est plus le même aujourd’hui.\nEn effet, les pièces de rechange, majoritairement issus du processus de recyclage, sont vendues à des prix très abordables.\nFace à la concurrence grandissante dans le domaine du dépannage de mobile, le coût des services est à la baisse.\nAu plus grand profit des utilisateurs de smartphones.\nFaire réparer son smartphone constitue une alternative plus économique que d’investir dans l’acquisition d’un nouvel appareil. "},{"action":"leaveall","character":"[All]"},{"change_timeline":"timeline-1616660446.json"}],"metadata":{"dialogic-version":"1.1","file":"timeline-1616660188.json","name":"notification-1"}}
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
{"events":[{"background":"res://backgrounds/bureauPerso.jpg"},{"action":"join","character":"character-1616658403.json","portrait":"","position":{"0":false,"1":true,"2":false,"3":false,"4":false}},{"character":"","portrait":"","text":"Une personne rentre dans votre bureau..."},{"character":"character-1616658403.json","portrait":"","text":"Salut ça va ?\n Bienvenue !\nJe m’appelle Jean-Michel.\nDis moi, t'as déjà une idée de design pour le téléphone ?"},{"options":[],"question":"Avez vous une idée ?"},{"choice":"Pas vraiment"},{"choice":"Quelques unes"},{"endbranch":""},{"character":"character-1616658403.json","portrait":"","text":"De mon côté j’ai plein d’idées de designs vraiment cools qui pourraient plaire à tout le monde.\nEn plus, ça prendrait en compte toutes les fonctionnalités que le téléphone aura, comme un lecteur d’empreintes digitales."},{"character":"character-1616658355.json","portrait":"","text":"Super !\nPar contre, Evelyne m’a parlé d’une idée qui me plait et je sais pas si ça serait compatible avec tes designs."},{"character":"character-1616658403.json","portrait":"","text":"Houla !\nC’est quoi cette idée encore ?"},{"character":"character-1616658355.json","portrait":"","text":"Elle m’a parlé du fait de pouvoir ouvrir le téléphone et donc que la coque soit amovible..."},{"character":"character-1616658403.json","portrait":"","text":"Mais tu ne peux pas faire ça !\nLes designs différents c’est ce qui fera que le téléphone se distinguera des autres.\nPareil pour les fonctionnalités !\nToutes les marques concurrentes ont un lecteur d’empreintes.\nAvec cette modification, impossible de faire ça, et les utilisateurs diront que nous sommes à la traîne au niveau des technologies utilisées."},{"options":[],"question":"Qu'en pensez vous ?"},{"choice":"Tu n’as pas tord"},{"choice":"Je n’y ai pas encore réfléchi"},{"endbranch":""},{"character":"character-1616658403.json","portrait":"","text":"Fais attention des décisions comme celles-ci pourraient avoir de grandes conséquences pour l’entreprise…\nBonnes ou mauvaises !"},{"action":"leaveall","character":"[All]"},{"wait_seconds":0},{"change_timeline":"timeline-1616660984.json"}],"metadata":{"dialogic-version":"1.0","file":"timeline-1616660446.json","name":"info-jm"}}
|
{"events":[{"background":"res://backgrounds/bureauPerso.jpg"},{"action":"join","character":"character-1616658403.json","portrait":"","position":{"0":false,"1":true,"2":false,"3":false,"4":false}},{"character":"","portrait":"","text":"Une personne rentre dans votre bureau..."},{"character":"character-1616658403.json","portrait":"","text":"Salut ça va ?\n Bienvenue !\nJe m’appelle Jean-Michel.\nDis moi, t'as déjà une idée de design pour le téléphone ?"},{"options":[],"question":"Avez vous une idée ?"},{"choice":"Pas vraiment"},{"choice":"Quelques unes"},{"endbranch":""},{"character":"character-1616658403.json","portrait":"","text":"De mon côté j’ai plein d’idées de designs vraiment cools qui pourraient plaire à tout le monde.\nEn plus, ça prendrait en compte toutes les fonctionnalités que le téléphone aura, comme un lecteur d’empreintes digitales."},{"character":"character-1616658355.json","portrait":"","text":"Super !\nPar contre, Evelyne m’a parlé d’une idée qui me plait et je sais pas si ça serait compatible avec tes designs."},{"character":"character-1616658403.json","portrait":"","text":"Houla !\nC’est quoi cette idée encore ?"},{"character":"character-1616658355.json","portrait":"","text":"Elle m’a parlé du fait de pouvoir ouvrir le téléphone et donc que la coque soit amovible..."},{"character":"character-1616658403.json","portrait":"","text":"Mais tu ne peux pas faire ça !\nLes designs différents c’est ce qui fera que le téléphone se distinguera des autres.\nPareil pour les fonctionnalités !\nToutes les marques concurrentes ont un lecteur d’empreintes.\nAvec cette modification, impossible de faire ça, et les utilisateurs diront que nous sommes à la traîne au niveau des technologies utilisées."},{"options":[],"question":"Qu'en pensez vous ?"},{"choice":"Tu n’as pas tord"},{"choice":"Je n’y ai pas encore réfléchi"},{"endbranch":""},{"character":"character-1616658403.json","portrait":"","text":"Fais attention des décisions comme celles-ci pourraient avoir de grandes conséquences pour l’entreprise…\nBonnes ou mauvaises !"},{"action":"leaveall","character":"[All]"},{"wait_seconds":0},{"change_timeline":"timeline-1616660984.json"}],"metadata":{"dialogic-version":"1.1","file":"timeline-1616660446.json","name":"info-jm"}}
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
{"events":[{"background":"res://backgrounds/bureauPerso.jpg"},{"action":"join","character":"character-1616658471.json","portrait":"","position":{"0":false,"1":false,"2":true,"3":false,"4":false}},{"character":"","portrait":"","text":"Vous avez reçu un mail !"},{"character":"character-1616658471.json","portrait":"","text":"Bravo !\nVous êtes le gagnant de la tombola de l’école maternelle des coquelicots en fleurs !\nVous avez gagné un jambon entier félicitations ! \nPour récupérer votre prix, veuillez vous présenter au bureau de la directrice.\nL’association des parents d’élèves des coquelicots."},{"options":[],"question":"..."},{"choice":"C'est dommage je suis végétarien..."},{"character":"character-1616658355.json","portrait":"","text":"J'en parlerai à la directrice."},{"choice":"Miam !"},{"character":"character-1616658355.json","portrait":"","text":"Tous ces apéros en perspective !\nJe vais me régaler."},{"endbranch":""},{"action":"leaveall","character":"[All]"},{"wait_seconds":1},{"change_timeline":"timeline-1616661304.json"}],"metadata":{"dialogic-version":"1.0","file":"timeline-1616660984.json","name":"merde-mail-1"}}
|
{"events":[{"background":"res://backgrounds/bureauPerso.jpg"},{"action":"join","character":"character-1616658471.json","portrait":"","position":{"0":false,"1":false,"2":true,"3":false,"4":false}},{"character":"","portrait":"","text":"Vous avez reçu un mail !"},{"character":"character-1616658471.json","portrait":"","text":"Bravo !\nVous êtes le gagnant de la tombola de l’école maternelle des coquelicots en fleurs !\nVous avez gagné un jambon entier félicitations ! \nPour récupérer votre prix, veuillez vous présenter au bureau de la directrice.\nL’association des parents d’élèves des coquelicots."},{"options":[],"question":"..."},{"choice":"C'est dommage je suis végétarien..."},{"character":"character-1616658355.json","portrait":"","text":"J'en parlerai à la directrice."},{"choice":"Miam !"},{"character":"character-1616658355.json","portrait":"","text":"Tous ces apéros en perspective !\nJe vais me régaler."},{"endbranch":""},{"action":"leaveall","character":"[All]"},{"wait_seconds":1},{"change_timeline":"timeline-1616661304.json"}],"metadata":{"dialogic-version":"1.1","file":"timeline-1616660984.json","name":"merde-mail-1"}}
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
{"events":[{"background":"res://backgrounds/bureauPerso.jpg"},{"character":"","portrait":"","text":"C'est l'heure de passer au travail !\nIl est temps de décider du design du téléphone.\nVoulez vous permettre l'ouverture du téléphone ?\nOu plutot le verrouiller ? "},{"options":[],"question":"Téléphone verrouillé ou ouvert ?"},{"choice":"Ouvert"},{"character":"character-1616658355.json","portrait":"","text":"Un téléphone ouvert me semble être la meilleure solution.\nJe vais voir ce que mes collègues en pensent, je suis sûr qu'Evelyne me soutiendra !"},{"definition":"1616657225-648","set_value":"1"},{"choice":"Verrouillé"},{"character":"character-1616658355.json","portrait":"","text":"Un téléphone verrouillé me semble être la meilleure solution.\nJe vais voir ce que mes collègues en pensent, je suis sûr que Jean-Michel sera ravi !"},{"definition":"1616657225-648","set_value":"0"},{"endbranch":""},{"character":"","portrait":"","text":"Vous annoncez votre décision par mail à vos collègues.\nVous les rejoignez ensuite dans la salle de réunion."},{"wait_seconds":1},{"condition":"==","definition":"1616657225-648","value":"1"},{"change_timeline":"timeline-1616661658.json"},{"endbranch":""},{"condition":"==","definition":"1616657225-648","value":"0"},{"change_timeline":"timeline-1616661685.json"},{"endbranch":""}],"metadata":{"dialogic-version":"1.0","file":"timeline-1616661304.json","name":"question-tel-ouvert"}}
|
{"events":[{"background":"res://backgrounds/bureauPerso.jpg"},{"character":"","portrait":"","text":"C'est l'heure de passer au travail !\nIl est temps de décider du design du téléphone.\nVoulez vous permettre l'ouverture du téléphone ?\nOu plutot le verrouiller ? "},{"options":[],"question":"Téléphone verrouillé ou ouvert ?"},{"choice":"Ouvert"},{"character":"character-1616658355.json","portrait":"","text":"Un téléphone ouvert me semble être la meilleure solution.\nJe vais voir ce que mes collègues en pensent, je suis sûr qu'Evelyne me soutiendra !"},{"definition":"1616657225-648","set_value":"1"},{"choice":"Verrouillé"},{"character":"character-1616658355.json","portrait":"","text":"Un téléphone verrouillé me semble être la meilleure solution.\nJe vais voir ce que mes collègues en pensent, je suis sûr que Jean-Michel sera ravi !"},{"definition":"1616657225-648","set_value":"0"},{"endbranch":""},{"character":"","portrait":"","text":"Vous annoncez votre décision par mail à vos collègues.\nVous les rejoignez ensuite dans la salle de réunion."},{"wait_seconds":1},{"condition":"==","definition":"1616657225-648","value":"1"},{"change_timeline":"timeline-1616661658.json"},{"endbranch":""},{"condition":"==","definition":"1616657225-648","value":"0"},{"change_timeline":"timeline-1616661685.json"},{"endbranch":""}],"metadata":{"dialogic-version":"1.1","file":"timeline-1616661304.json","name":"question-tel-ouvert"}}
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
{"events":[{"background":"res://backgrounds/meetingRoom.jpg"},{"action":"join","character":"character-1616658403.json","portrait":"","position":{"0":false,"1":true,"2":false,"3":false,"4":false}},{"character":"character-1616658403.json","portrait":"","text":"On peut discuter une minute ?"},{"character":"character-1616658355.json","portrait":"","text":"Euh oui pas de soucis qu’est ce qu’il se passe ?"},{"character":"character-1616658403.json","portrait":"","text":"Je viens d’apprendre que ton projet vient d’être validé mais que c’est le projet de développer un téléphone que l’utilisateur peut ouvrir !\nTu as une idée des répercussions sur l’entreprise que cela va avoir ?\nL’entreprise va perdre beaucoup d’argent à laisser la possibilité aux gens de réparer leurs téléphones en leur laissant l’accès aux composants !\nEt toutes les idées dont je t’avais parlé de technologies innovantes et de designs incroyables sont réduits à néant !\nFranchement je ne sais pas ce qui t’es passé par la tête mais ça me laisse sans voix …\nSur ce je n’ai plus rien à dire au revoir."},{"action":"leaveall","character":"[All]"},{"action":"join","character":"character-1616658373.json","portrait":"","position":{"0":false,"1":false,"2":false,"3":true,"4":false}},{"character":"character-1616658373.json","portrait":"","text":"Re-bonjour ! Quelle belle journée aujourd’hui !\nJ’ai appris que tu avais repris mon idée de pouvoir ouvrir le téléphone dans ton projet de développement.\nC’est une sage décision qui va engendrer tellement de choses positives pour l’entreprise.\nC’est le début d’une nouvelle ère technologique responsable, crois moi !\nOui au recyclage et oui à la seconde vie des appareils !"},{"character":"character-1616658355.json","portrait":"","text":"Je suis content que ce projet provoque un tel enthousiasme en toi !"},{"action":"join","character":"character-1616658435.json","portrait":"","position":{"0":true,"1":false,"2":false,"3":false,"4":false}},{"character":"character-1616658435.json","portrait":"","text":"Il se passe quoi ici ?"},{"character":"character-1616658355.json","portrait":"","text":"Tu n'as pas vu mon mail ?"},{"character":"character-1616658435.json","portrait":"","text":"Ah non.."},{"wait_seconds":1},{"character":"character-1616658435.json","portrait":"","text":"J'ai perdu mon mot de passe\n...\n..."},{"wait_seconds":1},{"action":"leaveall","character":"character-1616658435.json"},{"character":"character-1616658373.json","portrait":"","text":"...\nBon\nEn tout cas je suis ravie de ton choix !\nJe te laisse j’ai une réunion dans 10 min à bientôt !"},{"action":"leaveall","character":"[All]"},{"change_timeline":"timeline-1616662258.json"}],"metadata":{"dialogic-version":"1.0","file":"timeline-1616661658.json","name":"conseq-tel-ouvert-1"}}
|
{"events":[{"background":"res://backgrounds/meetingRoom.jpg"},{"action":"join","character":"character-1616658403.json","portrait":"","position":{"0":false,"1":true,"2":false,"3":false,"4":false}},{"character":"character-1616658403.json","portrait":"","text":"On peut discuter une minute ?"},{"character":"character-1616658355.json","portrait":"","text":"Euh oui pas de soucis qu’est ce qu’il se passe ?"},{"character":"character-1616658403.json","portrait":"","text":"Je viens d’apprendre que ton projet vient d’être validé mais que c’est le projet de développer un téléphone que l’utilisateur peut ouvrir !\nTu as une idée des répercussions sur l’entreprise que cela va avoir ?\nL’entreprise va perdre beaucoup d’argent à laisser la possibilité aux gens de réparer leurs téléphones en leur laissant l’accès aux composants !\nEt toutes les idées dont je t’avais parlé de technologies innovantes et de designs incroyables sont réduits à néant !\nFranchement je ne sais pas ce qui t’es passé par la tête mais ça me laisse sans voix …\nSur ce je n’ai plus rien à dire au revoir."},{"action":"leaveall","character":"[All]"},{"action":"join","character":"character-1616658373.json","portrait":"","position":{"0":false,"1":false,"2":false,"3":true,"4":false}},{"character":"character-1616658373.json","portrait":"","text":"Re-bonjour ! Quelle belle journée aujourd’hui !\nJ’ai appris que tu avais repris mon idée de pouvoir ouvrir le téléphone dans ton projet de développement.\nC’est une sage décision qui va engendrer tellement de choses positives pour l’entreprise.\nC’est le début d’une nouvelle ère technologique responsable, crois moi !\nOui au recyclage et oui à la seconde vie des appareils !"},{"character":"character-1616658355.json","portrait":"","text":"Je suis content que ce projet provoque un tel enthousiasme en toi !"},{"action":"join","character":"character-1616658435.json","portrait":"","position":{"0":true,"1":false,"2":false,"3":false,"4":false}},{"character":"character-1616658435.json","portrait":"","text":"Il se passe quoi ici ?"},{"character":"character-1616658355.json","portrait":"","text":"Tu n'as pas vu mon mail ?"},{"character":"character-1616658435.json","portrait":"","text":"Ah non.."},{"wait_seconds":1},{"character":"character-1616658435.json","portrait":"","text":"J'ai perdu mon mot de passe\n...\n..."},{"wait_seconds":1},{"action":"leaveall","character":"character-1616658435.json"},{"character":"character-1616658373.json","portrait":"","text":"...\nBon\nEn tout cas je suis ravie de ton choix !\nJe te laisse j’ai une réunion dans 10 min à bientôt !"},{"action":"leaveall","character":"[All]"},{"change_timeline":"timeline-1616662258.json"}],"metadata":{"dialogic-version":"1.1","file":"timeline-1616661658.json","name":"conseq-tel-ouvert-1"}}
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
{"events":[{"background":"res://backgrounds/meetingRoom.jpg"},{"action":"join","character":"character-1616658471.json","portrait":"","position":{"0":false,"1":false,"2":true,"3":false,"4":false}},{"character":"","portrait":"","text":"Vous avez reçu un mail du Boss !"},{"character":"character-1616658471.json","portrait":"","text":"Bonjour,\nJe souhaitais vous féliciter concernant votre projet de téléphone.\nJ’ai récemment appris que vous aviez hésité concernant la possibilité d’ouvrir le téléphone ou non.\nSachez que je suis plus que satisfait de votre choix.\nEn effet, le fait d’avoir fermé le téléphone nous permettra d’augmenter notre chiffre d’affaires de manière significative.\nD’une part grâce à de nouveaux designs innovants et attractifs, mais également grâce à une fidélisation de la clientèle, je ne peux qu’approuver votre choix.\nContinuez sur cette lancée !\nEn vous souhaitant une bonne journée.\nCordialement, The boss"},{"action":"leaveall","character":"character-1616658471.json"},{"wait_seconds":0},{"action":"join","character":"character-1616658373.json","portrait":"","position":{"0":false,"1":true,"2":false,"3":false,"4":false}},{"character":"character-1616658373.json","portrait":"","text":"Re\nJe croyais que tu avais compris ce que je t’avais dit concernant le recyclage des composants des téléphones.\nEn fermant le téléphone, tu condamnes les utilisateurs à devoir changer leur téléphone au moindre problème.\nEn faisant ceci, tu deviens partisan de la surconsommation et donc de la pollution de notre planète.\nTu crois que le chiffre d’affaires de l’entreprise importera quand nous n’aurons même plus un endroit où vivre ?"},{"action":"join","character":"character-1616658403.json","portrait":"","position":{"0":false,"1":false,"2":false,"3":true,"4":false}},{"character":"character-1616658403.json","portrait":"","text":"Hey !\nUn petit golf samedi ?"},{"character":"character-1616658373.json","portrait":"","text":"Tu permets ?\nNous sommes en pleine discussion."},{"character":"character-1616658403.json","portrait":"","text":"Okay, faut pas être tendue comme ça..."},{"action":"leaveall","character":"character-1616658403.json"},{"character":"character-1616658373.json","portrait":"","text":"Bref\nJe te laisse réfléchir à ça je dois y aller il me reste 1h de pause je vais aller courir un peu…"},{"action":"leaveall","character":"[All]"},{"change_timeline":"timeline-1616662258.json"}],"metadata":{"dialogic-version":"1.0","file":"timeline-1616661685.json","name":"conseq-tel-ouvert-2"}}
|
{"events":[{"background":"res://backgrounds/meetingRoom.jpg"},{"action":"join","character":"character-1616658471.json","portrait":"","position":{"0":false,"1":false,"2":true,"3":false,"4":false}},{"character":"","portrait":"","text":"Vous avez reçu un mail du Boss !"},{"character":"character-1616658471.json","portrait":"","text":"Bonjour,\nJe souhaitais vous féliciter concernant votre projet de téléphone.\nJ’ai récemment appris que vous aviez hésité concernant la possibilité d’ouvrir le téléphone ou non.\nSachez que je suis plus que satisfait de votre choix.\nEn effet, le fait d’avoir fermé le téléphone nous permettra d’augmenter notre chiffre d’affaires de manière significative.\nD’une part grâce à de nouveaux designs innovants et attractifs, mais également grâce à une fidélisation de la clientèle, je ne peux qu’approuver votre choix.\nContinuez sur cette lancée !\nEn vous souhaitant une bonne journée.\nCordialement, The boss"},{"action":"leaveall","character":"character-1616658471.json"},{"wait_seconds":0},{"action":"join","character":"character-1616658373.json","portrait":"","position":{"0":false,"1":true,"2":false,"3":false,"4":false}},{"character":"character-1616658373.json","portrait":"","text":"Re\nJe croyais que tu avais compris ce que je t’avais dit concernant le recyclage des composants des téléphones.\nEn fermant le téléphone, tu condamnes les utilisateurs à devoir changer leur téléphone au moindre problème.\nEn faisant ceci, tu deviens partisan de la surconsommation et donc de la pollution de notre planète.\nTu crois que le chiffre d’affaires de l’entreprise importera quand nous n’aurons même plus un endroit où vivre ?"},{"action":"join","character":"character-1616658403.json","portrait":"","position":{"0":false,"1":false,"2":false,"3":true,"4":false}},{"character":"character-1616658403.json","portrait":"","text":"Hey !\nUn petit golf samedi ?"},{"character":"character-1616658373.json","portrait":"","text":"Tu permets ?\nNous sommes en pleine discussion."},{"character":"character-1616658403.json","portrait":"","text":"Okay, faut pas être tendue comme ça..."},{"action":"leaveall","character":"character-1616658403.json"},{"character":"character-1616658373.json","portrait":"","text":"Bref\nJe te laisse réfléchir à ça je dois y aller il me reste 1h de pause je vais aller courir un peu…"},{"action":"leaveall","character":"[All]"},{"change_timeline":"timeline-1616662258.json"}],"metadata":{"dialogic-version":"1.1","file":"timeline-1616661685.json","name":"conseq-tel-ouvert-2"}}
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
{"events":[{"wait_seconds":1},{"character":"","portrait":"","text":"Fin de la démo, merci d'avoir joué !"},{"action":"join","character":"character-1616658435.json","portrait":"","position":{"0":false,"1":false,"2":false,"3":false,"4":true}},{"character":"character-1616658435.json","portrait":"","text":"À bientôt dans l'métro !"},{"action":"leaveall","character":"[All]"}],"metadata":{"dialogic-version":"1.0","file":"timeline-1616662258.json","name":"_end"}}
|
{"events":[{"wait_seconds":1},{"character":"","portrait":"","text":"Fin de la démo, merci d'avoir joué !"},{"action":"join","character":"character-1616658435.json","portrait":"","position":{"0":false,"1":false,"2":false,"3":false,"4":true}},{"character":"character-1616658435.json","portrait":"","text":"À bientôt dans l'métro !"},{"action":"leaveall","character":"[All]"}],"metadata":{"dialogic-version":"1.1","file":"timeline-1616662258.json","name":"_end"}}
|
||||||
|
|