9.27上午

This commit is contained in:
TsubakiLoL 2024-09-27 11:47:19 +08:00
parent f8eb049d95
commit 2a911ff837
10 changed files with 235 additions and 45 deletions

View File

@ -18,8 +18,43 @@ var map_data:Dictionary
var npc_json_path:String="res://json/npc.json"
var npc_data:Dictionary
#角色修饰数据的存储路径
var character_embellish_data_path:String="user://emblish.data"
var character_embellish_data:Dictionary={
}
#加载角色修饰数据(没有则自动创建文件
func load_character_emblish_data():
var f=FileAccess.open(character_embellish_data_path,FileAccess.READ)
if f!=null:
var data=f.get_var()
if data is Dictionary:
character_embellish_data=data.duplicate()
f.close()
else:
f=FileAccess.open(character_embellish_data_path,FileAccess.WRITE)
f.store_var(character_embellish_data)
f.close()
#存储角色修饰数据
func save_character_embellish_data():
var f=FileAccess.open(character_embellish_data_path,FileAccess.WRITE)
f.store_var(character_embellish_data)
f.close()
#添加角色修饰数据
func add_character_embellich_data(character_id:String,embellish_name:String,data):
if character_embellish_data.has(character_id):
character_embellish_data[character_id][embellish_name]=data
else:
character_embellish_data[character_id]={
embellish_name:data
}
save_character_embellish_data()
pass
var system_config_data:Dictionary={
@ -113,7 +148,9 @@ func flow_time(data:Dictionary):
change_unix+=minute*60
now_game_data["time_unix"]+=change_unix
time_changed.emit()
#时间改变的信号
signal time_changed
#事件触发器列表
var triger:Dictionary={
"change_event":func (data):now_game_flow.show_event(data),
"change_texture": func (data):now_game_flow.event_panel.change_texture(data),
@ -123,18 +160,20 @@ var triger:Dictionary={
"end_event":func(data):now_game_flow.event_panel.hide(),
"flow_time":func (data):flow_time(data)
}
#使用事件触发器
func call_triger(triger_type:String,data):
if triger.has(triger_type):
return triger[triger_type].call(data)
else:
return null
#条件类型字典
#条件触发器(用于返回是否返回条件)
var condition_triger:Dictionary={
"date_limit":func (data:Dictionary):return TimeTool.is_in_date(data,get_time_dictionary()),
"time_limit":func (data:Dictionary):return TimeTool.is_in_time(data,get_time_dictionary()),
"rand":func (data:Dictionary):return get_rand(data["scene_id"],data["touch_id"],data["index"],data["condition"]),
}
#使用条件触发器
func call_condition_triger(triger_type:String,data):
if condition_triger.has(triger_type):
return condition_triger[triger_type].call(data)
@ -142,6 +181,7 @@ func call_condition_triger(triger_type:String,data):
return null
pass
#记录随机的场景上一次结果,如果时间不变则直接取上一次结果
var condition_triger_randi_dic:Dictionary={
"scene_id":{
"touch_name":{
@ -152,7 +192,7 @@ var condition_triger_randi_dic:Dictionary={
}
}
}
#同上
func get_rand(scene_id:String,touch_name:String,index:String,condition:float)->bool:
if condition_triger_randi_dic.has(scene_id):
var scene_data=condition_triger_randi_dic[scene_id]
@ -187,6 +227,7 @@ func get_rand(scene_id:String,touch_name:String,index:String,condition:float)->b
}
}
return dic["last_rand_result"]
#为随机创建一个新的随机字典
func recreate_rand_dic(condition:float)->Dictionary:
var new_rand_result:bool=(randf()<condition)
var dic={
@ -195,7 +236,7 @@ func recreate_rand_dic(condition:float)->Dictionary:
}
return dic
#移动场景前者是scene的ID后者是距离当前场景的距离
func move_scene(scene_id:String,distance):
if scene_id==get_now_scene():
return false
@ -206,11 +247,15 @@ func move_scene(scene_id:String,distance):
set_now_scene(scene_id)
return true
pass
#获取当前场景ID
func get_now_scene():
return now_game_data["now_scene"]
#设置当前场景,只用于开局重置位置
func set_now_scene(scene_id:String):
now_game_data["now_scene"]=scene_id
#当前的游戏流程场景
var now_game_flow:GameFlow
#获取当前角色数据的拷贝
func get_now_character_data():
return now_game_data["character_data"].duplicate()
func _ready() -> void:
@ -222,6 +267,8 @@ func _ready() -> void:
load_character_data()
load_map_data()
load_npc_data()
load_character_emblish_data()
#加载当前图片数据
func load_texture_data():
var file=FileAccess.open(texture_json_path,FileAccess.READ)
var str=file.get_as_text()
@ -231,6 +278,7 @@ func load_texture_data():
if texture is Texture2D:
dictionary[i]=texture
texture_data=dictionary
#加载当前剧本数据
func load_script_data():
var file=FileAccess.open(script_json_path,FileAccess.READ)
var str=file.get_as_text()
@ -243,6 +291,7 @@ func load_script_data():
var type:int=int(data["type"])
script_type_divide_data[type][i]=data
script_data=dictionary
#加载当前事件数据
func load_event_data():
var file=FileAccess.open(event_json_path,FileAccess.READ)
var str=file.get_as_text()
@ -250,6 +299,7 @@ func load_event_data():
for i in dictionary.keys():
dictionary[i]["id"]=i
event_data=dictionary
#加载当前场景数据
func load_scene_data():
var file=FileAccess.open(scene_json_path,FileAccess.READ)
var str=file.get_as_text()
@ -258,6 +308,7 @@ func load_scene_data():
dictionary[i]["id"]=i
scene_data=dictionary
pass
#加载当前角色数据(未被修饰)
func load_character_data():
var file=FileAccess.open(character_json_path,FileAccess.READ)
var str=file.get_as_text()
@ -265,6 +316,7 @@ func load_character_data():
for i in dictionary.keys():
dictionary[i]["id"]=i
character_data=dictionary
#加载当前地图字典
func load_map_data():
var file=FileAccess.open(map_json_path,FileAccess.READ)
var str=file.get_as_text()
@ -272,6 +324,7 @@ func load_map_data():
for i in dictionary.keys():
dictionary[i]["id"]=i
map_data=dictionary
#加载当前NPC数据可能废弃
func load_npc_data():
var file=FileAccess.open(npc_json_path,FileAccess.READ)
var str=file.get_as_text()
@ -279,6 +332,7 @@ func load_npc_data():
for i in dictionary.keys():
dictionary[i]["id"]=i
npc_data=dictionary
#加载当前卡牌数据
func load_card_data():
var file=FileAccess.open(card_json_path,FileAccess.READ)
var str=file.get_as_text()
@ -321,13 +375,21 @@ func get_scene_data(id:String):
#获取对应ID的角色数据
func get_character_data(id:String):
if character_data.has(id):
var dictionary:Dictionary=character_data[id]
var dictionary:Dictionary=character_data[id].duplicate(true)
#如果有修饰数据,则返回修饰后的数据
if character_embellish_data.has(id):
dictionary=CharacterTool.character_embellish(dictionary,character_embellish_data[id])
return dictionary.duplicate(true)
else:
return null
#获取全部角色数据
func get_all_character()->Dictionary:
return character_data.duplicate(true)
var all_character:Dictionary=character_data.duplicate(true)
#修饰数据
for i in all_character.keys():
if character_embellish_data.has(i):
all_character[i]=CharacterTool.character_embellish(all_character[i],character_embellish_data[i])
return all_character
#获取对应ID的地图数据
func get_map_data(id:String):
if map_data.has(id):

View File

@ -5,7 +5,6 @@ extends CanvasLayer
@onready var color_rect: ColorRect = $ColorRect
@onready var percent: Label = $ColorRect/HBoxContainer/percent
@onready var breath: AnimationPlayer = $breath
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
set_process(false)
@ -42,7 +41,7 @@ func _process(delta: float) -> void:
var scene=ResourceLoader.load_threaded_get(load_path)
get_tree().change_scene_to_packed(scene)
load_end()
ResourceLoader.THREAD_LOAD_LOADED:
ResourceLoader.THREAD_LOAD_LOADED :
percent.text="100"
var scene=ResourceLoader.load_threaded_get(load_path)
get_tree().change_scene_to_packed(scene)

View File

@ -81,10 +81,10 @@ tracks/0/path = NodePath("ColorRect/HBoxContainer:modulate")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 0.25),
"transitions": PackedFloat32Array(1, 1),
"times": PackedFloat32Array(0, 0.233333, 0.5),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [Color(1, 1, 1, 1), Color(0.54099, 0.54099, 0.54099, 1)]
"values": [Color(1, 1, 1, 1), Color(0.54099, 0.54099, 0.54099, 1), Color(1, 1, 1, 1)]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_8ttym"]

View File

@ -68,9 +68,20 @@ static func get_character_star_num(character_data:Dictionary)->int:
static func character_embellish(character_data:Dictionary,embellish_data:Dictionary)->Dictionary:
var res_data=character_data.duplicate(true)
#使用皮肤更改修饰
if embellish_data.has("skin"):
character_data["character"]["skin_now_use"]=int(embellish_data["skin"])
res_data["character"]["skin_now_use"]=int(embellish_data["skin"])
#"unclocked_start":[0],
#"start_now_use":0,
#开局更改修饰
if embellish_data.has("start"):
res_data["start_now_use"]=int(embellish_data["start"])
#解锁开局data应该是个int类型的Array
if embellish_data.has("unlock_start"):
var unlock_data:Array=embellish_data["unlock_start"]
for i in unlock_data:
if not float(i) in res_data["unlock_start"]:
res_data["unlocked_start"].append(float(i))

View File

@ -45,7 +45,28 @@
"introduction":"鼠标点击显示具体效果鼠标点击显示具体效果鼠标点击显示具体效果鼠标点击显示具体效果鼠标点击显示具体效果鼠标点击显示具体效果鼠标点击显示具体效果鼠标点击显示具体效果"
}
],
"start":[
{
"name":"测试开局1",
"introduction":"测试开局1的介绍",
"add_buff":[],
"del_buff":[]
},
{
"name":"测试开局2",
"introduction":"测试开局2的介绍",
"add_buff":[],
"del_buff":[]
},
{
"name":"测试开局3",
"introduction":"测试开局3的介绍",
"add_buff":[],
"del_buff":[]
}
],
"unclocked_start":[0,1],
"start_now_use":0,
"favor":[{
"name":"姐姐",
"value":100

View File

@ -33,6 +33,7 @@ grow_vertical = 2
texture = ExtResource("2_iqkdj")
[node name="skin_head" type="TextureRect" parent="mask2"]
show_behind_parent = true
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
@ -43,6 +44,7 @@ texture = ExtResource("3_c88qw")
expand_mode = 5
[node name="mask" type="TextureRect" parent="."]
show_behind_parent = true
layout_mode = 0
offset_right = 40.0
offset_bottom = 40.0

View File

@ -3,10 +3,13 @@ const ABILITY_BUTTON = preload("res://scene/ability_button.tscn")
const ATTRIBUTE = preload("res://scene/attribute.tscn")
const SELECTED = preload("res://res/ui/ui_005_basic_message/selected.tres")
const BASIC_MES_SKIN_CARD = preload("res://scene/basic_mes_skin_card.tscn")
const START_CONFIG_MES = preload("res://scene/start_config_mes.tscn")
var data:Dictionary
@onready var button_group:Array[Button]=[$VBoxContainer/TextureRect/HBoxContainer/Button, $VBoxContainer/TextureRect/HBoxContainer/Button2, $VBoxContainer/TextureRect/HBoxContainer/Button3, $VBoxContainer/TextureRect/HBoxContainer/Button4, $VBoxContainer/TextureRect/HBoxContainer/Button5, $VBoxContainer/TextureRect/HBoxContainer/Button6]
@onready var now_selected_button:Button=$VBoxContainer/TextureRect/HBoxContainer/Button
var now_selected_mes:StartConfigMes
func init_from_data():
for i in %special_container.get_children():
i.queue_free()
@ -92,6 +95,31 @@ func init_from_data():
new_label.text=i["name"]+":"+str(i["value"])
%reputation.add_child(new_label)
new_label.add_theme_font_size_override("font_size",26)
for i in %start_config_mes_add_pos.get_children():
i.queue_free()
var start_config_arr:Array=data["start"]
var start_now_use:int=data["start_now_use"]
var unclocked_start:Array=data["unclocked_start"]
for i in start_config_arr.size():
var new_start:StartConfigMes=START_CONFIG_MES.instantiate()
%start_config_mes_add_pos.add_child(new_start)
new_start.index=i
if i==start_now_use:
new_start.state=1
now_selected_mes=new_start
elif float(i) in unclocked_start:
new_start.state=0
else:
new_start.state=-1
new_start.set_data(start_config_arr[i])
new_start.click.connect(start_config_mes_click)
pass
func start_config_mes_click(mes:StartConfigMes,ind:int):
now_selected_mes.state=0
mes.state=1
now_selected_mes=mes
Global.add_character_embellich_data(data["id"],"start",ind)
pass
func connect_button():
for i in button_group.size():
button_group[i].pressed.connect(selected.bind(i))

View File

@ -355,11 +355,12 @@ layout_mode = 2
size_flags_vertical = 3
size_flags_stretch_ratio = 939.0
theme_override_styles/panel = SubResource("StyleBoxEmpty_81i7t")
current_tab = 0
current_tab = 5
clip_tabs = false
tabs_visible = false
[node name="basic_mes" type="MarginContainer" parent="VBoxContainer/TabContainer"]
visible = false
layout_mode = 2
theme_override_constants/margin_right = 19
theme_override_constants/margin_bottom = 43
@ -2068,7 +2069,6 @@ vertical_alignment = 2
metadata/_edit_use_anchors_ = true
[node name="start_config" type="MarginContainer" parent="VBoxContainer/TabContainer"]
visible = false
layout_mode = 2
theme_override_constants/margin_left = 54
theme_override_constants/margin_top = 8
@ -2096,19 +2096,20 @@ layout_mode = 2
horizontal_scroll_mode = 0
vertical_scroll_mode = 3
[node name="VBoxContainer" type="VBoxContainer" parent="VBoxContainer/TabContainer/start_config/Panel/MarginContainer/ScrollContainer"]
[node name="start_config_mes_add_pos" type="VBoxContainer" parent="VBoxContainer/TabContainer/start_config/Panel/MarginContainer/ScrollContainer"]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 0
theme_override_constants/separation = 20
[node name="start_config_mes" parent="VBoxContainer/TabContainer/start_config/Panel/MarginContainer/ScrollContainer/VBoxContainer" instance=ExtResource("40_fo6u0")]
[node name="start_config_mes" parent="VBoxContainer/TabContainer/start_config/Panel/MarginContainer/ScrollContainer/start_config_mes_add_pos" instance=ExtResource("40_fo6u0")]
layout_mode = 2
[node name="start_config_mes2" parent="VBoxContainer/TabContainer/start_config/Panel/MarginContainer/ScrollContainer/VBoxContainer" instance=ExtResource("40_fo6u0")]
[node name="start_config_mes2" parent="VBoxContainer/TabContainer/start_config/Panel/MarginContainer/ScrollContainer/start_config_mes_add_pos" instance=ExtResource("40_fo6u0")]
layout_mode = 2
[node name="start_config_mes3" parent="VBoxContainer/TabContainer/start_config/Panel/MarginContainer/ScrollContainer/VBoxContainer" instance=ExtResource("40_fo6u0")]
[node name="start_config_mes3" parent="VBoxContainer/TabContainer/start_config/Panel/MarginContainer/ScrollContainer/start_config_mes_add_pos" instance=ExtResource("40_fo6u0")]
layout_mode = 2
[node name="TextureRect" type="TextureRect" parent="."]

45
scene/start_config_mes.gd Normal file
View File

@ -0,0 +1,45 @@
extends PanelContainer
class_name StartConfigMes
var data:Dictionary
signal click(mes:StartConfigMes,ind:int)
const LOCK = preload("res://res/ui/ui_010_start_config/tuceng359.png")
const SELECTED = preload("res://res/ui/ui_010_start_config/tuceng356.png")
var index:int=0
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
pass # Replace with function body.
#-1:上锁0解锁未选择1解锁且选择
var state:int=-2:
set(val):
if val!=state:
state=val
match val:
-1:
%btn_icon.show()
%btn_icon.texture=LOCK
%select_label.hide()
%btn.disabled=true
0:
%btn_icon.hide()
%select_label.show()
%btn.disabled=false
1:
%btn_icon.show()
%btn_icon.texture=SELECTED
%select_label.hide()
%btn.disabled=true
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void:
pass
func set_data(_data):
data=_data
%name.text=data["name"]
%intro.text=data["introduction"]
pass
func _on_btn_pressed() -> void:
click.emit(self,index)
pass # Replace with function body.

View File

@ -1,8 +1,10 @@
[gd_scene load_steps=5 format=3 uid="uid://bdsf6wswhb2ld"]
[gd_scene load_steps=7 format=3 uid="uid://bdsf6wswhb2ld"]
[ext_resource type="Texture2D" uid="uid://bqqn87q2jkcls" path="res://res/ui/ui_010_start_config/tuceng821.png" id="1_wairn"]
[ext_resource type="Texture2D" uid="uid://byna4rnuag31a" path="res://res/ui/ui_010_start_config/tuceng355.png" id="2_rjm0t"]
[ext_resource type="Script" path="res://scene/start_config_mes.gd" id="2_sp1ah"]
[ext_resource type="Texture2D" uid="uid://bgdqctrjh1pra" path="res://res/ui/ui_010_start_config/tuceng359.png" id="3_j5kdl"]
[ext_resource type="PackedScene" uid="uid://bdlo2wn4qnygv" path="res://scene/tool/tool_button.tscn" id="5_0bwor"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_qlrpf"]
texture = ExtResource("1_wairn")
@ -16,12 +18,14 @@ region_rect = Rect2(0, 0, 845, 319)
offset_right = 40.0
offset_bottom = 40.0
theme_override_styles/panel = SubResource("StyleBoxTexture_qlrpf")
script = ExtResource("2_sp1ah")
[node name="VBoxContainer" type="VBoxContainer" parent="."]
layout_mode = 2
theme_override_constants/separation = 29
[node name="Label" type="Label" parent="VBoxContainer"]
[node name="name" type="Label" parent="VBoxContainer"]
unique_name_in_owner = true
layout_mode = 2
theme_override_colors/font_color = Color(0, 0, 0, 1)
theme_override_font_sizes/font_size = 37
@ -41,7 +45,8 @@ theme_override_colors/font_color = Color(0, 0, 0, 1)
theme_override_font_sizes/font_size = 21
text = "背景故事:"
[node name="Label2" type="Label" parent="VBoxContainer/hbox"]
[node name="intro" type="Label" parent="VBoxContainer/hbox"]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 0
@ -66,11 +71,12 @@ theme_override_colors/font_color = Color(0, 0, 0, 1)
theme_override_font_sizes/font_size = 21
text = "背包:"
[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer/flow/HBoxContainer"]
[node name="bag_add_pos" type="HBoxContainer" parent="VBoxContainer/flow/HBoxContainer"]
unique_name_in_owner = true
layout_mode = 2
theme_override_constants/separation = 9
[node name="Label" type="Label" parent="VBoxContainer/flow/HBoxContainer/HBoxContainer"]
[node name="Label" type="Label" parent="VBoxContainer/flow/HBoxContainer/bag_add_pos"]
layout_mode = 2
size_flags_horizontal = 0
size_flags_vertical = 0
@ -78,7 +84,7 @@ theme_override_colors/font_color = Color(0, 0, 0, 1)
theme_override_font_sizes/font_size = 21
text = "xxx"
[node name="Label2" type="Label" parent="VBoxContainer/flow/HBoxContainer/HBoxContainer"]
[node name="Label2" type="Label" parent="VBoxContainer/flow/HBoxContainer/bag_add_pos"]
layout_mode = 2
size_flags_horizontal = 0
size_flags_vertical = 0
@ -106,12 +112,13 @@ theme_override_colors/font_color = Color(0, 0, 0, 1)
theme_override_font_sizes/font_size = 21
text = "增添:"
[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer/flow/HBoxContainer2"]
[node name="buff_add_pos" type="HBoxContainer" parent="VBoxContainer/flow/HBoxContainer2"]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 0
theme_override_constants/separation = 15
[node name="Label" type="Label" parent="VBoxContainer/flow/HBoxContainer2/HBoxContainer"]
[node name="Label" type="Label" parent="VBoxContainer/flow/HBoxContainer2/buff_add_pos"]
layout_mode = 2
size_flags_horizontal = 0
size_flags_vertical = 0
@ -119,7 +126,7 @@ theme_override_colors/font_color = Color(0, 0, 0, 1)
theme_override_font_sizes/font_size = 21
text = "xxx"
[node name="Label2" type="Label" parent="VBoxContainer/flow/HBoxContainer2/HBoxContainer"]
[node name="Label2" type="Label" parent="VBoxContainer/flow/HBoxContainer2/buff_add_pos"]
layout_mode = 2
size_flags_horizontal = 0
size_flags_vertical = 0
@ -135,11 +142,12 @@ theme_override_colors/font_color = Color(0, 0, 0, 1)
theme_override_font_sizes/font_size = 21
text = "移除:"
[node name="HBoxContainer2" type="HBoxContainer" parent="VBoxContainer/flow/HBoxContainer2"]
[node name="buff_remove_pos" type="HBoxContainer" parent="VBoxContainer/flow/HBoxContainer2"]
unique_name_in_owner = true
layout_mode = 2
theme_override_constants/separation = 15
[node name="Label" type="Label" parent="VBoxContainer/flow/HBoxContainer2/HBoxContainer2"]
[node name="Label" type="Label" parent="VBoxContainer/flow/HBoxContainer2/buff_remove_pos"]
layout_mode = 2
size_flags_horizontal = 0
size_flags_vertical = 0
@ -147,7 +155,7 @@ theme_override_colors/font_color = Color(0, 0, 0, 1)
theme_override_font_sizes/font_size = 21
text = "xxx"
[node name="Label2" type="Label" parent="VBoxContainer/flow/HBoxContainer2/HBoxContainer2"]
[node name="Label2" type="Label" parent="VBoxContainer/flow/HBoxContainer2/buff_remove_pos"]
layout_mode = 2
size_flags_horizontal = 0
size_flags_vertical = 0
@ -167,13 +175,14 @@ theme_override_colors/font_color = Color(0, 0, 0, 1)
theme_override_font_sizes/font_size = 21
text = "人际关系:"
[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer/flow/HBoxContainer3"]
[node name="relationshape_add_pos" type="HBoxContainer" parent="VBoxContainer/flow/HBoxContainer3"]
unique_name_in_owner = true
layout_mode = 2
[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer/flow/HBoxContainer3/HBoxContainer"]
[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer/flow/HBoxContainer3/relationshape_add_pos"]
layout_mode = 2
[node name="Label" type="Label" parent="VBoxContainer/flow/HBoxContainer3/HBoxContainer/HBoxContainer"]
[node name="Label" type="Label" parent="VBoxContainer/flow/HBoxContainer3/relationshape_add_pos/HBoxContainer"]
layout_mode = 2
size_flags_horizontal = 0
size_flags_vertical = 0
@ -181,7 +190,7 @@ theme_override_colors/font_color = Color(0, 0, 0, 1)
theme_override_font_sizes/font_size = 21
text = "xxx:"
[node name="Label2" type="Label" parent="VBoxContainer/flow/HBoxContainer3/HBoxContainer/HBoxContainer"]
[node name="Label2" type="Label" parent="VBoxContainer/flow/HBoxContainer3/relationshape_add_pos/HBoxContainer"]
layout_mode = 2
size_flags_horizontal = 0
size_flags_vertical = 0
@ -189,10 +198,10 @@ theme_override_colors/font_color = Color(0, 0, 0, 1)
theme_override_font_sizes/font_size = 21
text = "100"
[node name="HBoxContainer2" type="HBoxContainer" parent="VBoxContainer/flow/HBoxContainer3/HBoxContainer"]
[node name="HBoxContainer2" type="HBoxContainer" parent="VBoxContainer/flow/HBoxContainer3/relationshape_add_pos"]
layout_mode = 2
[node name="Label" type="Label" parent="VBoxContainer/flow/HBoxContainer3/HBoxContainer/HBoxContainer2"]
[node name="Label" type="Label" parent="VBoxContainer/flow/HBoxContainer3/relationshape_add_pos/HBoxContainer2"]
layout_mode = 2
size_flags_horizontal = 0
size_flags_vertical = 0
@ -200,7 +209,7 @@ theme_override_colors/font_color = Color(0, 0, 0, 1)
theme_override_font_sizes/font_size = 21
text = "xxx:"
[node name="Label2" type="Label" parent="VBoxContainer/flow/HBoxContainer3/HBoxContainer/HBoxContainer2"]
[node name="Label2" type="Label" parent="VBoxContainer/flow/HBoxContainer3/relationshape_add_pos/HBoxContainer2"]
layout_mode = 2
size_flags_horizontal = 0
size_flags_vertical = 0
@ -219,7 +228,8 @@ theme_override_colors/font_color = Color(0, 0, 0, 1)
theme_override_font_sizes/font_size = 21
text = "开局地点:"
[node name="Label2" type="Label" parent="VBoxContainer/flow/HBoxContainer4"]
[node name="star_pos" type="Label" parent="VBoxContainer/flow/HBoxContainer4"]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 0
size_flags_vertical = 0
@ -236,7 +246,8 @@ patch_margin_left = 5
patch_margin_top = 7
patch_margin_right = 20
[node name="TextureRect" type="TextureRect" parent="VBoxContainer/NinePatchRect"]
[node name="btn_icon" type="TextureRect" parent="VBoxContainer/NinePatchRect"]
unique_name_in_owner = true
layout_mode = 1
anchors_preset = -1
anchor_left = 0.148387
@ -250,12 +261,22 @@ expand_mode = 1
stretch_mode = 5
metadata/_edit_use_anchors_ = true
[node name="Button" type="Button" parent="VBoxContainer/NinePatchRect"]
[node name="select_label" type="Label" parent="VBoxContainer/NinePatchRect"]
unique_name_in_owner = true
visible = false
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
focus_mode = 0
flat = true
theme_override_font_sizes/font_size = 20
text = "选择"
horizontal_alignment = 1
vertical_alignment = 1
[node name="btn" parent="VBoxContainer/NinePatchRect" instance=ExtResource("5_0bwor")]
unique_name_in_owner = true
layout_mode = 1
[connection signal="pressed" from="VBoxContainer/NinePatchRect/btn" to="." method="_on_btn_pressed"]