285 lines
13 KiB
Plaintext
285 lines
13 KiB
Plaintext
[gd_scene load_steps=48 format=3 uid="uid://bqi5s710xb1ju"]
|
|
|
|
[ext_resource type="Script" uid="uid://csel4s0e4g5uf" path="res://scripts/components/PlayerController.cs" id="1_yysbb"]
|
|
[ext_resource type="Shader" uid="uid://bs4xvm4qkurpr" path="res://shaders/hit_flash.tres" id="2_lgb3u"]
|
|
[ext_resource type="Script" uid="uid://btlm1f3l70il" path="res://scripts/components/PlatformMovementComponent.cs" id="2_o1ihh"]
|
|
[ext_resource type="Texture2D" uid="uid://jl1gwqchhpdc" path="res://sprites/left_eye.png" id="3_2srrh"]
|
|
[ext_resource type="Script" uid="uid://cty54itmnudfm" path="res://scripts/components/ShipMovementComponent.cs" id="3_ur2y5"]
|
|
[ext_resource type="Texture2D" uid="uid://iiawtnwmeny3" path="res://sprites/right_eye.png" id="4_ccn81"]
|
|
[ext_resource type="Texture2D" uid="uid://0l454rfplmqg" path="res://sprites/MrBrick_base-sheet.png" id="5_yysbb"]
|
|
[ext_resource type="Texture2D" uid="uid://dhkwyv6ayb5qb" path="res://sprites/flying_ship.png" id="8_6lsog"]
|
|
[ext_resource type="Script" uid="uid://dy78ak8eykw6e" path="res://scripts/components/FlipComponent.cs" id="9_yysbb"]
|
|
[ext_resource type="Script" uid="uid://mnjg3p0aw1ow" path="res://scripts/components/CanPickUpComponent.cs" id="10_yysbb"]
|
|
[ext_resource type="Script" uid="uid://ccqb8kd5m0eh7" path="res://scripts/components/ScoreComponent.cs" id="11_o1ihh"]
|
|
[ext_resource type="Script" uid="uid://dgb8bqcri7nsj" path="res://scripts/components/HealthComponent.cs" id="12_ur2y5"]
|
|
[ext_resource type="Script" uid="uid://byw1legrv1ep2" path="res://scripts/components/PlayerDeathComponent.cs" id="13_7til7"]
|
|
[ext_resource type="Script" uid="uid://cgfynrn68lp12" path="res://scripts/components/KnockbackComponent.cs" id="14_e5pae"]
|
|
[ext_resource type="Script" uid="uid://cecelixl41t3j" path="res://scripts/components/InvulnerabilityComponent.cs" id="15_xuhvf"]
|
|
[ext_resource type="Script" uid="uid://dvyd26ricriql" path="res://scripts/components/FlashingComponent.cs" id="16_uno3u"]
|
|
[ext_resource type="Script" uid="uid://dtg6115je7b5s" path="res://scripts/components/StompDamageComponent.cs" id="17_bl1gx"]
|
|
[ext_resource type="Script" uid="uid://di572axt0c3s8" path="res://scripts/SkillManager.cs" id="18_6lsog"]
|
|
[ext_resource type="AudioStream" uid="uid://duj2q0rqytaxg" path="res://sfx/jump.wav" id="18_pysae"]
|
|
[ext_resource type="AudioStream" uid="uid://bmfn6p88gy575" path="res://sfx/player_hurt.wav" id="19_7anly"]
|
|
[ext_resource type="Script" uid="uid://d4crrfmbgxnqf" path="res://scripts/Resources/SkillData.cs" id="19_yysbb"]
|
|
[ext_resource type="AudioStream" uid="uid://ycgtf6wj7mto" path="res://sfx/heal.wav" id="20_bptj5"]
|
|
[ext_resource type="Resource" uid="uid://dw5ee2lpeypnb" path="res://resources/skills/brick_throw.tres" id="20_o1ihh"]
|
|
[ext_resource type="Resource" uid="uid://cdp8sex36vdq2" path="res://resources/skills/explosive_brick.tres" id="21_ur2y5"]
|
|
[ext_resource type="Resource" uid="uid://cr5lo4h8wm0jc" path="res://resources/skills/fire_brick.tres" id="22_7til7"]
|
|
[ext_resource type="Resource" uid="uid://ceakv6oqob6m7" path="res://resources/skills/ice_brick.tres" id="23_e5pae"]
|
|
[ext_resource type="Resource" uid="uid://d3bjre2etov1n" path="res://resources/skills/magnetic.tres" id="24_xuhvf"]
|
|
[ext_resource type="Script" uid="uid://dlh5xcv2sy82s" path="res://scripts/components/SkillUnlockerComponent.cs" id="25_yysbb"]
|
|
[ext_resource type="Script" uid="uid://bo506l4x0808e" path="res://scripts/components/HitComponent.cs" id="26_6n1ss"]
|
|
[ext_resource type="Script" uid="uid://cjcc7fia15wu3" path="res://scripts/components/CanBeLaunchedComponent.cs" id="27_oefns"]
|
|
[ext_resource type="PackedScene" uid="uid://bg76mtpcmfm2j" path="res://objects/ui/charging_bar_layer.tscn" id="28_3f5nm"]
|
|
[ext_resource type="Script" uid="uid://cqau0810tjk4d" path="res://scripts/components/TriggerLeverComponent.cs" id="28_bnap0"]
|
|
[ext_resource type="PackedScene" uid="uid://b12tppjkkqpt4" path="res://objects/fxs/hit_particles.tscn" id="28_jh5m0"]
|
|
[ext_resource type="Script" uid="uid://dr3uv0j7n75s" path="res://scripts/components/ShipShooterComponent.cs" id="30_usc1p"]
|
|
[ext_resource type="AudioStream" uid="uid://dyev46uqusimi" path="res://sfx/shoot.wav" id="32_x2b7c"]
|
|
[ext_resource type="PackedScene" uid="uid://dtem8jgcyoqar" path="res://objects/entities/green_laser.tscn" id="36_oxudy"]
|
|
[ext_resource type="Script" uid="uid://diw6opv6yutgi" path="res://scripts/components/KillPlayerOutOfScreenComponent.cs" id="37_qec3q"]
|
|
[ext_resource type="Script" uid="uid://3qy7rm28q66a" path="res://scripts/components/ProgressiveDamageComponent.cs" id="38_dhjci"]
|
|
|
|
[sub_resource type="ShaderMaterial" id="ShaderMaterial_xoue7"]
|
|
shader = ExtResource("2_lgb3u")
|
|
shader_parameter/enabled = false
|
|
shader_parameter/tint = Color(1, 1, 1, 1)
|
|
|
|
[sub_resource type="RectangleShape2D" id="RectangleShape2D_hdsg1"]
|
|
size = Vector2(16, 31)
|
|
|
|
[sub_resource type="RectangleShape2D" id="RectangleShape2D_vad0t"]
|
|
size = Vector2(16, 32)
|
|
|
|
[sub_resource type="CircleShape2D" id="CircleShape2D_ps31c"]
|
|
radius = 48.0
|
|
|
|
[sub_resource type="Gradient" id="Gradient_qb72p"]
|
|
colors = PackedColorArray(1, 1, 1, 1, 1, 1, 1, 0)
|
|
|
|
[sub_resource type="GradientTexture1D" id="GradientTexture1D_lgb3u"]
|
|
gradient = SubResource("Gradient_qb72p")
|
|
|
|
[sub_resource type="Curve" id="Curve_82d6e"]
|
|
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
|
|
point_count = 2
|
|
|
|
[sub_resource type="CurveTexture" id="CurveTexture_xoue7"]
|
|
curve = SubResource("Curve_82d6e")
|
|
|
|
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_lgb3u"]
|
|
resource_local_to_scene = true
|
|
lifetime_randomness = 1.0
|
|
particle_flag_disable_z = true
|
|
emission_shape = 1
|
|
emission_sphere_radius = 8.0
|
|
direction = Vector3(0.1, -0.5, 0)
|
|
initial_velocity_min = 200.0
|
|
initial_velocity_max = 400.0
|
|
gravity = Vector3(0, 80, 0)
|
|
damping_min = 400.0
|
|
damping_max = 800.0
|
|
scale_max = 3.0
|
|
scale_curve = SubResource("CurveTexture_xoue7")
|
|
color = Color(0.764706, 0.443137, 0, 1)
|
|
color_ramp = SubResource("GradientTexture1D_lgb3u")
|
|
|
|
[node name="Brick Player" type="CharacterBody2D" node_paths=PackedStringArray("ShipSprite") groups=["player"]]
|
|
collision_layer = 4
|
|
collision_mask = 43
|
|
script = ExtResource("1_yysbb")
|
|
MovementTypes = Dictionary[String, NodePath]({
|
|
"platform": NodePath("Movements/PlatformMovement"),
|
|
"ship": NodePath("Movements/ShipMovement")
|
|
})
|
|
ShipSprite = NodePath("Graphics/Ship")
|
|
|
|
[node name="Movements" type="Node" parent="."]
|
|
|
|
[node name="PlatformMovement" type="Node2D" parent="Movements" node_paths=PackedStringArray("JumpSfx", "RotationTarget", "Body")]
|
|
script = ExtResource("2_o1ihh")
|
|
JumpSfx = NodePath("../../sfx_jump")
|
|
RotationTarget = NodePath("../../Graphics/Root/Base")
|
|
Body = NodePath("../..")
|
|
|
|
[node name="ShipMovement" type="Node2D" parent="Movements" node_paths=PackedStringArray("Body")]
|
|
script = ExtResource("3_ur2y5")
|
|
MaxSpeed = 360.0
|
|
Acceleration = 1200.0
|
|
Friction = 800.0
|
|
Body = NodePath("../..")
|
|
|
|
[node name="Graphics" type="Node2D" parent="."]
|
|
|
|
[node name="Root" type="Node2D" parent="Graphics"]
|
|
|
|
[node name="Base" type="Sprite2D" parent="Graphics/Root"]
|
|
material = SubResource("ShaderMaterial_xoue7")
|
|
texture = ExtResource("5_yysbb")
|
|
hframes = 5
|
|
|
|
[node name="Left Eye" type="Sprite2D" parent="Graphics/Root"]
|
|
position = Vector2(-7, -6)
|
|
texture = ExtResource("3_2srrh")
|
|
hframes = 2
|
|
|
|
[node name="Right Eye" type="Sprite2D" parent="Graphics/Root"]
|
|
position = Vector2(6, -5)
|
|
texture = ExtResource("4_ccn81")
|
|
hframes = 2
|
|
|
|
[node name="Ship" type="Sprite2D" parent="Graphics"]
|
|
visible = false
|
|
position = Vector2(1, 7)
|
|
texture = ExtResource("8_6lsog")
|
|
|
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
|
visible = false
|
|
position = Vector2(0, 0.5)
|
|
shape = SubResource("RectangleShape2D_hdsg1")
|
|
|
|
[node name="FlipPlayerComponent" type="Node2D" parent="." node_paths=PackedStringArray("LeftEye", "RightEye", "PlatformMovement")]
|
|
script = ExtResource("9_yysbb")
|
|
LeftEye = NodePath("../Graphics/Root/Left Eye")
|
|
RightEye = NodePath("../Graphics/Root/Right Eye")
|
|
PlatformMovement = NodePath("../Movements/PlatformMovement")
|
|
|
|
[node name="StompDamageArea" type="Area2D" parent="."]
|
|
collision_layer = 0
|
|
collision_mask = 8
|
|
|
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="StompDamageArea"]
|
|
visible = false
|
|
position = Vector2(0, 1)
|
|
shape = SubResource("RectangleShape2D_vad0t")
|
|
|
|
[node name="CanPickUpComponent" type="Node" parent="."]
|
|
script = ExtResource("10_yysbb")
|
|
|
|
[node name="ScoreComponent" type="Node" parent="."]
|
|
script = ExtResource("11_o1ihh")
|
|
|
|
[node name="HealthComponent" type="Node2D" parent="." node_paths=PackedStringArray("HurtSfx", "HealSfx")]
|
|
script = ExtResource("12_ur2y5")
|
|
HurtSfx = NodePath("../sfx_hurt")
|
|
HealSfx = NodePath("../sfx_heal")
|
|
|
|
[node name="PlayerDeathComponent" type="Node2D" parent="." node_paths=PackedStringArray("DeathSfx", "HealthComponent")]
|
|
process_mode = 3
|
|
script = ExtResource("13_7til7")
|
|
DeathSfx = NodePath("../sfx_hurt")
|
|
HealthComponent = NodePath("../HealthComponent")
|
|
|
|
[node name="KnockbackComponent" type="Node" parent="." node_paths=PackedStringArray("Body", "HealthComponent")]
|
|
script = ExtResource("14_e5pae")
|
|
Body = NodePath("..")
|
|
KnockbackForce = 1250.0
|
|
HealthComponent = NodePath("../HealthComponent")
|
|
|
|
[node name="InvulnerabilityComponent" type="Node" parent="." node_paths=PackedStringArray("FlashingComponent")]
|
|
script = ExtResource("15_xuhvf")
|
|
FlashingComponent = NodePath("../FlashingComponent Base")
|
|
|
|
[node name="FlashingComponent Base" type="Node" parent="." node_paths=PackedStringArray("Sprite", "HealthComponent")]
|
|
script = ExtResource("16_uno3u")
|
|
Sprite = NodePath("../Graphics/Root/Base")
|
|
FlashDuration = 1.0
|
|
HealthComponent = NodePath("../HealthComponent")
|
|
|
|
[node name="FlashingComponent LEye" type="Node" parent="." node_paths=PackedStringArray("Sprite", "HealthComponent")]
|
|
script = ExtResource("16_uno3u")
|
|
Sprite = NodePath("../Graphics/Root/Left Eye")
|
|
FlashDuration = 1.0
|
|
HealthComponent = NodePath("../HealthComponent")
|
|
|
|
[node name="FlashingComponent REye" type="Node" parent="." node_paths=PackedStringArray("Sprite", "HealthComponent")]
|
|
script = ExtResource("16_uno3u")
|
|
Sprite = NodePath("../Graphics/Root/Right Eye")
|
|
FlashDuration = 1.0
|
|
HealthComponent = NodePath("../HealthComponent")
|
|
|
|
[node name="StompDamageComponent" type="Node" parent="." node_paths=PackedStringArray("Area", "Root")]
|
|
script = ExtResource("17_bl1gx")
|
|
Damage = 4.0
|
|
Area = NodePath("../StompDamageArea")
|
|
Root = NodePath("..")
|
|
|
|
[node name="SkillManager" type="Node" parent="."]
|
|
script = ExtResource("18_6lsog")
|
|
AvailableSkills = Array[ExtResource("19_yysbb")]([ExtResource("20_o1ihh"), ExtResource("21_ur2y5"), ExtResource("22_7til7"), ExtResource("23_e5pae"), ExtResource("24_xuhvf")])
|
|
|
|
[node name="SkillUnlockerComponent" type="Node" parent="." node_paths=PackedStringArray("SkillManager")]
|
|
script = ExtResource("25_yysbb")
|
|
SkillManager = NodePath("../SkillManager")
|
|
|
|
[node name="HitComponent" type="Node" parent="." node_paths=PackedStringArray("Sprite", "Health", "HitFx")]
|
|
script = ExtResource("26_6n1ss")
|
|
Sprite = NodePath("../Graphics/Root/Base")
|
|
Health = NodePath("../HealthComponent")
|
|
HitFx = NodePath("../HitParticles")
|
|
|
|
[node name="MagneticArea" type="Area2D" parent="."]
|
|
collision_layer = 0
|
|
collision_mask = 2
|
|
|
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="MagneticArea"]
|
|
visible = false
|
|
shape = SubResource("CircleShape2D_ps31c")
|
|
|
|
[node name="CanBeLaunchedComponent" type="Node" parent="."]
|
|
script = ExtResource("27_oefns")
|
|
|
|
[node name="TriggerLeverComponent" type="Node" parent="."]
|
|
script = ExtResource("28_bnap0")
|
|
|
|
[node name="sfx_jump" type="AudioStreamPlayer2D" parent="."]
|
|
stream = ExtResource("18_pysae")
|
|
bus = &"sfx"
|
|
|
|
[node name="sfx_hurt" type="AudioStreamPlayer2D" parent="."]
|
|
stream = ExtResource("19_7anly")
|
|
bus = &"sfx"
|
|
|
|
[node name="sfx_heal" type="AudioStreamPlayer2D" parent="."]
|
|
stream = ExtResource("20_bptj5")
|
|
bus = &"sfx"
|
|
|
|
[node name="sfx_shoot" type="AudioStreamPlayer2D" parent="."]
|
|
stream = ExtResource("32_x2b7c")
|
|
bus = &"sfx"
|
|
|
|
[node name="ChargingBarLayer" parent="." node_paths=PackedStringArray("_skillManager") instance=ExtResource("28_3f5nm")]
|
|
offset_left = -17.0
|
|
offset_top = -30.0
|
|
offset_right = 23.0
|
|
offset_bottom = -20.0
|
|
_skillManager = NodePath("../SkillManager")
|
|
|
|
[node name="HitParticles" parent="." instance=ExtResource("28_jh5m0")]
|
|
process_material = SubResource("ParticleProcessMaterial_lgb3u")
|
|
|
|
[node name="ShipShooter" type="Node" parent="." node_paths=PackedStringArray("BulletSpawn", "ShootSfx")]
|
|
script = ExtResource("30_usc1p")
|
|
BulletScene = ExtResource("36_oxudy")
|
|
BulletSpawn = NodePath("../Ship shoot spawn")
|
|
ShootSfx = NodePath("../sfx_shoot")
|
|
|
|
[node name="Ship shoot spawn" type="Marker2D" parent="."]
|
|
position = Vector2(17, 5)
|
|
gizmo_extents = 1.0
|
|
|
|
[node name="VisibleOnScreenNotifier2D" type="VisibleOnScreenNotifier2D" parent="."]
|
|
position = Vector2(0, 3)
|
|
scale = Vector2(0.8, 1.9)
|
|
|
|
[node name="KillPlayerOutOfScreen" type="Node" parent="." node_paths=PackedStringArray("ScreenNotifier", "HealthComponent")]
|
|
script = ExtResource("37_qec3q")
|
|
ScreenNotifier = NodePath("../VisibleOnScreenNotifier2D")
|
|
HealthComponent = NodePath("../HealthComponent")
|
|
|
|
[node name="ProgressiveDamageComponent" type="Node" parent="." node_paths=PackedStringArray("HealthComponent", "Sprite", "PlatformMovement")]
|
|
process_mode = 4
|
|
script = ExtResource("38_dhjci")
|
|
HealthComponent = NodePath("../HealthComponent")
|
|
Sprite = NodePath("../Graphics/Root/Base")
|
|
PlatformMovement = NodePath("../Movements/PlatformMovement")
|