From 62d2659da3c2a6114fc622582adc9488e581c33f Mon Sep 17 00:00:00 2001 From: betalars Date: Sun, 28 May 2023 16:18:26 +0200 Subject: [PATCH] "merge" void card into card --- src/dev-util/board of devs.tscn | 30 ++--- src/logic-scenes/board/card.gd | 6 +- src/logic-scenes/board/card.tscn | 118 +++++++++++++++++- src/logic-scenes/card_picker/card_picker.gd | 2 +- src/logic-scenes/card_picker/card_picker.tscn | 6 +- 5 files changed, 137 insertions(+), 25 deletions(-) diff --git a/src/dev-util/board of devs.tscn b/src/dev-util/board of devs.tscn index f7106cb..b79b9e9 100644 --- a/src/dev-util/board of devs.tscn +++ b/src/dev-util/board of devs.tscn @@ -2,7 +2,6 @@ [ext_resource type="PackedScene" uid="uid://dy5rd437h5hsw" path="res://logic-scenes/board/card.tscn" id="1_xrckx"] [ext_resource type="PackedScene" uid="uid://vkcdj8c3ytbq" path="res://logic-scenes/board/post-it.tscn" id="2_ucudl"] -[ext_resource type="PackedScene" uid="uid://dp4eps03igd3w" path="res://logic-scenes/board/void_card.tscn" id="3_10nsr"] [node name="board of devs" type="Control"] layout_mode = 3 @@ -111,7 +110,7 @@ offset_left = 691.0 offset_top = 270.0 offset_right = 991.0 offset_bottom = 490.0 -text = "I like boy stuff" +text = "I like boy stuff " [node name="p_slut" parent="voice_training/c_boy_stuff" groups=["c_Joy", "c_body", "c_hit", "c_homework", "c_teachers"] instance=ExtResource("2_ucudl")] offset_left = 318.0 @@ -132,7 +131,7 @@ offset_left = 691.0 offset_top = 493.0 offset_right = 991.0 offset_bottom = 713.0 -text = "Despite the backlash, I stood up for Jojo in front of my class" +text = "Despite the backlash, I protected Joyo in front of class " [node name="p_cross_friend" parent="voice_training/c_backlash" groups=["c_Joy", "c_boy_stuff", "c_comic_heroes", "c_hit"] instance=ExtResource("2_ucudl")] offset_left = 320.0 @@ -158,7 +157,7 @@ offset_left = 1332.0 offset_top = 34.0 offset_right = 1632.0 offset_bottom = 254.0 -text = "My body makes me uncomfortable " +text = "my body makes me uncomfortable " [node name="p_boobs" parent="juijutsu/c_body" groups=["c_boy_stuff"] instance=ExtResource("2_ucudl")] offset_left = 324.0 @@ -195,7 +194,7 @@ offset_right = 621.0 offset_bottom = 215.0 text = "and that’s a great vent." -[node name="c_void" parent="juijutsu" instance=ExtResource("3_10nsr")] +[node name="c_void" parent="juijutsu" instance=ExtResource("1_xrckx")] offset_left = 1338.0 offset_top = 501.0 offset_right = 1638.0 @@ -222,63 +221,60 @@ offset_top = -3.0 offset_right = 770.0 offset_bottom = 37.0 -[node name="c_body" parent="test" instance=ExtResource("1_xrckx")] +[node name="c_random1" parent="test" instance=ExtResource("1_xrckx")] offset_left = 1332.0 offset_top = 34.0 offset_right = 1632.0 offset_bottom = 254.0 -text = "not me 1" -[node name="p_boobs" parent="test/c_body" groups=["c_boy_stuff"] instance=ExtResource("2_ucudl")] +[node name="p_random11" parent="test/c_random1" groups=["c_boy_stuff"] instance=ExtResource("2_ucudl")] offset_left = 324.0 offset_top = 16.0 offset_right = 624.0 offset_bottom = 116.0 text = "random 1" -[node name="p_fat" parent="test/c_body" instance=ExtResource("2_ucudl")] +[node name="p_random12" parent="test/c_random1" instance=ExtResource("2_ucudl")] offset_left = 327.0 offset_top = 118.0 offset_right = 627.0 offset_bottom = 218.0 text = "random 1" -[node name="c_hit" parent="test" instance=ExtResource("1_xrckx")] +[node name="c_pick" parent="test" instance=ExtResource("1_xrckx")] offset_left = 1338.0 offset_top = 278.0 offset_right = 1638.0 offset_bottom = 498.0 -text = "pick me" -[node name="p_confidence" parent="test/c_hit" groups=["c_Joy", "c_backlash", "c_boy_stuff", "c_comic_heroes", "c_homework"] instance=ExtResource("2_ucudl")] +[node name="p_pick" parent="test/c_pick" groups=["c_Joy", "c_backlash", "c_boy_stuff", "c_comic_heroes", "c_homework"] instance=ExtResource("2_ucudl")] offset_left = 318.0 offset_top = 13.0 offset_right = 618.0 offset_bottom = 113.0 text = "pick me 2" -[node name="p_vent" parent="test/c_hit" groups=["c_Joy", "c_backlash", "c_boy_stuff", "c_comic_heroes", "c_homework", "c_teachers"] instance=ExtResource("2_ucudl")] +[node name="p_goof" parent="test/c_pick" groups=["c_Joy", "c_backlash", "c_boy_stuff", "c_comic_heroes", "c_homework", "c_teachers"] instance=ExtResource("2_ucudl")] offset_left = 321.0 offset_top = 115.0 offset_right = 621.0 offset_bottom = 215.0 text = "you done goofed" -[node name="c_void" parent="test" instance=ExtResource("3_10nsr")] +[node name="c_random2" parent="test" instance=ExtResource("1_xrckx")] offset_left = 1338.0 offset_top = 501.0 offset_right = 1638.0 offset_bottom = 721.0 -text = "not me 2" -[node name="p_wet" parent="test/c_void" groups=["c_void"] instance=ExtResource("2_ucudl")] +[node name="p_random21" parent="test/c_random2" groups=["c_void"] instance=ExtResource("2_ucudl")] offset_left = 320.0 offset_top = 7.0 offset_right = 620.0 offset_bottom = 107.0 text = "random 2" -[node name="p_stop" parent="test/c_void" groups=["c_void"] instance=ExtResource("2_ucudl")] +[node name="p_random22" parent="test/c_random2" groups=["c_void"] instance=ExtResource("2_ucudl")] offset_left = 323.0 offset_top = 109.0 offset_right = 623.0 diff --git a/src/logic-scenes/board/card.gd b/src/logic-scenes/board/card.gd index abfac60..24ef683 100644 --- a/src/logic-scenes/board/card.gd +++ b/src/logic-scenes/board/card.gd @@ -7,12 +7,12 @@ var own_postits: Array[PostIt] = [] @export var text: String = "" : set (value): + text = value if is_inside_tree() or Engine.is_editor_hint(): $Label.text = value $BackgroundSprite.frame = text.hash() % $BackgroundSprite.sprite_frames.get_frame_count($BackgroundSprite.animation) - - $BackgroundSprite.void_active = text == "" - text = value + if is_inside_tree(): + $BackgroundSprite.void_active = value == "" @export var voice_line: AudioStream = null func _ready(): diff --git a/src/logic-scenes/board/card.tscn b/src/logic-scenes/board/card.tscn index 9c165a8..979c3a3 100644 --- a/src/logic-scenes/board/card.tscn +++ b/src/logic-scenes/board/card.tscn @@ -1,8 +1,10 @@ -[gd_scene load_steps=10 format=3 uid="uid://dy5rd437h5hsw"] +[gd_scene load_steps=20 format=3 uid="uid://dy5rd437h5hsw"] [ext_resource type="Script" path="res://logic-scenes/board/card.gd" id="1_emip0"] [ext_resource type="Texture2D" uid="uid://sv0nhkkur1tt" path="res://logic-scenes/board/card-textures/cardsheet.png" id="2_ioijn"] +[ext_resource type="Texture2D" uid="uid://kpmk21d8rlso" path="res://logic-scenes/board/particle_textures/star.png" id="3_bwtbh"] [ext_resource type="Theme" uid="uid://b056fn288p8ha" path="res://logic-scenes/themes/messy.theme" id="3_rktsa"] +[ext_resource type="Texture2D" uid="uid://bqilajx05t0eb" path="res://logic-scenes/board/particle_textures/void_nomotion.png" id="4_fwm1k"] [sub_resource type="AtlasTexture" id="AtlasTexture_ykk13"] atlas = ExtResource("2_ioijn") @@ -47,6 +49,98 @@ animations = [{ "speed": 5.0 }] +[sub_resource type="GDScript" id="GDScript_8bs16"] +script/source = "extends AnimatedSprite2D + +@onready var particles = $GPUParticles2D +@onready var initial_position = position +var noise_position = randf() +var noise: Noise = FastNoiseLite.new() +var void_active: + set(become_void): + if not (void_active == become_void): + if is_inside_tree(): + $GPUParticles2D.is_void = become_void + $GPUParticles2D.emitting = become_void + $Sprite2D.is_void = become_void + void_active = become_void + +func _process(delta): + if void_active and not State.reduce_motion: + noise_position += delta * 10 + + var random_position = Vector2(noise.get_noise_1d(noise_position*2), noise.get_noise_1d(-noise_position)) + + random_position = random_position.normalized() * pow(random_position.length()*2, 3) * 5 + + position = initial_position - random_position + + rotation = noise.get_noise_1d(noise_position*10) * random_position.length() * 0.01 + + particles.position = random_position + + else: position = initial_position +" + +[sub_resource type="Gradient" id="Gradient_v70nd"] +interpolation_mode = 2 +offsets = PackedFloat32Array(0, 0.0529197, 0.191606, 1) +colors = PackedColorArray(1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0.491329, 1, 1, 1, 0) + +[sub_resource type="GradientTexture1D" id="GradientTexture1D_xxq8p"] +gradient = SubResource("Gradient_v70nd") + +[sub_resource type="Curve" id="Curve_q6cmf"] +_data = [Vector2(0, 0), 0.0, 3.16529, 0, 0, Vector2(0.241056, 0.191336), 0.132446, 0.132446, 0, 0, Vector2(1, 1), 3.94797, 0.0, 0, 0] +point_count = 3 + +[sub_resource type="CurveTexture" id="CurveTexture_cg0w1"] +curve = SubResource("Curve_q6cmf") + +[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_by44l"] +emission_shape = 6 +emission_ring_axis = Vector3(0, 0, 1) +emission_ring_height = 0.0 +emission_ring_radius = 180.0 +emission_ring_inner_radius = 185.0 +particle_flag_disable_z = true +spread = 180.0 +gravity = Vector3(0, 0, 0) +initial_velocity_min = -10.0 +initial_velocity_max = 10.0 +angular_velocity_min = -150.0 +angular_velocity_max = -150.0 +orbit_velocity_min = 0.0 +orbit_velocity_max = 0.0 +radial_accel_min = -20.0 +radial_accel_max = -5.0 +tangential_accel_min = 20.0 +tangential_accel_max = 30.0 +scale_min = 3.0 +scale_max = 5.0 +scale_curve = SubResource("CurveTexture_cg0w1") +color_ramp = SubResource("GradientTexture1D_xxq8p") +turbulence_noise_strength = 0.1 +attractor_interaction_enabled = false + +[sub_resource type="GDScript" id="GDScript_vjwk7"] +script/source = "extends GPUParticles2D + +var is_void:bool = false + +func _process(_delta): + self.visible = !State.reduce_motion and is_void +" + +[sub_resource type="GDScript" id="GDScript_tgc0b"] +script/source = "extends Sprite2D + +var is_void:bool = false + +func _process(_delta): + self.visible = State.reduce_motion and is_void +" + [node name="card" type="Control"] layout_mode = 3 anchors_preset = 0 @@ -58,9 +152,30 @@ focus_mode = 2 script = ExtResource("1_emip0") [node name="BackgroundSprite" type="AnimatedSprite2D" parent="."] +clip_children = 2 position = Vector2(150, 110) scale = Vector2(0.6, 0.6) sprite_frames = SubResource("SpriteFrames_ckivt") +frame = 3 +script = SubResource("GDScript_8bs16") + +[node name="GPUParticles2D" type="GPUParticles2D" parent="BackgroundSprite"] +visible = false +amount = 500 +process_material = SubResource("ParticleProcessMaterial_by44l") +texture = ExtResource("3_bwtbh") +lifetime = 2.5 +speed_scale = 1.3 +explosiveness = 0.2 +randomness = 0.14 +local_coords = true +script = SubResource("GDScript_vjwk7") + +[node name="Sprite2D" type="Sprite2D" parent="BackgroundSprite"] +visible = false +scale = Vector2(0.4, 0.4) +texture = ExtResource("4_fwm1k") +script = SubResource("GDScript_tgc0b") [node name="Label" type="Label" parent="."] layout_mode = 1 @@ -88,3 +203,4 @@ offset_bottom = 188.0 [connection signal="focus_entered" from="." to="." method="_on_focus_entered"] [connection signal="focus_exited" from="." to="." method="_on_focus_exited"] +[connection signal="focus_entered" from="postit anchor" to="." method="_on_postit_anchor_focus_entered"] diff --git a/src/logic-scenes/card_picker/card_picker.gd b/src/logic-scenes/card_picker/card_picker.gd index 79a7a56..17c2c2c 100644 --- a/src/logic-scenes/card_picker/card_picker.gd +++ b/src/logic-scenes/card_picker/card_picker.gd @@ -44,7 +44,7 @@ func _ready(): func fill_card_slots(): for i in range($cards.get_child_count()): var card:Card = $cards.get_child(i).get_child(1) - card.replace_with(debug_board.get_child(0).get_child(i) as Card) + card.replace_with(debug_board.get_child(2).get_child(i) as Card) func fill_post_slots(): var post_its: Array[PostIt] = [] diff --git a/src/logic-scenes/card_picker/card_picker.tscn b/src/logic-scenes/card_picker/card_picker.tscn index 426d8a0..8948153 100644 --- a/src/logic-scenes/card_picker/card_picker.tscn +++ b/src/logic-scenes/card_picker/card_picker.tscn @@ -1402,7 +1402,7 @@ libraries = { } [node name="card" parent="cards/card_1" instance=ExtResource("2_dqebt")] -text = "card slot 1" +text = "Slot 1" [node name="card_2" type="Control" parent="cards"] layout_mode = 2 @@ -1414,7 +1414,7 @@ libraries = { } [node name="card" parent="cards/card_2" instance=ExtResource("2_dqebt")] -text = "card slot 2" +text = "Slot 2" [node name="card_3" type="Control" parent="cards"] layout_mode = 2 @@ -1431,7 +1431,7 @@ libraries = { } [node name="card" parent="cards/card_3" instance=ExtResource("2_dqebt")] -text = "card slot 3" +text = "Slot 3" [node name="postIts" type="Panel" parent="."] layout_mode = 2