RaceBoo.tscn 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374
  1. [gd_scene load_steps=37 format=3 uid="uid://bbrkol4k3yobq"]
  2. [ext_resource type="Script" uid="uid://b43onpjaw542l" path="res://Scripts/Classes/Entities/Enemies/RaceBoo.gd" id="1_d640j"]
  3. [ext_resource type="Texture2D" uid="uid://c3l6ynlufxcfp" path="res://Assets/Sprites/Enemies/Boo.png" id="2_5odtl"]
  4. [ext_resource type="Script" uid="uid://caq1qiwmy0mox" path="res://Scripts/Parts/BetterAnimatedSprite.gd" id="3_4ikdy"]
  5. [ext_resource type="Texture2D" uid="uid://dtemc0qgag20j" path="res://Assets/Sprites/UI/BooIcon.png" id="3_5odtl"]
  6. [ext_resource type="Script" uid="uid://cbal8ms2oe1ik" path="res://Scripts/Classes/Components/ResourceSetterNew.gd" id="4_6dgmd"]
  7. [ext_resource type="JSON" path="res://Assets/Sprites/Enemies/RaceBoo.json" id="5_6dgmd"]
  8. [ext_resource type="Texture2D" uid="uid://sgrcmlktp2dk" path="res://Assets/Sprites/Particles/SRankParticles.png" id="6_6dgmd"]
  9. [ext_resource type="Script" uid="uid://364rywt44hy6" path="res://Scripts/Classes/UI/PackSprite.gd" id="7_sfl3g"]
  10. [ext_resource type="Script" uid="uid://cq6f682453q6o" path="res://Scripts/Classes/Components/ResourceSetter.gd" id="9_xux50"]
  11. [ext_resource type="Texture2D" uid="uid://cr6iro3hmjl7f" path="res://Assets/Sprites/Particles/GoldParticles.png" id="10_4hd5m"]
  12. [ext_resource type="Script" uid="uid://cmvlgsjmsk0v5" path="res://Scripts/Classes/Resources/ThemedResource.gd" id="11_kx23c"]
  13. [ext_resource type="Texture2D" uid="uid://dboi14xptkew3" path="res://Assets/Sprites/UI/BooWarning.png" id="12_4hd5m"]
  14. [sub_resource type="AtlasTexture" id="AtlasTexture_mm3k3"]
  15. atlas = ExtResource("2_5odtl")
  16. region = Rect2(16, 48, 16, 16)
  17. [sub_resource type="AtlasTexture" id="AtlasTexture_nk4wu"]
  18. atlas = ExtResource("2_5odtl")
  19. region = Rect2(0, 48, 16, 16)
  20. [sub_resource type="AtlasTexture" id="AtlasTexture_ede5m"]
  21. atlas = ExtResource("2_5odtl")
  22. region = Rect2(16, 64, 16, 16)
  23. [sub_resource type="AtlasTexture" id="AtlasTexture_pinst"]
  24. atlas = ExtResource("2_5odtl")
  25. region = Rect2(0, 64, 16, 16)
  26. [sub_resource type="AtlasTexture" id="AtlasTexture_u5tsp"]
  27. atlas = ExtResource("2_5odtl")
  28. region = Rect2(16, 16, 16, 16)
  29. [sub_resource type="AtlasTexture" id="AtlasTexture_xx8pl"]
  30. atlas = ExtResource("2_5odtl")
  31. region = Rect2(0, 16, 16, 16)
  32. [sub_resource type="AtlasTexture" id="AtlasTexture_jrwk8"]
  33. atlas = ExtResource("2_5odtl")
  34. region = Rect2(16, 32, 16, 16)
  35. [sub_resource type="AtlasTexture" id="AtlasTexture_fwe35"]
  36. atlas = ExtResource("2_5odtl")
  37. region = Rect2(0, 32, 16, 16)
  38. [sub_resource type="AtlasTexture" id="AtlasTexture_e7l5x"]
  39. atlas = ExtResource("2_5odtl")
  40. region = Rect2(16, 0, 16, 16)
  41. [sub_resource type="AtlasTexture" id="AtlasTexture_d7k1s"]
  42. atlas = ExtResource("2_5odtl")
  43. region = Rect2(0, 0, 16, 16)
  44. [sub_resource type="SpriteFrames" id="SpriteFrames_f71ce"]
  45. animations = [{
  46. "frames": [{
  47. "duration": 1.0,
  48. "texture": SubResource("AtlasTexture_mm3k3")
  49. }],
  50. "loop": true,
  51. "name": &"BlackIdle",
  52. "speed": 5.0
  53. }, {
  54. "frames": [{
  55. "duration": 1.0,
  56. "texture": SubResource("AtlasTexture_nk4wu")
  57. }],
  58. "loop": true,
  59. "name": &"BlackMove",
  60. "speed": 5.0
  61. }, {
  62. "frames": [{
  63. "duration": 1.0,
  64. "texture": SubResource("AtlasTexture_ede5m")
  65. }],
  66. "loop": true,
  67. "name": &"GoldIdle",
  68. "speed": 5.0
  69. }, {
  70. "frames": [{
  71. "duration": 1.0,
  72. "texture": SubResource("AtlasTexture_pinst")
  73. }],
  74. "loop": true,
  75. "name": &"GoldMove",
  76. "speed": 5.0
  77. }, {
  78. "frames": [{
  79. "duration": 1.0,
  80. "texture": SubResource("AtlasTexture_u5tsp")
  81. }],
  82. "loop": true,
  83. "name": &"GreenIdle",
  84. "speed": 5.0
  85. }, {
  86. "frames": [{
  87. "duration": 1.0,
  88. "texture": SubResource("AtlasTexture_xx8pl")
  89. }],
  90. "loop": true,
  91. "name": &"GreenMove",
  92. "speed": 5.0
  93. }, {
  94. "frames": [{
  95. "duration": 1.0,
  96. "texture": SubResource("AtlasTexture_jrwk8")
  97. }],
  98. "loop": true,
  99. "name": &"RedIdle",
  100. "speed": 5.0
  101. }, {
  102. "frames": [{
  103. "duration": 1.0,
  104. "texture": SubResource("AtlasTexture_fwe35")
  105. }],
  106. "loop": true,
  107. "name": &"RedMove",
  108. "speed": 5.0
  109. }, {
  110. "frames": [{
  111. "duration": 1.0,
  112. "texture": SubResource("AtlasTexture_e7l5x")
  113. }],
  114. "loop": true,
  115. "name": &"WhiteIdle",
  116. "speed": 5.0
  117. }, {
  118. "frames": [{
  119. "duration": 1.0,
  120. "texture": SubResource("AtlasTexture_d7k1s")
  121. }],
  122. "loop": true,
  123. "name": &"WhiteMove",
  124. "speed": 5.0
  125. }]
  126. [sub_resource type="Animation" id="Animation_cst5p"]
  127. resource_name = "Bob"
  128. loop_mode = 2
  129. tracks/0/type = "value"
  130. tracks/0/imported = false
  131. tracks/0/enabled = true
  132. tracks/0/path = NodePath(".:position")
  133. tracks/0/interp = 2
  134. tracks/0/loop_wrap = true
  135. tracks/0/keys = {
  136. "times": PackedFloat32Array(0, 1),
  137. "transitions": PackedFloat32Array(1, 1),
  138. "update": 0,
  139. "values": [Vector2(0, -8), Vector2(0, 8)]
  140. }
  141. [sub_resource type="Animation" id="Animation_m7tca"]
  142. length = 0.001
  143. tracks/0/type = "value"
  144. tracks/0/imported = false
  145. tracks/0/enabled = true
  146. tracks/0/path = NodePath(".:position")
  147. tracks/0/interp = 1
  148. tracks/0/loop_wrap = true
  149. tracks/0/keys = {
  150. "times": PackedFloat32Array(0),
  151. "transitions": PackedFloat32Array(1),
  152. "update": 0,
  153. "values": [Vector2(0, -16)]
  154. }
  155. [sub_resource type="AnimationLibrary" id="AnimationLibrary_4ikdy"]
  156. _data = {
  157. &"Bob": SubResource("Animation_cst5p"),
  158. &"RESET": SubResource("Animation_m7tca")
  159. }
  160. [sub_resource type="Animation" id="Animation_5odtl"]
  161. resource_name = "CloseFlash"
  162. length = 0.5
  163. loop_mode = 1
  164. tracks/0/type = "value"
  165. tracks/0/imported = false
  166. tracks/0/enabled = true
  167. tracks/0/path = NodePath(".:modulate")
  168. tracks/0/interp = 0
  169. tracks/0/loop_wrap = true
  170. tracks/0/keys = {
  171. "times": PackedFloat32Array(0, 0.25),
  172. "transitions": PackedFloat32Array(1, 1),
  173. "update": 0,
  174. "values": [Color(1, 1, 1, 1), Color(1, 1, 1, 0)]
  175. }
  176. [sub_resource type="Animation" id="Animation_6dgmd"]
  177. resource_name = "Fine"
  178. tracks/0/type = "value"
  179. tracks/0/imported = false
  180. tracks/0/enabled = true
  181. tracks/0/path = NodePath(".:modulate")
  182. tracks/0/interp = 1
  183. tracks/0/loop_wrap = true
  184. tracks/0/keys = {
  185. "times": PackedFloat32Array(0),
  186. "transitions": PackedFloat32Array(1),
  187. "update": 0,
  188. "values": [Color(1, 1, 1, 1)]
  189. }
  190. [sub_resource type="Animation" id="Animation_4ikdy"]
  191. length = 0.001
  192. tracks/0/type = "value"
  193. tracks/0/imported = false
  194. tracks/0/enabled = true
  195. tracks/0/path = NodePath(".:modulate")
  196. tracks/0/interp = 1
  197. tracks/0/loop_wrap = true
  198. tracks/0/keys = {
  199. "times": PackedFloat32Array(0),
  200. "transitions": PackedFloat32Array(1),
  201. "update": 0,
  202. "values": [Color(1, 1, 1, 1)]
  203. }
  204. [sub_resource type="AnimationLibrary" id="AnimationLibrary_sfl3g"]
  205. _data = {
  206. &"CloseFlash": SubResource("Animation_5odtl"),
  207. &"Fine": SubResource("Animation_6dgmd"),
  208. &"RESET": SubResource("Animation_4ikdy")
  209. }
  210. [sub_resource type="CanvasItemMaterial" id="CanvasItemMaterial_sfl3g"]
  211. particles_animation = true
  212. particles_anim_h_frames = 7
  213. particles_anim_v_frames = 1
  214. particles_anim_loop = false
  215. [sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_f71ce"]
  216. particle_flag_disable_z = true
  217. emission_shape = 6
  218. emission_ring_axis = Vector3(0, 0, 1)
  219. emission_ring_height = 8.0
  220. emission_ring_radius = 10.0
  221. emission_ring_inner_radius = 8.0
  222. emission_ring_cone_angle = 90.0
  223. gravity = Vector3(0, 0, 0)
  224. anim_speed_min = 2.0
  225. anim_speed_max = 2.0
  226. [sub_resource type="Resource" id="Resource_2ic4s"]
  227. script = ExtResource("11_kx23c")
  228. Overworld = ExtResource("10_4hd5m")
  229. metadata/_custom_type_script = "uid://cmvlgsjmsk0v5"
  230. [sub_resource type="Animation" id="Animation_kx23c"]
  231. resource_name = "Blink"
  232. length = 0.5
  233. loop_mode = 1
  234. tracks/0/type = "value"
  235. tracks/0/imported = false
  236. tracks/0/enabled = true
  237. tracks/0/path = NodePath("TextureRect:visible")
  238. tracks/0/interp = 1
  239. tracks/0/loop_wrap = true
  240. tracks/0/keys = {
  241. "times": PackedFloat32Array(0, 0.25),
  242. "transitions": PackedFloat32Array(1, 1),
  243. "update": 1,
  244. "values": [true, false]
  245. }
  246. [sub_resource type="Animation" id="Animation_2ic4s"]
  247. length = 0.001
  248. tracks/0/type = "value"
  249. tracks/0/imported = false
  250. tracks/0/enabled = true
  251. tracks/0/path = NodePath("TextureRect:visible")
  252. tracks/0/interp = 1
  253. tracks/0/loop_wrap = true
  254. tracks/0/keys = {
  255. "times": PackedFloat32Array(0),
  256. "transitions": PackedFloat32Array(1),
  257. "update": 1,
  258. "values": [true]
  259. }
  260. [sub_resource type="AnimationLibrary" id="AnimationLibrary_it5le"]
  261. _data = {
  262. &"Blink": SubResource("Animation_kx23c"),
  263. &"RESET": SubResource("Animation_2ic4s")
  264. }
  265. [node name="RaceBoo" type="Node2D" groups=["Enemies"]]
  266. physics_interpolation_mode = 2
  267. script = ExtResource("1_d640j")
  268. [node name="Sprite" type="AnimatedSprite2D" parent="."]
  269. process_mode = 3
  270. position = Vector2(0, -16)
  271. sprite_frames = SubResource("SpriteFrames_f71ce")
  272. animation = &"BlackIdle"
  273. flip_h = true
  274. script = ExtResource("3_4ikdy")
  275. metadata/_custom_type_script = "uid://caq1qiwmy0mox"
  276. [node name="Animation" type="AnimationPlayer" parent="Sprite"]
  277. libraries = {
  278. &"": SubResource("AnimationLibrary_4ikdy")
  279. }
  280. autoplay = "Bob"
  281. [node name="VisibleOnScreenNotifier2D" type="VisibleOnScreenNotifier2D" parent="Sprite"]
  282. [node name="ResourceSetterNew" type="Node" parent="Sprite" node_paths=PackedStringArray("node_to_affect")]
  283. script = ExtResource("4_6dgmd")
  284. node_to_affect = NodePath("..")
  285. property_name = "sprite_frames"
  286. resource_json = ExtResource("5_6dgmd")
  287. metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
  288. [node name="RemoteTransform2D" type="RemoteTransform2D" parent="Sprite"]
  289. remote_path = NodePath("../../GoldParticles")
  290. [node name="OffScreenIcon" type="Sprite2D" parent="."]
  291. physics_interpolation_mode = 2
  292. visible = false
  293. top_level = true
  294. visibility_layer = 2
  295. texture = ExtResource("3_5odtl")
  296. hframes = 5
  297. region_rect = Rect2(0, 0, 16, 16)
  298. script = ExtResource("7_sfl3g")
  299. metadata/_custom_type_script = "uid://364rywt44hy6"
  300. [node name="Animation" type="AnimationPlayer" parent="OffScreenIcon"]
  301. libraries = {
  302. &"": SubResource("AnimationLibrary_sfl3g")
  303. }
  304. [node name="GoldParticles" type="GPUParticles2D" parent="."]
  305. z_index = 1
  306. material = SubResource("CanvasItemMaterial_sfl3g")
  307. position = Vector2(0, -16)
  308. texture = ExtResource("6_6dgmd")
  309. randomness = 0.12
  310. process_material = SubResource("ParticleProcessMaterial_f71ce")
  311. [node name="ResourceSetter" type="Node" parent="GoldParticles" node_paths=PackedStringArray("node_to_affect")]
  312. script = ExtResource("9_xux50")
  313. node_to_affect = NodePath("..")
  314. property_name = "texture"
  315. themed_resource = SubResource("Resource_2ic4s")
  316. metadata/_custom_type_script = "uid://cq6f682453q6o"
  317. [node name="Warning" type="CanvasLayer" parent="."]
  318. visible = false
  319. [node name="TextureRect" type="TextureRect" parent="Warning"]
  320. anchors_preset = 3
  321. anchor_left = 1.0
  322. anchor_top = 1.0
  323. anchor_right = 1.0
  324. anchor_bottom = 1.0
  325. offset_left = -45.0
  326. offset_top = -34.0
  327. grow_horizontal = 0
  328. grow_vertical = 0
  329. texture = ExtResource("12_4hd5m")
  330. stretch_mode = 3
  331. [node name="AnimationPlayer" type="AnimationPlayer" parent="Warning"]
  332. libraries = {
  333. &"": SubResource("AnimationLibrary_it5le")
  334. }
  335. autoplay = "Blink"
  336. speed_scale = 1.5