[gd_scene load_steps=23 format=3 uid="uid://cjx7o685ox8c1"] [ext_resource type="Script" uid="uid://c5s4giu182isu" path="res://scene/little_game/弹珠游戏/弹珠游戏.gd" id="1_p2trd"] [ext_resource type="Texture2D" uid="uid://bvf8b057baglw" path="res://asset/art/little_game/弹珠/bg_弹珠游戏.png" id="2_bm1k0"] [ext_resource type="Texture2D" uid="uid://bs4tp4amd1kkm" path="res://asset/art/little_game/弹珠/抱手.png" id="3_3kvx4"] [ext_resource type="AudioStream" uid="uid://bb6njoaxi2hbx" path="res://asset/audio/sfx/game/弹珠游戏/hit.ogg" id="3_co06r"] [ext_resource type="PackedScene" uid="uid://bbcfjksjlyfx5" path="res://scene/little_game/弹珠游戏/ball.tscn" id="4_bm1k0"] [ext_resource type="Script" uid="uid://rq6w1vuhuq1m" path="res://scene/entity/general/sfx.gd" id="4_co06r"] [ext_resource type="Texture2D" uid="uid://btplp6xvmc6sx" path="res://asset/art/little_game/弹珠/手屈伸/0.png" id="4_fk3jp"] [ext_resource type="Texture2D" uid="uid://cny2ovcg2ry7c" path="res://asset/art/little_game/弹珠/瞄准线.png" id="4_plt4v"] [ext_resource type="AudioStream" uid="uid://dcef4son60cs7" path="res://asset/audio/sfx/game/弹珠游戏/drop.ogg" id="5_co06r"] [ext_resource type="Texture2D" uid="uid://jv6fjt5fa68l" path="res://asset/art/little_game/弹珠/手屈伸/1.png" id="5_dowov"] [ext_resource type="PackedScene" uid="uid://d0tuv2dtlosfe" path="res://scene/little_game/弹珠游戏/balls_0.tscn" id="5_obeip"] [ext_resource type="AudioStream" uid="uid://beijvb65selr5" path="res://asset/audio/sfx/game/弹珠游戏/loop.ogg" id="6_ctokx"] [ext_resource type="PackedScene" uid="uid://cv12saxinfoi7" path="res://scene/little_game/弹珠游戏/balls_1.tscn" id="6_ymk37"] [ext_resource type="PackedScene" uid="uid://dr0rwr0xjgnjw" path="res://scene/little_game/弹珠游戏/balls_2.tscn" id="7_oii6q"] [ext_resource type="PackedScene" uid="uid://cbpy56epwth0j" path="res://scene/little_game/弹珠游戏/balls_falling.tscn" id="8_fk3jp"] [sub_resource type="Animation" id="Animation_fk3jp"] length = 0.001 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath("Boy/BoyHand:position") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Vector2(307, 88)] } tracks/1/type = "value" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath("Boy/BoyHand:frame") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 1, "values": [0] } tracks/2/type = "value" tracks/2/imported = false tracks/2/enabled = true tracks/2/path = NodePath("Boy/BoyHand:modulate") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Color(1, 1, 1, 0)] } tracks/3/type = "value" tracks/3/imported = false tracks/3/enabled = true tracks/3/path = NodePath("Pivot/Ball:position") tracks/3/interp = 1 tracks/3/loop_wrap = true tracks/3/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Vector2(0, 0)] } tracks/4/type = "value" tracks/4/imported = false tracks/4/enabled = true tracks/4/path = NodePath("Boy/BoyHands:modulate") tracks/4/interp = 1 tracks/4/loop_wrap = true tracks/4/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Color(1, 1, 1, 0)] } tracks/5/type = "value" tracks/5/imported = false tracks/5/enabled = true tracks/5/path = NodePath("Boy/BoyHands:position") tracks/5/interp = 1 tracks/5/loop_wrap = true tracks/5/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Vector2(283, 61)] } tracks/6/type = "value" tracks/6/imported = false tracks/6/enabled = true tracks/6/path = NodePath("Pivot/Ball:modulate") tracks/6/interp = 1 tracks/6/loop_wrap = true tracks/6/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Color(1, 1, 1, 1)] } [sub_resource type="Animation" id="Animation_3kvx4"] resource_name = "dispatch_balls" length = 3.0 tracks/0/type = "method" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath(".") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(1.1), "transitions": PackedFloat32Array(1), "values": [{ "args": [], "method": &"do_dispatch_balls" }] } tracks/1/type = "value" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath("Boy/BoyHand:position") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { "times": PackedFloat32Array(0, 1), "transitions": PackedFloat32Array(1, 1), "update": 0, "values": [Vector2(308, 0), Vector2(307, 88)] } tracks/2/type = "value" tracks/2/imported = false tracks/2/enabled = true tracks/2/path = NodePath("Boy/BoyHand:frame") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { "times": PackedFloat32Array(0, 1), "transitions": PackedFloat32Array(1, 1), "update": 1, "values": [0, 1] } tracks/3/type = "value" tracks/3/imported = false tracks/3/enabled = true tracks/3/path = NodePath("Boy/BoyHand:modulate") tracks/3/interp = 1 tracks/3/loop_wrap = true tracks/3/keys = { "times": PackedFloat32Array(0, 1.26667, 1.9), "transitions": PackedFloat32Array(1, 1, 1), "update": 0, "values": [Color(1, 1, 1, 1), Color(1, 1, 1, 1), Color(1, 1, 1, 0)] } [sub_resource type="Animation" id="Animation_dowov"] resource_name = "give_ball" length = 3.0 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath("Pivot/Ball:position") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(0, 1.06667), "transitions": PackedFloat32Array(1, 1), "update": 0, "values": [Vector2(0, 0), Vector2(0, -190)] } tracks/1/type = "value" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath("Boy/BoyHands:modulate") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { "times": PackedFloat32Array(0, 0.966667, 1.2, 2, 2.43333), "transitions": PackedFloat32Array(1, 1, 1, 1, 1), "update": 0, "values": [Color(1, 1, 1, 0), Color(1, 1, 1, 0), Color(1, 1, 1, 1), Color(1, 1, 1, 1), Color(1, 1, 1, 0)] } tracks/2/type = "value" tracks/2/imported = false tracks/2/enabled = true tracks/2/path = NodePath("Boy/BoyHands:position") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { "times": PackedFloat32Array(0, 0.833333, 1.3, 1.93333, 2.13333), "transitions": PackedFloat32Array(1, 1, 1, 1, 1), "update": 0, "values": [Vector2(283, 61), Vector2(283, 40), Vector2(283, 61), Vector2(283, 61), Vector2(283, 0)] } tracks/3/type = "value" tracks/3/imported = false tracks/3/enabled = true tracks/3/path = NodePath("Pivot/Ball:modulate") tracks/3/interp = 1 tracks/3/loop_wrap = true tracks/3/keys = { "times": PackedFloat32Array(0.366667, 0.533333, 0.933333, 1.13333), "transitions": PackedFloat32Array(1, 1, 1, 1), "update": 0, "values": [Color(1, 1, 1, 0), Color(1, 1, 1, 1), Color(1, 1, 1, 1), Color(1, 1, 1, 0)] } [sub_resource type="AnimationLibrary" id="AnimationLibrary_fk3jp"] _data = { &"RESET": SubResource("Animation_fk3jp"), &"dispatch_balls": SubResource("Animation_3kvx4"), &"give_ball": SubResource("Animation_dowov") } [sub_resource type="AudioStreamInteractive" id="AudioStreamInteractive_aqxy0"] clip_count = 2 clip_0/name = &"Drop" clip_0/stream = ExtResource("5_co06r") clip_0/auto_advance = 1 clip_0/next_clip = 1 clip_1/name = &"Loop" clip_1/stream = ExtResource("6_ctokx") clip_1/auto_advance = 0 _transitions = { Vector2i(1, 1): { "fade_beats": 1.0, "fade_mode": 4, "from_time": 3, "to_time": 1 } } [sub_resource type="SpriteFrames" id="SpriteFrames_jur7x"] animations = [{ "frames": [{ "duration": 1.0, "texture": ExtResource("4_fk3jp") }, { "duration": 1.0, "texture": ExtResource("5_dowov") }], "loop": true, "name": &"default", "speed": 5.0 }] [sub_resource type="CircleShape2D" id="CircleShape2D_bm1k0"] radius = 300.0 [node name="弹珠游戏" type="CanvasLayer"] script = ExtResource("1_p2trd") [node name="TextureRect" type="TextureRect" parent="."] z_index = -1 offset_left = -4.0 offset_right = 1724.0 offset_bottom = 951.0 scale = Vector2(0.333, 0.333) size_flags_horizontal = 4 size_flags_vertical = 4 texture = ExtResource("2_bm1k0") [node name="MarginContainer" type="MarginContainer" parent="."] z_index = 10 anchors_preset = 5 anchor_left = 0.5 anchor_right = 0.5 offset_left = -100.0 offset_top = -1.0 offset_right = 100.0 offset_bottom = 78.0 grow_horizontal = 2 theme_override_constants/margin_top = 52 [node name="RichTextLabel" type="RichTextLabel" parent="MarginContainer"] unique_name_in_owner = true custom_minimum_size = Vector2(300, 0) layout_mode = 2 size_flags_horizontal = 4 size_flags_vertical = 4 theme_override_colors/default_color = Color(0.856067, 0.856067, 0.856067, 1) theme_override_colors/font_outline_color = Color(0.401628, 0.253369, 0.0745033, 1) theme_override_constants/outline_size = 5 theme_override_font_sizes/normal_font_size = 20 bbcode_enabled = true text = "[wave amp=10.0 freq=5.0][shake rate=4.0 level=3] 弹珠拿出来" fit_content = true horizontal_alignment = 1 [node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="MarginContainer"] unique_name_in_owner = true [node name="AnimationPlayer" type="AnimationPlayer" parent="."] libraries = { &"": SubResource("AnimationLibrary_fk3jp") } [node name="SfxHit" type="AudioStreamPlayer" parent="."] stream = ExtResource("3_co06r") bus = &"game_sfx" script = ExtResource("4_co06r") file = "" metadata/_custom_type_script = "uid://rq6w1vuhuq1m" [node name="SfxShoot" type="AudioStreamPlayer" parent="."] stream = SubResource("AudioStreamInteractive_aqxy0") bus = &"game_sfx" script = ExtResource("4_co06r") file = "" metadata/_custom_type_script = "uid://rq6w1vuhuq1m" [node name="SfxDispatch" type="AudioStreamPlayer" parent="."] stream = ExtResource("6_ctokx") bus = &"game_sfx" script = ExtResource("4_co06r") file = "" metadata/_custom_type_script = "uid://rq6w1vuhuq1m" [node name="Boy" type="Node2D" parent="."] z_index = 1 [node name="BoyHands" type="Sprite2D" parent="Boy"] modulate = Color(1, 1, 1, 0) z_index = 3 position = Vector2(283, 61) texture = ExtResource("3_3kvx4") [node name="BoyHand" type="AnimatedSprite2D" parent="Boy"] modulate = Color(1, 1, 1, 0) position = Vector2(307, 88) sprite_frames = SubResource("SpriteFrames_jur7x") [node name="Marker2D" type="Marker2D" parent="Boy"] position = Vector2(296, 102) [node name="Area2D" type="Area2D" parent="."] position = Vector2(274, 158) collision_layer = 128 collision_mask = 128 monitorable = false linear_damp_space_override = 3 angular_damp_space_override = 3 [node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D"] shape = SubResource("CircleShape2D_bm1k0") [node name="StaticBody2D" type="StaticBody2D" parent="."] collision_layer = 128 collision_mask = 128 [node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="StaticBody2D"] position = Vector2(17, 50) build_mode = 1 polygon = PackedVector2Array(117, 43, 144, 47, 175, 41, 208, 27, 234, 24, 262, 22, 289, 22, 314, 24, 355, 26, 396, 45, 425, 47, 445, 45, 489, 69, 522, 104, 517, 141, 488, 169, 416, 201, 330, 221, 273, 225, 173, 210, 101, 189, 36, 145, 35, 100, 65, 67) [node name="Pivot" type="Marker2D" parent="."] position = Vector2(295, 249) [node name="Ball" parent="Pivot" instance=ExtResource("4_bm1k0")] y_sort_enabled = true scale = Vector2(1.6575, 1.6575) linear_damp = 0.0 is_shooter = true [node name="HandPivot" type="Marker2D" parent="Pivot"] [node name="Hand" type="Sprite2D" parent="Pivot/HandPivot"] position = Vector2(1, -31) scale = Vector2(1.5, 1.5) texture = ExtResource("4_plt4v") [node name="BallsFalling" parent="." instance=ExtResource("8_fk3jp")] z_index = 5 [node name="Balls0" parent="." instance=ExtResource("5_obeip")] [node name="Balls1" parent="." instance=ExtResource("6_ymk37")] [node name="Balls2" parent="." instance=ExtResource("7_oii6q")] position = Vector2(5, 32)