mirror of
https://github.com/JHDev2006/Super-Mario-Bros.-Remastered-Public.git
synced 2025-10-21 15:08:12 +00:00
Properly implement the Hammer item (#599)
* Properly implement the Hammer item * Update Boo.gd * Update LongFirebar.tscn
This commit is contained in:

committed by
GitHub

parent
651988bf5e
commit
8474bc3c19
BIN
Assets/Audio/SFX/HammerHit.wav
Normal file
BIN
Assets/Audio/SFX/HammerHit.wav
Normal file
Binary file not shown.
24
Assets/Audio/SFX/HammerHit.wav.import
Normal file
24
Assets/Audio/SFX/HammerHit.wav.import
Normal file
@@ -0,0 +1,24 @@
|
||||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://dmgokar32otvr"
|
||||
path="res://.godot/imported/HammerHit.wav-e7d35f1a3d3022177d665d6f2eb69a9d.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Assets/Audio/SFX/HammerHit.wav"
|
||||
dest_files=["res://.godot/imported/HammerHit.wav-e7d35f1a3d3022177d665d6f2eb69a9d.sample"]
|
||||
|
||||
[params]
|
||||
|
||||
force/8_bit=false
|
||||
force/mono=false
|
||||
force/max_rate=false
|
||||
force/max_rate_hz=44100
|
||||
edit/trim=false
|
||||
edit/normalize=false
|
||||
edit/loop_mode=0
|
||||
edit/loop_begin=0
|
||||
edit/loop_end=-1
|
||||
compress/mode=0
|
BIN
Assets/Audio/SFX/HammerPoint.wav
Normal file
BIN
Assets/Audio/SFX/HammerPoint.wav
Normal file
Binary file not shown.
24
Assets/Audio/SFX/HammerPoint.wav.import
Normal file
24
Assets/Audio/SFX/HammerPoint.wav.import
Normal file
@@ -0,0 +1,24 @@
|
||||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://clpebkune16oc"
|
||||
path="res://.godot/imported/HammerPoint.wav-d08385bab6f27e27d308496f733770b5.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Assets/Audio/SFX/HammerPoint.wav"
|
||||
dest_files=["res://.godot/imported/HammerPoint.wav-d08385bab6f27e27d308496f733770b5.sample"]
|
||||
|
||||
[params]
|
||||
|
||||
force/8_bit=false
|
||||
force/mono=false
|
||||
force/max_rate=false
|
||||
force/max_rate_hz=44100
|
||||
edit/trim=false
|
||||
edit/normalize=false
|
||||
edit/loop_mode=0
|
||||
edit/loop_begin=0
|
||||
edit/loop_end=-1
|
||||
compress/mode=0
|
@@ -113,8 +113,10 @@ metadata/_custom_type_script = "uid://cmg61722ktg2m"
|
||||
script = ExtResource("12_d7wml")
|
||||
hitbox = NodePath("../Hitbox")
|
||||
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="destroy" unbinds=1]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
[connection signal="player_stomped_on" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
[connection signal="explosion_entered" from="ExplosionDetection" to="." method="die_from_object"]
|
||||
|
@@ -103,6 +103,8 @@ hitbox = NodePath("../Hitbox")
|
||||
metadata/_custom_type_script = "uid://ba18grqjixded"
|
||||
|
||||
[connection signal="killed" from="." to="GibSpawner" method="summon_gib"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
|
@@ -191,6 +191,8 @@ metadata/_custom_type_script = "uid://ba18grqjixded"
|
||||
|
||||
[connection signal="killed" from="." to="GibSpawner" method="summon_gib"]
|
||||
[connection signal="fireball_hit" from="FireballDetection" to="." method="fireball_hit"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
|
@@ -403,8 +403,8 @@ hitbox = NodePath("../SpriteScaleJoint/Sprite/Hitbox")
|
||||
metadata/_custom_type_script = "uid://ba18grqjixded"
|
||||
|
||||
[connection signal="killed" from="." to="GibSpawner" method="summon_gib"]
|
||||
[connection signal="killed" from="." to="ScoreNoteSpawner" method="spawn_note" binds= [5000]]
|
||||
[connection signal="killed" from="." to="." method="show_smoke" unbinds=1]
|
||||
[connection signal="killed" from="." to="ScoreNoteSpawner" method="spawn_note" binds= [5000]]
|
||||
[connection signal="area_entered" from="SpriteScaleJoint/Sprite/Hitbox" to="." method="on_area_entered"]
|
||||
[connection signal="timeout" from="JumpTimer" to="." method="jump"]
|
||||
[connection signal="timeout" from="HammerTime" to="." method="throw_hammers"]
|
||||
@@ -414,6 +414,7 @@ metadata/_custom_type_script = "uid://ba18grqjixded"
|
||||
[connection signal="attached" from="TrackJoint" to="MoveAnimation" method="play" binds= ["RESET"]]
|
||||
[connection signal="moving_shell_entered" from="ShellDetection" to="ShellDetection" method="destroy_shell"]
|
||||
[connection signal="moving_shell_entered" from="ShellDetection" to="." method="fireball_hit" unbinds=1]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
[connection signal="player_stomped_on" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
|
@@ -80,12 +80,14 @@ script = ExtResource("11_myh77")
|
||||
[connection signal="killed" from="." to="GibSpawner" method="summon_gib"]
|
||||
[connection signal="screen_entered" from="VisibleOnScreenEnabler2D" to="." method="on_screen_entered"]
|
||||
[connection signal="screen_exited" from="VisibleOnScreenEnabler2D" to="OffScreenDespawner" method="on_screen_exited"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
[connection signal="player_stomped_on" from="EnemyPlayerDetection" to="GibSpawner" method="stomp_die"]
|
||||
[connection signal="moving_shell_entered" from="ShellDetection" to="." method="die_from_object"]
|
||||
[connection signal="level_start" from="LevelEditorToggleDetection" to="." method="on_screen_entered"]
|
||||
[connection signal="level_start" from="LevelEditorToggleDetection" to="." method="_ready"]
|
||||
[connection signal="level_start" from="LevelEditorToggleDetection" to="." method="on_screen_entered"]
|
||||
[connection signal="explosion_entered" from="ExplosionDetection" to="." method="die_from_object"]
|
||||
[connection signal="explosion_entered" from="ExplosionDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
|
@@ -164,12 +164,14 @@ movement_node = NodePath("../BasicEnemyMovement")
|
||||
metadata/_custom_type_script = "uid://d4a7yp6e55u8t"
|
||||
|
||||
[connection signal="killed" from="." to="GibSpawner" method="summon_gib"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
[connection signal="player_stomped_on" from="EnemyPlayerDetection" to="." method="stomped_on"]
|
||||
[connection signal="block_bounced" from="BlockBouncingDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="block_bounced" from="BlockBouncingDetection" to="." method="block_bounced" unbinds=1]
|
||||
[connection signal="block_bounced" from="BlockBouncingDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="moving_shell_entered" from="ShellDetection" to="." method="die_from_object"]
|
||||
[connection signal="icicle_detected" from="IcicleDetection" to="." method="die_from_object"]
|
||||
[connection signal="explosion_entered" from="ExplosionDetection" to="." method="die_from_object"]
|
||||
|
@@ -205,6 +205,8 @@ hitbox = NodePath("../Hitbox")
|
||||
metadata/_custom_type_script = "uid://ba18grqjixded"
|
||||
|
||||
[connection signal="killed" from="." to="." method="summon_particle" unbinds=1]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
|
@@ -191,6 +191,8 @@ hitbox = NodePath("../Hitbox")
|
||||
metadata/_custom_type_script = "uid://ba18grqjixded"
|
||||
|
||||
[connection signal="killed" from="." to="GibSpawner" method="summon_gib"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [100]]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [100]]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
|
@@ -164,6 +164,8 @@ metadata/_custom_type_script = "uid://maqpreddu5kg"
|
||||
|
||||
[connection signal="killed" from="." to="GibSpawner" method="summon_gib"]
|
||||
[connection signal="killed" from="." to="LevelPersistance" method="set_as_active" unbinds=1]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [100]]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
|
@@ -200,6 +200,7 @@ hitbox = NodePath("../Sprite/Hitbox")
|
||||
metadata/_custom_type_script = "uid://ba18grqjixded"
|
||||
|
||||
[connection signal="killed" from="." to="GibSpawner" method="summon_gib"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
[connection signal="player_stomped_on" from="EnemyPlayerDetection" to="GibSpawner" method="stomp_die"]
|
||||
|
@@ -184,6 +184,8 @@ metadata/_custom_type_script = "uid://maqpreddu5kg"
|
||||
|
||||
[connection signal="killed" from="." to="GibSpawner" method="summon_gib"]
|
||||
[connection signal="killed" from="." to="LevelPersistance" method="set_as_active" unbinds=1]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
@@ -191,8 +193,8 @@ metadata/_custom_type_script = "uid://maqpreddu5kg"
|
||||
[connection signal="player_stomped_on" from="EnemyPlayerDetection" to="LevelPersistance" method="set_as_active" unbinds=1]
|
||||
[connection signal="fireball_hit" from="FireballDetection" to="." method="die_from_object"]
|
||||
[connection signal="fireball_hit" from="FireballDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="block_bounced" from="BlockBouncingDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="block_bounced" from="BlockBouncingDetection" to="." method="block_bounced" unbinds=1]
|
||||
[connection signal="block_bounced" from="BlockBouncingDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="moving_shell_entered" from="ShellDetection" to="." method="die_from_object"]
|
||||
[connection signal="icicle_detected" from="IcicleDetection" to="." method="die_from_object"]
|
||||
[connection signal="explosion_entered" from="ExplosionDetection" to="." method="die_from_object"]
|
||||
|
@@ -17,3 +17,5 @@ points = PackedVector2Array(0, 0, -96, 0)
|
||||
width = 1.0
|
||||
texture = ExtResource("3_kfyly")
|
||||
texture_mode = 1
|
||||
|
||||
[connection signal="block_bounced" from="BlockBouncingDetection" to="." method="block_bounced" unbinds=1]
|
||||
|
@@ -313,6 +313,8 @@ metadata/_custom_type_script = "uid://d4a7yp6e55u8t"
|
||||
[connection signal="killed" from="." to="GibSpawner" method="summon_gib"]
|
||||
[connection signal="timeout" from="JumpTimer" to="." method="jump" binds= [false]]
|
||||
[connection signal="timeout" from="HammerTimer" to="." method="do_hammer_throw"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [1000]]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [1000]]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
|
@@ -181,6 +181,8 @@ metadata/_custom_type_script = "uid://ba18grqjixded"
|
||||
[connection signal="killed" from="." to="." method="summon_cloud_particle" unbinds=1]
|
||||
[connection signal="screen_entered" from="VisibleOnScreenEnabler2D" to="." method="on_screen_entered"]
|
||||
[connection signal="timeout" from="ThrowTimer" to="." method="on_timeout"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" flags=3 binds= [200]]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
|
@@ -105,6 +105,7 @@ hitbox = NodePath("../Hitbox")
|
||||
metadata/_custom_type_script = "uid://ba18grqjixded"
|
||||
|
||||
[connection signal="killed" from="." to="GibSpawner" method="summon_gib"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
[connection signal="player_stomped_on" from="EnemyPlayerDetection" to="GibSpawner" method="stomp_die"]
|
||||
|
@@ -184,6 +184,8 @@ hitbox = NodePath("../Hitbox")
|
||||
metadata/_custom_type_script = "uid://ba18grqjixded"
|
||||
|
||||
[connection signal="killed" from="." to="GibSpawner" method="summon_gib"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
|
@@ -309,6 +309,8 @@ process_mode = 3
|
||||
script = SubResource("GDScript_ofvpu")
|
||||
|
||||
[connection signal="timeout" from="Timer" to="." method="on_timeout"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
|
@@ -81,6 +81,7 @@ metadata/_custom_type_script = "uid://5octqlf4ohel"
|
||||
|
||||
[connection signal="killed" from="." to="GibSpawner" method="summon_gib" binds= [0, true]]
|
||||
[connection signal="killed" from="." to="ScoreNoteSpawner" method="spawn_note" binds= [500]]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer" unbinds=1]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die" unbinds=1]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
[connection signal="player_stomped_on" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
|
@@ -377,6 +377,7 @@ script = SubResource("GDScript_30hxr")
|
||||
|
||||
[connection signal="killed" from="." to="." method="summon_part_gibs" unbinds=1]
|
||||
[connection signal="fireball_hit" from="FireballDetection" to="." method="die_from_object"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
[connection signal="player_stomped_on" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
|
@@ -399,12 +399,13 @@ metadata/_custom_type_script = "uid://cmg61722ktg2m"
|
||||
|
||||
[connection signal="killed" from="." to="GibSpawner" method="summon_gib"]
|
||||
[connection signal="player_stomped_on" from="Sprite/StompHitbox/EnemyPlayerDetection" to="." method="on_player_stomped_on"]
|
||||
[connection signal="hammer_player_hit" from="Sprite/EntityHitbox/EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="invincible_player_hit" from="Sprite/EntityHitbox/EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="player_hit" from="Sprite/EntityHitbox/EnemyPlayerDetection" to="." method="damage_player"]
|
||||
[connection signal="gib_about_to_spawn" from="GibSpawner" to="Sprite/Wrench" method="hide"]
|
||||
[connection signal="gib_about_to_spawn" from="GibSpawner" to="Sprite" method="set_flip_v" binds= [true]]
|
||||
[connection signal="gib_about_to_spawn" from="GibSpawner" to="Sprite" method="play" binds= ["Dead"]]
|
||||
[connection signal="gib_about_to_spawn" from="GibSpawner" to="Sprite" method="set_offset" binds= [Vector2(0, -8)]]
|
||||
[connection signal="gib_about_to_spawn" from="GibSpawner" to="Sprite" method="set_flip_v" binds= [true]]
|
||||
[connection signal="fireball_hit" from="FireballDetection" to="." method="die_from_object"]
|
||||
[connection signal="fireball_hit" from="FireballDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [500]]
|
||||
[connection signal="moving_shell_entered" from="ShellDetection" to="." method="die_from_object"]
|
||||
|
@@ -146,6 +146,8 @@ hitbox = NodePath("../Hitbox")
|
||||
metadata/_custom_type_script = "uid://ba18grqjixded"
|
||||
|
||||
[connection signal="killed" from="." to="GibSpawner" method="summon_gib"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [100]]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [100]]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
|
@@ -144,6 +144,8 @@ json_file_path = "res://Assets/Sprites/Enemies/Sigebou.json"
|
||||
metadata/_custom_type_script = "uid://cqif1li7otvpl"
|
||||
|
||||
[connection signal="killed" from="." to="GibSpawner" method="summon_gib"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [100]]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [100]]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
|
@@ -297,6 +297,8 @@ hitbox = NodePath("../Hitbox")
|
||||
metadata/_custom_type_script = "uid://ba18grqjixded"
|
||||
|
||||
[connection signal="killed" from="." to="GibSpawner" method="summon_gib"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [500]]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [500]]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
|
@@ -160,6 +160,8 @@ script = ExtResource("14_878x2")
|
||||
metadata/_custom_type_script = "uid://33no4mylhh1r"
|
||||
|
||||
[connection signal="killed" from="." to="GibSpawner" method="summon_gib"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
|
@@ -144,6 +144,7 @@ script = ExtResource("11_jkv5r")
|
||||
metadata/_custom_type_script = "uid://5octqlf4ohel"
|
||||
|
||||
[connection signal="killed" from="." to="GibSpawner" method="summon_gib"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
[connection signal="player_stomped_on" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
|
@@ -253,6 +253,7 @@ hitbox = NodePath("../Hitbox")
|
||||
metadata/_custom_type_script = "uid://ba18grqjixded"
|
||||
|
||||
[connection signal="killed" from="." to="GibSpawner" method="summon_gib"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="kick"]
|
||||
[connection signal="player_stomped_on" from="EnemyPlayerDetection" to="." method="kick"]
|
||||
|
@@ -95,6 +95,7 @@ position = Vector2(0, -8)
|
||||
|
||||
[connection signal="killed" from="." to="GibSpawner" method="summon_gib"]
|
||||
[connection signal="area_entered" from="Hitbox" to="." method="on_area_entered"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="on_player_hit"]
|
||||
[connection signal="player_stomped_on" from="EnemyPlayerDetection" to="." method="on_player_stomped_on"]
|
||||
|
@@ -52,6 +52,7 @@ metadata/_custom_type_script = "uid://c3gg32ivrlq8n"
|
||||
script = ExtResource("5_il73j")
|
||||
metadata/_custom_type_script = "uid://5octqlf4ohel"
|
||||
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="damage_player"]
|
||||
[connection signal="player_stomped_on" from="EnemyPlayerDetection" to="GibSpawner" method="stomp_die"]
|
||||
|
@@ -32,7 +32,7 @@ func _physics_process(delta: float) -> void:
|
||||
$RotationJoint.global_rotation_degrees = snapped(bar_rotation, 11.25)
|
||||
|
||||
func on_area_entered(area: Area2D) -> void:
|
||||
if area.owner is Player:
|
||||
if area.owner is Player and area.name != \"HammerHitbox\":
|
||||
area.owner.damage()
|
||||
"
|
||||
|
||||
|
@@ -168,6 +168,8 @@ rect = Rect2(-128, -128, 256, 256)
|
||||
|
||||
[connection signal="killed" from="." to="GibSpawner" method="summon_gib"]
|
||||
[connection signal="area_entered" from="Hitbox" to="." method="on_area_entered"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="." method="die_from_hammer"]
|
||||
[connection signal="hammer_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="." method="die_from_object"]
|
||||
[connection signal="invincible_player_hit" from="EnemyPlayerDetection" to="ScoreNoteSpawner" method="spawn_note" binds= [200]]
|
||||
[connection signal="player_hit" from="EnemyPlayerDetection" to="." method="on_player_hit"]
|
||||
|
@@ -540,9 +540,11 @@ resource_json = ExtResource("7_2mfvl")
|
||||
metadata/_custom_type_script = "uid://cbal8ms2oe1ik"
|
||||
|
||||
[node name="HammerHitbox" type="Area2D" parent="SpriteScaleJoint/Sprite"]
|
||||
unique_name_in_owner = true
|
||||
visible = false
|
||||
position = Vector2(16, 16)
|
||||
monitorable = false
|
||||
collision_layer = 0
|
||||
collision_mask = 0
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="SpriteScaleJoint/Sprite/HammerHitbox"]
|
||||
position = Vector2(-3.49691e-07, -8)
|
||||
@@ -1138,7 +1140,6 @@ anim_speed_max = 1.0
|
||||
|
||||
[connection signal="frame_changed" from="SpriteScaleJoint/Sprite" to="SpriteScaleJoint/Sprite" method="on_frame_changed"]
|
||||
[connection signal="sprite_frames_changed" from="SpriteScaleJoint/Sprite" to="SpriteScaleJoint/Sprite" method="on_frame_changed"]
|
||||
[connection signal="area_entered" from="SpriteScaleJoint/Sprite/HammerHitbox" to="." method="on_hammer_area_entered"]
|
||||
[connection signal="area_entered" from="Hitbox" to="." method="on_area_entered"]
|
||||
[connection signal="area_exited" from="Hitbox" to="." method="on_area_exited"]
|
||||
[connection signal="body_entered" from="LavaPoisonDetect" to="." method="die" unbinds=1]
|
||||
|
@@ -8,18 +8,26 @@ extends Node
|
||||
signal player_hit(player: Player)
|
||||
signal player_stomped_on(player: Player)
|
||||
signal invincible_player_hit(player: Player)
|
||||
signal hammer_player_hit(player: Player)
|
||||
|
||||
func _ready() -> void:
|
||||
hitbox.area_entered.connect(area_entered)
|
||||
|
||||
func area_entered(area: Area2D) -> void:
|
||||
if area.owner is Player:
|
||||
player_entered(area.owner)
|
||||
if area.name == "HammerHitbox":
|
||||
hammer_entered(area.owner)
|
||||
else:
|
||||
player_entered(area.owner)
|
||||
|
||||
func player_entered(player: Player) -> void:
|
||||
if player.is_invincible or player.has_hammer:
|
||||
if player.is_invincible:
|
||||
invincible_player_hit.emit(player)
|
||||
elif (player.velocity.y >= 15 or (player.global_position.y + height < owner.global_position.y)) and player.in_water == false:
|
||||
player_stomped_on.emit(player)
|
||||
else:
|
||||
player_hit.emit(player)
|
||||
|
||||
func hammer_entered(player: Player) -> void:
|
||||
if player.has_hammer:
|
||||
hammer_player_hit.emit(player)
|
||||
|
@@ -14,6 +14,10 @@ func die() -> void:
|
||||
|
||||
func die_from_object(_node: Node2D) -> void:
|
||||
destroy()
|
||||
|
||||
func die_from_hammer(_node: Node2D) -> void:
|
||||
AudioManager.play_sfx("hammer_hit", global_position)
|
||||
destroy()
|
||||
|
||||
func summon_particle() -> void:
|
||||
var node = BARREL_DESTRUCTION_PARTICLE.instantiate()
|
||||
|
@@ -33,7 +33,7 @@ func handle_movement(delta: float) -> void:
|
||||
|
||||
func on_area_entered(area: Area2D) -> void:
|
||||
if area.owner is Player:
|
||||
if area.owner.is_invincible:
|
||||
if area.owner.is_invincible or area.name == "HammerHitbox":
|
||||
die()
|
||||
else:
|
||||
area.owner.damage()
|
||||
|
@@ -11,7 +11,7 @@ func _physics_process(delta: float) -> void:
|
||||
i.get_node("Sprite").scale.x = sign(get_tree().get_first_node_in_group("Players").global_position.x + 1 - i.global_position.x)
|
||||
|
||||
func on_area_entered(area: Area2D) -> void:
|
||||
if area.owner is Player:
|
||||
if area.owner is Player and area.name != "HammerHitbox":
|
||||
area.owner.damage()
|
||||
|
||||
func flag_die() -> void:
|
||||
|
@@ -22,7 +22,7 @@ func flag_die() -> void:
|
||||
queue_free()
|
||||
|
||||
func on_area_entered(area: Area2D) -> void:
|
||||
if area.owner is Player:
|
||||
if area.owner is Player and area.name != "HammerHitbox":
|
||||
area.owner.damage()
|
||||
|
||||
func play_sfx() -> void:
|
||||
|
@@ -53,3 +53,8 @@ func flag_die() -> void:
|
||||
func die() -> void:
|
||||
killed.emit()
|
||||
queue_free()
|
||||
|
||||
func die_from_hammer() -> void:
|
||||
AudioManager.play_sfx("hammer_hit", global_position)
|
||||
killed.emit()
|
||||
queue_free()
|
||||
|
@@ -37,3 +37,12 @@ func flag_die() -> void:
|
||||
Global.score += 500
|
||||
if score_note_adder != null:
|
||||
score_note_adder.spawn_note(500)
|
||||
|
||||
func die_from_hammer(obj: Node2D) -> void:
|
||||
var dir = sign(global_position.x - obj.global_position.x)
|
||||
if dir == 0:
|
||||
dir = [-1, 1].pick_random()
|
||||
DiscoLevel.combo_amount += 1
|
||||
AudioManager.play_sfx("hammer_hit", global_position)
|
||||
killed.emit(dir)
|
||||
queue_free()
|
||||
|
@@ -21,5 +21,5 @@ func flag_die() -> void:
|
||||
queue_free()
|
||||
|
||||
func on_area_entered(area: Area2D) -> void:
|
||||
if area.owner is Player:
|
||||
if area.owner is Player and area.name != "HammerHitbox":
|
||||
area.owner.damage()
|
||||
|
@@ -14,5 +14,5 @@ func on_body_entered(body: Node2D) -> void:
|
||||
|
||||
|
||||
func on_area_entered(area: Area2D) -> void:
|
||||
if area.owner is Player:
|
||||
if area.owner is Player and area.name != "HammerHitbox":
|
||||
area.owner.damage()
|
||||
|
@@ -43,7 +43,7 @@ func on_area_entered(area: Area2D) -> void:
|
||||
if area.owner.has_node("ShellDetection"):
|
||||
area.owner.die_from_object(self)
|
||||
elif area.owner is Player:
|
||||
if area.owner.is_invincible:
|
||||
if area.owner.is_invincible or area.name == "HammerHitbox":
|
||||
destroy()
|
||||
else:
|
||||
area.owner.damage()
|
||||
|
@@ -330,6 +330,7 @@ func _process(delta: float) -> void:
|
||||
if is_invincible:
|
||||
DiscoLevel.combo_meter = 100
|
||||
%Hammer.visible = has_hammer
|
||||
%HammerHitbox.collision_layer = has_hammer
|
||||
|
||||
func apply_gravity(delta: float) -> void:
|
||||
if in_water or flight_meter > 0:
|
||||
@@ -893,9 +894,6 @@ func hammer_get() -> void:
|
||||
$HammerTimer.start()
|
||||
AudioManager.set_music_override(AudioManager.MUSIC_OVERRIDES.HAMMER, 0, false)
|
||||
|
||||
func on_hammer_area_entered(area: Area2D) -> void:
|
||||
pass
|
||||
|
||||
func wing_get() -> void:
|
||||
AudioManager.set_music_override(AudioManager.MUSIC_OVERRIDES.WING, 0, false, false)
|
||||
flight_meter = 10
|
||||
|
@@ -38,6 +38,7 @@ const DEFAULT_SFX_LIBRARY := {
|
||||
"firework": "res://Assets/Audio/SFX/Firework.wav",
|
||||
"timer_beep": "res://Assets/Audio/SFX/TimerBeep.wav",
|
||||
"hachisuke": "res://Assets/Audio/SFX/Hachisuke.wav",
|
||||
"hammer_hit": "res://Assets/Audio/SFX/HammerHit.wav",
|
||||
"burner": "res://Assets/Audio/SFX/Burner.wav",
|
||||
"rank_up_1": "res://Assets/Audio/SFX/RankUpCBA.wav",
|
||||
"rank_up_2": "res://Assets/Audio/SFX/RankUpSP.wav",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
extends Area2D
|
||||
|
||||
func area_entered(area: Area2D) -> void:
|
||||
if area.owner is Player and area.owner.state_machine.state.name != "Dead":
|
||||
if area.owner is Player and area.name != "HammerHitbox" and area.owner.state_machine.state.name != "Dead":
|
||||
area.owner.die(true)
|
||||
|
Reference in New Issue
Block a user