Newer
Older
DungeonShooting / DungeonShooting_Godot / prefab / ui / MapEditorCreateMark.tscn
@小李xl 小李xl on 11 Dec 2023 15 KB 地图编辑器标记预览功能
  1. [gd_scene load_steps=12 format=3 uid="uid://bt4xo2lb4h4rx"]
  2.  
  3. [ext_resource type="Script" path="res://src/game/ui/mapEditorCreateMark/MapEditorCreateMarkPanel.cs" id="1_cjivg"]
  4. [ext_resource type="Texture2D" uid="uid://n4atvj5fkcpg" path="res://resource/sprite/ui/commonIcon/Add.png" id="2_pxemo"]
  5. [ext_resource type="Material" uid="uid://cces3bhds7jyi" path="res://resource/material/Blend.tres" id="2_xb40b"]
  6. [ext_resource type="Texture2D" uid="uid://c5778ntk2rdon" path="res://resource/sprite/ui/commonIcon/Delete.png" id="3_7xihk"]
  7. [ext_resource type="Texture2D" uid="uid://dligpyhp72sg7" path="res://resource/sprite/ui/commonIcon/Right.png" id="3_v5clf"]
  8. [ext_resource type="Shader" path="res://resource/material/Blend.gdshader" id="4_7uegb"]
  9. [ext_resource type="Script" path="res://src/game/ui/mapEditorCreateMark/attribute/NumberAttribute.cs" id="6_1ym7l"]
  10. [ext_resource type="Script" path="res://src/game/ui/mapEditorCreateMark/attribute/ObjectAttribute.cs" id="7_516p2"]
  11. [ext_resource type="Script" path="res://src/game/ui/mapEditorCreateMark/attribute/OptionAttribute.cs" id="7_o1tg2"]
  12. [ext_resource type="Texture2D" uid="uid://dggb6p4sdmfry" path="res://resource/sprite/ui/commonIcon/Edit.png" id="7_yeuy4"]
  13.  
  14. [sub_resource type="ShaderMaterial" id="ShaderMaterial_ywcv8"]
  15. resource_local_to_scene = true
  16. shader = ExtResource("4_7uegb")
  17. shader_parameter/blend = Color(1, 1, 1, 1)
  18. shader_parameter/schedule = 0.0
  19. shader_parameter/modulate = Color(1, 1, 1, 1)
  20. shader_parameter/show_outline = true
  21. shader_parameter/outline_color = Color(1, 1, 1, 1)
  22. shader_parameter/outline_rainbow = false
  23. shader_parameter/outline_use_blend = true
  24. shader_parameter/grey = 0.0
  25.  
  26. [node name="MapEditorCreateMark" type="Control"]
  27. layout_mode = 3
  28. anchors_preset = 15
  29. anchor_right = 1.0
  30. anchor_bottom = 1.0
  31. grow_horizontal = 2
  32. grow_vertical = 2
  33. script = ExtResource("1_cjivg")
  34.  
  35. [node name="MarginContainer" type="MarginContainer" parent="."]
  36. layout_mode = 1
  37. anchors_preset = 15
  38. anchor_right = 1.0
  39. anchor_bottom = 1.0
  40. grow_horizontal = 2
  41. grow_vertical = 2
  42. theme_override_constants/margin_left = 20
  43. theme_override_constants/margin_top = 20
  44. theme_override_constants/margin_right = 20
  45. theme_override_constants/margin_bottom = 20
  46.  
  47. [node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer"]
  48. layout_mode = 2
  49. theme_override_constants/separation = 20
  50.  
  51. [node name="HBoxContainer3" type="HBoxContainer" parent="MarginContainer/VBoxContainer"]
  52. layout_mode = 2
  53.  
  54. [node name="HBoxContainer2" type="HBoxContainer" parent="MarginContainer/VBoxContainer/HBoxContainer3"]
  55. layout_mode = 2
  56. size_flags_horizontal = 3
  57.  
  58. [node name="PosLabel" type="Label" parent="MarginContainer/VBoxContainer/HBoxContainer3/HBoxContainer2"]
  59. layout_mode = 2
  60. size_flags_horizontal = 3
  61. size_flags_vertical = 0
  62. size_flags_stretch_ratio = 30.0
  63. text = "区域位置:"
  64. horizontal_alignment = 2
  65. vertical_alignment = 1
  66.  
  67. [node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer/VBoxContainer/HBoxContainer3/HBoxContainer2"]
  68. layout_mode = 2
  69. size_flags_horizontal = 3
  70. size_flags_stretch_ratio = 70.0
  71.  
  72. [node name="HBoxContainer" type="HBoxContainer" parent="MarginContainer/VBoxContainer/HBoxContainer3/HBoxContainer2/VBoxContainer"]
  73. layout_mode = 2
  74. size_flags_vertical = 3
  75.  
  76. [node name="Label" type="Label" parent="MarginContainer/VBoxContainer/HBoxContainer3/HBoxContainer2/VBoxContainer/HBoxContainer"]
  77. layout_mode = 2
  78. text = "X"
  79.  
  80. [node name="PosX" type="SpinBox" parent="MarginContainer/VBoxContainer/HBoxContainer3/HBoxContainer2/VBoxContainer/HBoxContainer"]
  81. custom_minimum_size = Vector2(200, 0)
  82. layout_mode = 2
  83. allow_greater = true
  84. allow_lesser = true
  85. custom_arrow_step = 1.0
  86.  
  87. [node name="HBoxContainer2" type="HBoxContainer" parent="MarginContainer/VBoxContainer/HBoxContainer3/HBoxContainer2/VBoxContainer"]
  88. layout_mode = 2
  89. size_flags_vertical = 3
  90.  
  91. [node name="Label" type="Label" parent="MarginContainer/VBoxContainer/HBoxContainer3/HBoxContainer2/VBoxContainer/HBoxContainer2"]
  92. layout_mode = 2
  93. text = "Y"
  94.  
  95. [node name="PosY" type="SpinBox" parent="MarginContainer/VBoxContainer/HBoxContainer3/HBoxContainer2/VBoxContainer/HBoxContainer2"]
  96. custom_minimum_size = Vector2(200, 0)
  97. layout_mode = 2
  98. allow_greater = true
  99. allow_lesser = true
  100. custom_arrow_step = 1.0
  101.  
  102. [node name="HBoxContainer3" type="HBoxContainer" parent="MarginContainer/VBoxContainer/HBoxContainer3"]
  103. layout_mode = 2
  104. size_flags_horizontal = 3
  105.  
  106. [node name="SizeLabel" type="Label" parent="MarginContainer/VBoxContainer/HBoxContainer3/HBoxContainer3"]
  107. layout_mode = 2
  108. size_flags_horizontal = 3
  109. size_flags_vertical = 0
  110. size_flags_stretch_ratio = 30.0
  111. text = "区域大小:"
  112. horizontal_alignment = 2
  113. vertical_alignment = 1
  114.  
  115. [node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer/VBoxContainer/HBoxContainer3/HBoxContainer3"]
  116. layout_mode = 2
  117. size_flags_horizontal = 3
  118. size_flags_stretch_ratio = 70.0
  119.  
  120. [node name="HBoxContainer" type="HBoxContainer" parent="MarginContainer/VBoxContainer/HBoxContainer3/HBoxContainer3/VBoxContainer"]
  121. layout_mode = 2
  122. size_flags_vertical = 3
  123.  
  124. [node name="Label" type="Label" parent="MarginContainer/VBoxContainer/HBoxContainer3/HBoxContainer3/VBoxContainer/HBoxContainer"]
  125. layout_mode = 2
  126. text = "X"
  127.  
  128. [node name="SizeX" type="SpinBox" parent="MarginContainer/VBoxContainer/HBoxContainer3/HBoxContainer3/VBoxContainer/HBoxContainer"]
  129. custom_minimum_size = Vector2(200, 0)
  130. layout_mode = 2
  131. max_value = 9999.0
  132. value = 16.0
  133. custom_arrow_step = 1.0
  134.  
  135. [node name="HBoxContainer2" type="HBoxContainer" parent="MarginContainer/VBoxContainer/HBoxContainer3/HBoxContainer3/VBoxContainer"]
  136. layout_mode = 2
  137. size_flags_vertical = 3
  138.  
  139. [node name="Label" type="Label" parent="MarginContainer/VBoxContainer/HBoxContainer3/HBoxContainer3/VBoxContainer/HBoxContainer2"]
  140. layout_mode = 2
  141. text = "Y"
  142.  
  143. [node name="SizeY" type="SpinBox" parent="MarginContainer/VBoxContainer/HBoxContainer3/HBoxContainer3/VBoxContainer/HBoxContainer2"]
  144. custom_minimum_size = Vector2(200, 0)
  145. layout_mode = 2
  146. max_value = 9999.0
  147. value = 16.0
  148. custom_arrow_step = 1.0
  149.  
  150. [node name="DelayContainer" type="HBoxContainer" parent="MarginContainer/VBoxContainer/HBoxContainer3"]
  151. layout_mode = 2
  152. size_flags_horizontal = 3
  153.  
  154. [node name="DelayNameLabel" type="Label" parent="MarginContainer/VBoxContainer/HBoxContainer3/DelayContainer"]
  155. custom_minimum_size = Vector2(250, 0)
  156. layout_mode = 2
  157. size_flags_horizontal = 3
  158. size_flags_vertical = 0
  159. size_flags_stretch_ratio = 30.0
  160. text = "延时时间(秒):"
  161. horizontal_alignment = 2
  162. vertical_alignment = 1
  163.  
  164. [node name="DelayInput" type="SpinBox" parent="MarginContainer/VBoxContainer/HBoxContainer3/DelayContainer"]
  165. custom_minimum_size = Vector2(0, 43)
  166. layout_mode = 2
  167. size_flags_horizontal = 3
  168. size_flags_vertical = 0
  169. size_flags_stretch_ratio = 70.0
  170. max_value = 30.0
  171. step = 0.01
  172. custom_arrow_step = 0.1
  173.  
  174. [node name="AddMark" type="Button" parent="MarginContainer/VBoxContainer"]
  175. layout_mode = 2
  176. size_flags_horizontal = 0
  177. text = "添加物体"
  178. icon = ExtResource("2_pxemo")
  179.  
  180. [node name="Panel" type="Panel" parent="MarginContainer/VBoxContainer"]
  181. layout_mode = 2
  182. size_flags_vertical = 3
  183.  
  184. [node name="MarginContainer" type="MarginContainer" parent="MarginContainer/VBoxContainer/Panel"]
  185. layout_mode = 1
  186. anchors_preset = 15
  187. anchor_right = 1.0
  188. anchor_bottom = 1.0
  189. grow_horizontal = 2
  190. grow_vertical = 2
  191. theme_override_constants/margin_left = 2
  192. theme_override_constants/margin_top = 2
  193. theme_override_constants/margin_right = 2
  194. theme_override_constants/margin_bottom = 2
  195.  
  196. [node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer/VBoxContainer/Panel/MarginContainer"]
  197. layout_mode = 2
  198.  
  199. [node name="HBoxContainer" type="HBoxContainer" parent="MarginContainer/VBoxContainer/Panel/MarginContainer/VBoxContainer"]
  200. custom_minimum_size = Vector2(0, 60)
  201. layout_mode = 2
  202.  
  203. [node name="Control" type="Control" parent="MarginContainer/VBoxContainer/Panel/MarginContainer/VBoxContainer/HBoxContainer"]
  204. custom_minimum_size = Vector2(80, 0)
  205. layout_mode = 2
  206.  
  207. [node name="IconTitle" type="Label" parent="MarginContainer/VBoxContainer/Panel/MarginContainer/VBoxContainer/HBoxContainer"]
  208. custom_minimum_size = Vector2(100, 0)
  209. layout_mode = 2
  210. text = "图标"
  211. horizontal_alignment = 1
  212. vertical_alignment = 1
  213.  
  214. [node name="IdTitle" type="Label" parent="MarginContainer/VBoxContainer/Panel/MarginContainer/VBoxContainer/HBoxContainer"]
  215. custom_minimum_size = Vector2(250, 0)
  216. layout_mode = 2
  217. text = "Id"
  218. horizontal_alignment = 1
  219. vertical_alignment = 1
  220.  
  221. [node name="NameTitle" type="Label" parent="MarginContainer/VBoxContainer/Panel/MarginContainer/VBoxContainer/HBoxContainer"]
  222. custom_minimum_size = Vector2(350, 0)
  223. layout_mode = 2
  224. text = "名称"
  225. horizontal_alignment = 1
  226. vertical_alignment = 1
  227.  
  228. [node name="TypeTitle" type="Label" parent="MarginContainer/VBoxContainer/Panel/MarginContainer/VBoxContainer/HBoxContainer"]
  229. custom_minimum_size = Vector2(150, 0)
  230. layout_mode = 2
  231. text = "类型"
  232. horizontal_alignment = 1
  233. vertical_alignment = 1
  234.  
  235. [node name="WeightTitle" type="Label" parent="MarginContainer/VBoxContainer/Panel/MarginContainer/VBoxContainer/HBoxContainer"]
  236. custom_minimum_size = Vector2(150, 0)
  237. layout_mode = 2
  238. text = "权重"
  239. horizontal_alignment = 1
  240. vertical_alignment = 1
  241.  
  242. [node name="ExtraTitle" type="Label" parent="MarginContainer/VBoxContainer/Panel/MarginContainer/VBoxContainer/HBoxContainer"]
  243. visible = false
  244. custom_minimum_size = Vector2(250, 0)
  245. layout_mode = 2
  246. size_flags_horizontal = 3
  247. text = "额外属性"
  248. horizontal_alignment = 1
  249. vertical_alignment = 1
  250.  
  251. [node name="ScrollContainer" type="ScrollContainer" parent="MarginContainer/VBoxContainer/Panel/MarginContainer/VBoxContainer"]
  252. layout_mode = 2
  253. size_flags_vertical = 3
  254.  
  255. [node name="MarkObject" type="PanelContainer" parent="MarginContainer/VBoxContainer/Panel/MarginContainer/VBoxContainer/ScrollContainer"]
  256. layout_mode = 2
  257. size_flags_horizontal = 3
  258.  
  259. [node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer/VBoxContainer/Panel/MarginContainer/VBoxContainer/ScrollContainer/MarkObject"]
  260. layout_mode = 2
  261. size_flags_horizontal = 3
  262.  
  263. [node name="HBoxContainer" type="HBoxContainer" parent="MarginContainer/VBoxContainer/Panel/MarginContainer/VBoxContainer/ScrollContainer/MarkObject/VBoxContainer"]
  264. custom_minimum_size = Vector2(0, 100)
  265. layout_mode = 2
  266.  
  267. [node name="ExpandButton" type="Button" parent="MarginContainer/VBoxContainer/Panel/MarginContainer/VBoxContainer/ScrollContainer/MarkObject/VBoxContainer/HBoxContainer"]
  268. custom_minimum_size = Vector2(80, 80)
  269. layout_mode = 2
  270. size_flags_vertical = 4
  271. icon = ExtResource("3_v5clf")
  272. flat = true
  273. icon_alignment = 1
  274.  
  275. [node name="Icon" type="TextureRect" parent="MarginContainer/VBoxContainer/Panel/MarginContainer/VBoxContainer/ScrollContainer/MarkObject/VBoxContainer/HBoxContainer"]
  276. material = SubResource("ShaderMaterial_ywcv8")
  277. custom_minimum_size = Vector2(100, 80)
  278. layout_mode = 2
  279. stretch_mode = 5
  280.  
  281. [node name="IdLabel" type="Label" parent="MarginContainer/VBoxContainer/Panel/MarginContainer/VBoxContainer/ScrollContainer/MarkObject/VBoxContainer/HBoxContainer"]
  282. custom_minimum_size = Vector2(250, 0)
  283. layout_mode = 2
  284. size_flags_vertical = 1
  285. text = "1001"
  286. horizontal_alignment = 1
  287. vertical_alignment = 1
  288. autowrap_mode = 3
  289.  
  290. [node name="NameLabel" type="Label" parent="MarginContainer/VBoxContainer/Panel/MarginContainer/VBoxContainer/ScrollContainer/MarkObject/VBoxContainer/HBoxContainer"]
  291. custom_minimum_size = Vector2(350, 0)
  292. layout_mode = 2
  293. size_flags_vertical = 1
  294. text = "名称"
  295. horizontal_alignment = 1
  296. vertical_alignment = 1
  297. autowrap_mode = 3
  298.  
  299. [node name="TypeLabel" type="Label" parent="MarginContainer/VBoxContainer/Panel/MarginContainer/VBoxContainer/ScrollContainer/MarkObject/VBoxContainer/HBoxContainer"]
  300. custom_minimum_size = Vector2(150, 0)
  301. layout_mode = 2
  302. size_flags_vertical = 1
  303. text = "武器"
  304. horizontal_alignment = 1
  305. vertical_alignment = 1
  306. autowrap_mode = 3
  307.  
  308. [node name="WeightEdit" type="SpinBox" parent="MarginContainer/VBoxContainer/Panel/MarginContainer/VBoxContainer/ScrollContainer/MarkObject/VBoxContainer/HBoxContainer"]
  309. custom_minimum_size = Vector2(150, 43)
  310. layout_mode = 2
  311. size_flags_vertical = 4
  312. max_value = 1000.0
  313. value = 100.0
  314. custom_arrow_step = 1.0
  315.  
  316. [node name="CenterContainer" type="CenterContainer" parent="MarginContainer/VBoxContainer/Panel/MarginContainer/VBoxContainer/ScrollContainer/MarkObject/VBoxContainer/HBoxContainer"]
  317. layout_mode = 2
  318. size_flags_horizontal = 3
  319.  
  320. [node name="DeleteButton" type="Button" parent="MarginContainer/VBoxContainer/Panel/MarginContainer/VBoxContainer/ScrollContainer/MarkObject/VBoxContainer/HBoxContainer/CenterContainer"]
  321. custom_minimum_size = Vector2(43, 43)
  322. layout_mode = 2
  323. size_flags_vertical = 4
  324. icon = ExtResource("3_7xihk")
  325.  
  326. [node name="ExpandPanel" type="MarginContainer" parent="."]
  327. layout_mode = 2
  328. offset_top = -423.0
  329. offset_right = 667.0
  330. offset_bottom = -353.0
  331. theme_override_constants/margin_left = 80
  332. theme_override_constants/margin_right = 2
  333.  
  334. [node name="ExpandGrid" type="GridContainer" parent="ExpandPanel"]
  335. layout_mode = 2
  336. columns = 2
  337.  
  338. [node name="NumberBar" type="Control" parent="."]
  339. custom_minimum_size = Vector2(0, 70)
  340. layout_mode = 2
  341. anchors_preset = 0
  342. offset_top = -320.0
  343. offset_right = 700.0
  344. offset_bottom = -250.0
  345. size_flags_horizontal = 3
  346. script = ExtResource("6_1ym7l")
  347.  
  348. [node name="AttrName" type="Label" parent="NumberBar"]
  349. layout_mode = 1
  350. anchors_preset = 4
  351. anchor_top = 0.5
  352. anchor_bottom = 0.5
  353. offset_top = -21.5
  354. offset_right = 250.0
  355. offset_bottom = 21.5
  356. grow_vertical = 2
  357. size_flags_horizontal = 3
  358. size_flags_stretch_ratio = 40.0
  359. text = "属性:"
  360.  
  361. [node name="NumInput" type="SpinBox" parent="NumberBar"]
  362. custom_minimum_size = Vector2(0, 43)
  363. layout_mode = 1
  364. anchors_preset = 4
  365. anchor_top = 0.5
  366. anchor_bottom = 0.5
  367. offset_left = 250.0
  368. offset_top = -21.0
  369. offset_right = 414.0
  370. offset_bottom = 22.0
  371. grow_vertical = 2
  372. size_flags_horizontal = 3
  373. size_flags_vertical = 4
  374. size_flags_stretch_ratio = 60.0
  375.  
  376. [node name="OptionBar" type="Control" parent="."]
  377. custom_minimum_size = Vector2(0, 70)
  378. layout_mode = 2
  379. anchors_preset = 0
  380. offset_top = -405.0
  381. offset_right = 700.0
  382. offset_bottom = -335.0
  383. size_flags_horizontal = 3
  384. script = ExtResource("7_o1tg2")
  385.  
  386. [node name="AttrName" type="Label" parent="OptionBar"]
  387. layout_mode = 1
  388. anchors_preset = 4
  389. anchor_top = 0.5
  390. anchor_bottom = 0.5
  391. offset_top = -21.5
  392. offset_right = 250.0
  393. offset_bottom = 21.5
  394. grow_vertical = 2
  395. size_flags_horizontal = 3
  396. size_flags_stretch_ratio = 40.0
  397. text = "属性:"
  398.  
  399. [node name="OptionInput" type="OptionButton" parent="OptionBar"]
  400. custom_minimum_size = Vector2(0, 43)
  401. layout_mode = 1
  402. anchors_preset = 4
  403. anchor_top = 0.5
  404. anchor_bottom = 0.5
  405. offset_left = 250.0
  406. offset_top = -21.0
  407. offset_right = 414.0
  408. offset_bottom = 22.0
  409. grow_vertical = 2
  410. size_flags_horizontal = 3
  411. size_flags_vertical = 4
  412. size_flags_stretch_ratio = 60.0
  413.  
  414. [node name="ObjectBar" type="Control" parent="."]
  415. custom_minimum_size = Vector2(0, 70)
  416. layout_mode = 2
  417. anchors_preset = 0
  418. offset_top = -234.0
  419. offset_right = 700.0
  420. offset_bottom = -164.0
  421. size_flags_horizontal = 3
  422. script = ExtResource("7_516p2")
  423.  
  424. [node name="AttrName" type="Label" parent="ObjectBar"]
  425. layout_mode = 1
  426. anchors_preset = 4
  427. anchor_top = 0.5
  428. anchor_bottom = 0.5
  429. offset_top = -21.5
  430. offset_right = 250.0
  431. offset_bottom = 21.5
  432. grow_vertical = 2
  433. size_flags_horizontal = 3
  434. size_flags_stretch_ratio = 25.0
  435. text = "物体:"
  436.  
  437. [node name="HBoxContainer" type="HBoxContainer" parent="ObjectBar"]
  438. layout_mode = 1
  439. anchors_preset = 4
  440. anchor_top = 0.5
  441. anchor_bottom = 0.5
  442. offset_left = 250.0
  443. offset_top = -35.0
  444. offset_right = 539.0
  445. offset_bottom = 35.0
  446. grow_vertical = 2
  447. size_flags_horizontal = 3
  448. size_flags_stretch_ratio = 75.0
  449.  
  450. [node name="SelectButton" type="Button" parent="ObjectBar/HBoxContainer"]
  451. custom_minimum_size = Vector2(43, 43)
  452. layout_mode = 2
  453. size_flags_vertical = 4
  454. size_flags_stretch_ratio = 60.0
  455. icon = ExtResource("7_yeuy4")
  456.  
  457. [node name="ObjectIcon" type="TextureRect" parent="ObjectBar/HBoxContainer"]
  458. visible = false
  459. material = ExtResource("2_xb40b")
  460. custom_minimum_size = Vector2(70, 70)
  461. layout_mode = 2
  462. stretch_mode = 5
  463.  
  464. [node name="ObjectName" type="Label" parent="ObjectBar/HBoxContainer"]
  465. layout_mode = 2
  466. size_flags_horizontal = 3
  467. text = "<未选择>"
  468.  
  469. [node name="DeleteButton" type="Button" parent="ObjectBar/HBoxContainer"]
  470. visible = false
  471. custom_minimum_size = Vector2(43, 43)
  472. layout_mode = 2
  473. size_flags_vertical = 4
  474. size_flags_stretch_ratio = 60.0
  475. icon = ExtResource("3_7xihk")