note instantiating fixes, hold note rendering experimentation
This commit is contained in:
+75
-73
@@ -1,8 +1,7 @@
|
|||||||
[gd_scene load_steps=13 format=3 uid="uid://bqh00ot0csqmk"]
|
[gd_scene load_steps=15 format=3 uid="uid://bqh00ot0csqmk"]
|
||||||
|
|
||||||
[ext_resource type="Script" path="res://Scripts/Scenes/Play.cs" id="1_d6iv3"]
|
[ext_resource type="Script" path="res://Scripts/Scenes/Play.cs" id="1_d6iv3"]
|
||||||
[ext_resource type="Texture2D" uid="uid://dkohutwp0yujj" path="res://_Assets/Textures/HitLine/BGLine.png" id="2_kpt0a"]
|
[ext_resource type="PackedScene" uid="uid://cyetvgmwnoy8l" path="res://Things/HitLine.tscn" id="2_8g6gv"]
|
||||||
[ext_resource type="PackedScene" uid="uid://cyopljug0duaa" path="res://Things/TunnelObjects/Notes/NoteTouch.tscn" id="3_qp71m"]
|
|
||||||
|
|
||||||
[sub_resource type="Environment" id="Environment_nefjb"]
|
[sub_resource type="Environment" id="Environment_nefjb"]
|
||||||
ambient_light_source = 1
|
ambient_light_source = 1
|
||||||
@@ -47,7 +46,7 @@ blend_shape_mode = 0
|
|||||||
shadow_mesh = SubResource("ArrayMesh_40gjx")
|
shadow_mesh = SubResource("ArrayMesh_40gjx")
|
||||||
|
|
||||||
[sub_resource type="ViewportTexture" id="ViewportTexture_ln6xl"]
|
[sub_resource type="ViewportTexture" id="ViewportTexture_ln6xl"]
|
||||||
viewport_path = NodePath("SubViewportContainer/2D Viewport")
|
viewport_path = NodePath("ViewportView/2D Viewport")
|
||||||
|
|
||||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_3rv8i"]
|
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_3rv8i"]
|
||||||
resource_local_to_scene = true
|
resource_local_to_scene = true
|
||||||
@@ -56,19 +55,31 @@ shading_mode = 0
|
|||||||
albedo_texture = SubResource("ViewportTexture_ln6xl")
|
albedo_texture = SubResource("ViewportTexture_ln6xl")
|
||||||
uv1_scale = Vector3(-1, 1, 1)
|
uv1_scale = Vector3(-1, 1, 1)
|
||||||
|
|
||||||
[sub_resource type="Gradient" id="Gradient_djnn4"]
|
[sub_resource type="CanvasItemMaterial" id="CanvasItemMaterial_1ouek"]
|
||||||
colors = PackedColorArray(0, 0, 0, 1, 0, 0, 0, 0)
|
blend_mode = 3
|
||||||
|
|
||||||
[sub_resource type="GradientTexture1D" id="GradientTexture1D_vv2ac"]
|
[sub_resource type="CanvasItemMaterial" id="CanvasItemMaterial_5ymar"]
|
||||||
gradient = SubResource("Gradient_djnn4")
|
blend_mode = 3
|
||||||
width = 2048
|
light_mode = 1
|
||||||
|
|
||||||
|
[sub_resource type="Gradient" id="Gradient_ahp1v"]
|
||||||
|
offsets = PackedFloat32Array(0, 0.548295, 1)
|
||||||
|
colors = PackedColorArray(0.794938, 0.436061, 3.46541e-06, 1, 1, 0.972549, 0.262745, 1, 1, 1, 0.607843, 1)
|
||||||
|
|
||||||
|
[sub_resource type="GradientTexture1D" id="GradientTexture1D_pha5y"]
|
||||||
|
gradient = SubResource("Gradient_ahp1v")
|
||||||
|
width = 1920
|
||||||
|
|
||||||
|
[sub_resource type="CanvasItemMaterial" id="CanvasItemMaterial_27qpl"]
|
||||||
|
blend_mode = 1
|
||||||
|
|
||||||
[sub_resource type="LabelSettings" id="LabelSettings_dj3ei"]
|
[sub_resource type="LabelSettings" id="LabelSettings_dj3ei"]
|
||||||
font_size = 271
|
font_size = 271
|
||||||
|
|
||||||
[node name="Play" type="Node" node_paths=PackedStringArray("noteDisplay")]
|
[node name="Play" type="Node" node_paths=PackedStringArray("noteDisplay", "scrollDisplay")]
|
||||||
script = ExtResource("1_d6iv3")
|
script = ExtResource("1_d6iv3")
|
||||||
noteDisplay = NodePath("SubViewportContainer/2D Viewport/Viewport Control/Notes")
|
noteDisplay = NodePath("ViewportView/2D Viewport/Viewport Control/Notes Scroll")
|
||||||
|
scrollDisplay = NodePath("ViewportView/2D Viewport/Viewport Control/Holds ViewportView/SubViewport/Holds Scroll")
|
||||||
|
|
||||||
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
|
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
|
||||||
environment = SubResource("Environment_nefjb")
|
environment = SubResource("Environment_nefjb")
|
||||||
@@ -95,7 +106,7 @@ mesh = SubResource("ArrayMesh_qc82q")
|
|||||||
skeleton = NodePath("")
|
skeleton = NodePath("")
|
||||||
surface_material_override/0 = SubResource("StandardMaterial3D_3rv8i")
|
surface_material_override/0 = SubResource("StandardMaterial3D_3rv8i")
|
||||||
|
|
||||||
[node name="SubViewportContainer" type="SubViewportContainer" parent="."]
|
[node name="ViewportView" type="SubViewportContainer" parent="."]
|
||||||
anchors_preset = 2
|
anchors_preset = 2
|
||||||
anchor_top = 1.0
|
anchor_top = 1.0
|
||||||
anchor_bottom = 1.0
|
anchor_bottom = 1.0
|
||||||
@@ -105,7 +116,7 @@ offset_bottom = -1080.0
|
|||||||
grow_vertical = 0
|
grow_vertical = 0
|
||||||
stretch = true
|
stretch = true
|
||||||
|
|
||||||
[node name="2D Viewport" type="SubViewport" parent="SubViewportContainer"]
|
[node name="2D Viewport" type="SubViewport" parent="ViewportView"]
|
||||||
disable_3d = true
|
disable_3d = true
|
||||||
own_world_3d = true
|
own_world_3d = true
|
||||||
transparent_bg = true
|
transparent_bg = true
|
||||||
@@ -114,7 +125,7 @@ msaa_2d = 1
|
|||||||
size = Vector2i(1920, 1920)
|
size = Vector2i(1920, 1920)
|
||||||
render_target_update_mode = 4
|
render_target_update_mode = 4
|
||||||
|
|
||||||
[node name="Viewport Control" type="Control" parent="SubViewportContainer/2D Viewport"]
|
[node name="Viewport Control" type="Control" parent="ViewportView/2D Viewport"]
|
||||||
clip_contents = true
|
clip_contents = true
|
||||||
layout_mode = 3
|
layout_mode = 3
|
||||||
anchors_preset = 15
|
anchors_preset = 15
|
||||||
@@ -123,52 +134,63 @@ anchor_bottom = 1.0
|
|||||||
grow_horizontal = 2
|
grow_horizontal = 2
|
||||||
grow_vertical = 2
|
grow_vertical = 2
|
||||||
|
|
||||||
[node name="Camera2D" type="Camera2D" parent="SubViewportContainer/2D Viewport/Viewport Control"]
|
[node name="Camera2D" type="Camera2D" parent="ViewportView/2D Viewport/Viewport Control"]
|
||||||
position = Vector2(0, -1920)
|
position = Vector2(0, -1920)
|
||||||
anchor_mode = 0
|
anchor_mode = 0
|
||||||
enabled = false
|
enabled = false
|
||||||
|
|
||||||
[node name="Shadow" type="TextureRect" parent="SubViewportContainer/2D Viewport/Viewport Control"]
|
[node name="Background" parent="ViewportView/2D Viewport/Viewport Control" instance=ExtResource("2_8g6gv")]
|
||||||
layout_mode = 2
|
layout_mode = 1
|
||||||
offset_top = 1920.0
|
|
||||||
offset_right = 100.0
|
|
||||||
offset_bottom = 3840.0
|
|
||||||
rotation = -1.5708
|
|
||||||
texture = SubResource("GradientTexture1D_vv2ac")
|
|
||||||
expand_mode = 1
|
|
||||||
|
|
||||||
[node name="HitLine_Reverse" type="Node2D" parent="SubViewportContainer/2D Viewport/Viewport Control"]
|
[node name="Holds ViewportView" type="SubViewportContainer" parent="ViewportView/2D Viewport/Viewport Control"]
|
||||||
|
layout_mode = 0
|
||||||
[node name="Line" type="TextureRect" parent="SubViewportContainer/2D Viewport/Viewport Control/HitLine_Reverse"]
|
|
||||||
anchors_preset = 7
|
|
||||||
anchor_left = 0.5
|
|
||||||
anchor_top = 1.0
|
|
||||||
anchor_right = 0.5
|
|
||||||
anchor_bottom = 1.0
|
|
||||||
offset_top = 1875.0
|
|
||||||
offset_right = 960.0
|
|
||||||
offset_bottom = 1907.0
|
|
||||||
grow_horizontal = 2
|
|
||||||
grow_vertical = 0
|
|
||||||
texture = ExtResource("2_kpt0a")
|
|
||||||
expand_mode = 1
|
|
||||||
|
|
||||||
[node name="Line2" type="TextureRect" parent="SubViewportContainer/2D Viewport/Viewport Control/HitLine_Reverse"]
|
|
||||||
anchors_preset = 7
|
|
||||||
anchor_left = 0.5
|
|
||||||
anchor_top = 1.0
|
|
||||||
anchor_right = 0.5
|
|
||||||
anchor_bottom = 1.0
|
|
||||||
offset_left = 960.0
|
|
||||||
offset_top = 1875.0
|
|
||||||
offset_right = 1920.0
|
offset_right = 1920.0
|
||||||
offset_bottom = 1907.0
|
offset_bottom = 1920.0
|
||||||
grow_horizontal = 2
|
|
||||||
grow_vertical = 0
|
|
||||||
texture = ExtResource("2_kpt0a")
|
|
||||||
expand_mode = 1
|
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="SubViewportContainer/2D Viewport/Viewport Control"]
|
[node name="SubViewport" type="SubViewport" parent="ViewportView/2D Viewport/Viewport Control/Holds ViewportView"]
|
||||||
|
transparent_bg = true
|
||||||
|
handle_input_locally = false
|
||||||
|
size = Vector2i(1920, 1920)
|
||||||
|
render_target_update_mode = 4
|
||||||
|
|
||||||
|
[node name="Holds Scroll" type="Control" parent="ViewportView/2D Viewport/Viewport Control/Holds ViewportView/SubViewport"]
|
||||||
|
material = SubResource("CanvasItemMaterial_1ouek")
|
||||||
|
layout_mode = 3
|
||||||
|
anchors_preset = 15
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
offset_top = 1920.0
|
||||||
|
offset_bottom = 1920.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
|
||||||
|
[node name="HoldTest" type="Polygon2D" parent="ViewportView/2D Viewport/Viewport Control/Holds ViewportView/SubViewport/Holds Scroll"]
|
||||||
|
color = Color(1, 1, 1, 0.921569)
|
||||||
|
polygon = PackedVector2Array(0, 0, 300, 0, 1100, -1920, 800, -1920)
|
||||||
|
|
||||||
|
[node name="Holds Filter" type="TextureRect" parent="ViewportView/2D Viewport/Viewport Control/Holds ViewportView/SubViewport"]
|
||||||
|
material = SubResource("CanvasItemMaterial_5ymar")
|
||||||
|
custom_minimum_size = Vector2(1920, 1920)
|
||||||
|
anchors_preset = 15
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
offset_left = 1920.0
|
||||||
|
offset_right = 3840.0
|
||||||
|
offset_bottom = 1920.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
rotation = 1.5708
|
||||||
|
texture = SubResource("GradientTexture1D_pha5y")
|
||||||
|
|
||||||
|
[node name="Notes Scroll" type="Control" parent="ViewportView/2D Viewport/Viewport Control"]
|
||||||
|
material = SubResource("CanvasItemMaterial_27qpl")
|
||||||
|
layout_mode = 1
|
||||||
|
anchors_preset = 2
|
||||||
|
anchor_top = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
grow_vertical = 0
|
||||||
|
|
||||||
|
[node name="Label" type="Label" parent="ViewportView/2D Viewport/Viewport Control"]
|
||||||
visible = false
|
visible = false
|
||||||
layout_mode = 1
|
layout_mode = 1
|
||||||
anchors_preset = 2
|
anchors_preset = 2
|
||||||
@@ -188,23 +210,3 @@ text = "1 2 3 4 5 6 7 10
|
|||||||
label_settings = SubResource("LabelSettings_dj3ei")
|
label_settings = SubResource("LabelSettings_dj3ei")
|
||||||
horizontal_alignment = 1
|
horizontal_alignment = 1
|
||||||
vertical_alignment = 2
|
vertical_alignment = 2
|
||||||
|
|
||||||
[node name="Notes" type="Control" parent="SubViewportContainer/2D Viewport/Viewport Control"]
|
|
||||||
layout_mode = 1
|
|
||||||
anchors_preset = 2
|
|
||||||
anchor_top = 1.0
|
|
||||||
anchor_bottom = 1.0
|
|
||||||
grow_vertical = 0
|
|
||||||
|
|
||||||
[node name="NoteTouch" parent="SubViewportContainer/2D Viewport/Viewport Control/Notes" instance=ExtResource("3_qp71m")]
|
|
||||||
visible = false
|
|
||||||
layout_mode = 1
|
|
||||||
offset_left = 400.0
|
|
||||||
offset_top = -120.0
|
|
||||||
offset_right = 1100.0
|
|
||||||
offset_bottom = -96.0
|
|
||||||
|
|
||||||
[node name="HoldTest" type="Polygon2D" parent="SubViewportContainer/2D Viewport/Viewport Control/Notes"]
|
|
||||||
visible = false
|
|
||||||
color = Color(1, 0.917647, 0.2, 0.890196)
|
|
||||||
polygon = PackedVector2Array(0, 0, 300, 0, 1100, -1920, 800, -1920)
|
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ namespace WacK.Data.Chart
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public class Chart
|
public class Chart
|
||||||
{
|
{
|
||||||
// Key of dictionaries are in milliseconds
|
// Key of dictionaries are in seconds
|
||||||
// List is for chords
|
// List is for chords
|
||||||
public SortedList<float, List<NotePlay>> playNotes { get; private set; }
|
public SortedList<float, List<NotePlay>> playNotes { get; private set; }
|
||||||
public SortedList<float, NoteEvent<(int, int)>> timeSigChgs { get; private set; }
|
public SortedList<float, NoteEvent<(int, int)>> timeSigChgs { get; private set; }
|
||||||
@@ -241,13 +241,15 @@ namespace WacK.Data.Chart
|
|||||||
{
|
{
|
||||||
curHoldNote[np.holdIdx].points[curTime] = np;
|
curHoldNote[np.holdIdx].points[curTime] = np;
|
||||||
}
|
}
|
||||||
|
else
|
||||||
// add note
|
{
|
||||||
|
// only add notes that aren't part of the hold
|
||||||
if (!playNotes.ContainsKey(curTime))
|
if (!playNotes.ContainsKey(curTime))
|
||||||
{
|
{
|
||||||
playNotes[curTime] = new List<NotePlay>();
|
playNotes[curTime] = new List<NotePlay>();
|
||||||
}
|
}
|
||||||
playNotes[curTime].Add(np);
|
playNotes[curTime].Add(np);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// NoteEvent<float> -- tempo changes
|
// NoteEvent<float> -- tempo changes
|
||||||
|
|||||||
+18
-8
@@ -27,13 +27,19 @@ namespace WacK.Scenes
|
|||||||
public static PlayParameters playParams;
|
public static PlayParameters playParams;
|
||||||
|
|
||||||
// TunnelObjects we can instantiate
|
// TunnelObjects we can instantiate
|
||||||
public static PackedScene notePlay = GD.Load<PackedScene>("res://Things/TunnelObjects/Notes/NoteTouch.tscn");
|
public static PackedScene noteTouch = GD.Load<PackedScene>("res://Things/TunnelObjects/Notes/NoteTouch.tscn");
|
||||||
|
public static PackedScene noteHold = GD.Load<PackedScene>("res://Things/TunnelObjects/Notes/NoteHold.tscn");
|
||||||
|
|
||||||
[Export]
|
[Export]
|
||||||
public Control noteDisplay;
|
public Control noteDisplay;
|
||||||
|
[Export]
|
||||||
|
public Control scrollDisplay;
|
||||||
|
|
||||||
private Chart chart;
|
private Chart chart;
|
||||||
|
|
||||||
|
// scroll speed
|
||||||
|
private const float PIXELS_PER_SECOND = 2000;
|
||||||
|
|
||||||
public override void _Ready()
|
public override void _Ready()
|
||||||
{
|
{
|
||||||
// parse mer and create chart for current play
|
// parse mer and create chart for current play
|
||||||
@@ -42,25 +48,29 @@ namespace WacK.Scenes
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Instantiates necessary notes onto the noteDisplay for the player to see.
|
/// Instantiates necessary notes onto noteDisplay for the player to see.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
private void RealizeChart()
|
private void RealizeChart()
|
||||||
{
|
{
|
||||||
foreach (var msNote in chart.playNotes)
|
foreach (var msNote in chart.playNotes)
|
||||||
{
|
{
|
||||||
GD.Print(msNote.Key);
|
|
||||||
foreach (var note in msNote.Value)
|
foreach (var note in msNote.Value)
|
||||||
{
|
{
|
||||||
THNotePlay nNote;
|
THNotePlay nNote;
|
||||||
switch (note)
|
switch (note.type)
|
||||||
{
|
{
|
||||||
default: // tap note
|
case NotePlayType.HoldStart:
|
||||||
nNote = notePlay.Instantiate<THNotePlay>();
|
nNote = noteHold.Instantiate<THNoteHold>();
|
||||||
break;
|
break;
|
||||||
|
case NotePlayType.Touch:
|
||||||
|
nNote = noteTouch.Instantiate<THNotePlay>();
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
continue;
|
||||||
}
|
}
|
||||||
nNote.Init(note);
|
nNote.Init(note);
|
||||||
var nPos = nNote.Position;
|
var nPos = nNote.Position;
|
||||||
nPos.Y = msNote.Key * -1000;
|
nPos.Y = msNote.Key * -PIXELS_PER_SECOND;
|
||||||
nNote.Position = nPos;
|
nNote.Position = nPos;
|
||||||
noteDisplay.AddChild(nNote);
|
noteDisplay.AddChild(nNote);
|
||||||
}
|
}
|
||||||
@@ -70,7 +80,7 @@ namespace WacK.Scenes
|
|||||||
public override void _Process(double delta)
|
public override void _Process(double delta)
|
||||||
{
|
{
|
||||||
var nPos = noteDisplay.Position;
|
var nPos = noteDisplay.Position;
|
||||||
nPos.Y += (float)delta * 1000;
|
nPos.Y += (float)delta * PIXELS_PER_SECOND;
|
||||||
noteDisplay.Position = nPos;
|
noteDisplay.Position = nPos;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -11,6 +11,8 @@ namespace WacK.Things.TunnelObjects
|
|||||||
{
|
{
|
||||||
base.Init(noteData);
|
base.Init(noteData);
|
||||||
this.noteData = noteData;
|
this.noteData = noteData;
|
||||||
|
|
||||||
|
// TODO: setup other Nodes to render hold note properly
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -0,0 +1,71 @@
|
|||||||
|
[gd_scene load_steps=4 format=3 uid="uid://cyetvgmwnoy8l"]
|
||||||
|
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dkohutwp0yujj" path="res://_Assets/Textures/HitLine/BGLine.png" id="1_w0gbp"]
|
||||||
|
|
||||||
|
[sub_resource type="Gradient" id="Gradient_djnn4"]
|
||||||
|
offsets = PackedFloat32Array(0, 0.380682, 1)
|
||||||
|
colors = PackedColorArray(0, 0, 0, 0.368627, 0, 0, 0, 0.368627, 0, 0, 0, 0.0980392)
|
||||||
|
|
||||||
|
[sub_resource type="GradientTexture1D" id="GradientTexture1D_kn5i7"]
|
||||||
|
gradient = SubResource("Gradient_djnn4")
|
||||||
|
width = 2048
|
||||||
|
|
||||||
|
[node name="Background" type="Control"]
|
||||||
|
custom_minimum_size = Vector2(1920, 1920)
|
||||||
|
layout_mode = 3
|
||||||
|
anchors_preset = 2
|
||||||
|
anchor_top = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
offset_top = -32.0
|
||||||
|
grow_vertical = 0
|
||||||
|
|
||||||
|
[node name="Shadow" type="TextureRect" parent="."]
|
||||||
|
custom_minimum_size = Vector2(1920, 1920)
|
||||||
|
layout_mode = 1
|
||||||
|
anchors_preset = 2
|
||||||
|
anchor_top = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
offset_right = 1920.0
|
||||||
|
offset_bottom = 1920.0
|
||||||
|
grow_vertical = 0
|
||||||
|
rotation = -1.5708
|
||||||
|
texture = SubResource("GradientTexture1D_kn5i7")
|
||||||
|
expand_mode = 1
|
||||||
|
|
||||||
|
[node name="HitLine" type="Control" parent="."]
|
||||||
|
custom_minimum_size = Vector2(1920, 32)
|
||||||
|
layout_mode = 1
|
||||||
|
anchors_preset = 2
|
||||||
|
anchor_top = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
offset_top = -32.0
|
||||||
|
offset_right = 1920.0
|
||||||
|
grow_vertical = 0
|
||||||
|
|
||||||
|
[node name="Reverse" type="Control" parent="HitLine"]
|
||||||
|
layout_mode = 1
|
||||||
|
anchors_preset = 15
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
|
||||||
|
[node name="Line" type="TextureRect" parent="HitLine/Reverse"]
|
||||||
|
layout_mode = 1
|
||||||
|
anchors_preset = -1
|
||||||
|
anchor_right = 0.5
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
grow_vertical = 2
|
||||||
|
texture = ExtResource("1_w0gbp")
|
||||||
|
expand_mode = 1
|
||||||
|
|
||||||
|
[node name="Line2" type="TextureRect" parent="HitLine/Reverse"]
|
||||||
|
layout_mode = 1
|
||||||
|
anchors_preset = -1
|
||||||
|
anchor_left = 0.5
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 0
|
||||||
|
texture = ExtResource("1_w0gbp")
|
||||||
|
expand_mode = 1
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
[gd_scene load_steps=3 format=3 uid="uid://dp2rjmu8wptsn"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" path="res://Scripts/Things/TunnelObjects/THNoteHold.cs" id="1_kd6u4"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://xmb5ybj1oor4" path="res://_Assets/Textures/Notes/Hold.png" id="2_ovp6m"]
|
||||||
|
|
||||||
|
[node name="NoteHold" type="Control"]
|
||||||
|
layout_mode = 3
|
||||||
|
anchors_preset = 0
|
||||||
|
offset_right = 200.0
|
||||||
|
offset_bottom = 24.0
|
||||||
|
script = ExtResource("1_kd6u4")
|
||||||
|
|
||||||
|
[node name="NinePatchRect" type="NinePatchRect" parent="."]
|
||||||
|
layout_mode = 1
|
||||||
|
anchors_preset = -1
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
offset_top = -36.0
|
||||||
|
offset_bottom = -24.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
texture = ExtResource("2_ovp6m")
|
||||||
|
patch_margin_left = 12
|
||||||
|
patch_margin_right = 12
|
||||||
Reference in New Issue
Block a user