SpikeBlock.tscn 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180
  1. [gd_scene load_steps=27 format=3 uid="uid://dmxufw748fe32"]
  2. [ext_resource type="Script" uid="uid://bpydbpyjk1mt4" path="res://Scripts/Classes/Entities/Enemy.gd" id="1_gcnju"]
  3. [ext_resource type="Texture2D" uid="uid://do13c2crob4td" path="res://Assets/Sprites/Blocks/SpikeBlock.png" id="2_dftxp"]
  4. [ext_resource type="Script" uid="uid://caq1qiwmy0mox" path="res://Scripts/Parts/BetterAnimatedSprite.gd" id="3_4g6tc"]
  5. [ext_resource type="JSON" path="res://Assets/Sprites/Blocks/SpikeBlock.json" id="4_dftxp"]
  6. [ext_resource type="Script" uid="uid://cbal8ms2oe1ik" path="res://Scripts/Classes/Components/ResourceSetterNew.gd" id="4_w3ysb"]
  7. [ext_resource type="Script" uid="uid://cnheej0sxmoxg" path="res://Scripts/Parts/PlayerDetection.gd" id="6_l3otb"]
  8. [ext_resource type="Script" uid="uid://cqif1li7otvpl" path="res://Scripts/Parts/SpriteFramesToJsonConverter.gd" id="7_4g6tc"]
  9. [ext_resource type="Script" uid="uid://5octqlf4ohel" path="res://Scripts/Classes/Components/ScoreNoteSpawner.gd" id="7_bcd7j"]
  10. [ext_resource type="Script" uid="uid://cmvlgsjmsk0v5" path="res://Scripts/Classes/Resources/ThemedResource.gd" id="8_w3ysb"]
  11. [ext_resource type="Script" uid="uid://d4a7yp6e55u8t" path="res://Scripts/Classes/Components/TrackJoint.gd" id="10_xfdnj"]
  12. [sub_resource type="AtlasTexture" id="AtlasTexture_v0way"]
  13. atlas = ExtResource("2_dftxp")
  14. region = Rect2(0, 0, 16, 16)
  15. [sub_resource type="AtlasTexture" id="AtlasTexture_l3otb"]
  16. atlas = ExtResource("2_dftxp")
  17. region = Rect2(16, 0, 16, 16)
  18. [sub_resource type="SpriteFrames" id="SpriteFrames_bcd7j"]
  19. animations = [{
  20. "frames": [{
  21. "duration": 1.0,
  22. "texture": SubResource("AtlasTexture_v0way")
  23. }, {
  24. "duration": 1.0,
  25. "texture": SubResource("AtlasTexture_l3otb")
  26. }],
  27. "loop": true,
  28. "name": &"default",
  29. "speed": 5.0
  30. }]
  31. [sub_resource type="RectangleShape2D" id="RectangleShape2D_cgdwi"]
  32. size = Vector2(16, 16)
  33. [sub_resource type="RectangleShape2D" id="RectangleShape2D_r7ue2"]
  34. size = Vector2(16.5, 16.6)
  35. [sub_resource type="AtlasTexture" id="AtlasTexture_fgcqp"]
  36. atlas = ExtResource("2_dftxp")
  37. region = Rect2(0, 32, 16, 16)
  38. [sub_resource type="AtlasTexture" id="AtlasTexture_kxpbe"]
  39. atlas = ExtResource("2_dftxp")
  40. region = Rect2(16, 32, 16, 16)
  41. [sub_resource type="SpriteFrames" id="SpriteFrames_aqm7k"]
  42. animations = [{
  43. "frames": [{
  44. "duration": 1.0,
  45. "texture": SubResource("AtlasTexture_fgcqp")
  46. }, {
  47. "duration": 1.0,
  48. "texture": SubResource("AtlasTexture_kxpbe")
  49. }],
  50. "loop": true,
  51. "name": &"default",
  52. "speed": 5.0
  53. }]
  54. [sub_resource type="AtlasTexture" id="AtlasTexture_13gtq"]
  55. atlas = ExtResource("2_dftxp")
  56. region = Rect2(0, 16, 16, 16)
  57. [sub_resource type="AtlasTexture" id="AtlasTexture_wxl8r"]
  58. atlas = ExtResource("2_dftxp")
  59. region = Rect2(16, 16, 16, 16)
  60. [sub_resource type="SpriteFrames" id="SpriteFrames_31p57"]
  61. animations = [{
  62. "frames": [{
  63. "duration": 1.0,
  64. "texture": SubResource("AtlasTexture_13gtq")
  65. }, {
  66. "duration": 1.0,
  67. "texture": SubResource("AtlasTexture_wxl8r")
  68. }],
  69. "loop": true,
  70. "name": &"default",
  71. "speed": 5.0
  72. }]
  73. [sub_resource type="SpriteFrames" id="SpriteFrames_f51es"]
  74. animations = [{
  75. "frames": [{
  76. "duration": 1.0,
  77. "texture": SubResource("AtlasTexture_v0way")
  78. }, {
  79. "duration": 1.0,
  80. "texture": SubResource("AtlasTexture_l3otb")
  81. }],
  82. "loop": true,
  83. "name": &"default",
  84. "speed": 5.0
  85. }]
  86. [sub_resource type="AtlasTexture" id="AtlasTexture_jnbok"]
  87. atlas = ExtResource("2_dftxp")
  88. region = Rect2(0, 48, 16, 16)
  89. [sub_resource type="AtlasTexture" id="AtlasTexture_jtvf6"]
  90. atlas = ExtResource("2_dftxp")
  91. region = Rect2(16, 48, 16, 16)
  92. [sub_resource type="SpriteFrames" id="SpriteFrames_f65v7"]
  93. animations = [{
  94. "frames": [{
  95. "duration": 1.0,
  96. "texture": SubResource("AtlasTexture_jnbok")
  97. }, {
  98. "duration": 1.0,
  99. "texture": SubResource("AtlasTexture_jtvf6")
  100. }],
  101. "loop": true,
  102. "name": &"default",
  103. "speed": 5.0
  104. }]
  105. [sub_resource type="Resource" id="Resource_ji0bc"]
  106. script = ExtResource("8_w3ysb")
  107. Overworld = SubResource("SpriteFrames_f51es")
  108. Underground = SubResource("SpriteFrames_31p57")
  109. Snow = SubResource("SpriteFrames_f65v7")
  110. GhostHouse = SubResource("SpriteFrames_31p57")
  111. Castle = SubResource("SpriteFrames_aqm7k")
  112. metadata/_custom_type_script = "uid://cmvlgsjmsk0v5"
  113. [node name="SpikeBlock" type="CharacterBody2D" groups=["Enemies"]]
  114. disable_mode = 1
  115. collision_layer = 2
  116. collision_mask = 2
  117. script = ExtResource("1_gcnju")
  118. metadata/_custom_type_script = "uid://bpydbpyjk1mt4"
  119. [node name="Sprite" type="AnimatedSprite2D" parent="."]
  120. sprite_frames = SubResource("SpriteFrames_bcd7j")
  121. autoplay = "default"
  122. frame_progress = 0.177236
  123. script = ExtResource("3_4g6tc")
  124. do_offset = false
  125. metadata/_custom_type_script = "uid://caq1qiwmy0mox"
  126. [node name="ResourceSetterNew" type="Node" parent="Sprite" node_paths=PackedStringArray("node_to_affect")]
  127. script = ExtResource("4_w3ysb")
  128. node_to_affect = NodePath("..")
  129. property_name = "sprite_frames"
  130. resource_json = ExtResource("4_dftxp")
  131. metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
  132. [node name="Collision" type="CollisionShape2D" parent="."]
  133. shape = SubResource("RectangleShape2D_cgdwi")
  134. [node name="PlayerDetection" type="Area2D" parent="."]
  135. script = ExtResource("6_l3otb")
  136. metadata/_custom_type_script = "uid://cnheej0sxmoxg"
  137. [node name="CollisionShape2D" type="CollisionShape2D" parent="PlayerDetection"]
  138. shape = SubResource("RectangleShape2D_r7ue2")
  139. [node name="VisibleOnScreenEnabler2D" type="VisibleOnScreenEnabler2D" parent="."]
  140. [node name="ScoreNoteSpawner" type="Node" parent="."]
  141. script = ExtResource("7_bcd7j")
  142. metadata/_custom_type_script = "uid://5octqlf4ohel"
  143. [node name="ThemedToJSONConverter" type="Node" parent="."]
  144. script = ExtResource("7_4g6tc")
  145. resource = SubResource("Resource_ji0bc")
  146. json_file_path = "res://Assets/Sprites/Blocks/SpikeBlock.json"
  147. metadata/_custom_type_script = "uid://cqif1li7otvpl"
  148. [node name="TrackJoint" type="Node" parent="."]
  149. script = ExtResource("10_xfdnj")
  150. offset = Vector2(0, 0)
  151. metadata/_custom_type_script = "uid://d4a7yp6e55u8t"
  152. [connection signal="player_entered" from="PlayerDetection" to="." method="damage_player"]