feat: added case, victim and witness UI elements
This commit is contained in:
parent
05a06b455a
commit
dda31f9b60
6 changed files with 234 additions and 68 deletions
60
flatscreen-project/objects/case_file.tscn
Normal file
60
flatscreen-project/objects/case_file.tscn
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
[gd_scene load_steps=7 format=3 uid="uid://cjyr1b0fxfofx"]
|
||||
|
||||
[sub_resource type="QuadMesh" id="QuadMesh_7cefc"]
|
||||
|
||||
[sub_resource type="GDScript" id="GDScript_7cefc"]
|
||||
script/source = "extends Area2D
|
||||
|
||||
|
||||
func _on_input_event(viewport: Node, event: InputEvent, _shape_idx: int) -> void:
|
||||
if event is InputEventMouseButton:
|
||||
if not $\"..\".is_open():
|
||||
$\"..\".request_open()
|
||||
else:
|
||||
$\"..\".request_close()
|
||||
viewport.set_input_as_handled()
|
||||
"
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_vo7lu"]
|
||||
size = Vector2(52.031464, 209.99301)
|
||||
|
||||
[sub_resource type="TextMesh" id="TextMesh_mes51"]
|
||||
flip_faces = true
|
||||
text = "Case"
|
||||
depth = 0.0
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_vo7lu"]
|
||||
offsets = PackedFloat32Array(1)
|
||||
colors = PackedColorArray(0, 0, 0, 1)
|
||||
|
||||
[sub_resource type="GradientTexture1D" id="GradientTexture1D_wjago"]
|
||||
gradient = SubResource("Gradient_vo7lu")
|
||||
|
||||
[node name="CaseFile" type="FilePopup"]
|
||||
|
||||
[node name="MeshInstance2D2" type="MeshInstance2D" parent="."]
|
||||
position = Vector2(21.5, 584.3357)
|
||||
scale = Vector2(77, 222.67134)
|
||||
mesh = SubResource("QuadMesh_7cefc")
|
||||
|
||||
[node name="MeshInstance2D" type="MeshInstance2D" parent="."]
|
||||
position = Vector2(-333.25, 486.25)
|
||||
scale = Vector2(667.5, 973.5)
|
||||
mesh = SubResource("QuadMesh_7cefc")
|
||||
|
||||
[node name="Area2D" type="Area2D" parent="."]
|
||||
position = Vector2(28.170658, 585.06274)
|
||||
script = SubResource("GDScript_7cefc")
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D"]
|
||||
scale = Vector2(1.0000002, 1.0000002)
|
||||
shape = SubResource("RectangleShape2D_vo7lu")
|
||||
|
||||
[node name="MeshInstance2D3" type="MeshInstance2D" parent="."]
|
||||
position = Vector2(30.888136, 582.9807)
|
||||
rotation = 1.5707964
|
||||
scale = Vector2(-347.0554, 307.87436)
|
||||
mesh = SubResource("TextMesh_mes51")
|
||||
texture = SubResource("GradientTexture1D_wjago")
|
||||
|
||||
[connection signal="input_event" from="Area2D" to="Area2D" method="_on_input_event"]
|
||||
60
flatscreen-project/objects/victim_file.tscn
Normal file
60
flatscreen-project/objects/victim_file.tscn
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
[gd_scene load_steps=7 format=3 uid="uid://qmb60kjx6yoe"]
|
||||
|
||||
[sub_resource type="QuadMesh" id="QuadMesh_7cefc"]
|
||||
|
||||
[sub_resource type="GDScript" id="GDScript_7cefc"]
|
||||
script/source = "extends Area2D
|
||||
|
||||
|
||||
func _on_input_event(viewport: Node, event: InputEvent, _shape_idx: int) -> void:
|
||||
if event is InputEventMouseButton:
|
||||
if not $\"..\".is_open():
|
||||
$\"..\".request_open()
|
||||
else:
|
||||
$\"..\".request_close()
|
||||
viewport.set_input_as_handled()
|
||||
"
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_vo7lu"]
|
||||
size = Vector2(52.031464, 209.99301)
|
||||
|
||||
[sub_resource type="TextMesh" id="TextMesh_7cefc"]
|
||||
flip_faces = true
|
||||
text = "Victim"
|
||||
depth = 0.0
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_vo7lu"]
|
||||
offsets = PackedFloat32Array(1)
|
||||
colors = PackedColorArray(0, 0, 0, 1)
|
||||
|
||||
[sub_resource type="GradientTexture1D" id="GradientTexture1D_wjago"]
|
||||
gradient = SubResource("Gradient_vo7lu")
|
||||
|
||||
[node name="VictimFile" type="FilePopup"]
|
||||
|
||||
[node name="MeshInstance2D2" type="MeshInstance2D" parent="."]
|
||||
position = Vector2(22.500002, 142.6643)
|
||||
scale = Vector2(77, 222.67134)
|
||||
mesh = SubResource("QuadMesh_7cefc")
|
||||
|
||||
[node name="MeshInstance2D" type="MeshInstance2D" parent="."]
|
||||
position = Vector2(-333.25, 486.25)
|
||||
scale = Vector2(667.5, 973.5)
|
||||
mesh = SubResource("QuadMesh_7cefc")
|
||||
|
||||
[node name="Area2D" type="Area2D" parent="."]
|
||||
position = Vector2(29.17066, 143.39133)
|
||||
script = SubResource("GDScript_7cefc")
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D"]
|
||||
scale = Vector2(1.0000002, 1.0000002)
|
||||
shape = SubResource("RectangleShape2D_vo7lu")
|
||||
|
||||
[node name="MeshInstance2D3" type="MeshInstance2D" parent="."]
|
||||
position = Vector2(33.037315, 137.30455)
|
||||
rotation = 1.5707964
|
||||
scale = Vector2(-347.0554, 307.87436)
|
||||
mesh = SubResource("TextMesh_7cefc")
|
||||
texture = SubResource("GradientTexture1D_wjago")
|
||||
|
||||
[connection signal="input_event" from="Area2D" to="Area2D" method="_on_input_event"]
|
||||
61
flatscreen-project/objects/witness_report.tscn
Normal file
61
flatscreen-project/objects/witness_report.tscn
Normal file
|
|
@ -0,0 +1,61 @@
|
|||
[gd_scene load_steps=7 format=3 uid="uid://drcl138k0gym0"]
|
||||
|
||||
[sub_resource type="QuadMesh" id="QuadMesh_7cefc"]
|
||||
|
||||
[sub_resource type="GDScript" id="GDScript_7cefc"]
|
||||
script/source = "extends Area2D
|
||||
|
||||
|
||||
func _on_input_event(viewport: Node, event: InputEvent, _shape_idx: int) -> void:
|
||||
if event is InputEventMouseButton:
|
||||
if not $\"..\".is_open():
|
||||
$\"..\".request_open()
|
||||
else:
|
||||
$\"..\".request_close()
|
||||
viewport.set_input_as_handled()
|
||||
"
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_vo7lu"]
|
||||
size = Vector2(52.031464, 209.99301)
|
||||
|
||||
[sub_resource type="TextMesh" id="TextMesh_vo7lu"]
|
||||
flip_faces = true
|
||||
text = "Witness"
|
||||
depth = 0.0
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_vo7lu"]
|
||||
offsets = PackedFloat32Array(1)
|
||||
colors = PackedColorArray(0, 0, 0, 1)
|
||||
|
||||
[sub_resource type="GradientTexture1D" id="GradientTexture1D_wjago"]
|
||||
gradient = SubResource("Gradient_vo7lu")
|
||||
|
||||
[node name="WitnessReport" type="FilePopup" node_paths=PackedStringArray("open_position")]
|
||||
open_position = NodePath("")
|
||||
|
||||
[node name="MeshInstance2D2" type="MeshInstance2D" parent="."]
|
||||
position = Vector2(21.59444, 373.7876)
|
||||
scale = Vector2(77, 222.67134)
|
||||
mesh = SubResource("QuadMesh_7cefc")
|
||||
|
||||
[node name="MeshInstance2D" type="MeshInstance2D" parent="."]
|
||||
position = Vector2(-333.25, 486.25)
|
||||
scale = Vector2(667.5, 973.5)
|
||||
mesh = SubResource("QuadMesh_7cefc")
|
||||
|
||||
[node name="Area2D" type="Area2D" parent="."]
|
||||
position = Vector2(28.265099, 374.51465)
|
||||
script = SubResource("GDScript_7cefc")
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D"]
|
||||
scale = Vector2(1.0000002, 1.0000002)
|
||||
shape = SubResource("RectangleShape2D_vo7lu")
|
||||
|
||||
[node name="MeshInstance2D3" type="MeshInstance2D" parent="."]
|
||||
position = Vector2(30.982576, 372.43265)
|
||||
rotation = 1.5707964
|
||||
scale = Vector2(-347.0554, 307.87436)
|
||||
mesh = SubResource("TextMesh_vo7lu")
|
||||
texture = SubResource("GradientTexture1D_wjago")
|
||||
|
||||
[connection signal="input_event" from="Area2D" to="Area2D" method="_on_input_event"]
|
||||
|
|
@ -20,3 +20,7 @@ config/icon="res://icon.svg"
|
|||
window/size/viewport_width=1920
|
||||
window/size/viewport_height=1080
|
||||
window/stretch/mode="canvas_items"
|
||||
|
||||
[rendering]
|
||||
|
||||
anti_aliasing/quality/msaa_2d=1
|
||||
|
|
|
|||
|
|
@ -1,6 +1,9 @@
|
|||
[gd_scene load_steps=13 format=3 uid="uid://o3ri154wpbrx"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://btcmnw6q6g0h0" path="res://objects/pinned_photo.tscn" id="1_7cefc"]
|
||||
[ext_resource type="PackedScene" uid="uid://qmb60kjx6yoe" path="res://objects/victim_file.tscn" id="2_vo7lu"]
|
||||
[ext_resource type="PackedScene" uid="uid://drcl138k0gym0" path="res://objects/witness_report.tscn" id="3_wjago"]
|
||||
[ext_resource type="PackedScene" uid="uid://cjyr1b0fxfofx" path="res://objects/case_file.tscn" id="4_cnvne"]
|
||||
|
||||
[sub_resource type="QuadMesh" id="QuadMesh_usqe2"]
|
||||
|
||||
|
|
@ -12,40 +15,16 @@ colors = PackedColorArray(0.7490196, 0.7019608, 0.6431373, 1)
|
|||
gradient = SubResource("Gradient_usqe2")
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_87mh6"]
|
||||
size = Vector2(1074, 533)
|
||||
size = Vector2(965, 533)
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_7cefc"]
|
||||
size = Vector2(295, 346)
|
||||
size = Vector2(400, 64)
|
||||
|
||||
[sub_resource type="QuadMesh" id="QuadMesh_7cefc"]
|
||||
[sub_resource type="QuadMesh" id="QuadMesh_cnvne"]
|
||||
|
||||
[sub_resource type="GDScript" id="GDScript_7cefc"]
|
||||
script/source = "extends Area2D
|
||||
[sub_resource type="QuadMesh" id="QuadMesh_thvsl"]
|
||||
|
||||
|
||||
func _on_input_event(viewport: Node, event: InputEvent, _shape_idx: int) -> void:
|
||||
if event is InputEventMouseButton:
|
||||
if not $\"..\".is_open():
|
||||
$\"..\".request_open()
|
||||
else:
|
||||
$\"..\".request_close()
|
||||
viewport.set_input_as_handled()
|
||||
"
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_vo7lu"]
|
||||
size = Vector2(52.031464, 209.99301)
|
||||
|
||||
[sub_resource type="TextMesh" id="TextMesh_7cefc"]
|
||||
flip_faces = true
|
||||
text = "Victim"
|
||||
depth = 0.0
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_vo7lu"]
|
||||
offsets = PackedFloat32Array(1)
|
||||
colors = PackedColorArray(0, 0, 0, 1)
|
||||
|
||||
[sub_resource type="GradientTexture1D" id="GradientTexture1D_wjago"]
|
||||
gradient = SubResource("Gradient_vo7lu")
|
||||
[sub_resource type="ImageTexture" id="ImageTexture_cnvne"]
|
||||
|
||||
[node name="FlatscreenRoot" type="Node2D"]
|
||||
|
||||
|
|
@ -62,58 +41,60 @@ mesh = SubResource("QuadMesh_usqe2")
|
|||
texture = SubResource("GradientTexture1D_87mh6")
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Pinboard"]
|
||||
position = Vector2(691, 465.5)
|
||||
position = Vector2(636.5, 465.5)
|
||||
shape = SubResource("RectangleShape2D_87mh6")
|
||||
|
||||
[node name="CollisionShape2D2" type="CollisionShape2D" parent="Pinboard"]
|
||||
position = Vector2(1392.5, 560)
|
||||
position = Vector2(1340, 701)
|
||||
shape = SubResource("RectangleShape2D_7cefc")
|
||||
|
||||
[node name="PinnedPhoto" parent="." instance=ExtResource("1_7cefc")]
|
||||
[node name="PhotosParent" type="Node2D" parent="."]
|
||||
|
||||
[node name="PinnedPhoto" parent="PhotosParent" instance=ExtResource("1_7cefc")]
|
||||
position = Vector2(479, 904)
|
||||
|
||||
[node name="PhotoInbox" type="PhotoInbox" parent="."]
|
||||
position = Vector2(1767, 890)
|
||||
[node name="PhotoInbox" type="PhotoInbox" parent="PhotosParent"]
|
||||
position = Vector2(1679, 900)
|
||||
photo_scene = ExtResource("1_7cefc")
|
||||
|
||||
[node name="TextEdit" type="TextEdit" parent="."]
|
||||
offset_left = 1604.0
|
||||
offset_top = 181.0
|
||||
offset_right = 1822.0
|
||||
offset_bottom = 346.0
|
||||
|
||||
[node name="FilePopup" type="FilePopup" parent="." node_paths=PackedStringArray("open_position")]
|
||||
[node name="VictimFile" parent="." node_paths=PackedStringArray("open_position") instance=ExtResource("2_vo7lu")]
|
||||
position = Vector2(12.000002, 0)
|
||||
rotation = 0.08145886
|
||||
open_position = NodePath("../FilePositionTarget")
|
||||
|
||||
[node name="MeshInstance2D2" type="MeshInstance2D" parent="FilePopup"]
|
||||
position = Vector2(22.500002, 142.6643)
|
||||
scale = Vector2(77, 222.67134)
|
||||
mesh = SubResource("QuadMesh_7cefc")
|
||||
[node name="WitnessReport" parent="." node_paths=PackedStringArray("open_position") instance=ExtResource("3_wjago")]
|
||||
position = Vector2(-20, 7.000004)
|
||||
rotation = -0.037705522
|
||||
open_position = NodePath("../FilePositionTarget")
|
||||
|
||||
[node name="MeshInstance2D" type="MeshInstance2D" parent="FilePopup"]
|
||||
position = Vector2(-333.25, 486.25)
|
||||
scale = Vector2(667.5, 973.5)
|
||||
mesh = SubResource("QuadMesh_7cefc")
|
||||
|
||||
[node name="Area2D" type="Area2D" parent="FilePopup"]
|
||||
position = Vector2(29.17066, 143.39133)
|
||||
script = SubResource("GDScript_7cefc")
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="FilePopup/Area2D"]
|
||||
scale = Vector2(1.0000002, 1.0000002)
|
||||
shape = SubResource("RectangleShape2D_vo7lu")
|
||||
|
||||
[node name="MeshInstance2D3" type="MeshInstance2D" parent="FilePopup"]
|
||||
position = Vector2(33.037315, 137.30455)
|
||||
rotation = 1.5707964
|
||||
scale = Vector2(-347.0554, 307.87436)
|
||||
mesh = SubResource("TextMesh_7cefc")
|
||||
texture = SubResource("GradientTexture1D_wjago")
|
||||
[node name="CaseFile" parent="." node_paths=PackedStringArray("open_position") instance=ExtResource("4_cnvne")]
|
||||
position = Vector2(4.999998, 31)
|
||||
rotation = 0.013079915
|
||||
open_position = NodePath("../FilePositionTarget")
|
||||
|
||||
[node name="FilePositionTarget" type="Node2D" parent="."]
|
||||
position = Vector2(593, 40.000004)
|
||||
rotation = 0.24976808
|
||||
position = Vector2(678.00006, 63.999996)
|
||||
rotation = -0.0034519732
|
||||
|
||||
[connection signal="input_event" from="FilePopup/Area2D" to="FilePopup/Area2D" method="_on_input_event"]
|
||||
[node name="Handin" type="Node2D" parent="."]
|
||||
position = Vector2(1544.9998, 15)
|
||||
rotation = -0.042017065
|
||||
|
||||
[node name="MeshInstance2D" type="MeshInstance2D" parent="Handin"]
|
||||
position = Vector2(169.87817, 238.88794)
|
||||
scale = Vector2(390.23935, 519.97754)
|
||||
mesh = SubResource("QuadMesh_cnvne")
|
||||
|
||||
[node name="TextEdit" type="TextEdit" parent="Handin"]
|
||||
offset_left = 3.0
|
||||
offset_top = 344.75198
|
||||
offset_right = 342.7721
|
||||
offset_bottom = 485.0
|
||||
backspace_deletes_composite_character_enabled = true
|
||||
wrap_mode = 1
|
||||
|
||||
[node name="MeshInstance2D2" type="MeshInstance2D" parent="Handin"]
|
||||
position = Vector2(296.84607, 57.51972)
|
||||
scale = Vector2(97.55189, 112.9032)
|
||||
mesh = SubResource("QuadMesh_thvsl")
|
||||
texture = SubResource("ImageTexture_cnvne")
|
||||
|
|
|
|||
|
|
@ -24,5 +24,5 @@ private:
|
|||
bool desire_open{ false };
|
||||
Transform2D home_position{};
|
||||
Node2D *open_position{ nullptr };
|
||||
double const ANIM_SPEED{ 3.0 };
|
||||
double const ANIM_SPEED{ 5.0 };
|
||||
};
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue