More work on dialogue, portraits, customizer and intro
@@ -1,6 +1,7 @@
|
||||
class_name Quest extends Resource
|
||||
|
||||
|
||||
#The list of available quests
|
||||
static var list : Array[Quest]
|
||||
|
||||
|
||||
enum Status{
|
||||
@@ -31,10 +32,13 @@ class Event:
|
||||
VICTORY,
|
||||
DEFEAT
|
||||
}
|
||||
var hidden : bool = false
|
||||
var type : Type = Type.WAIT
|
||||
var enemies : Array[String] = []
|
||||
var progress_point : float = 0
|
||||
var time : float = 1
|
||||
var time_elapsed
|
||||
var complete : bool = false
|
||||
signal completed()
|
||||
signal failed()
|
||||
|
||||
@@ -43,6 +47,21 @@ class Event:
|
||||
var busy_list : Array = []
|
||||
var combat_state
|
||||
var dex_speed : int
|
||||
|
||||
func setup() -> void:
|
||||
pass
|
||||
|
||||
func save_dict() -> Dictionary:
|
||||
var d : Dictionary = {}
|
||||
d.hidden = hidden
|
||||
d.type = type
|
||||
d.enemies = enemies
|
||||
d.progress_point = progress_point
|
||||
d.time = time
|
||||
d.time_elapsed = time_elapsed
|
||||
d.complete = complete
|
||||
return d
|
||||
|
||||
func start(quest : Quest) -> void:
|
||||
match(type):
|
||||
Type.WAIT:
|
||||
@@ -91,7 +110,7 @@ class Event:
|
||||
|
||||
func add_to_turn_queue(combatant) -> void:
|
||||
#Calculate time
|
||||
var time = dex_speed / combatant.stats.DEX
|
||||
var time = dex_speed / max(1, combatant.stats.DEX)
|
||||
#Walk through list to find insertion point
|
||||
var idx = -1
|
||||
for i in range(len(turn_queue)):
|
||||
@@ -191,12 +210,15 @@ class Event:
|
||||
CombatState.VICTORY:
|
||||
time_elapsed += delta
|
||||
if time_elapsed >= time:
|
||||
complete = true
|
||||
completed.emit()
|
||||
Type.WAIT:
|
||||
time_elapsed += delta
|
||||
if time_elapsed >= time:
|
||||
complete = true
|
||||
completed.emit()
|
||||
|
||||
var base_name : String = ""
|
||||
var name : String = "A Basic Quest"
|
||||
var desc : String = "The default quest, with no special anything."
|
||||
var difficulty : int = 1
|
||||
@@ -233,6 +255,7 @@ func fail() -> void:
|
||||
func complete() -> void:
|
||||
status = Status.COMPLETED
|
||||
status_changed.emit(Status.COMPLETED)
|
||||
questview.show_quest_complete()
|
||||
for reward in rewards.keys():
|
||||
if reward == "gold":
|
||||
questor.gain_gold(rewards[reward])
|
||||
@@ -268,3 +291,46 @@ func difficulty_name() -> String:
|
||||
4: return "Extreme"
|
||||
5: return "Legendary"
|
||||
_: return "Unknown"
|
||||
|
||||
static func load_quest_list() -> void:
|
||||
var path = ProjectSettings.get_setting_with_override("data/quests/directory")
|
||||
var dir = DirAccess.open(path)
|
||||
var quest : Quest
|
||||
if dir:
|
||||
dir.list_dir_begin()
|
||||
var filename = dir.get_next()
|
||||
while filename != "":
|
||||
if not dir.current_is_dir() and filename.get_extension() == "gd":
|
||||
var file = load(path + "/" + filename).new()
|
||||
if file is Quest:
|
||||
list.append(file)
|
||||
filename = dir.get_next()
|
||||
dir.list_dir_end()
|
||||
|
||||
static func generate(parameters : Dictionary) -> Quest:
|
||||
return null
|
||||
|
||||
func save_dict() -> Dictionary:
|
||||
var d : Dictionary = {}
|
||||
d.name = name
|
||||
d.base_name = base_name
|
||||
d.desc = desc
|
||||
d.difficulty = difficulty
|
||||
d.location = location
|
||||
d.steps = steps
|
||||
#TODO: Convert these!
|
||||
#d.rewards = rewards
|
||||
#d.guild_rewards = guild_rewards
|
||||
|
||||
d.covenant_cost = covenant_cost
|
||||
d.length = length
|
||||
d.progress = progress
|
||||
d.current_step = current_step
|
||||
d.taken = taken
|
||||
d.status = status
|
||||
|
||||
var lst : Array = []
|
||||
for evt in events:
|
||||
lst.append(evt.save_dict())
|
||||
d.events = lst
|
||||
return d
|
||||
|
||||
@@ -1,15 +1,35 @@
|
||||
extends Quest
|
||||
|
||||
func _init() -> void:
|
||||
func setup() -> void:
|
||||
name = "A Sticky Situation"
|
||||
var event_weights = [1,1,1,1,1,1,1,1,2,2,2,2,3,3,3,4,4,5]
|
||||
var num_events = event_weights.pick_random()
|
||||
var num_events = 3 # event_weights.pick_random()
|
||||
#The first event is guaranteed to be at the 50% mark.
|
||||
var first : bool = true
|
||||
var pranges : Array = []
|
||||
var margin : float = 0.1
|
||||
for i in range(num_events):
|
||||
var evt : Quest.Event = Quest.Event.new()
|
||||
evt.type = Quest.Event.Type.COMBAT
|
||||
evt.enemies = ["goo"]
|
||||
evt.time = 5
|
||||
if first:
|
||||
#Make invisible
|
||||
evt.progress_point = .5
|
||||
pranges.append([margin, evt.progress_point-margin])
|
||||
pranges.append([evt.progress_point+margin, 1 - margin])
|
||||
first = false
|
||||
else:
|
||||
evt.hidden = true
|
||||
pranges.shuffle()
|
||||
var range = pranges.pop_back()
|
||||
evt.progress_point = randf_range(range[0], range[1])
|
||||
if evt.progress_point - range[0] >= 2 * margin:
|
||||
pranges.append([range[0], evt.progress_point - margin])
|
||||
if range[1] - evt.progress_point >= 2 * margin:
|
||||
pranges.append([evt.progress_point + margin, range[1]])
|
||||
events.append(evt)
|
||||
events.sort_custom(func(a,b): return a.progress_point < b.progress_point)
|
||||
desc = "Nestor’s Woods is facing a slime invasion and the farmers are getting nervous, send an adventurer to help squash that sticky situation!"
|
||||
location = Quest.Locations.NESTORS_WOODS
|
||||
rewards = {"exp":10, "gold":5}
|
||||
|
||||
64
dialogic/test-style.tres
Normal file
@@ -0,0 +1,64 @@
|
||||
[gd_resource type="Resource" script_class="DialogicStyle" load_steps=20 format=3 uid="uid://ds2tuiay4rabe"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://1qacwh2qaoiq" path="res://addons/dialogic/Resources/dialogic_style_layer.gd" id="1_5yaxe"]
|
||||
[ext_resource type="PackedScene" uid="uid://c1k5m0w3r40xf" path="res://addons/dialogic/Modules/DefaultLayoutParts/Layer_FullBackground/full_background_layer.tscn" id="2_sw2mm"]
|
||||
[ext_resource type="PackedScene" uid="uid://cy1y14inwkplb" path="res://addons/dialogic/Modules/DefaultLayoutParts/Layer_VN_Portraits/vn_portrait_layer.tscn" id="3_mfkbk"]
|
||||
[ext_resource type="PackedScene" uid="uid://cn674foxwedqu" path="res://addons/dialogic/Modules/DefaultLayoutParts/Layer_Input/full_advance_input_layer.tscn" id="4_muaod"]
|
||||
[ext_resource type="PackedScene" uid="uid://bquja8jyk8kbr" path="res://addons/dialogic/Modules/DefaultLayoutParts/Layer_VN_Textbox/vn_textbox_layer.tscn" id="5_587fh"]
|
||||
[ext_resource type="PackedScene" uid="uid://dsbwnp5hegnu3" path="res://addons/dialogic/Modules/DefaultLayoutParts/Layer_Glossary/glossary_popup_layer.tscn" id="6_i5shp"]
|
||||
[ext_resource type="PackedScene" uid="uid://dhk6j6eb6e3q" path="res://addons/dialogic/Modules/DefaultLayoutParts/Layer_VN_Choices/vn_choice_layer.tscn" id="7_yh6aj"]
|
||||
[ext_resource type="PackedScene" uid="uid://cvgf4c6gg0tsy" path="res://addons/dialogic/Modules/DefaultLayoutParts/Layer_TextInput/text_input_layer.tscn" id="8_dikk4"]
|
||||
[ext_resource type="PackedScene" uid="uid://lx24i8fl6uo" path="res://addons/dialogic/Modules/DefaultLayoutParts/Layer_History/history_layer.tscn" id="9_isvcv"]
|
||||
[ext_resource type="Script" uid="uid://b5nqsdfdl0jjg" path="res://addons/dialogic/Resources/dialogic_style.gd" id="10_qi7p4"]
|
||||
|
||||
[sub_resource type="Resource" id="Resource_5nw0r"]
|
||||
script = ExtResource("1_5yaxe")
|
||||
|
||||
[sub_resource type="Resource" id="Resource_bpwsm"]
|
||||
script = ExtResource("1_5yaxe")
|
||||
scene = ExtResource("2_sw2mm")
|
||||
|
||||
[sub_resource type="Resource" id="Resource_swupp"]
|
||||
script = ExtResource("1_5yaxe")
|
||||
scene = ExtResource("3_mfkbk")
|
||||
|
||||
[sub_resource type="Resource" id="Resource_w34dy"]
|
||||
script = ExtResource("1_5yaxe")
|
||||
scene = ExtResource("4_muaod")
|
||||
|
||||
[sub_resource type="Resource" id="Resource_7vels"]
|
||||
script = ExtResource("1_5yaxe")
|
||||
scene = ExtResource("5_587fh")
|
||||
|
||||
[sub_resource type="Resource" id="Resource_rtvk6"]
|
||||
script = ExtResource("1_5yaxe")
|
||||
scene = ExtResource("6_i5shp")
|
||||
|
||||
[sub_resource type="Resource" id="Resource_j7il2"]
|
||||
script = ExtResource("1_5yaxe")
|
||||
scene = ExtResource("7_yh6aj")
|
||||
|
||||
[sub_resource type="Resource" id="Resource_qx0md"]
|
||||
script = ExtResource("1_5yaxe")
|
||||
scene = ExtResource("8_dikk4")
|
||||
|
||||
[sub_resource type="Resource" id="Resource_dv5be"]
|
||||
script = ExtResource("1_5yaxe")
|
||||
scene = ExtResource("9_isvcv")
|
||||
|
||||
[resource]
|
||||
script = ExtResource("10_qi7p4")
|
||||
name = "test-style"
|
||||
layer_list = Array[String](["10", "11", "12", "13", "14", "15", "16", "17"])
|
||||
layer_info = {
|
||||
"": SubResource("Resource_5nw0r"),
|
||||
"10": SubResource("Resource_bpwsm"),
|
||||
"11": SubResource("Resource_swupp"),
|
||||
"12": SubResource("Resource_w34dy"),
|
||||
"13": SubResource("Resource_7vels"),
|
||||
"14": SubResource("Resource_rtvk6"),
|
||||
"15": SubResource("Resource_j7il2"),
|
||||
"16": SubResource("Resource_qx0md"),
|
||||
"17": SubResource("Resource_dv5be")
|
||||
}
|
||||
metadata/_latest_layer = "13"
|
||||
364
dialogic/test_textbox_layer.tscn
Normal file
@@ -0,0 +1,364 @@
|
||||
[gd_scene load_steps=18 format=3 uid="uid://co4lvbcvc4n4r"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://dh7v16o6p2byd" path="res://addons/dialogic/Modules/DefaultLayoutParts/Layer_VN_Textbox/vn_textbox_layer.gd" id="1_8w2ny"]
|
||||
[ext_resource type="Script" uid="uid://deyihsk5ygbhr" path="res://addons/dialogic/Modules/DefaultLayoutParts/Layer_VN_Textbox/animations.gd" id="2_lm5q8"]
|
||||
[ext_resource type="Texture2D" uid="uid://wjhyhe1jeli4" path="res://external/dialogue-box.png" id="3_8w2ny"]
|
||||
[ext_resource type="Script" uid="uid://sv8obsrlo5h4" path="res://addons/dialogic/Modules/Text/node_dialog_text.gd" id="4_upo8v"]
|
||||
[ext_resource type="Script" uid="uid://beqdjhq0e2wyc" path="res://addons/dialogic/Modules/Text/node_type_sound.gd" id="5_8i8x0"]
|
||||
[ext_resource type="Script" uid="uid://ceitutnrgf6q4" path="res://addons/dialogic/Modules/Text/node_next_indicator.gd" id="6_wmx4e"]
|
||||
[ext_resource type="Texture2D" uid="uid://b0rpqfg4fhebk" path="res://addons/dialogic/Modules/DefaultLayoutParts/Layer_VN_Textbox/next.svg" id="7_otcnr"]
|
||||
[ext_resource type="Script" uid="uid://c1vq61i7urva2" path="res://addons/dialogic/Modules/DefaultLayoutParts/Layer_VN_Textbox/autoadvance_indicator.gd" id="8_oc1t2"]
|
||||
[ext_resource type="StyleBox" uid="uid://m7gyepkysu83" path="res://addons/dialogic/Modules/DefaultLayoutParts/Layer_VN_Textbox/vn_textbox_name_label_panel.tres" id="9_3ecl4"]
|
||||
[ext_resource type="Script" uid="uid://qkdtvkpiquha" path="res://addons/dialogic/Modules/Text/node_name_label.gd" id="10_0m0vw"]
|
||||
|
||||
[sub_resource type="Animation" id="Animation_au0a2"]
|
||||
length = 0.001
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("Anchor/AnimationParent:position")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(0, 0)]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("Anchor/AnimationParent:rotation")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [0.0]
|
||||
}
|
||||
tracks/2/type = "value"
|
||||
tracks/2/imported = false
|
||||
tracks/2/enabled = true
|
||||
tracks/2/path = NodePath("Anchor/AnimationParent:scale")
|
||||
tracks/2/interp = 1
|
||||
tracks/2/loop_wrap = true
|
||||
tracks/2/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(1, 1)]
|
||||
}
|
||||
tracks/3/type = "value"
|
||||
tracks/3/imported = false
|
||||
tracks/3/enabled = true
|
||||
tracks/3/path = NodePath("Anchor/AnimationParent:modulate")
|
||||
tracks/3/interp = 1
|
||||
tracks/3/loop_wrap = true
|
||||
tracks/3/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Color(1, 1, 1, 1)]
|
||||
}
|
||||
tracks/4/type = "bezier"
|
||||
tracks/4/imported = false
|
||||
tracks/4/enabled = true
|
||||
tracks/4/path = NodePath("Anchor/AnimationParent/Sizer/DialogTextPanel:rotation")
|
||||
tracks/4/interp = 1
|
||||
tracks/4/loop_wrap = true
|
||||
tracks/4/keys = {
|
||||
"handle_modes": PackedInt32Array(0),
|
||||
"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0),
|
||||
"times": PackedFloat32Array(0)
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_6kbwc"]
|
||||
resource_name = "new_text"
|
||||
length = 0.4
|
||||
tracks/0/type = "bezier"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("Anchor/AnimationParent/Sizer/DialogTextPanel:rotation")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"handle_modes": PackedInt32Array(3, 3, 3, 3, 3),
|
||||
"points": PackedFloat32Array(0, -0.025, 0, 0.025, 0, 0.005, -0.025, 0, 0.025, 0, -0.005, -0.025, 0, 0.025, 0, 0.005, -0.025, 0, 0.025, 0, 0, -0.025, 0, 0.025, 0),
|
||||
"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4)
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_g6k55"]
|
||||
resource_name = "textbox_fade_up"
|
||||
length = 0.7
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("Anchor/AnimationParent:position")
|
||||
tracks/0/interp = 2
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0, 0.3, 0.7),
|
||||
"transitions": PackedFloat32Array(1, 1, 1),
|
||||
"update": 0,
|
||||
"values": [Vector2(0, 50), Vector2(0, 19.6793), Vector2(0, 0)]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("Anchor/AnimationParent:modulate")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0.1, 0.6),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"update": 0,
|
||||
"values": [Color(1, 1, 1, 0), Color(1, 1, 1, 1)]
|
||||
}
|
||||
tracks/2/type = "value"
|
||||
tracks/2/imported = false
|
||||
tracks/2/enabled = true
|
||||
tracks/2/path = NodePath("Anchor/AnimationParent:rotation")
|
||||
tracks/2/interp = 1
|
||||
tracks/2/loop_wrap = true
|
||||
tracks/2/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [0.0]
|
||||
}
|
||||
tracks/3/type = "value"
|
||||
tracks/3/imported = false
|
||||
tracks/3/enabled = true
|
||||
tracks/3/path = NodePath("Anchor/AnimationParent:scale")
|
||||
tracks/3/interp = 1
|
||||
tracks/3/loop_wrap = true
|
||||
tracks/3/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(1, 1)]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_htbgc"]
|
||||
resource_name = "textbox_pop"
|
||||
length = 0.3
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("Anchor/AnimationParent:position")
|
||||
tracks/0/interp = 2
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector2(0, 0)]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("Anchor/AnimationParent:rotation")
|
||||
tracks/1/interp = 2
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0, 0.2, 0.3),
|
||||
"transitions": PackedFloat32Array(1, 1, 1),
|
||||
"update": 0,
|
||||
"values": [-0.0899883, 0.0258223, 0.0]
|
||||
}
|
||||
tracks/2/type = "value"
|
||||
tracks/2/imported = false
|
||||
tracks/2/enabled = true
|
||||
tracks/2/path = NodePath("Anchor/AnimationParent:scale")
|
||||
tracks/2/interp = 2
|
||||
tracks/2/loop_wrap = true
|
||||
tracks/2/keys = {
|
||||
"times": PackedFloat32Array(0, 0.2, 0.3),
|
||||
"transitions": PackedFloat32Array(1, 1, 1),
|
||||
"update": 0,
|
||||
"values": [Vector2(0.793957, 0.778082), Vector2(0.937299, 1.14248), Vector2(1, 1)]
|
||||
}
|
||||
tracks/3/type = "value"
|
||||
tracks/3/imported = false
|
||||
tracks/3/enabled = true
|
||||
tracks/3/path = NodePath("Anchor/AnimationParent:modulate")
|
||||
tracks/3/interp = 1
|
||||
tracks/3/loop_wrap = true
|
||||
tracks/3/keys = {
|
||||
"times": PackedFloat32Array(0, 0.3),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"update": 0,
|
||||
"values": [Color(1, 1, 1, 0), Color(1, 1, 1, 1)]
|
||||
}
|
||||
|
||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_c14kh"]
|
||||
_data = {
|
||||
&"RESET": SubResource("Animation_au0a2"),
|
||||
&"new_text": SubResource("Animation_6kbwc"),
|
||||
&"textbox_fade_up": SubResource("Animation_g6k55"),
|
||||
&"textbox_pop": SubResource("Animation_htbgc")
|
||||
}
|
||||
|
||||
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_lm5q8"]
|
||||
texture = ExtResource("3_8w2ny")
|
||||
texture_margin_left = 40.0
|
||||
texture_margin_top = 40.0
|
||||
texture_margin_right = 40.0
|
||||
texture_margin_bottom = 40.0
|
||||
|
||||
[sub_resource type="FontVariation" id="FontVariation_v8y64"]
|
||||
|
||||
[node name="VN_TextboxLayer" type="Control"]
|
||||
layout_mode = 3
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
mouse_filter = 2
|
||||
script = ExtResource("1_8w2ny")
|
||||
box_panel = "res://addons/dialogic/Modules/DefaultLayoutParts/Layer_VN_Textbox/vn_textbox_default_panel.tres"
|
||||
box_color_use_global = false
|
||||
box_size = Vector2(550, 150)
|
||||
name_label_box_panel = "res://addons/dialogic/Modules/DefaultLayoutParts/Layer_VN_Textbox/vn_textbox_name_label_panel.tres"
|
||||
name_label_box_modulate = Color(0, 0, 0, 1)
|
||||
|
||||
[node name="Animations" type="AnimationPlayer" parent="."]
|
||||
unique_name_in_owner = true
|
||||
libraries = {
|
||||
&"": SubResource("AnimationLibrary_c14kh")
|
||||
}
|
||||
autoplay = "RESET"
|
||||
script = ExtResource("2_lm5q8")
|
||||
|
||||
[node name="Anchor" type="Control" parent="."]
|
||||
layout_mode = 1
|
||||
anchors_preset = 7
|
||||
anchor_left = 0.5
|
||||
anchor_top = 1.0
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 0
|
||||
|
||||
[node name="AnimationParent" type="Control" parent="Anchor"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 7
|
||||
anchor_left = 0.5
|
||||
anchor_top = 1.0
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 0
|
||||
mouse_filter = 2
|
||||
|
||||
[node name="Sizer" type="Control" parent="Anchor/AnimationParent"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 1
|
||||
anchors_preset = 7
|
||||
anchor_left = 0.5
|
||||
anchor_top = 1.0
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 1.0
|
||||
offset_left = -250.0
|
||||
offset_top = -100.0
|
||||
offset_right = 250.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 0
|
||||
mouse_filter = 2
|
||||
|
||||
[node name="DialogTextPanel" type="PanelContainer" parent="Anchor/AnimationParent/Sizer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
mouse_filter = 2
|
||||
theme_override_styles/panel = SubResource("StyleBoxTexture_lm5q8")
|
||||
metadata/_edit_layout_mode = 1
|
||||
|
||||
[node name="HBoxContainer" type="HBoxContainer" parent="Anchor/AnimationParent/Sizer/DialogTextPanel"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="Anchor/AnimationParent/Sizer/DialogTextPanel/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
|
||||
[node name="NameLabelHolder" type="Control" parent="Anchor/AnimationParent/Sizer/DialogTextPanel/HBoxContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
mouse_filter = 2
|
||||
|
||||
[node name="NameLabelPanel" type="PanelContainer" parent="Anchor/AnimationParent/Sizer/DialogTextPanel/HBoxContainer/VBoxContainer/NameLabelHolder"]
|
||||
unique_name_in_owner = true
|
||||
self_modulate = Color(0.00784314, 0.00784314, 0.00784314, 0.843137)
|
||||
layout_mode = 1
|
||||
offset_left = 26.0
|
||||
offset_top = 17.0
|
||||
offset_right = 55.0
|
||||
offset_bottom = 49.0
|
||||
mouse_filter = 2
|
||||
theme_override_styles/panel = ExtResource("9_3ecl4")
|
||||
metadata/_edit_layout_mode = 1
|
||||
metadata/_edit_use_custom_anchors = true
|
||||
metadata/_edit_group_ = true
|
||||
|
||||
[node name="DialogicNode_NameLabel" type="Label" parent="Anchor/AnimationParent/Sizer/DialogTextPanel/HBoxContainer/VBoxContainer/NameLabelHolder/NameLabelPanel" node_paths=PackedStringArray("name_label_root")]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
theme_override_colors/font_color = Color(1, 1, 1, 1)
|
||||
theme_override_fonts/font = SubResource("FontVariation_v8y64")
|
||||
theme_override_font_sizes/font_size = 15
|
||||
text = "Person"
|
||||
script = ExtResource("10_0m0vw")
|
||||
name_label_root = NodePath("..")
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="Anchor/AnimationParent/Sizer/DialogTextPanel/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
|
||||
[node name="DialogicNode_DialogText" type="RichTextLabel" parent="Anchor/AnimationParent/Sizer/DialogTextPanel/HBoxContainer/MarginContainer" node_paths=PackedStringArray("textbox_root")]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
mouse_filter = 1
|
||||
theme_override_colors/default_color = Color(1, 1, 1, 1)
|
||||
theme_override_font_sizes/normal_font_size = 15
|
||||
theme_override_font_sizes/bold_font_size = 15
|
||||
theme_override_font_sizes/bold_italics_font_size = 15
|
||||
theme_override_font_sizes/italics_font_size = 15
|
||||
bbcode_enabled = true
|
||||
text = "Some default text"
|
||||
visible_characters_behavior = 1
|
||||
script = ExtResource("4_upo8v")
|
||||
textbox_root = NodePath("../../..")
|
||||
|
||||
[node name="DialogicNode_TypeSounds" type="AudioStreamPlayer" parent="Anchor/AnimationParent/Sizer/DialogTextPanel/HBoxContainer/MarginContainer/DialogicNode_DialogText"]
|
||||
unique_name_in_owner = true
|
||||
script = ExtResource("5_8i8x0")
|
||||
play_every_character = 0
|
||||
|
||||
[node name="NextIndicator" type="Control" parent="Anchor/AnimationParent/Sizer/DialogTextPanel"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 8
|
||||
size_flags_vertical = 8
|
||||
mouse_filter = 2
|
||||
script = ExtResource("6_wmx4e")
|
||||
show_on_questions = true
|
||||
texture = ExtResource("7_otcnr")
|
||||
metadata/_edit_layout_mode = 1
|
||||
|
||||
[node name="AutoAdvanceProgressbar" type="ProgressBar" parent="Anchor/AnimationParent/Sizer/DialogTextPanel"]
|
||||
unique_name_in_owner = true
|
||||
modulate = Color(1, 1, 1, 0.188235)
|
||||
custom_minimum_size = Vector2(0, 10)
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 8
|
||||
mouse_filter = 2
|
||||
max_value = 1.0
|
||||
step = 0.001
|
||||
value = 0.5
|
||||
show_percentage = false
|
||||
script = ExtResource("8_oc1t2")
|
||||
@@ -1,5 +1,6 @@
|
||||
label Prespeech
|
||||
I never imagined that one day I'd be in charge of a guild. To be honest, I never really imagined what my future would look like. I've never been very good at anything.
|
||||
[background arg="res://graphics/spritesheet_characters.png" fade="0.4"]
|
||||
I just lived every day working the best I could and hoping that somehow, someway, the world would show me what to do. And then grandma died and left me this letter.
|
||||
do Game.switch_scenes("letter")
|
||||
[end_timeline]
|
||||
@@ -9,7 +10,7 @@ do Game.switch_scenes("guild_card")
|
||||
Ugh, I hated paperwork and there sure was a lot of it.
|
||||
[end_timeline]
|
||||
label Start Schedule
|
||||
[wait_input]
|
||||
do
|
||||
And MORE paperwork. I was starting to understand why grandma thought risking death was better.
|
||||
do Game.switch_scenes("set_shifts")
|
||||
[end_timeline]
|
||||
label First Portrait Open
|
||||
|
||||
@@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://crrd8mpcuync2"
|
||||
path="res://.godot/imported/body.png-5a897720f599ec630383f1f3dd8e9e9e.ctex"
|
||||
path="res://.godot/imported/body.png-efd5e53b6f03adc4a57de5ce8dc4d3cd.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/Test Portrait/Farmer_F/body.png"
|
||||
dest_files=["res://.godot/imported/body.png-5a897720f599ec630383f1f3dd8e9e9e.ctex"]
|
||||
source_file="res://external/test portrait/farmer_f/body.png"
|
||||
dest_files=["res://.godot/imported/body.png-efd5e53b6f03adc4a57de5ce8dc4d3cd.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://pp5ssn5m2n3i"
|
||||
path="res://.godot/imported/brow_shadow-1.png-94d923d93f9bc0db18f7b963da1021dd.ctex"
|
||||
path="res://.godot/imported/brow_shadow-1.png-8dff8c187d59ecaaefbb84e877b32e20.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/Test Portrait/Farmer_F/brow_shadow-1.png"
|
||||
dest_files=["res://.godot/imported/brow_shadow-1.png-94d923d93f9bc0db18f7b963da1021dd.ctex"]
|
||||
source_file="res://external/test portrait/farmer_f/brow_shadow-1.png"
|
||||
dest_files=["res://.godot/imported/brow_shadow-1.png-8dff8c187d59ecaaefbb84e877b32e20.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://x4e86o28672u"
|
||||
path="res://.godot/imported/brow_shadow-2.png-85a8d07465b9b109e67ad99a37d690d1.ctex"
|
||||
path="res://.godot/imported/brow_shadow-2.png-b5d8d416acf1ddb95fd785200da8d3ce.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/Test Portrait/Farmer_F/brow_shadow-2.png"
|
||||
dest_files=["res://.godot/imported/brow_shadow-2.png-85a8d07465b9b109e67ad99a37d690d1.ctex"]
|
||||
source_file="res://external/test portrait/farmer_f/brow_shadow-2.png"
|
||||
dest_files=["res://.godot/imported/brow_shadow-2.png-b5d8d416acf1ddb95fd785200da8d3ce.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://sv7bxo8a12i6"
|
||||
path="res://.godot/imported/brow_shadow.png-e4497bbbff21d0b56dc81b07de4f06bc.ctex"
|
||||
path="res://.godot/imported/brow_shadow.png-f653be07b461bc5d7a18192996ffb73a.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/Test Portrait/Farmer_F/brow_shadow.png"
|
||||
dest_files=["res://.godot/imported/brow_shadow.png-e4497bbbff21d0b56dc81b07de4f06bc.ctex"]
|
||||
source_file="res://external/test portrait/farmer_f/brow_shadow.png"
|
||||
dest_files=["res://.godot/imported/brow_shadow.png-f653be07b461bc5d7a18192996ffb73a.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://tpg08bgn2on7"
|
||||
path="res://.godot/imported/brows-1.png-70092c4bb56529f3cdeb7b51925eb071.ctex"
|
||||
path="res://.godot/imported/brows-1.png-86a51529282fffa26d497e35e4cc9367.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/Test Portrait/Farmer_F/brows-1.png"
|
||||
dest_files=["res://.godot/imported/brows-1.png-70092c4bb56529f3cdeb7b51925eb071.ctex"]
|
||||
source_file="res://external/test portrait/farmer_f/brows-1.png"
|
||||
dest_files=["res://.godot/imported/brows-1.png-86a51529282fffa26d497e35e4cc9367.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://brmta1rtiau4a"
|
||||
path="res://.godot/imported/brows-2.png-227c9708d0b7fde57b1ef42021508fcf.ctex"
|
||||
path="res://.godot/imported/brows-2.png-01beea1c4e9cadf04c529dc849682c8a.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/Test Portrait/Farmer_F/brows-2.png"
|
||||
dest_files=["res://.godot/imported/brows-2.png-227c9708d0b7fde57b1ef42021508fcf.ctex"]
|
||||
source_file="res://external/test portrait/farmer_f/brows-2.png"
|
||||
dest_files=["res://.godot/imported/brows-2.png-01beea1c4e9cadf04c529dc849682c8a.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://c3wwe6r000gpq"
|
||||
path="res://.godot/imported/composite.png-b2c2e474fe243b72bd3471af031774d6.ctex"
|
||||
path="res://.godot/imported/composite.png-a68e5c4a777094ce447b89a2ab45b35b.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/Test Portrait/Farmer_F/composite.png"
|
||||
dest_files=["res://.godot/imported/composite.png-b2c2e474fe243b72bd3471af031774d6.ctex"]
|
||||
source_file="res://external/test portrait/farmer_f/composite.png"
|
||||
dest_files=["res://.godot/imported/composite.png-a68e5c4a777094ce447b89a2ab45b35b.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://caow8dqiog7j4"
|
||||
path="res://.godot/imported/ear.png-a1b457892f7236464123f2229af36695.ctex"
|
||||
path="res://.godot/imported/ear.png-74df11e092bb05fcc54c7e7478ed4d95.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/Test Portrait/Farmer_F/ear.png"
|
||||
dest_files=["res://.godot/imported/ear.png-a1b457892f7236464123f2229af36695.ctex"]
|
||||
source_file="res://external/test portrait/farmer_f/ear.png"
|
||||
dest_files=["res://.godot/imported/ear.png-74df11e092bb05fcc54c7e7478ed4d95.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://csp7xbtu0tpn7"
|
||||
path="res://.godot/imported/eye-white-1.png-fb75b817d294c00ebeee3e6996a2c02e.ctex"
|
||||
path="res://.godot/imported/eye-white-1.png-a31a2b044ab6206c129b0739fd4c0c80.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/Test Portrait/Farmer_F/eye-white-1.png"
|
||||
dest_files=["res://.godot/imported/eye-white-1.png-fb75b817d294c00ebeee3e6996a2c02e.ctex"]
|
||||
source_file="res://external/test portrait/farmer_f/eye-white-1.png"
|
||||
dest_files=["res://.godot/imported/eye-white-1.png-a31a2b044ab6206c129b0739fd4c0c80.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://mygmunn3voie"
|
||||
path="res://.godot/imported/eyes-iris-1.png-3c96067ab402ea99f8e1b1b7db594f4c.ctex"
|
||||
path="res://.godot/imported/eyes-iris-1.png-d2077e2e658acf3840075cfe98f86f4e.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/Test Portrait/Farmer_F/eyes-iris-1.png"
|
||||
dest_files=["res://.godot/imported/eyes-iris-1.png-3c96067ab402ea99f8e1b1b7db594f4c.ctex"]
|
||||
source_file="res://external/test portrait/farmer_f/eyes-iris-1.png"
|
||||
dest_files=["res://.godot/imported/eyes-iris-1.png-d2077e2e658acf3840075cfe98f86f4e.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://wnkr20dtf734"
|
||||
path="res://.godot/imported/eyes-lashes-1.png-8a4535f7647af11ff99b165ee021e8cc.ctex"
|
||||
path="res://.godot/imported/eyes-lashes-1.png-1460ddc60d7a087da2d517ce8f1a5faa.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/Test Portrait/Farmer_F/eyes-lashes-1.png"
|
||||
dest_files=["res://.godot/imported/eyes-lashes-1.png-8a4535f7647af11ff99b165ee021e8cc.ctex"]
|
||||
source_file="res://external/test portrait/farmer_f/eyes-lashes-1.png"
|
||||
dest_files=["res://.godot/imported/eyes-lashes-1.png-1460ddc60d7a087da2d517ce8f1a5faa.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dd063tm4qo5nc"
|
||||
path="res://.godot/imported/eyes.png-1384a95ac331738bfe48af30a8953f10.ctex"
|
||||
path="res://.godot/imported/eyes.png-da6eb5fdf7f113844fe8e5414a1f2331.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/Test Portrait/Farmer_F/eyes.png"
|
||||
dest_files=["res://.godot/imported/eyes.png-1384a95ac331738bfe48af30a8953f10.ctex"]
|
||||
source_file="res://external/test portrait/farmer_f/eyes.png"
|
||||
dest_files=["res://.godot/imported/eyes.png-da6eb5fdf7f113844fe8e5414a1f2331.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://li44lgsa0ky"
|
||||
path="res://.godot/imported/eyes_shadow.png-639516c9b7d6a71a22fcd4597236a89e.ctex"
|
||||
path="res://.godot/imported/eyes_shadow.png-c0450e5470a67b3e212b544dfeadc885.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/Test Portrait/Farmer_F/eyes_shadow.png"
|
||||
dest_files=["res://.godot/imported/eyes_shadow.png-639516c9b7d6a71a22fcd4597236a89e.ctex"]
|
||||
source_file="res://external/test portrait/farmer_f/eyes_shadow.png"
|
||||
dest_files=["res://.godot/imported/eyes_shadow.png-c0450e5470a67b3e212b544dfeadc885.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://can8npg0ufr3f"
|
||||
path="res://.godot/imported/hair_bg.png-07f942d8008a0d2581909922002bbbe2.ctex"
|
||||
path="res://.godot/imported/hair_bg.png-71bd584ff51ea6c704ba2eb2b8124703.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/Test Portrait/Farmer_F/hair_bg.png"
|
||||
dest_files=["res://.godot/imported/hair_bg.png-07f942d8008a0d2581909922002bbbe2.ctex"]
|
||||
source_file="res://external/test portrait/farmer_f/hair_bg.png"
|
||||
dest_files=["res://.godot/imported/hair_bg.png-71bd584ff51ea6c704ba2eb2b8124703.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://vt17lekvchdg"
|
||||
path="res://.godot/imported/hair_fg.png-9f5c6bb27fb0349d9ddfba99f87aa5c6.ctex"
|
||||
path="res://.godot/imported/hair_fg.png-9dfae38fbf9812dad9b45d15a1cbd791.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/Test Portrait/Farmer_F/hair_fg.png"
|
||||
dest_files=["res://.godot/imported/hair_fg.png-9f5c6bb27fb0349d9ddfba99f87aa5c6.ctex"]
|
||||
source_file="res://external/test portrait/farmer_f/hair_fg.png"
|
||||
dest_files=["res://.godot/imported/hair_fg.png-9dfae38fbf9812dad9b45d15a1cbd791.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cru775pghpate"
|
||||
path="res://.godot/imported/hair_fg_shadow.png-41de10e26ae2147aace92ba197b28075.ctex"
|
||||
path="res://.godot/imported/hair_fg_shadow.png-609d7f961008e48f548f0e05277dafb4.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/Test Portrait/Farmer_F/hair_fg_shadow.png"
|
||||
dest_files=["res://.godot/imported/hair_fg_shadow.png-41de10e26ae2147aace92ba197b28075.ctex"]
|
||||
source_file="res://external/test portrait/farmer_f/hair_fg_shadow.png"
|
||||
dest_files=["res://.godot/imported/hair_fg_shadow.png-609d7f961008e48f548f0e05277dafb4.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dj6fagfp2sbrx"
|
||||
path="res://.godot/imported/hat-bg.png-00e20fcd79ddb550d12459624be7d9b1.ctex"
|
||||
path="res://.godot/imported/hat-bg.png-972a86d8449c11d1a72a4f21b15efd0a.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/Test Portrait/Farmer_F/hat-bg.png"
|
||||
dest_files=["res://.godot/imported/hat-bg.png-00e20fcd79ddb550d12459624be7d9b1.ctex"]
|
||||
source_file="res://external/test portrait/farmer_f/hat-bg.png"
|
||||
dest_files=["res://.godot/imported/hat-bg.png-972a86d8449c11d1a72a4f21b15efd0a.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b303qa76o5r1m"
|
||||
path="res://.godot/imported/hat.png-9bb6fa9d1f7f7503ee26b1749cdf7c0a.ctex"
|
||||
path="res://.godot/imported/hat.png-21e48868d0218210b390afa680a1202d.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/Test Portrait/Farmer_F/hat.png"
|
||||
dest_files=["res://.godot/imported/hat.png-9bb6fa9d1f7f7503ee26b1749cdf7c0a.ctex"]
|
||||
source_file="res://external/test portrait/farmer_f/hat.png"
|
||||
dest_files=["res://.godot/imported/hat.png-21e48868d0218210b390afa680a1202d.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dyeu4kwwnxjn5"
|
||||
path="res://.godot/imported/hat_fg.png-e2cae14f649780ea2aba38b34358b587.ctex"
|
||||
path="res://.godot/imported/hat_fg.png-2dddd61ae84da22b32d123d3533338c5.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/Test Portrait/Farmer_F/hat_fg.png"
|
||||
dest_files=["res://.godot/imported/hat_fg.png-e2cae14f649780ea2aba38b34358b587.ctex"]
|
||||
source_file="res://external/test portrait/farmer_f/hat_fg.png"
|
||||
dest_files=["res://.godot/imported/hat_fg.png-2dddd61ae84da22b32d123d3533338c5.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,15 +3,15 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dbdjaye6srxhx"
|
||||
path="res://.godot/imported/head.png-df46fa0b8e2741bbf0fad9b3a03fedea.ctex"
|
||||
path="res://.godot/imported/head.png-47039f8abc285b87bb176b5b43ee9a5f.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/Test Portrait/Farmer_F/head.png"
|
||||
dest_files=["res://.godot/imported/head.png-df46fa0b8e2741bbf0fad9b3a03fedea.ctex"]
|
||||
source_file="res://external/test portrait/farmer_f/head.png"
|
||||
dest_files=["res://.godot/imported/head.png-47039f8abc285b87bb176b5b43ee9a5f.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
8
external/Test Portrait/gradients/hair/(c)blue.tres
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
[gd_resource type="GradientTexture1D" load_steps=2 format=3 uid="uid://cxecub83q07gq"]
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_u7u0c"]
|
||||
offsets = PackedFloat32Array(0, 0.49604222, 0.89973617, 1)
|
||||
colors = PackedColorArray(0, 0, 0, 1, 0, 0, 0.68, 1, 0.86, 0.86, 1, 1, 0, 0, 1, 1)
|
||||
|
||||
[resource]
|
||||
gradient = SubResource("Gradient_u7u0c")
|
||||
@@ -1,8 +1,8 @@
|
||||
[gd_resource type="GradientTexture1D" load_steps=2 format=3 uid="uid://cd4jsivokd6sk"]
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_u7u0c"]
|
||||
offsets = PackedFloat32Array(0, 0.49604222, 0.89973617, 1)
|
||||
colors = PackedColorArray(0, 0, 0, 1, 0, 0, 0.68, 1, 0.86, 0.86, 1, 1, 0, 0, 1, 1)
|
||||
offsets = PackedFloat32Array(0, 0.5252918, 0.8774319, 1)
|
||||
colors = PackedColorArray(0, 0, 0, 1, 0.68, 0.13600004, 0, 1, 1, 0.6533333, 0.19999999, 1, 1, 0.6, 0, 1)
|
||||
|
||||
[resource]
|
||||
gradient = SubResource("Gradient_u7u0c")
|
||||
|
||||
8
external/Test Portrait/gradients/hair/(l)mid.tres
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
[gd_resource type="GradientTexture1D" load_steps=2 format=3 uid="uid://bpiu6d7lbhyw"]
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_s3ye8"]
|
||||
offsets = PackedFloat32Array(0, 0.8385214, 0.99416345)
|
||||
colors = PackedColorArray(0, 0, 0, 1, 0.4313402, 0.43134028, 0.43134007, 1, 0.7, 0.7, 0.7, 1)
|
||||
|
||||
[resource]
|
||||
gradient = SubResource("Gradient_s3ye8")
|
||||
8
external/Test Portrait/gradients/skin/(c)blue.tres
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
[gd_resource type="GradientTexture1D" load_steps=2 format=3 uid="uid://khdd0qlqn4jy"]
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_qpr8j"]
|
||||
offsets = PackedFloat32Array(0, 0.33333334, 0.7829978)
|
||||
colors = PackedColorArray(0.36862746, 0, 1, 1, 0.66, 0.30359998, 0.30359998, 1, 0.6997569, 0.41199392, 0.19485885, 1)
|
||||
|
||||
[resource]
|
||||
gradient = SubResource("Gradient_qpr8j")
|
||||
8
external/Test Portrait/gradients/skin/(c)dark.tres
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
[gd_resource type="GradientTexture1D" load_steps=2 format=3 uid="uid://spgxsr4e3q7v"]
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_qpr8j"]
|
||||
offsets = PackedFloat32Array(0, 0.33333334, 0.7829978)
|
||||
colors = PackedColorArray(0.36862746, 0, 1, 1, 0.66, 0.30359998, 0.30359998, 1, 0.6997569, 0.41199392, 0.19485885, 1)
|
||||
|
||||
[resource]
|
||||
gradient = SubResource("Gradient_qpr8j")
|
||||
8
external/Test Portrait/gradients/skin/(c)medium.tres
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
[gd_resource type="GradientTexture1D" load_steps=2 format=3 uid="uid://cxe2e2cp44nke"]
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_qpr8j"]
|
||||
offsets = PackedFloat32Array(0, 0.33333334, 0.7829978)
|
||||
colors = PackedColorArray(0.36862746, 0, 1, 1, 0.66, 0.30359998, 0.30359998, 1, 0.6997569, 0.41199392, 0.19485885, 1)
|
||||
|
||||
[resource]
|
||||
gradient = SubResource("Gradient_qpr8j")
|
||||
8
external/Test Portrait/gradients/skin/(c)olive.tres
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
[gd_resource type="GradientTexture1D" load_steps=2 format=3 uid="uid://ulft7ngl80hw"]
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_qpr8j"]
|
||||
offsets = PackedFloat32Array(0, 0.33333334, 0.7829978)
|
||||
colors = PackedColorArray(0.36862746, 0, 1, 1, 0.66, 0.30359998, 0.30359998, 1, 0.6997569, 0.41199392, 0.19485885, 1)
|
||||
|
||||
[resource]
|
||||
gradient = SubResource("Gradient_qpr8j")
|
||||
8
external/Test Portrait/gradients/skin/(c)pale.tres
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
[gd_resource type="GradientTexture1D" load_steps=2 format=3 uid="uid://dan3oxihr3rfl"]
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_qpr8j"]
|
||||
offsets = PackedFloat32Array(0, 0.33333334, 0.7829978)
|
||||
colors = PackedColorArray(0.36862746, 0, 1, 1, 0.66, 0.30359998, 0.30359998, 1, 0.6997569, 0.41199392, 0.19485885, 1)
|
||||
|
||||
[resource]
|
||||
gradient = SubResource("Gradient_qpr8j")
|
||||
8
external/Test Portrait/gradients/skin/(c)red.tres
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
[gd_resource type="GradientTexture1D" load_steps=2 format=3 uid="uid://cj6b262y57ouo"]
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_qpr8j"]
|
||||
offsets = PackedFloat32Array(0, 0.33333334, 0.7829978)
|
||||
colors = PackedColorArray(0.36862746, 0, 1, 1, 0.66, 0.30359998, 0.30359998, 1, 0.6997569, 0.41199392, 0.19485885, 1)
|
||||
|
||||
[resource]
|
||||
gradient = SubResource("Gradient_qpr8j")
|
||||
8
external/Test Portrait/gradients/skin/(c)white.tres
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
[gd_resource type="GradientTexture1D" load_steps=2 format=3 uid="uid://c2q21glbldxao"]
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_qpr8j"]
|
||||
offsets = PackedFloat32Array(0, 0.33333334, 0.7829978)
|
||||
colors = PackedColorArray(0.36862746, 0, 1, 1, 0.66, 0.30359998, 0.30359998, 1, 0.6997569, 0.41199392, 0.19485885, 1)
|
||||
|
||||
[resource]
|
||||
gradient = SubResource("Gradient_qpr8j")
|
||||
BIN
external/Test Portrait/player/eye-a.png
vendored
Normal file
|
After Width: | Height: | Size: 12 KiB |
40
external/Test Portrait/player/eye-a.png.import
vendored
Normal file
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cygn0xfsayykd"
|
||||
path="res://.godot/imported/eye-a.png-4ae928c135fabbb6dbe591d1f658a054.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/test portrait/player/eye-a.png"
|
||||
dest_files=["res://.godot/imported/eye-a.png-4ae928c135fabbb6dbe591d1f658a054.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
BIN
external/Test Portrait/player/eye-b.png
vendored
Normal file
|
After Width: | Height: | Size: 12 KiB |
40
external/Test Portrait/player/eye-b.png.import
vendored
Normal file
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bg6lac6nl5k84"
|
||||
path="res://.godot/imported/eye-b.png-8a340a04655f91a439de6b55293f607d.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/test portrait/player/eye-b.png"
|
||||
dest_files=["res://.godot/imported/eye-b.png-8a340a04655f91a439de6b55293f607d.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
BIN
external/Test Portrait/player/eye-c.png
vendored
Normal file
|
After Width: | Height: | Size: 12 KiB |
40
external/Test Portrait/player/eye-c.png.import
vendored
Normal file
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bxdclvopvj75q"
|
||||
path="res://.godot/imported/eye-c.png-b34d6d5c940d727416bc135e5e88a9ca.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/test portrait/player/eye-c.png"
|
||||
dest_files=["res://.godot/imported/eye-c.png-b34d6d5c940d727416bc135e5e88a9ca.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
7
external/Test Portrait/tri-hair.tres
vendored
@@ -1,10 +1,7 @@
|
||||
[gd_resource type="ShaderMaterial" load_steps=4 format=3 uid="uid://ca43sapn4p61w"]
|
||||
[gd_resource type="ShaderMaterial" load_steps=2 format=3 uid="uid://ca43sapn4p61w"]
|
||||
|
||||
[ext_resource type="Shader" uid="uid://dbcokq5fn2les" path="res://shaders/trigradient.tres" id="1_sifog"]
|
||||
[ext_resource type="Texture2D" uid="uid://0dwdi7m62trg" path="res://external/test portrait/gradients/hair/(c)red.tres" id="2_2qy1r"]
|
||||
[ext_resource type="Texture2D" uid="uid://s2ok31sncevx" path="res://external/test portrait/gradients/dark-hair.tres" id="3_5udns"]
|
||||
|
||||
[resource]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("1_sifog")
|
||||
shader_parameter/Color_Gradient = ExtResource("2_2qy1r")
|
||||
shader_parameter/Luminosity_Gradient = ExtResource("3_5udns")
|
||||
|
||||
4
external/Test Portrait/tri-skin.tres
vendored
@@ -3,4 +3,8 @@
|
||||
[ext_resource type="Shader" uid="uid://cru1otvka0qn5" path="res://external/test portrait/variant_color.gdshader" id="1_n3xwv"]
|
||||
|
||||
[resource]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("1_n3xwv")
|
||||
shader_parameter/flash = false
|
||||
shader_parameter/flash_strength = 0.0
|
||||
shader_parameter/highlight = Color(0, 0, 0, 0)
|
||||
|
||||
11
external/Test Portrait/variant_color.gdshader
vendored
@@ -3,7 +3,9 @@ render_mode blend_mix;
|
||||
|
||||
uniform sampler2D color_gradient;
|
||||
uniform sampler2D luminosity_gradient;
|
||||
|
||||
uniform bool flash;
|
||||
uniform float flash_strength = 0.4;
|
||||
uniform vec4 highlight : source_color = vec4(1,1,1,0);
|
||||
|
||||
|
||||
void vertex() {
|
||||
@@ -30,8 +32,11 @@ void fragment() {
|
||||
K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);
|
||||
vec3 p2 = abs(fract(c.xxx + K.xyz) * 6.0 - K.www);
|
||||
vec3 fin_rgb = c.z * mix(K.xxx, clamp(p2 - K.xxx, 0.0, 1.0), c.y);
|
||||
|
||||
COLOR.rgb = fin_rgb;
|
||||
vec4 h = highlight;
|
||||
if(flash){
|
||||
h.a = flash_strength * (sin(TIME * 10.0) + 1.0)/2.0;
|
||||
}
|
||||
COLOR.rgb = mix(fin_rgb, h.rgb, h.a);
|
||||
COLOR.a = col.a;
|
||||
|
||||
|
||||
|
||||
BIN
external/dialogue-box.png
vendored
Normal file
|
After Width: | Height: | Size: 13 KiB |
40
external/dialogue-box.png.import
vendored
Normal file
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://wjhyhe1jeli4"
|
||||
path="res://.godot/imported/dialogue-box.png-0ceee6d4dcb665e8f8b014ee6968168b.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/dialogue-box.png"
|
||||
dest_files=["res://.godot/imported/dialogue-box.png-0ceee6d4dcb665e8f8b014ee6968168b.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
BIN
external/dialogue.clip
vendored
Normal file
BIN
external/lock-icon1.png
vendored
Normal file
|
After Width: | Height: | Size: 375 B |
40
external/lock-icon1.png.import
vendored
Normal file
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://6qi7xvvrlng3"
|
||||
path="res://.godot/imported/lock-icon1.png-a5ad14bd088bcb5d0798e4260e205cca.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/lock-icon1.png"
|
||||
dest_files=["res://.godot/imported/lock-icon1.png-a5ad14bd088bcb5d0798e4260e205cca.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
BIN
external/lock-icon2.png
vendored
Normal file
|
After Width: | Height: | Size: 371 B |
40
external/lock-icon2.png.import
vendored
Normal file
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cl4ff2juk3qmm"
|
||||
path="res://.godot/imported/lock-icon2.png-6bdf747dfc894aa3d8731285a75b1353.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/lock-icon2.png"
|
||||
dest_files=["res://.godot/imported/lock-icon2.png-6bdf747dfc894aa3d8731285a75b1353.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
BIN
external/name-banner.png
vendored
Normal file
|
After Width: | Height: | Size: 16 KiB |
40
external/name-banner.png.import
vendored
Normal file
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://en58nd1oju64"
|
||||
path="res://.godot/imported/name-banner.png-469d81ea212fc04dcb4a650664d0eb10.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://external/name-banner.png"
|
||||
dest_files=["res://.godot/imported/name-banner.png-469d81ea212fc04dcb4a650664d0eb10.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
BIN
external/pom-intro.clip
vendored
Normal file
BIN
external/portrait.clip
vendored
@@ -21,34 +21,62 @@
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_6ofx4"]
|
||||
shader = ExtResource("3_8fwpu")
|
||||
shader_parameter/flash = false
|
||||
shader_parameter/flash_strength = 0.0
|
||||
shader_parameter/highlight = Color(0, 0, 0, 0)
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_4lhir"]
|
||||
shader = ExtResource("3_8fwpu")
|
||||
shader_parameter/flash = false
|
||||
shader_parameter/flash_strength = 0.4
|
||||
shader_parameter/highlight = Color(1, 1, 1, 0)
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_ufq70"]
|
||||
shader = ExtResource("3_8fwpu")
|
||||
shader_parameter/flash = false
|
||||
shader_parameter/flash_strength = 0.0
|
||||
shader_parameter/highlight = Color(0, 0, 0, 0)
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_n24t2"]
|
||||
shader = ExtResource("3_8fwpu")
|
||||
shader_parameter/flash = false
|
||||
shader_parameter/flash_strength = 0.0
|
||||
shader_parameter/highlight = Color(0, 0, 0, 0)
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_d4dbv"]
|
||||
shader = ExtResource("3_8fwpu")
|
||||
shader_parameter/flash = false
|
||||
shader_parameter/flash_strength = 0.0
|
||||
shader_parameter/highlight = Color(0, 0, 0, 0)
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_8lmmt"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("3_8fwpu")
|
||||
shader_parameter/flash = false
|
||||
shader_parameter/flash_strength = 0.0
|
||||
shader_parameter/highlight = Color(0, 0, 0, 0)
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_mrkia"]
|
||||
shader = ExtResource("3_8fwpu")
|
||||
shader_parameter/flash = false
|
||||
shader_parameter/flash_strength = 0.0
|
||||
shader_parameter/highlight = Color(0, 0, 0, 0)
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_fa2yd"]
|
||||
shader = ExtResource("3_8fwpu")
|
||||
shader_parameter/flash = false
|
||||
shader_parameter/flash_strength = 0.0
|
||||
shader_parameter/highlight = Color(0, 0, 0, 0)
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_5uixj"]
|
||||
shader = ExtResource("3_8fwpu")
|
||||
shader_parameter/flash = false
|
||||
shader_parameter/flash_strength = 0.0
|
||||
shader_parameter/highlight = Color(0, 0, 0, 0)
|
||||
|
||||
[node name="Portrait" type="Control"]
|
||||
layout_mode = 3
|
||||
anchors_preset = 0
|
||||
offset_right = 40.0
|
||||
offset_bottom = 40.0
|
||||
scale = Vector2(0.5, 0.5)
|
||||
|
||||
@@ -21,6 +21,10 @@ Guild="*res://scripts/guild.gd"
|
||||
Game="*res://scripts/game_manager.gd"
|
||||
Dialogic="*res://addons/dialogic/Core/DialogicGameHandler.gd"
|
||||
|
||||
[data]
|
||||
|
||||
quests/directory="res://data/quests"
|
||||
|
||||
[dialogic]
|
||||
|
||||
directories/dch_directory={
|
||||
@@ -52,8 +56,8 @@ choices/reveal_by_input=false
|
||||
save/autosave_delay=60.0
|
||||
save/encryption_on_exports_only=true
|
||||
text/autopauses={}
|
||||
layout/style_list=[]
|
||||
layout/default_style="Default"
|
||||
layout/style_list=["res://dialogic/test-style.tres"]
|
||||
layout/default_style="res://dialogic/test-style.tres"
|
||||
variables={}
|
||||
|
||||
[display]
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=13 format=3 uid="uid://dfa6ep4o53s08"]
|
||||
[gd_scene load_steps=12 format=3 uid="uid://dfa6ep4o53s08"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cci652umkym1f" path="res://scripts/test_scene.gd" id="1_752n1"]
|
||||
[ext_resource type="Texture2D" uid="uid://c5yxq22ao1oyf" path="res://graphics/doorlight.png" id="2_oi1nh"]
|
||||
@@ -7,7 +7,6 @@
|
||||
[ext_resource type="PackedScene" uid="uid://c8ofw6na082gv" path="res://templates/main_panel.tscn" id="4_4k18p"]
|
||||
[ext_resource type="PackedScene" uid="uid://c7jagw4y7w42l" path="res://templates/top_menu.tscn" id="5_p1w2f"]
|
||||
[ext_resource type="AudioStream" uid="uid://cmray2frojcd" path="res://sounds/Door Hinge Creaking Door.wav" id="7_oi1nh"]
|
||||
[ext_resource type="Texture2D" uid="uid://c25xtpn3k8s8d" path="res://external/mage.png" id="8_4k18p"]
|
||||
|
||||
[sub_resource type="CanvasItemMaterial" id="CanvasItemMaterial_752n1"]
|
||||
blend_mode = 3
|
||||
@@ -124,10 +123,4 @@ layout_mode = 2
|
||||
stream = ExtResource("7_oi1nh")
|
||||
volume_db = -24.535
|
||||
|
||||
[node name="Mage" type="Sprite2D" parent="."]
|
||||
z_index = 4096
|
||||
position = Vector2(952, 354)
|
||||
scale = Vector2(0.1890599, 0.1890599)
|
||||
texture = ExtResource("8_4k18p")
|
||||
|
||||
[connection signal="timeout" from="Guildhall/VisitorSpawner/Timer" to="Guildhall/VisitorSpawner" method="_on_timer_timeout"]
|
||||
|
||||
@@ -90,7 +90,7 @@ gradient = SubResource("Gradient_3vymb")
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("3_3vymb")
|
||||
shader_parameter/gradient = SubResource("GradientTexture1D_ht11g")
|
||||
shader_parameter/fringe = 0.008000000001629815
|
||||
shader_parameter/fringe = 0.00800000000162981
|
||||
|
||||
[node name="Guild Card Scene" type="Control"]
|
||||
layout_mode = 3
|
||||
|
||||
@@ -17,7 +17,7 @@ shader = ExtResource("3_2lpho")
|
||||
shader_parameter/add_color = Color(1, 1, 1, 0)
|
||||
shader_parameter/fringe_color = SubResource("GradientTexture1D_blm8a")
|
||||
shader_parameter/fringe_threshold = 0.10000000000582077
|
||||
shader_parameter/threshold = 0.3606666537395989
|
||||
shader_parameter/threshold = 0.361
|
||||
|
||||
[node name="Control" type="Control"]
|
||||
layout_mode = 3
|
||||
@@ -38,11 +38,16 @@ texture = ExtResource("1_2klcf")
|
||||
|
||||
[node name="Map Pin2" parent="." instance=ExtResource("2_paxxb")]
|
||||
layout_mode = 0
|
||||
anchors_preset = 0
|
||||
offset_left = 389.0
|
||||
offset_top = 554.0
|
||||
offset_right = 459.0
|
||||
offset_bottom = 624.0
|
||||
label = ""
|
||||
locked_brief = null
|
||||
unlocked_brief = null
|
||||
|
||||
[node name="Brief" parent="Map Pin2/Panel" index="0"]
|
||||
text = ""
|
||||
|
||||
[node name="CanvasGroup" parent="Map Pin2" index="1"]
|
||||
material = SubResource("ShaderMaterial_gldc4")
|
||||
@@ -51,18 +56,35 @@ material = SubResource("ShaderMaterial_gldc4")
|
||||
mouse_filter = 2
|
||||
|
||||
[node name="Banner" parent="Map Pin2/CanvasGroup" index="1"]
|
||||
offset_left = 0.0
|
||||
offset_top = 0.0
|
||||
offset_right = 188.0
|
||||
offset_bottom = 188.0
|
||||
mouse_filter = 2
|
||||
|
||||
[node name="Label" parent="Map Pin2/CanvasGroup/Banner" index="0"]
|
||||
text = "Avara Plains"
|
||||
text = ""
|
||||
|
||||
[node name="Map Pin3" parent="." instance=ExtResource("2_paxxb")]
|
||||
layout_mode = 0
|
||||
anchors_preset = 0
|
||||
offset_left = 144.0
|
||||
offset_top = 382.0
|
||||
offset_right = 214.0
|
||||
offset_bottom = 452.0
|
||||
primed = true
|
||||
label = "Nestor's Woods"
|
||||
locked_brief = null
|
||||
unlocked_brief = null
|
||||
|
||||
[node name="Map Pin4" parent="." instance=ExtResource("2_paxxb")]
|
||||
layout_mode = 0
|
||||
offset_left = 229.0
|
||||
offset_top = 89.0
|
||||
offset_right = 299.0
|
||||
offset_bottom = 159.0
|
||||
primed = true
|
||||
label = "Iko Gorge"
|
||||
locked_brief = "Mysterious cliffs in the frozen north."
|
||||
unlocked_brief = "One of the few northernmost lands uninhabited by [giants]. The snowy creatures of the Iko region run rampant here. Some say they are protected by the [giant] goddess, [Nakari]."
|
||||
|
||||
[editable path="Map Pin2"]
|
||||
|
||||
79
scenes/options.tscn
Normal file
@@ -0,0 +1,79 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://dpe7by8lvno0h"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://b2jhi1k8mktqm" path="res://scripts/options.gd" id="1_c2u1v"]
|
||||
|
||||
[node name="Options" type="Control"]
|
||||
z_index = 1000
|
||||
layout_mode = 3
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
script = ExtResource("1_c2u1v")
|
||||
|
||||
[node name="ColorRect" type="ColorRect" parent="."]
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
color = Color(0, 0, 0, 0.5921569)
|
||||
|
||||
[node name="PanelContainer" type="PanelContainer" parent="."]
|
||||
custom_minimum_size = Vector2(500, 500)
|
||||
layout_mode = 1
|
||||
anchors_preset = 8
|
||||
anchor_left = 0.5
|
||||
anchor_top = 0.5
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 0.5
|
||||
offset_left = -250.0
|
||||
offset_top = -250.0
|
||||
offset_right = 250.0
|
||||
offset_bottom = 250.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="PanelContainer"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="Label" type="Label" parent="PanelContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 92
|
||||
text = "Options"
|
||||
horizontal_alignment = 1
|
||||
|
||||
[node name="Control" type="Control" parent="PanelContainer/VBoxContainer"]
|
||||
custom_minimum_size = Vector2(0, 100)
|
||||
layout_mode = 2
|
||||
|
||||
[node name="QuitButton" type="Button" parent="PanelContainer/VBoxContainer"]
|
||||
custom_minimum_size = Vector2(0, 50)
|
||||
layout_mode = 2
|
||||
text = "Quit to Main Menu"
|
||||
|
||||
[node name="SuperquitButton" type="Button" parent="PanelContainer/VBoxContainer"]
|
||||
custom_minimum_size = Vector2(0, 50)
|
||||
layout_mode = 2
|
||||
text = "Quit Game"
|
||||
|
||||
[node name="BackButton" type="Button" parent="PanelContainer/VBoxContainer"]
|
||||
custom_minimum_size = Vector2(0, 50)
|
||||
layout_mode = 2
|
||||
text = "BACK"
|
||||
|
||||
[node name="ConfirmationDialog" type="ConfirmationDialog" parent="."]
|
||||
oversampling_override = 1.0
|
||||
title = "Confirm Quit"
|
||||
initial_position = 2
|
||||
size = Vector2i(256, 106)
|
||||
ok_button_text = "QUIT"
|
||||
dialog_text = "Are you sure you want to quit?
|
||||
(Progress will be saved first)"
|
||||
|
||||
[connection signal="pressed" from="PanelContainer/VBoxContainer/QuitButton" to="." method="_on_quit_button_pressed"]
|
||||
[connection signal="pressed" from="PanelContainer/VBoxContainer/SuperquitButton" to="." method="_on_superquit_button_pressed"]
|
||||
[connection signal="pressed" from="PanelContainer/VBoxContainer/BackButton" to="." method="_on_back_button_pressed"]
|
||||
[connection signal="confirmed" from="ConfirmationDialog" to="." method="_on_confirmation_dialog_confirmed"]
|
||||
@@ -1,6 +1,6 @@
|
||||
class_name AdventurerPortrait extends Control
|
||||
|
||||
|
||||
var option_sets : Dictionary
|
||||
var cv_lists : Array
|
||||
|
||||
func _ready() -> void:
|
||||
@@ -8,9 +8,18 @@ func _ready() -> void:
|
||||
cv_lists.resize(ColorVariant.Types.size())
|
||||
for i in range(len(cv_lists)):
|
||||
cv_lists[i] = []
|
||||
for child in get_children():
|
||||
add_color_variants(get_children())
|
||||
for child : Control in get_children():
|
||||
if child.get_child_count() > 0:
|
||||
option_sets[child.name.to_lower()] = child
|
||||
|
||||
func add_color_variants(list : Array) -> void:
|
||||
for child : Control in list:
|
||||
if child is ColorVariant:
|
||||
cv_lists[child.type].append(child)
|
||||
if child.get_child_count() > 0:
|
||||
add_color_variants(child.get_children())
|
||||
|
||||
|
||||
func set_appearance(appearance) -> void:
|
||||
set_color(ColorVariant.Types.HAIR, appearance.hair_color)
|
||||
@@ -39,3 +48,13 @@ static func random_color(type : ColorVariant.Types) -> String:
|
||||
func set_color(type : ColorVariant.Types, color : String) -> void:
|
||||
for cv : ColorVariant in cv_lists[type]:
|
||||
cv.set_color(color)
|
||||
|
||||
func flash_color_variants(node : Control, flashing : bool) -> void:
|
||||
if node is ColorVariant:
|
||||
node.flash(flashing)
|
||||
|
||||
for child in node.get_children():
|
||||
flash_color_variants(child, flashing)
|
||||
|
||||
func flash_option(key : String, flashing : bool) -> void:
|
||||
flash_color_variants(option_sets[key], flashing)
|
||||
|
||||
@@ -52,7 +52,7 @@ static var hair_colors = {
|
||||
"brown":{
|
||||
"weight": 100,
|
||||
"color": preload("res://external/test portrait/gradients/hair/(c)brown.tres"),
|
||||
"luminosity": preload("res://external/test portrait/gradients/hair/(l)dark.tres"),
|
||||
"luminosity": preload("res://external/test portrait/gradients/hair/(l)mid.tres"),
|
||||
},
|
||||
"black":{
|
||||
"weight": 100,
|
||||
@@ -74,17 +74,17 @@ static var hair_colors = {
|
||||
static var skin_colors = {
|
||||
"pale":{
|
||||
"weight": 100,
|
||||
"color": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
|
||||
"color": preload("res://external/test portrait/gradients/skin/(c)pale.tres"),
|
||||
"luminosity": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
|
||||
},
|
||||
"medium":{
|
||||
"weight": 100,
|
||||
"color": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
|
||||
"color": preload("res://external/test portrait/gradients/skin/(c)medium.tres"),
|
||||
"luminosity": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
|
||||
},
|
||||
"olive":{
|
||||
"weight": 100,
|
||||
"color": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
|
||||
"color": preload("res://external/test portrait/gradients/skin/(c)blue.tres"),
|
||||
"luminosity": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
|
||||
},
|
||||
"brown":{
|
||||
@@ -94,17 +94,22 @@ static var skin_colors = {
|
||||
},
|
||||
"dark":{
|
||||
"weight": 100,
|
||||
"color": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
|
||||
"color": preload("res://external/test portrait/gradients/skin/(c)dark.tres"),
|
||||
"luminosity": preload("res://external/test portrait/gradients/eyes/(l)default.tres"),
|
||||
},
|
||||
"white":{
|
||||
"weight": 0,
|
||||
"color": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
|
||||
"color": preload("res://external/test portrait/gradients/skin/(c)white.tres"),
|
||||
"luminosity": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
|
||||
},
|
||||
"red":{
|
||||
"weight": 0,
|
||||
"color": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
|
||||
"color": preload("res://external/test portrait/gradients/skin/(c)red.tres"),
|
||||
"luminosity": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
|
||||
},
|
||||
"blue":{
|
||||
"weight": 0,
|
||||
"color": preload("res://external/test portrait/gradients/skin/(c)blue.tres"),
|
||||
"luminosity": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
|
||||
},
|
||||
}
|
||||
@@ -133,3 +138,6 @@ func set_color(color : String) -> void:
|
||||
var mat = material
|
||||
mat.set_shader_parameter("color_gradient",col_gradients.color)
|
||||
mat.set_shader_parameter("luminosity_gradient",col_gradients.luminosity)
|
||||
|
||||
func flash(flashing : bool) -> void:
|
||||
material.set_shader_parameter("flash",flashing)
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
extends Node
|
||||
|
||||
var player_data : Adventurer = null
|
||||
var player : Player = null
|
||||
var panel : GamePanel = null
|
||||
var player_profile : Window = null
|
||||
@@ -11,6 +12,8 @@ var end_shift_confirm_template = preload("res://templates/end_shift_confirmation
|
||||
var player_profile_template = preload("res://templates/player_profile_window.tscn")
|
||||
var last_screenshot : Image
|
||||
func _ready() -> void:
|
||||
player_data = Adventurer.new()
|
||||
Quest.load_quest_list()
|
||||
DisplayServer.register_additional_output(self)
|
||||
end_shift_confirmation = end_shift_confirm_template.instantiate()
|
||||
add_child(end_shift_confirmation)
|
||||
@@ -88,8 +91,9 @@ func test_save() -> void:
|
||||
save_dict["guildname"] = Guild.name
|
||||
save_dict["guildlevel"] = Guild.level
|
||||
#Save the player data
|
||||
save_dict["playername"] = player.data.full_name()
|
||||
save_dict["playerlevel"] = player.data.level
|
||||
if player:
|
||||
save_dict["playername"] = player.data.full_name()
|
||||
save_dict["playerlevel"] = player.data.level
|
||||
#Save the employee data
|
||||
#Save the adventurer data
|
||||
#Save the quest data
|
||||
@@ -133,3 +137,9 @@ func switch_scenes(scene_name : String) -> void:
|
||||
|
||||
func switch_dialogue(timeline_name : String, label : String) -> void:
|
||||
Dialogic.start("res://dialogic/timelines/" + timeline_name + ".dtl", label)
|
||||
|
||||
func save_quests(save_dict : Dictionary) -> void:
|
||||
var lst = []
|
||||
for quest in Guild.quests:
|
||||
lst.append(quest.save_dict())
|
||||
save_dict.quests = lst
|
||||
|
||||
@@ -40,9 +40,12 @@ func update_signature_threshold(value : float) -> void:
|
||||
func _on_sign_button_pressed() -> void:
|
||||
signButton.visible = false
|
||||
var tween = create_tween()
|
||||
Game.player_data.name = %FirstNameEdit.text
|
||||
Game.player_data.surname = %LastNameEdit.text
|
||||
write_sound.play()
|
||||
tween.tween_method(update_signature_threshold, -0.1, 1.1, .5)
|
||||
|
||||
tween.tween_interval(1)
|
||||
tween.tween_callback(Game.switch_dialogue.bind("game_start", "Start Schedule"))
|
||||
#Sign the card.
|
||||
#Dialogic.paused = false
|
||||
#Dialogic.Jump.jump_to_label("")
|
||||
|
||||
@@ -3,6 +3,7 @@ class_name GamePanel extends MarginContainer
|
||||
const notice_template = preload("res://templates/notice_panel.tscn")
|
||||
const quest_progress_bar_template = preload("res://templates/quest_progress_bar.tscn")
|
||||
const quest_view_template = preload("res://templates/quest_view.tscn")
|
||||
const options_template = preload("res://scenes/options.tscn")
|
||||
|
||||
signal time_changed(time : float)
|
||||
|
||||
@@ -100,3 +101,9 @@ func _on_drag_region_gui_input(event: InputEvent) -> void:
|
||||
|
||||
func _on_quest_viewer_button_pressed() -> void:
|
||||
%QuestView.visible = !%QuestView.visible
|
||||
|
||||
|
||||
func _on_options_button_pressed() -> void:
|
||||
var opt = options_template.instantiate()
|
||||
get_tree().root.add_child(opt)
|
||||
pass # Replace with function body.
|
||||
|
||||
@@ -2,24 +2,31 @@
|
||||
extends TextureButton
|
||||
|
||||
|
||||
@onready var panel : PanelContainer = $Panel
|
||||
@onready var panel : PanelContainer = %BriefPanel
|
||||
@onready var anim_player : AnimationPlayer = $AnimationPlayer
|
||||
var panel_shown : bool = false
|
||||
@export var primed : bool = false
|
||||
var locked : bool = true
|
||||
var mat : ShaderMaterial
|
||||
var _circle_size : float = 0
|
||||
@export var circle_size: float:
|
||||
var circle_size: float:
|
||||
get(): return _circle_size
|
||||
set(value):
|
||||
_circle_size = value
|
||||
queue_redraw()
|
||||
@export var add_color : Color
|
||||
@export var threshold : float
|
||||
@export var thickness : float = 5
|
||||
@export var max_circle_size : float = 200
|
||||
var add_color : Color = Color(1,1,1,0)
|
||||
var threshold : float = .361
|
||||
var thickness : float = 5
|
||||
var max_circle_size : float = 200
|
||||
|
||||
@export var label : String = ""
|
||||
@export var locked_brief : String = ""
|
||||
@export var unlocked_brief : String = ""
|
||||
|
||||
func _ready() -> void:
|
||||
#TODO: Add a nine-patch and resize the banner based on the label contents
|
||||
%Label.text = label
|
||||
%Brief.text = locked_brief
|
||||
mat = %CanvasGroup.material
|
||||
if primed:
|
||||
anim_player.play("primed")
|
||||
@@ -28,10 +35,21 @@ func _process(delta: float) -> void:
|
||||
mat.set_shader_parameter("add_color", add_color)
|
||||
mat.set_shader_parameter("threshold", threshold)
|
||||
|
||||
func reposition_brief() -> void:
|
||||
print(%BriefPanel.size.y)
|
||||
print(%Brief.size.y)
|
||||
%BriefPanel.pivot_offset = Vector2(0, %Brief.size.y)
|
||||
%BriefPanel.position.y += %BriefPanel.size.y - %Brief.size.y
|
||||
%Brief.get_line_height()
|
||||
|
||||
func unlock() -> void:
|
||||
locked = false
|
||||
primed = false
|
||||
anim_player.play("unlock")
|
||||
print(%Brief.size.y)
|
||||
%Brief.text = unlocked_brief
|
||||
print(%Brief.size.y)
|
||||
reposition_brief.call_deferred()
|
||||
$AudioStreamPlayer2D.play()
|
||||
|
||||
func _on_mouse_entered() -> void:
|
||||
|
||||
29
scripts/options.gd
Normal file
@@ -0,0 +1,29 @@
|
||||
extends Control
|
||||
|
||||
var superquitting: bool = false
|
||||
|
||||
func show_quit_confirm() -> void:
|
||||
$ConfirmationDialog.popup_centered()
|
||||
|
||||
func _on_back_button_pressed() -> void:
|
||||
queue_free()
|
||||
|
||||
func _on_quit_button_pressed() -> void:
|
||||
superquitting = false
|
||||
show_quit_confirm()
|
||||
pass # Replace with function body.
|
||||
|
||||
|
||||
func _on_superquit_button_pressed() -> void:
|
||||
superquitting = true
|
||||
show_quit_confirm()
|
||||
pass # Replace with function body.
|
||||
|
||||
|
||||
func _on_confirmation_dialog_confirmed() -> void:
|
||||
Game.test_save()
|
||||
queue_free()
|
||||
if superquitting:
|
||||
get_tree().quit()
|
||||
else:
|
||||
Game.switch_scenes("start_menu")
|
||||
1
scripts/options.gd.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://b2jhi1k8mktqm
|
||||
50
scripts/portrait_customizer.gd
Normal file
@@ -0,0 +1,50 @@
|
||||
extends Control
|
||||
|
||||
@onready var portrait : AdventurerPortrait = $HeroPortrait
|
||||
var option = 0
|
||||
var opt_key : String = ""
|
||||
var choices : Array = []
|
||||
|
||||
func _ready() -> void:
|
||||
choices.resize(portrait.option_sets.size())
|
||||
choices.fill(0)
|
||||
opt_key = portrait.option_sets.keys()[option]
|
||||
portrait.flash_option(portrait.option_sets.keys()[option], true)
|
||||
|
||||
func _on_left_button_pressed() -> void:
|
||||
portrait.option_sets[opt_key].get_child(choices[option]).visible = false
|
||||
choices[option] -= 1
|
||||
if choices[option] < 0:
|
||||
choices[option] = portrait.option_sets[opt_key].get_child_count() - 1
|
||||
portrait.option_sets[opt_key].get_child(choices[option]).visible = true
|
||||
|
||||
|
||||
func _on_right_button_pressed() -> void:
|
||||
portrait.option_sets[opt_key].get_child(choices[option]).visible = false
|
||||
choices[option] += 1
|
||||
if choices[option] >= portrait.option_sets[opt_key].get_child_count():
|
||||
choices[option] -= portrait.option_sets[opt_key].get_child_count()
|
||||
portrait.option_sets[opt_key].get_child(choices[option]).visible = true
|
||||
pass # Replace with function body.
|
||||
|
||||
|
||||
func _on_up_button_pressed() -> void:
|
||||
portrait.flash_option(portrait.option_sets.keys()[option], false)
|
||||
option -= 1
|
||||
if option < 0:
|
||||
option = portrait.option_sets.keys().size() - 1
|
||||
opt_key = portrait.option_sets.keys()[option]
|
||||
portrait.flash_option(portrait.option_sets.keys()[option], true)
|
||||
|
||||
|
||||
func _on_down_button_pressed() -> void:
|
||||
portrait.flash_option(portrait.option_sets.keys()[option], false)
|
||||
option += 1
|
||||
if option >= portrait.option_sets.keys().size():
|
||||
option -= portrait.option_sets.keys().size()
|
||||
opt_key = portrait.option_sets.keys()[option]
|
||||
portrait.flash_option(portrait.option_sets.keys()[option], true)
|
||||
|
||||
|
||||
func _on_color_pressed(slot : ColorVariant.Types, col : String) -> void:
|
||||
portrait.set_color(slot, col)
|
||||
1
scripts/portrait_customizer.gd.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://y86x71nakgkl
|
||||
@@ -46,18 +46,23 @@ func generate_waypoints():
|
||||
waypoints = []
|
||||
|
||||
#Include the "end" in the count
|
||||
var num = quest.num_events()+1
|
||||
for i in range(1,num):
|
||||
var pct : float = i / float(num)
|
||||
add_waypoint( pct, quest.events[i-1])
|
||||
var num = quest.num_events()
|
||||
#add_waypoint(0, Quest.Event.new())
|
||||
#waypoints[0].
|
||||
for evt : Quest.Event in quest.events:
|
||||
add_waypoint( evt.progress_point, evt)
|
||||
#add_waypoint(1, Quest.Event.new())
|
||||
|
||||
func add_waypoint(pct : float, event : Quest.Event):
|
||||
var wp = waypoint_template.instantiate()
|
||||
|
||||
waypoints.append(wp)
|
||||
wp.percent = pct
|
||||
#TODO: Make events matter
|
||||
wp.event = event
|
||||
%Waypoints.add_child(wp)
|
||||
if event.hidden:
|
||||
wp.visible = false
|
||||
wp.global_position = %Waypoints.global_position + Vector2(pct * length - 16, -9)
|
||||
if bar.value / bar.max_value >= pct:
|
||||
wp.fill = true
|
||||
@@ -86,7 +91,10 @@ func setup(quest : Quest) -> void:
|
||||
|
||||
func progress_quest() -> void:
|
||||
var pct = time_elapsed / quest.length
|
||||
quest.progress = pct
|
||||
if next_waypoint < len(waypoints) and pct >= waypoints[next_waypoint].percent:
|
||||
if waypoints[next_waypoint].visible == false:
|
||||
waypoints[next_waypoint].visible = true
|
||||
start_event(waypoints[next_waypoint].event, (pct - waypoints[next_waypoint].percent) * quest.length)
|
||||
pct = waypoints[next_waypoint].percent
|
||||
waypoints[next_waypoint].blink(true)
|
||||
|
||||
@@ -31,3 +31,8 @@ func pause_setting() -> void:
|
||||
|
||||
func unpause_setting() -> void:
|
||||
setting.process_mode = Node.PROCESS_MODE_INHERIT
|
||||
|
||||
func show_quest_complete() -> void:
|
||||
%QuestComplete.visible = true
|
||||
set_questor_animation("idle")
|
||||
setting.process_mode = Node.PROCESS_MODE_DISABLED
|
||||
|
||||
@@ -5,12 +5,9 @@ var test_item = preload("res://data/items/pitchfork.tres")
|
||||
func _ready() -> void:
|
||||
#var adv : Adventurer = test_adv.instantiate() as Adventurer
|
||||
#Guild.register_guild_member(adv)
|
||||
var quest : Quest = Quest.new()
|
||||
var evt : Quest.Event = Quest.Event.new()
|
||||
evt.type = Quest.Event.Type.COMBAT
|
||||
evt.enemies = ["goo"]
|
||||
evt.time = 10
|
||||
quest.events.append(evt)
|
||||
var lst = Quest.list
|
||||
var quest : Quest = Quest.list[1].duplicate(true)
|
||||
quest.setup()
|
||||
Guild.add_quest(quest)
|
||||
Guild.assign_quest(Game.player.data, quest)
|
||||
var itm = test_item.duplicate()
|
||||
|
||||
@@ -24,4 +24,4 @@ func appear(show_time : float):
|
||||
func _on_timer_timeout() -> void:
|
||||
var tween = create_tween()
|
||||
tween.tween_property(self, "modulate", Color(1,1,1,0), .5)
|
||||
tween.tween_callback(queue_free)
|
||||
#tween.tween_callback(queue_free)
|
||||
|
||||
329
templates/hero_portrait.tscn
Normal file
@@ -0,0 +1,329 @@
|
||||
[gd_scene load_steps=36 format=3 uid="uid://drshemnag35re"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://m86jmtwv1a22" path="res://scripts/adventurer_portrait.gd" id="1_ovplg"]
|
||||
[ext_resource type="Texture2D" uid="uid://b303qa76o5r1m" path="res://external/test portrait/farmer_f/hat.png" id="2_rvj82"]
|
||||
[ext_resource type="Shader" uid="uid://cru1otvka0qn5" path="res://external/test portrait/variant_color.gdshader" id="3_op84m"]
|
||||
[ext_resource type="Texture2D" uid="uid://dbdjaye6srxhx" path="res://external/test portrait/farmer_f/head.png" id="4_dcd5x"]
|
||||
[ext_resource type="Texture2D" uid="uid://bpiu6d7lbhyw" path="res://external/test portrait/gradients/hair/(l)mid.tres" id="4_rvj82"]
|
||||
[ext_resource type="Script" uid="uid://cdi0oxcug1hup" path="res://scripts/color_variant.gd" id="5_riel4"]
|
||||
[ext_resource type="Texture2D" uid="uid://can8npg0ufr3f" path="res://external/test portrait/farmer_f/hair_bg.png" id="7_nwmjm"]
|
||||
[ext_resource type="Texture2D" uid="uid://cru775pghpate" path="res://external/test portrait/farmer_f/hair_fg_shadow.png" id="8_2gbpo"]
|
||||
[ext_resource type="Texture2D" uid="uid://x4e86o28672u" path="res://external/test portrait/farmer_f/brow_shadow-2.png" id="9_qslms"]
|
||||
[ext_resource type="Texture2D" uid="uid://caow8dqiog7j4" path="res://external/test portrait/farmer_f/ear.png" id="10_3uw50"]
|
||||
[ext_resource type="Texture2D" uid="uid://csp7xbtu0tpn7" path="res://external/test portrait/farmer_f/eye-white-1.png" id="11_06xpe"]
|
||||
[ext_resource type="Texture2D" uid="uid://mygmunn3voie" path="res://external/test portrait/farmer_f/eyes-iris-1.png" id="13_h52hx"]
|
||||
[ext_resource type="Texture2D" uid="uid://cygn0xfsayykd" path="res://external/test portrait/player/eye-a.png" id="13_riel4"]
|
||||
[ext_resource type="Texture2D" uid="uid://vt17lekvchdg" path="res://external/test portrait/farmer_f/hair_fg.png" id="14_wbk3e"]
|
||||
[ext_resource type="Texture2D" uid="uid://bg6lac6nl5k84" path="res://external/test portrait/player/eye-b.png" id="14_yemgt"]
|
||||
[ext_resource type="Texture2D" uid="uid://brmta1rtiau4a" path="res://external/test portrait/farmer_f/brows-2.png" id="15_dx3tu"]
|
||||
[ext_resource type="Texture2D" uid="uid://bxdclvopvj75q" path="res://external/test portrait/player/eye-c.png" id="15_nwmjm"]
|
||||
[ext_resource type="Texture2D" uid="uid://wnkr20dtf734" path="res://external/test portrait/farmer_f/eyes-lashes-1.png" id="16_grsle"]
|
||||
[ext_resource type="Texture2D" uid="uid://0dwdi7m62trg" path="res://external/test portrait/gradients/hair/(c)red.tres" id="16_outqi"]
|
||||
[ext_resource type="Texture2D" uid="uid://bqmnbsxgbrcpw" path="res://external/test portrait/gradients/hair/(l)red.tres" id="17_dcd5x"]
|
||||
[ext_resource type="Texture2D" uid="uid://crrd8mpcuync2" path="res://external/test portrait/farmer_f/body.png" id="17_m1scf"]
|
||||
[ext_resource type="Texture2D" uid="uid://dyeu4kwwnxjn5" path="res://external/test portrait/farmer_f/hat_fg.png" id="18_prh5n"]
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_riel4"]
|
||||
offsets = PackedFloat32Array(0.4870968, 0.6, 0.88387096, 1)
|
||||
colors = PackedColorArray(0.69, 0.045999996, 0, 1, 1, 0.67700005, 0.49, 1, 1, 0.85942566, 0.78655404, 1, 1, 0.88, 0.82, 1)
|
||||
|
||||
[sub_resource type="GradientTexture1D" id="GradientTexture1D_yemgt"]
|
||||
gradient = SubResource("Gradient_riel4")
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_nwmjm"]
|
||||
offsets = PackedFloat32Array(0, 0.5387097, 0.6967742, 1)
|
||||
colors = PackedColorArray(0, 0, 0, 1, 0.38549262, 0.38549247, 0.3854924, 1, 0.8064516, 0.8064516, 0.8064516, 1, 1, 1, 1, 1)
|
||||
|
||||
[sub_resource type="GradientTexture1D" id="GradientTexture1D_2gbpo"]
|
||||
gradient = SubResource("Gradient_nwmjm")
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_rvj82"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("3_op84m")
|
||||
shader_parameter/color_gradient = SubResource("GradientTexture1D_yemgt")
|
||||
shader_parameter/luminosity_gradient = SubResource("GradientTexture1D_2gbpo")
|
||||
shader_parameter/flash = false
|
||||
shader_parameter/flash_strength = 0.4
|
||||
shader_parameter/highlight = Color(1, 1, 1, 0)
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_ovplg"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("3_op84m")
|
||||
shader_parameter/luminosity_gradient = ExtResource("4_rvj82")
|
||||
shader_parameter/flash = false
|
||||
shader_parameter/flash_strength = 0.4
|
||||
shader_parameter/highlight = Color(0, 0, 0, 0)
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_outqi"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("3_op84m")
|
||||
shader_parameter/luminosity_gradient = ExtResource("4_rvj82")
|
||||
shader_parameter/flash = false
|
||||
shader_parameter/flash_strength = 0.4
|
||||
shader_parameter/highlight = Color(1, 1, 1, 0)
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_isphy"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("3_op84m")
|
||||
shader_parameter/luminosity_gradient = ExtResource("4_rvj82")
|
||||
shader_parameter/flash = false
|
||||
shader_parameter/flash_strength = 0.4
|
||||
shader_parameter/highlight = Color(1, 1, 1, 0)
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_riel4"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("3_op84m")
|
||||
shader_parameter/luminosity_gradient = ExtResource("4_rvj82")
|
||||
shader_parameter/flash = false
|
||||
shader_parameter/flash_strength = 0.4
|
||||
shader_parameter/highlight = Color(1, 1, 1, 0)
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_nwmjm"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("3_op84m")
|
||||
shader_parameter/luminosity_gradient = ExtResource("4_rvj82")
|
||||
shader_parameter/flash = false
|
||||
shader_parameter/flash_strength = 0.4
|
||||
shader_parameter/highlight = Color(1, 1, 1, 0)
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_dcd5x"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("3_op84m")
|
||||
shader_parameter/luminosity_gradient = ExtResource("4_rvj82")
|
||||
shader_parameter/flash = false
|
||||
shader_parameter/flash_strength = 0.4
|
||||
shader_parameter/highlight = Color(1, 1, 1, 0)
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_yemgt"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("3_op84m")
|
||||
shader_parameter/color_gradient = ExtResource("16_outqi")
|
||||
shader_parameter/luminosity_gradient = ExtResource("17_dcd5x")
|
||||
shader_parameter/flash = false
|
||||
shader_parameter/flash_strength = 0.4
|
||||
shader_parameter/highlight = Color(1, 1, 1, 0)
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_op84m"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("3_op84m")
|
||||
shader_parameter/luminosity_gradient = ExtResource("4_rvj82")
|
||||
shader_parameter/flash = false
|
||||
shader_parameter/flash_strength = 0.4
|
||||
shader_parameter/highlight = Color(1, 1, 1, 0)
|
||||
|
||||
[node name="HeroPortrait" type="Control"]
|
||||
custom_minimum_size = Vector2(512, 512)
|
||||
layout_mode = 3
|
||||
anchors_preset = 0
|
||||
offset_right = 40.0
|
||||
offset_bottom = 40.0
|
||||
script = ExtResource("1_ovplg")
|
||||
metadata/_custom_type_script = "uid://m86jmtwv1a22"
|
||||
|
||||
[node name="Hat BG" type="TextureRect" parent="."]
|
||||
custom_minimum_size = Vector2(512, 512)
|
||||
layout_mode = 0
|
||||
offset_right = 512.0
|
||||
offset_bottom = 512.0
|
||||
texture = ExtResource("2_rvj82")
|
||||
|
||||
[node name="Head" type="TextureRect" parent="."]
|
||||
z_index = 2
|
||||
material = SubResource("ShaderMaterial_rvj82")
|
||||
custom_minimum_size = Vector2(512, 512)
|
||||
layout_mode = 0
|
||||
offset_right = 512.0
|
||||
offset_bottom = 512.0
|
||||
texture = ExtResource("4_dcd5x")
|
||||
script = ExtResource("5_riel4")
|
||||
|
||||
[node name="Ear" type="TextureRect" parent="."]
|
||||
z_index = 3
|
||||
material = SubResource("ShaderMaterial_ovplg")
|
||||
custom_minimum_size = Vector2(512, 512)
|
||||
layout_mode = 0
|
||||
offset_right = 512.0
|
||||
offset_bottom = 512.0
|
||||
texture = ExtResource("10_3uw50")
|
||||
script = ExtResource("5_riel4")
|
||||
|
||||
[node name="Hair" type="Control" parent="."]
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
|
||||
[node name="A" type="Control" parent="Hair"]
|
||||
anchors_preset = 0
|
||||
offset_right = 40.0
|
||||
offset_bottom = 40.0
|
||||
|
||||
[node name="FG Shadow" type="TextureRect" parent="Hair/A"]
|
||||
z_index = 4
|
||||
material = SubResource("ShaderMaterial_outqi")
|
||||
custom_minimum_size = Vector2(512, 512)
|
||||
layout_mode = 0
|
||||
offset_right = 512.0
|
||||
offset_bottom = 512.0
|
||||
texture = ExtResource("8_2gbpo")
|
||||
script = ExtResource("5_riel4")
|
||||
|
||||
[node name="BG" type="TextureRect" parent="Hair/A"]
|
||||
z_index = 1
|
||||
material = SubResource("ShaderMaterial_isphy")
|
||||
custom_minimum_size = Vector2(512, 512)
|
||||
layout_mode = 0
|
||||
offset_right = 512.0
|
||||
offset_bottom = 512.0
|
||||
texture = ExtResource("7_nwmjm")
|
||||
script = ExtResource("5_riel4")
|
||||
type = 1
|
||||
|
||||
[node name="FG" type="TextureRect" parent="Hair/A"]
|
||||
z_index = 5
|
||||
material = SubResource("ShaderMaterial_riel4")
|
||||
custom_minimum_size = Vector2(512, 512)
|
||||
layout_mode = 0
|
||||
offset_right = 512.0
|
||||
offset_bottom = 512.0
|
||||
texture = ExtResource("14_wbk3e")
|
||||
script = ExtResource("5_riel4")
|
||||
type = 1
|
||||
|
||||
[node name="Body" type="TextureRect" parent="."]
|
||||
custom_minimum_size = Vector2(512, 512)
|
||||
layout_mode = 0
|
||||
offset_right = 512.0
|
||||
offset_bottom = 512.0
|
||||
texture = ExtResource("17_m1scf")
|
||||
|
||||
[node name="Hat FG" type="TextureRect" parent="."]
|
||||
z_index = 6
|
||||
custom_minimum_size = Vector2(512, 512)
|
||||
layout_mode = 0
|
||||
offset_right = 512.0
|
||||
offset_bottom = 512.0
|
||||
texture = ExtResource("18_prh5n")
|
||||
|
||||
[node name="Eyes" type="Control" parent="."]
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
|
||||
[node name="A" type="Control" parent="Eyes"]
|
||||
anchors_preset = 0
|
||||
offset_right = 40.0
|
||||
offset_bottom = 40.0
|
||||
|
||||
[node name="Eyelids" type="TextureRect" parent="Eyes/A"]
|
||||
z_index = 4
|
||||
material = SubResource("ShaderMaterial_nwmjm")
|
||||
custom_minimum_size = Vector2(512, 512)
|
||||
layout_mode = 0
|
||||
offset_right = 512.0
|
||||
offset_bottom = 512.0
|
||||
texture = ExtResource("13_riel4")
|
||||
script = ExtResource("5_riel4")
|
||||
|
||||
[node name="B" type="Control" parent="Eyes"]
|
||||
visible = false
|
||||
anchors_preset = 0
|
||||
offset_right = 40.0
|
||||
offset_bottom = 40.0
|
||||
|
||||
[node name="Eyelids" type="TextureRect" parent="Eyes/B"]
|
||||
z_index = 4
|
||||
material = SubResource("ShaderMaterial_nwmjm")
|
||||
custom_minimum_size = Vector2(512, 512)
|
||||
layout_mode = 0
|
||||
offset_right = 512.0
|
||||
offset_bottom = 512.0
|
||||
texture = ExtResource("14_yemgt")
|
||||
script = ExtResource("5_riel4")
|
||||
|
||||
[node name="C" type="Control" parent="Eyes"]
|
||||
visible = false
|
||||
anchors_preset = 0
|
||||
offset_right = 40.0
|
||||
offset_bottom = 40.0
|
||||
|
||||
[node name="Eyelids" type="TextureRect" parent="Eyes/C"]
|
||||
z_index = 4
|
||||
material = SubResource("ShaderMaterial_nwmjm")
|
||||
custom_minimum_size = Vector2(512, 512)
|
||||
layout_mode = 0
|
||||
offset_right = 512.0
|
||||
offset_bottom = 512.0
|
||||
texture = ExtResource("15_nwmjm")
|
||||
script = ExtResource("5_riel4")
|
||||
|
||||
[node name="D" type="Control" parent="Eyes"]
|
||||
visible = false
|
||||
anchors_preset = 0
|
||||
offset_right = 40.0
|
||||
offset_bottom = 40.0
|
||||
|
||||
[node name="Eyelids" type="TextureRect" parent="Eyes/D"]
|
||||
z_index = 4
|
||||
material = SubResource("ShaderMaterial_nwmjm")
|
||||
custom_minimum_size = Vector2(512, 512)
|
||||
layout_mode = 0
|
||||
offset_right = 512.0
|
||||
offset_bottom = 512.0
|
||||
texture = ExtResource("16_grsle")
|
||||
script = ExtResource("5_riel4")
|
||||
|
||||
[node name="Eye White" type="TextureRect" parent="Eyes/D"]
|
||||
z_index = 2
|
||||
custom_minimum_size = Vector2(512, 512)
|
||||
layout_mode = 0
|
||||
offset_right = 512.0
|
||||
offset_bottom = 512.0
|
||||
texture = ExtResource("11_06xpe")
|
||||
|
||||
[node name="Irises" type="TextureRect" parent="Eyes/D"]
|
||||
z_index = 3
|
||||
material = SubResource("ShaderMaterial_dcd5x")
|
||||
custom_minimum_size = Vector2(512, 512)
|
||||
layout_mode = 0
|
||||
offset_right = 512.0
|
||||
offset_bottom = 512.0
|
||||
texture = ExtResource("13_h52hx")
|
||||
script = ExtResource("5_riel4")
|
||||
type = 2
|
||||
|
||||
[node name="Brows" type="Control" parent="."]
|
||||
anchors_preset = 0
|
||||
offset_right = 40.0
|
||||
offset_bottom = 40.0
|
||||
|
||||
[node name="A" type="Control" parent="Brows"]
|
||||
anchors_preset = 0
|
||||
offset_right = 40.0
|
||||
offset_bottom = 40.0
|
||||
|
||||
[node name="Brows" type="TextureRect" parent="Brows/A"]
|
||||
z_index = 6
|
||||
material = SubResource("ShaderMaterial_yemgt")
|
||||
custom_minimum_size = Vector2(512, 512)
|
||||
layout_mode = 0
|
||||
offset_right = 512.0
|
||||
offset_bottom = 512.0
|
||||
texture = ExtResource("15_dx3tu")
|
||||
script = ExtResource("5_riel4")
|
||||
type = 1
|
||||
|
||||
[node name="Brow Shadows" type="TextureRect" parent="Brows/A"]
|
||||
z_index = 4
|
||||
material = SubResource("ShaderMaterial_op84m")
|
||||
custom_minimum_size = Vector2(512, 512)
|
||||
layout_mode = 0
|
||||
offset_right = 512.0
|
||||
offset_bottom = 512.0
|
||||
texture = ExtResource("9_qslms")
|
||||
script = ExtResource("5_riel4")
|
||||
@@ -22,7 +22,6 @@ corner_radius_bottom_left = 3
|
||||
corner_detail = 5
|
||||
|
||||
[node name="MainPanel" type="MarginContainer"]
|
||||
anchors_preset = -1
|
||||
offset_right = 401.0
|
||||
offset_bottom = 853.0
|
||||
theme_override_constants/margin_left = 0
|
||||
@@ -44,6 +43,14 @@ custom_minimum_size = Vector2(401, 216)
|
||||
layout_mode = 2
|
||||
theme_override_styles/panel = ExtResource("2_b7y1i")
|
||||
|
||||
[node name="TextureButton" type="TextureButton" parent="VBoxContainer/OpenShift"]
|
||||
layout_mode = 0
|
||||
offset_left = 358.0
|
||||
offset_top = 5.0
|
||||
offset_right = 397.0
|
||||
offset_bottom = 44.0
|
||||
texture_normal = ExtResource("5_6vw8v")
|
||||
|
||||
[node name="NinePatchRect" type="NinePatchRect" parent="VBoxContainer/OpenShift"]
|
||||
layout_mode = 0
|
||||
offset_left = 9.0
|
||||
@@ -107,6 +114,7 @@ theme_override_styles/panel = ExtResource("4_b7y1i")
|
||||
|
||||
[node name="DragRegion" type="Control" parent="VBoxContainer/WorkingShift"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 0
|
||||
offset_left = 4.0
|
||||
offset_top = 3.0
|
||||
offset_right = 399.0
|
||||
@@ -212,6 +220,7 @@ layout_mode = 2
|
||||
stream = ExtResource("6_osxme")
|
||||
volume_db = -10.31
|
||||
|
||||
[connection signal="pressed" from="VBoxContainer/OpenShift/TextureButton" to="." method="_on_options_button_pressed"]
|
||||
[connection signal="pressed" from="VBoxContainer/OpenShift/Margin/OpenList/Button" to="." method="_on_end_shift_pressed"]
|
||||
[connection signal="gui_input" from="VBoxContainer/WorkingShift/DragRegion" to="." method="_on_drag_region_gui_input"]
|
||||
[connection signal="pressed" from="VBoxContainer/WorkingShift/MarginContainer/WorkingList/HBoxContainer/QuestViewerButton" to="." method="_on_quest_viewer_button_pressed"]
|
||||
|
||||
@@ -22,7 +22,7 @@ shader = ExtResource("2_lqa1n")
|
||||
shader_parameter/add_color = Color(1, 1, 1, 0)
|
||||
shader_parameter/fringe_color = SubResource("GradientTexture1D_blm8a")
|
||||
shader_parameter/fringe_threshold = 0.10000000000582077
|
||||
shader_parameter/threshold = 1.0
|
||||
shader_parameter/threshold = 0.3606666537395989
|
||||
|
||||
[sub_resource type="Animation" id="Animation_jh32y"]
|
||||
length = 0.001
|
||||
@@ -189,17 +189,18 @@ _data = {
|
||||
}
|
||||
|
||||
[node name="Map Pin" type="TextureButton"]
|
||||
anchors_preset = -1
|
||||
offset_left = 69.0
|
||||
offset_top = 410.0
|
||||
offset_right = 139.0
|
||||
offset_bottom = 480.0
|
||||
offset_left = -35.0
|
||||
offset_top = -35.0
|
||||
offset_right = 35.0
|
||||
offset_bottom = 35.0
|
||||
pivot_offset = Vector2(35, 35)
|
||||
script = ExtResource("1_ymuo7")
|
||||
circle_size = 200.0
|
||||
add_color = Color(1, 1, 1, 0)
|
||||
threshold = 0.3606666537395989
|
||||
label = null
|
||||
locked_brief = null
|
||||
unlocked_brief = null
|
||||
|
||||
[node name="Panel" type="PanelContainer" parent="."]
|
||||
[node name="BriefPanel" type="PanelContainer" parent="."]
|
||||
unique_name_in_owner = true
|
||||
visible = false
|
||||
custom_minimum_size = Vector2(300, 100)
|
||||
layout_mode = 0
|
||||
@@ -209,7 +210,8 @@ offset_right = 334.0
|
||||
offset_bottom = 30.0
|
||||
mouse_filter = 2
|
||||
|
||||
[node name="Label" type="Label" parent="Panel"]
|
||||
[node name="Brief" type="Label" parent="BriefPanel"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 1
|
||||
theme_override_constants/line_spacing = -3
|
||||
@@ -225,6 +227,7 @@ material = SubResource("ShaderMaterial_ymuo7")
|
||||
[node name="Pin" type="Control" parent="CanvasGroup"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 3
|
||||
anchors_preset = 0
|
||||
offset_right = 40.0
|
||||
offset_bottom = 40.0
|
||||
|
||||
@@ -267,7 +270,6 @@ texture = ExtResource("6_vq4p4")
|
||||
|
||||
[node name="Banner" type="TextureRect" parent="CanvasGroup"]
|
||||
visible = false
|
||||
anchors_preset = -1
|
||||
offset_left = -59.0
|
||||
offset_top = -59.0
|
||||
offset_right = 129.0
|
||||
@@ -275,6 +277,7 @@ offset_bottom = 129.0
|
||||
texture = ExtResource("7_175dc")
|
||||
|
||||
[node name="Label" type="Label" parent="CanvasGroup/Banner"]
|
||||
unique_name_in_owner = true
|
||||
custom_minimum_size = Vector2(125, 0)
|
||||
layout_mode = 0
|
||||
offset_left = 34.0
|
||||
|
||||
@@ -1,4 +1,48 @@
|
||||
[gd_scene format=3 uid="uid://dno0a4457twd4"]
|
||||
[gd_scene load_steps=14 format=3 uid="uid://dno0a4457twd4"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://c3wwe6r000gpq" path="res://external/test portrait/farmer_f/composite.png" id="1_h8465"]
|
||||
[ext_resource type="Script" uid="uid://y86x71nakgkl" path="res://scripts/portrait_customizer.gd" id="1_qv0tv"]
|
||||
[ext_resource type="PackedScene" uid="uid://drshemnag35re" path="res://templates/hero_portrait.tscn" id="3_wkmmk"]
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_v2k53"]
|
||||
offsets = PackedFloat32Array(0)
|
||||
colors = PackedColorArray(1, 0.73333335, 0, 1)
|
||||
|
||||
[sub_resource type="GradientTexture1D" id="GradientTexture1D_6y6h7"]
|
||||
gradient = SubResource("Gradient_v2k53")
|
||||
width = 1
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_5l11s"]
|
||||
offsets = PackedFloat32Array(0)
|
||||
colors = PackedColorArray(0.46, 0.23, 0, 1)
|
||||
|
||||
[sub_resource type="GradientTexture1D" id="GradientTexture1D_uwnmi"]
|
||||
gradient = SubResource("Gradient_5l11s")
|
||||
width = 1
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_x374a"]
|
||||
offsets = PackedFloat32Array(0)
|
||||
colors = PackedColorArray(0.8, 0.18666668, 0, 1)
|
||||
|
||||
[sub_resource type="GradientTexture1D" id="GradientTexture1D_72sxj"]
|
||||
gradient = SubResource("Gradient_x374a")
|
||||
width = 1
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_xot8x"]
|
||||
offsets = PackedFloat32Array(0)
|
||||
colors = PackedColorArray(0.13682577, 0.13682574, 0.13682571, 1)
|
||||
|
||||
[sub_resource type="GradientTexture1D" id="GradientTexture1D_ac3np"]
|
||||
gradient = SubResource("Gradient_xot8x")
|
||||
width = 1
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_osq0m"]
|
||||
offsets = PackedFloat32Array(0)
|
||||
colors = PackedColorArray(0, 0, 0.7647059, 1)
|
||||
|
||||
[sub_resource type="GradientTexture1D" id="GradientTexture1D_5l84q"]
|
||||
gradient = SubResource("Gradient_osq0m")
|
||||
width = 1
|
||||
|
||||
[node name="Portrait Customizer" type="Control"]
|
||||
layout_mode = 3
|
||||
@@ -7,3 +51,412 @@ anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
script = ExtResource("1_qv0tv")
|
||||
|
||||
[node name="ColorRect" type="ColorRect" parent="."]
|
||||
custom_minimum_size = Vector2(600, 600)
|
||||
layout_mode = 0
|
||||
offset_left = 1024.0
|
||||
offset_top = 79.0
|
||||
offset_right = 1624.0
|
||||
offset_bottom = 679.0
|
||||
color = Color(0.6872149, 0.68721503, 0.6872149, 1)
|
||||
|
||||
[node name="ColorRect2" type="ColorRect" parent="."]
|
||||
custom_minimum_size = Vector2(512, 512)
|
||||
layout_mode = 0
|
||||
offset_left = 1070.0
|
||||
offset_top = 120.0
|
||||
offset_right = 1582.0
|
||||
offset_bottom = 632.0
|
||||
|
||||
[node name="Base" type="TextureRect" parent="."]
|
||||
visible = false
|
||||
custom_minimum_size = Vector2(512, 512)
|
||||
layout_mode = 0
|
||||
offset_left = 692.0
|
||||
offset_top = 129.0
|
||||
offset_right = 1204.0
|
||||
offset_bottom = 641.0
|
||||
texture = ExtResource("1_h8465")
|
||||
|
||||
[node name="HeroPortrait" parent="." instance=ExtResource("3_wkmmk")]
|
||||
layout_mode = 0
|
||||
offset_left = 1070.0
|
||||
offset_top = 120.0
|
||||
offset_right = 1582.0
|
||||
offset_bottom = 632.0
|
||||
|
||||
[node name="LeftButton" type="Button" parent="."]
|
||||
layout_mode = 0
|
||||
offset_left = 957.0
|
||||
offset_top = 338.0
|
||||
offset_right = 1022.0
|
||||
offset_bottom = 483.0
|
||||
theme_override_font_sizes/font_size = 100
|
||||
text = "<"
|
||||
|
||||
[node name="UpButton" type="Button" parent="."]
|
||||
layout_mode = 0
|
||||
offset_left = 1396.0
|
||||
offset_top = 12.000006
|
||||
offset_right = 1461.0
|
||||
offset_bottom = 157.0
|
||||
rotation = 1.5707964
|
||||
theme_override_font_sizes/font_size = 100
|
||||
text = "<"
|
||||
|
||||
[node name="DownButton" type="Button" parent="."]
|
||||
layout_mode = 0
|
||||
offset_left = 1259.0
|
||||
offset_top = 747.0
|
||||
offset_right = 1324.0
|
||||
offset_bottom = 892.0
|
||||
rotation = -1.5707964
|
||||
theme_override_font_sizes/font_size = 100
|
||||
text = "<"
|
||||
|
||||
[node name="RightButton" type="Button" parent="."]
|
||||
layout_mode = 0
|
||||
offset_left = 1625.0
|
||||
offset_top = 338.0
|
||||
offset_right = 1690.0
|
||||
offset_bottom = 483.0
|
||||
theme_override_font_sizes/font_size = 100
|
||||
text = ">"
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="."]
|
||||
layout_mode = 0
|
||||
offset_left = 925.0
|
||||
offset_top = 765.0
|
||||
offset_right = 1770.0
|
||||
offset_bottom = 1059.0
|
||||
|
||||
[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
alignment = 1
|
||||
|
||||
[node name="Button" type="Button" parent="VBoxContainer/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
theme_override_font_sizes/font_size = 100
|
||||
text = "RESET"
|
||||
|
||||
[node name="Button2" type="Button" parent="VBoxContainer/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
theme_override_font_sizes/font_size = 100
|
||||
text = "Random"
|
||||
|
||||
[node name="Button3" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 100
|
||||
text = "ACCEPT"
|
||||
|
||||
[node name="VBoxContainer2" type="VBoxContainer" parent="."]
|
||||
layout_mode = 0
|
||||
offset_left = 138.0
|
||||
offset_top = 19.0
|
||||
offset_right = 768.0
|
||||
offset_bottom = 1062.0
|
||||
theme_override_constants/separation = 10
|
||||
|
||||
[node name="HairPanel" type="PanelContainer" parent="VBoxContainer2"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="VBoxContainer2/HairPanel"]
|
||||
layout_mode = 2
|
||||
theme_override_constants/margin_left = 25
|
||||
theme_override_constants/margin_top = 25
|
||||
theme_override_constants/margin_right = 25
|
||||
theme_override_constants/margin_bottom = 25
|
||||
|
||||
[node name="HBoxContainer" type="VBoxContainer" parent="VBoxContainer2/HairPanel/MarginContainer"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="Label" type="Label" parent="VBoxContainer2/HairPanel/MarginContainer/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 48
|
||||
text = "Hair"
|
||||
horizontal_alignment = 1
|
||||
|
||||
[node name="HairGrid" type="GridContainer" parent="VBoxContainer2/HairPanel/MarginContainer/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_constants/h_separation = 20
|
||||
theme_override_constants/v_separation = 20
|
||||
columns = 5
|
||||
|
||||
[node name="BlondHairButton" type="TextureButton" parent="VBoxContainer2/HairPanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_6y6h7")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="BrownHairButton" type="TextureButton" parent="VBoxContainer2/HairPanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_uwnmi")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="RedHairButton" type="TextureButton" parent="VBoxContainer2/HairPanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_72sxj")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="BlackHairButton" type="TextureButton" parent="VBoxContainer2/HairPanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_ac3np")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="BlueHairButton" type="TextureButton" parent="VBoxContainer2/HairPanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_5l84q")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="BlondHairButton2" type="TextureButton" parent="VBoxContainer2/HairPanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_6y6h7")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="BrownHairButton2" type="TextureButton" parent="VBoxContainer2/HairPanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_uwnmi")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="RedHairButton2" type="TextureButton" parent="VBoxContainer2/HairPanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_72sxj")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="BlackHairButton2" type="TextureButton" parent="VBoxContainer2/HairPanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_ac3np")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="BlueHairButton2" type="TextureButton" parent="VBoxContainer2/HairPanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_5l84q")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="SkinPanel" type="PanelContainer" parent="VBoxContainer2"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="VBoxContainer2/SkinPanel"]
|
||||
layout_mode = 2
|
||||
theme_override_constants/margin_left = 25
|
||||
theme_override_constants/margin_top = 25
|
||||
theme_override_constants/margin_right = 25
|
||||
theme_override_constants/margin_bottom = 25
|
||||
|
||||
[node name="HBoxContainer" type="VBoxContainer" parent="VBoxContainer2/SkinPanel/MarginContainer"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="Label" type="Label" parent="VBoxContainer2/SkinPanel/MarginContainer/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 48
|
||||
text = "Skin"
|
||||
horizontal_alignment = 1
|
||||
|
||||
[node name="HairGrid" type="GridContainer" parent="VBoxContainer2/SkinPanel/MarginContainer/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_constants/h_separation = 20
|
||||
theme_override_constants/v_separation = 20
|
||||
columns = 5
|
||||
|
||||
[node name="BlondHairButton" type="TextureButton" parent="VBoxContainer2/SkinPanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_6y6h7")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="BrownHairButton" type="TextureButton" parent="VBoxContainer2/SkinPanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_uwnmi")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="RedHairButton" type="TextureButton" parent="VBoxContainer2/SkinPanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_72sxj")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="BlackHairButton" type="TextureButton" parent="VBoxContainer2/SkinPanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_ac3np")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="BlueHairButton" type="TextureButton" parent="VBoxContainer2/SkinPanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_5l84q")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="BlondHairButton2" type="TextureButton" parent="VBoxContainer2/SkinPanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_6y6h7")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="BrownHairButton2" type="TextureButton" parent="VBoxContainer2/SkinPanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_uwnmi")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="RedHairButton2" type="TextureButton" parent="VBoxContainer2/SkinPanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_72sxj")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="BlackHairButton2" type="TextureButton" parent="VBoxContainer2/SkinPanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_ac3np")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="BlueHairButton2" type="TextureButton" parent="VBoxContainer2/SkinPanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_5l84q")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="EyePanel" type="PanelContainer" parent="VBoxContainer2"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="VBoxContainer2/EyePanel"]
|
||||
layout_mode = 2
|
||||
theme_override_constants/margin_left = 25
|
||||
theme_override_constants/margin_top = 25
|
||||
theme_override_constants/margin_right = 25
|
||||
theme_override_constants/margin_bottom = 25
|
||||
|
||||
[node name="HBoxContainer" type="VBoxContainer" parent="VBoxContainer2/EyePanel/MarginContainer"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="Label" type="Label" parent="VBoxContainer2/EyePanel/MarginContainer/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 48
|
||||
text = "Eye"
|
||||
horizontal_alignment = 1
|
||||
|
||||
[node name="HairGrid" type="GridContainer" parent="VBoxContainer2/EyePanel/MarginContainer/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_constants/h_separation = 20
|
||||
theme_override_constants/v_separation = 20
|
||||
columns = 5
|
||||
|
||||
[node name="BlondHairButton" type="TextureButton" parent="VBoxContainer2/EyePanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_6y6h7")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="BrownHairButton" type="TextureButton" parent="VBoxContainer2/EyePanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_uwnmi")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="RedHairButton" type="TextureButton" parent="VBoxContainer2/EyePanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_72sxj")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="BlackHairButton" type="TextureButton" parent="VBoxContainer2/EyePanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_ac3np")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="BlueHairButton" type="TextureButton" parent="VBoxContainer2/EyePanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_5l84q")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="BlondHairButton2" type="TextureButton" parent="VBoxContainer2/EyePanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_6y6h7")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="BrownHairButton2" type="TextureButton" parent="VBoxContainer2/EyePanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_uwnmi")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="RedHairButton2" type="TextureButton" parent="VBoxContainer2/EyePanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_72sxj")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="BlackHairButton2" type="TextureButton" parent="VBoxContainer2/EyePanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_ac3np")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[node name="BlueHairButton2" type="TextureButton" parent="VBoxContainer2/EyePanel/MarginContainer/HBoxContainer/HairGrid"]
|
||||
custom_minimum_size = Vector2(100, 100)
|
||||
layout_mode = 2
|
||||
texture_normal = SubResource("GradientTexture1D_5l84q")
|
||||
ignore_texture_size = true
|
||||
stretch_mode = 0
|
||||
|
||||
[connection signal="pressed" from="LeftButton" to="." method="_on_left_button_pressed"]
|
||||
[connection signal="pressed" from="UpButton" to="." method="_on_up_button_pressed"]
|
||||
[connection signal="pressed" from="DownButton" to="." method="_on_down_button_pressed"]
|
||||
[connection signal="pressed" from="RightButton" to="." method="_on_right_button_pressed"]
|
||||
[connection signal="pressed" from="VBoxContainer2/HairPanel/MarginContainer/HBoxContainer/HairGrid/BlondHairButton" to="." method="_on_color_pressed" binds= [1, "blonde"]]
|
||||
[connection signal="pressed" from="VBoxContainer2/HairPanel/MarginContainer/HBoxContainer/HairGrid/BrownHairButton" to="." method="_on_color_pressed" binds= [1, "brown"]]
|
||||
[connection signal="pressed" from="VBoxContainer2/HairPanel/MarginContainer/HBoxContainer/HairGrid/RedHairButton" to="." method="_on_color_pressed" binds= [1, "red"]]
|
||||
[connection signal="pressed" from="VBoxContainer2/HairPanel/MarginContainer/HBoxContainer/HairGrid/BlackHairButton" to="." method="_on_color_pressed" binds= [1, "black"]]
|
||||
[connection signal="pressed" from="VBoxContainer2/HairPanel/MarginContainer/HBoxContainer/HairGrid/BlueHairButton" to="." method="_on_color_pressed" binds= [1, "blue"]]
|
||||
[connection signal="pressed" from="VBoxContainer2/HairPanel/MarginContainer/HBoxContainer/HairGrid/BlondHairButton2" to="." method="_on_color_pressed" binds= [1, "blonde"]]
|
||||
[connection signal="pressed" from="VBoxContainer2/HairPanel/MarginContainer/HBoxContainer/HairGrid/BrownHairButton2" to="." method="_on_color_pressed" binds= [1, "brown"]]
|
||||
[connection signal="pressed" from="VBoxContainer2/HairPanel/MarginContainer/HBoxContainer/HairGrid/RedHairButton2" to="." method="_on_color_pressed" binds= [1, "red"]]
|
||||
[connection signal="pressed" from="VBoxContainer2/HairPanel/MarginContainer/HBoxContainer/HairGrid/BlackHairButton2" to="." method="_on_color_pressed" binds= [1, "black"]]
|
||||
[connection signal="pressed" from="VBoxContainer2/HairPanel/MarginContainer/HBoxContainer/HairGrid/BlueHairButton2" to="." method="_on_color_pressed" binds= [1, "blue"]]
|
||||
|
||||
@@ -8,15 +8,14 @@
|
||||
|
||||
[node name="QuestView" type="Panel"]
|
||||
custom_minimum_size = Vector2(375, 325)
|
||||
anchors_preset = -1
|
||||
offset_left = 12.0
|
||||
offset_right = 387.0
|
||||
offset_right = 375.0
|
||||
offset_bottom = 325.0
|
||||
script = ExtResource("1_gmxj1")
|
||||
|
||||
[node name="Setting" type="Control" parent="."]
|
||||
clip_contents = true
|
||||
layout_mode = 1
|
||||
anchors_preset = 0
|
||||
offset_right = 375.0
|
||||
offset_bottom = 325.0
|
||||
|
||||
@@ -31,7 +30,6 @@ autoscroll = Vector2(-30, 0)
|
||||
ignore_camera_scroll = true
|
||||
|
||||
[node name="Background" type="TextureRect" parent="Setting/Control/StageParallax"]
|
||||
anchors_preset = -1
|
||||
offset_top = -50.0
|
||||
offset_right = 750.0
|
||||
offset_bottom = 375.0
|
||||
@@ -45,7 +43,6 @@ ignore_camera_scroll = true
|
||||
|
||||
[node name="Background" type="TextureRect" parent="Setting/Control/StageParallax3"]
|
||||
modulate = Color(1.179842, 1.179842, 1.179842, 1)
|
||||
anchors_preset = -1
|
||||
offset_right = 750.0
|
||||
offset_bottom = 425.0
|
||||
texture = ExtResource("3_dvgqk")
|
||||
@@ -56,7 +53,6 @@ autoscroll = Vector2(-45, 0)
|
||||
ignore_camera_scroll = true
|
||||
|
||||
[node name="TextureRect" type="TextureRect" parent="Setting/Control/BackgroundParallax"]
|
||||
anchors_preset = -1
|
||||
offset_top = -50.0
|
||||
offset_right = 475.0
|
||||
offset_bottom = 375.0
|
||||
@@ -68,7 +64,6 @@ autoscroll = Vector2(-45, 0)
|
||||
ignore_camera_scroll = true
|
||||
|
||||
[node name="Foreground" type="TextureRect" parent="Setting/Control/StageParallax2"]
|
||||
anchors_preset = -1
|
||||
offset_top = -50.0
|
||||
offset_right = 750.0
|
||||
offset_bottom = 375.0
|
||||
@@ -83,7 +78,39 @@ offset_bottom = 276.0
|
||||
|
||||
[node name="QuestorPosition" type="Control" parent="."]
|
||||
layout_mode = 1
|
||||
anchors_preset = 0
|
||||
offset_left = 89.0
|
||||
offset_top = 272.0
|
||||
offset_right = 89.0
|
||||
offset_bottom = 272.0
|
||||
|
||||
[node name="QuestComplete" type="Control" parent="."]
|
||||
unique_name_in_owner = true
|
||||
visible = false
|
||||
z_index = 10
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
|
||||
[node name="ColorRect" type="ColorRect" parent="QuestComplete"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
color = Color(0, 0, 0, 0.42352942)
|
||||
|
||||
[node name="Label" type="Label" parent="QuestComplete"]
|
||||
layout_mode = 0
|
||||
offset_left = 1.0
|
||||
offset_top = 119.0
|
||||
offset_right = 376.0
|
||||
offset_bottom = 238.0
|
||||
theme_override_font_sizes/font_size = 42
|
||||
text = "QUEST
|
||||
COMPLETE!"
|
||||
horizontal_alignment = 1
|
||||
|
||||