Compare commits
No commits in common. "c3a678513ff273d288906cc025c6087128da72d5" and "9e8fbafaa83c75012e24b98579a393a91dcae601" have entirely different histories.
c3a678513f
...
9e8fbafaa8
Binary file not shown.
Binary file not shown.
Before Width: | Height: | Size: 868 B |
|
@ -9,8 +9,8 @@ func _ready():
|
||||||
pass
|
pass
|
||||||
|
|
||||||
func _state_process(delta):
|
func _state_process(delta):
|
||||||
var sprite : AnimatedSprite2D = this.get_node('Sprite2D')
|
var sprite : Sprite2D = this.get_node('Sprite2D')
|
||||||
var ratio = 5
|
var ratio = 0.3
|
||||||
|
|
||||||
sprite.scale.x = max(0, sprite.scale.x - ratio * delta)
|
sprite.scale.x = max(0, sprite.scale.x - ratio * delta)
|
||||||
sprite.scale.y = max(0, sprite.scale.y - ratio * delta)
|
sprite.scale.y = max(0, sprite.scale.y - ratio * delta)
|
||||||
|
|
|
@ -3,10 +3,8 @@ extends Node
|
||||||
var this = null
|
var this = null
|
||||||
var state_name = 'Jump'
|
var state_name = 'Jump'
|
||||||
var m_ratio = 0.0
|
var m_ratio = 0.0
|
||||||
var m_ratio_start = 1.5
|
|
||||||
var m_ratio_end = 1.8
|
|
||||||
var m_jump_state = null
|
var m_jump_state = null
|
||||||
var m_speed = 1.2
|
var m_speed = 0.7
|
||||||
|
|
||||||
func _ready():
|
func _ready():
|
||||||
pass
|
pass
|
||||||
|
@ -15,7 +13,7 @@ func _state_process(delta):
|
||||||
if m_jump_state != null:
|
if m_jump_state != null:
|
||||||
m_jump_state.call(delta)
|
m_jump_state.call(delta)
|
||||||
else:
|
else:
|
||||||
m_ratio = m_ratio_start
|
m_ratio = 0.25
|
||||||
m_jump_state = self.go_up
|
m_jump_state = self.go_up
|
||||||
|
|
||||||
func go_up(delta):
|
func go_up(delta):
|
||||||
|
@ -24,7 +22,7 @@ func go_up(delta):
|
||||||
sprite.scale.x = m_ratio
|
sprite.scale.x = m_ratio
|
||||||
sprite.scale.y = m_ratio
|
sprite.scale.y = m_ratio
|
||||||
|
|
||||||
if m_ratio >= m_ratio_end:
|
if m_ratio >= 0.38:
|
||||||
m_jump_state = self.go_down
|
m_jump_state = self.go_down
|
||||||
|
|
||||||
func go_down(delta):
|
func go_down(delta):
|
||||||
|
@ -33,7 +31,7 @@ func go_down(delta):
|
||||||
sprite.scale.x = m_ratio
|
sprite.scale.x = m_ratio
|
||||||
sprite.scale.y = m_ratio
|
sprite.scale.y = m_ratio
|
||||||
|
|
||||||
if m_ratio <= m_ratio_start:
|
if m_ratio <= 0.25:
|
||||||
this.to_normal()
|
this.to_normal()
|
||||||
queue_free()
|
queue_free()
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
[gd_scene load_steps=4 format=3 uid="uid://c0kqx6dsury58"]
|
[gd_scene load_steps=4 format=3 uid="uid://c0kqx6dsury58"]
|
||||||
|
|
||||||
[ext_resource type="Script" path="res://Actor/actor.gd" id="1_0612w"]
|
[ext_resource type="Script" path="res://Actor/actor.gd" id="1_0612w"]
|
||||||
[ext_resource type="SpriteFrames" uid="uid://o3tacari6pde" path="res://Actor/player.tres" id="2_1hnut"]
|
[ext_resource type="Texture2D" uid="uid://blr8qcmuqs5vl" path="res://icon.svg" id="2_itibm"]
|
||||||
|
|
||||||
[sub_resource type="CircleShape2D" id="CircleShape2D_e2sef"]
|
[sub_resource type="CircleShape2D" id="CircleShape2D_e2sef"]
|
||||||
radius = 3.16228
|
radius = 3.16228
|
||||||
|
@ -9,12 +9,9 @@ radius = 3.16228
|
||||||
[node name="Actor" type="CharacterBody2D" groups=["actors"]]
|
[node name="Actor" type="CharacterBody2D" groups=["actors"]]
|
||||||
script = ExtResource("1_0612w")
|
script = ExtResource("1_0612w")
|
||||||
|
|
||||||
[node name="Sprite2D" type="AnimatedSprite2D" parent="."]
|
[node name="Sprite2D" type="Sprite2D" parent="."]
|
||||||
scale = Vector2(1.5, 1.5)
|
scale = Vector2(0.25, 0.25)
|
||||||
sprite_frames = ExtResource("2_1hnut")
|
texture = ExtResource("2_itibm")
|
||||||
animation = &"Walk"
|
|
||||||
frame = 3
|
|
||||||
frame_progress = 0.69616
|
|
||||||
|
|
||||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||||||
shape = SubResource("CircleShape2D_e2sef")
|
shape = SubResource("CircleShape2D_e2sef")
|
||||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 868 B |
|
@ -1,51 +0,0 @@
|
||||||
[gd_resource type="SpriteFrames" load_steps=7 format=3 uid="uid://o3tacari6pde"]
|
|
||||||
|
|
||||||
[ext_resource type="Texture2D" uid="uid://btxxm0joxgjtv" path="res://Actor/player.png" id="1_xo6xd"]
|
|
||||||
|
|
||||||
[sub_resource type="AtlasTexture" id="AtlasTexture_cvbhj"]
|
|
||||||
atlas = ExtResource("1_xo6xd")
|
|
||||||
region = Rect2(0, 0, 32, 32)
|
|
||||||
|
|
||||||
[sub_resource type="AtlasTexture" id="AtlasTexture_87gtp"]
|
|
||||||
atlas = ExtResource("1_xo6xd")
|
|
||||||
region = Rect2(0, 0, 32, 32)
|
|
||||||
|
|
||||||
[sub_resource type="AtlasTexture" id="AtlasTexture_xiss8"]
|
|
||||||
atlas = ExtResource("1_xo6xd")
|
|
||||||
region = Rect2(32, 0, 32, 32)
|
|
||||||
|
|
||||||
[sub_resource type="AtlasTexture" id="AtlasTexture_n3eh2"]
|
|
||||||
atlas = ExtResource("1_xo6xd")
|
|
||||||
region = Rect2(64, 0, 32, 32)
|
|
||||||
|
|
||||||
[sub_resource type="AtlasTexture" id="AtlasTexture_62teh"]
|
|
||||||
atlas = ExtResource("1_xo6xd")
|
|
||||||
region = Rect2(96, 0, 32, 32)
|
|
||||||
|
|
||||||
[resource]
|
|
||||||
animations = [{
|
|
||||||
"frames": [{
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": SubResource("AtlasTexture_cvbhj")
|
|
||||||
}],
|
|
||||||
"loop": true,
|
|
||||||
"name": &"Idle",
|
|
||||||
"speed": 5.0
|
|
||||||
}, {
|
|
||||||
"frames": [{
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": SubResource("AtlasTexture_87gtp")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": SubResource("AtlasTexture_xiss8")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": SubResource("AtlasTexture_n3eh2")
|
|
||||||
}, {
|
|
||||||
"duration": 1.0,
|
|
||||||
"texture": SubResource("AtlasTexture_62teh")
|
|
||||||
}],
|
|
||||||
"loop": true,
|
|
||||||
"name": &"Walk",
|
|
||||||
"speed": 10.0
|
|
||||||
}]
|
|
|
@ -1,11 +1,16 @@
|
||||||
extends Area2D
|
extends Area2D
|
||||||
|
|
||||||
|
|
||||||
|
# Called when the node enters the scene tree for the first time.
|
||||||
func _ready():
|
func _ready():
|
||||||
pass # Replace with function body.
|
pass # Replace with function body.
|
||||||
|
|
||||||
|
|
||||||
|
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||||
func _process(_delta):
|
func _process(_delta):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
func _on_body_entered(body):
|
func _on_body_entered(body):
|
||||||
if body in get_tree().get_nodes_in_group('player'):
|
if body in get_tree().get_nodes_in_group('player'):
|
||||||
CheckPoint.add_checkpoint(name, body.global_position, Music.m_current)
|
CheckPoint.add_checkpoint(name, body.global_position, Music.m_current)
|
||||||
|
|
|
@ -3,7 +3,6 @@ extends CanvasLayer
|
||||||
var m_freq = 2
|
var m_freq = 2
|
||||||
var m_phase = 0.0
|
var m_phase = 0.0
|
||||||
var m_alarm_on = false
|
var m_alarm_on = false
|
||||||
var m_prev = 0
|
|
||||||
|
|
||||||
func _ready():
|
func _ready():
|
||||||
$ColorRect.visible = false
|
$ColorRect.visible = false
|
||||||
|
@ -15,16 +14,7 @@ func _process(delta):
|
||||||
var t = sin(2 * PI * m_phase)
|
var t = sin(2 * PI * m_phase)
|
||||||
m_phase += m_freq * delta
|
m_phase += m_freq * delta
|
||||||
$ColorRect.color = Color(1.0, 0.2, 0.2, (1.0 - t) * 0.0 + t * 0.1)
|
$ColorRect.color = Color(1.0, 0.2, 0.2, (1.0 - t) * 0.0 + t * 0.1)
|
||||||
var thres = 0.80
|
if t >= 0.95:
|
||||||
var cam : Camera2D = get_tree().get_nodes_in_group('camera')[0]
|
|
||||||
|
|
||||||
if t >= thres and m_prev < thres:
|
|
||||||
Music.play_sfx('piew')
|
Music.play_sfx('piew')
|
||||||
m_prev = t
|
|
||||||
|
|
||||||
var zoom = (1.0 - t) * 1.5 + t * 1.51
|
|
||||||
cam.zoom.x = zoom
|
|
||||||
cam.zoom.y = zoom
|
|
||||||
|
|
||||||
else:
|
else:
|
||||||
$ColorRect.visible = false
|
$ColorRect.visible = false
|
||||||
|
|
|
@ -35,15 +35,12 @@ func _on_area_2d_body_entered(_body):
|
||||||
CheckPoint.get_checkpoint().alarm = true
|
CheckPoint.get_checkpoint().alarm = true
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
func _on_area_2d_more_body_entered(_body):
|
func _on_area_2d_more_body_entered(_body):
|
||||||
$Sandbox.strike_enabled = true
|
$Sandbox.strike_enabled = true
|
||||||
$Sandbox.m_strike_freq = 1
|
$Sandbox.m_strike_freq = 1.0
|
||||||
$CanvasTime.visible = true
|
$CanvasTime.visible = true
|
||||||
$EndTimer.start()
|
$EndTimer.start()
|
||||||
if CheckPoint.has_checkpoint():
|
if CheckPoint.has_checkpoint():
|
||||||
CheckPoint.get_checkpoint().strikes = true
|
CheckPoint.get_checkpoint().strikes = true
|
||||||
CheckPoint.get_checkpoint().alarm = true
|
CheckPoint.get_checkpoint().alarm = true
|
||||||
|
|
||||||
|
|
||||||
func _on_end_timer_timeout():
|
|
||||||
get_tree().change_scene_to_file("res://WinMenu/win_menu.tscn")
|
|
||||||
|
|
File diff suppressed because one or more lines are too long
|
@ -15,7 +15,3 @@ func _on_button_pressed():
|
||||||
func _on_checkpoint_pressed():
|
func _on_checkpoint_pressed():
|
||||||
get_tree().change_scene_to_file("res://Levels/level_intro.tscn")
|
get_tree().change_scene_to_file("res://Levels/level_intro.tscn")
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
func _on_quit_btn_pressed():
|
|
||||||
get_tree().quit()
|
|
||||||
|
|
|
@ -20,40 +20,29 @@ grow_horizontal = 2
|
||||||
grow_vertical = 2
|
grow_vertical = 2
|
||||||
color = Color(0, 0, 0, 1)
|
color = Color(0, 0, 0, 1)
|
||||||
|
|
||||||
[node name="VBoxContainer" type="VBoxContainer" parent="."]
|
[node name="Label" type="Label" parent="."]
|
||||||
layout_mode = 1
|
layout_mode = 0
|
||||||
anchors_preset = 8
|
offset_left = 473.0
|
||||||
anchor_left = 0.5
|
offset_top = 54.0
|
||||||
anchor_top = 0.5
|
offset_right = 551.0
|
||||||
anchor_right = 0.5
|
offset_bottom = 77.0
|
||||||
anchor_bottom = 0.5
|
|
||||||
offset_left = -130.0
|
|
||||||
offset_top = -147.0
|
|
||||||
offset_right = 136.0
|
|
||||||
offset_bottom = 160.0
|
|
||||||
grow_horizontal = 2
|
|
||||||
grow_vertical = 2
|
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="VBoxContainer"]
|
|
||||||
layout_mode = 2
|
|
||||||
size_flags_horizontal = 4
|
|
||||||
text = "YOU LOSE"
|
text = "YOU LOSE"
|
||||||
|
|
||||||
[node name="HSeparator" type="HSeparator" parent="VBoxContainer"]
|
[node name="Button" type="Button" parent="."]
|
||||||
layout_mode = 2
|
layout_mode = 0
|
||||||
|
offset_left = 499.0
|
||||||
[node name="Checkpoint" type="Button" parent="VBoxContainer"]
|
offset_top = 192.0
|
||||||
layout_mode = 2
|
offset_right = 555.0
|
||||||
|
offset_bottom = 223.0
|
||||||
text = "RETRY"
|
text = "RETRY"
|
||||||
|
|
||||||
[node name="Button" type="Button" parent="VBoxContainer"]
|
[node name="Checkpoint" type="Button" parent="."]
|
||||||
layout_mode = 2
|
layout_mode = 0
|
||||||
text = "RESTART"
|
offset_left = 468.0
|
||||||
|
offset_top = 131.0
|
||||||
|
offset_right = 598.0
|
||||||
|
offset_bottom = 162.0
|
||||||
|
text = "Last checkpoint"
|
||||||
|
|
||||||
[node name="QuitBtn" type="Button" parent="VBoxContainer"]
|
[connection signal="pressed" from="Button" to="." method="_on_button_pressed"]
|
||||||
layout_mode = 2
|
[connection signal="pressed" from="Checkpoint" to="." method="_on_checkpoint_pressed"]
|
||||||
text = "QUIT"
|
|
||||||
|
|
||||||
[connection signal="pressed" from="VBoxContainer/Checkpoint" to="." method="_on_checkpoint_pressed"]
|
|
||||||
[connection signal="pressed" from="VBoxContainer/Button" to="." method="_on_button_pressed"]
|
|
||||||
[connection signal="pressed" from="VBoxContainer/QuitBtn" to="." method="_on_quit_btn_pressed"]
|
|
||||||
|
|
|
@ -8,9 +8,6 @@ func _ready():
|
||||||
func _process(_delta):
|
func _process(_delta):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
func _on_play_btn_pressed():
|
|
||||||
|
func _on_button_pressed():
|
||||||
get_tree().change_scene_to_file("res://Levels/level_intro.tscn")
|
get_tree().change_scene_to_file("res://Levels/level_intro.tscn")
|
||||||
|
|
||||||
|
|
||||||
func _on_quit_btn_pressed():
|
|
||||||
get_tree().quit()
|
|
||||||
|
|
|
@ -11,45 +11,13 @@ grow_horizontal = 2
|
||||||
grow_vertical = 2
|
grow_vertical = 2
|
||||||
script = ExtResource("1_ga0yx")
|
script = ExtResource("1_ga0yx")
|
||||||
|
|
||||||
[node name="ColorRect" type="ColorRect" parent="."]
|
[node name="Button" type="Button" parent="."]
|
||||||
layout_mode = 1
|
layout_mode = 0
|
||||||
anchors_preset = 15
|
offset_left = 518.0
|
||||||
anchor_right = 1.0
|
offset_top = 184.0
|
||||||
anchor_bottom = 1.0
|
offset_right = 565.0
|
||||||
grow_horizontal = 2
|
offset_bottom = 215.0
|
||||||
grow_vertical = 2
|
text = "PLAY
|
||||||
color = Color(0, 0, 0, 1)
|
|
||||||
|
|
||||||
[node name="VBoxContainer" type="VBoxContainer" parent="."]
|
|
||||||
layout_mode = 1
|
|
||||||
anchors_preset = 8
|
|
||||||
anchor_left = 0.5
|
|
||||||
anchor_top = 0.5
|
|
||||||
anchor_right = 0.5
|
|
||||||
anchor_bottom = 0.5
|
|
||||||
offset_left = -109.0
|
|
||||||
offset_top = -75.0
|
|
||||||
offset_right = 108.0
|
|
||||||
offset_bottom = 129.0
|
|
||||||
grow_horizontal = 2
|
|
||||||
grow_vertical = 2
|
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="VBoxContainer"]
|
|
||||||
layout_mode = 2
|
|
||||||
size_flags_horizontal = 4
|
|
||||||
text = "Ludum Dare 54"
|
|
||||||
|
|
||||||
[node name="HSeparator" type="HSeparator" parent="VBoxContainer"]
|
|
||||||
layout_mode = 2
|
|
||||||
|
|
||||||
[node name="PlayBtn" type="Button" parent="VBoxContainer"]
|
|
||||||
layout_mode = 2
|
|
||||||
text = "Play
|
|
||||||
"
|
"
|
||||||
|
|
||||||
[node name="QuitBtn" type="Button" parent="VBoxContainer"]
|
[connection signal="pressed" from="Button" to="." method="_on_button_pressed"]
|
||||||
layout_mode = 2
|
|
||||||
text = "Quit"
|
|
||||||
|
|
||||||
[connection signal="pressed" from="VBoxContainer/PlayBtn" to="." method="_on_play_btn_pressed"]
|
|
||||||
[connection signal="pressed" from="VBoxContainer/QuitBtn" to="." method="_on_quit_btn_pressed"]
|
|
||||||
|
|
|
@ -1,12 +1,8 @@
|
||||||
[gd_scene load_steps=4 format=3 uid="uid://82kxvlr252x4"]
|
[gd_scene load_steps=3 format=3 uid="uid://82kxvlr252x4"]
|
||||||
|
|
||||||
[ext_resource type="Script" path="res://MsgBox/msg_box.gd" id="1_5d2k7"]
|
[ext_resource type="Script" path="res://MsgBox/msg_box.gd" id="1_5d2k7"]
|
||||||
|
|
||||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_msojn"]
|
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_msojn"]
|
||||||
bg_color = Color(0.00784314, 0.458824, 0.396078, 1)
|
|
||||||
|
|
||||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_rpitp"]
|
|
||||||
bg_color = Color(0, 0, 0, 1)
|
|
||||||
|
|
||||||
[node name="MsgBox" type="Control"]
|
[node name="MsgBox" type="Control"]
|
||||||
process_mode = 3
|
process_mode = 3
|
||||||
|
@ -44,25 +40,18 @@ grow_vertical = 2
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="Panel/VBoxContainer"]
|
[node name="Label" type="Label" parent="Panel/VBoxContainer"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
theme_override_styles/normal = SubResource("StyleBoxFlat_rpitp")
|
|
||||||
text = "TITRE"
|
text = "TITRE"
|
||||||
horizontal_alignment = 1
|
horizontal_alignment = 1
|
||||||
|
|
||||||
[node name="RichTextLabel" type="RichTextLabel" parent="Panel/VBoxContainer"]
|
[node name="RichTextLabel" type="RichTextLabel" parent="Panel/VBoxContainer"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
theme_override_colors/default_color = Color(0, 0, 0, 1)
|
|
||||||
bbcode_enabled = true
|
bbcode_enabled = true
|
||||||
text = "text"
|
text = "text"
|
||||||
fit_content = true
|
fit_content = true
|
||||||
|
|
||||||
[node name="VBoxContainer" type="VBoxContainer" parent="Panel/VBoxContainer"]
|
[node name="Button" type="Button" parent="Panel/VBoxContainer"]
|
||||||
layout_mode = 2
|
|
||||||
size_flags_vertical = 3
|
|
||||||
alignment = 2
|
|
||||||
|
|
||||||
[node name="Button" type="Button" parent="Panel/VBoxContainer/VBoxContainer"]
|
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_vertical = 8
|
size_flags_vertical = 8
|
||||||
text = "OK"
|
text = "OK"
|
||||||
|
|
||||||
[connection signal="pressed" from="Panel/VBoxContainer/VBoxContainer/Button" to="." method="_on_button_pressed"]
|
[connection signal="pressed" from="Panel/VBoxContainer/Button" to="." method="_on_button_pressed"]
|
||||||
|
|
|
@ -7,16 +7,17 @@ var m_stop_timer = 0.0
|
||||||
var m_stop_time = 0.5
|
var m_stop_time = 0.5
|
||||||
var m_stop = false
|
var m_stop = false
|
||||||
var m_next = null
|
var m_next = null
|
||||||
var m_sfx_players : Array = []
|
var m_sfx_player : AudioStreamPlayer = null
|
||||||
var m_titles = [
|
var m_titles = [
|
||||||
'fight_or_die'
|
'fight_or_die'
|
||||||
]
|
]
|
||||||
|
|
||||||
func _ready():
|
func _ready():
|
||||||
m_player = AudioStreamPlayer.new()
|
m_player = AudioStreamPlayer.new()
|
||||||
|
m_sfx_player = AudioStreamPlayer.new()
|
||||||
m_player.process_mode = Node.PROCESS_MODE_ALWAYS
|
m_player.process_mode = Node.PROCESS_MODE_ALWAYS
|
||||||
add_child(m_player)
|
add_child(m_player)
|
||||||
|
add_child(m_sfx_player)
|
||||||
|
|
||||||
func _process(delta):
|
func _process(delta):
|
||||||
if m_stop:
|
if m_stop:
|
||||||
|
@ -41,7 +42,7 @@ func next(music_name):
|
||||||
play(music_name)
|
play(music_name)
|
||||||
|
|
||||||
func play(music_name):
|
func play(music_name):
|
||||||
m_player.volume_db = -10.0
|
m_player.volume_db = -7.0
|
||||||
m_current = music_name
|
m_current = music_name
|
||||||
var data = load("res://Music/" + music_name + ".ogg")
|
var data = load("res://Music/" + music_name + ".ogg")
|
||||||
data.loop = true
|
data.loop = true
|
||||||
|
@ -50,15 +51,8 @@ func play(music_name):
|
||||||
m_player.play()
|
m_player.play()
|
||||||
|
|
||||||
func play_sfx(sfx_name):
|
func play_sfx(sfx_name):
|
||||||
var player : AudioStreamPlayer = AudioStreamPlayer.new()
|
m_sfx_player.stream = load("res://Music/" + sfx_name + ".wav")
|
||||||
player.stream = load("res://Music/" + sfx_name + ".wav")
|
m_sfx_player.play()
|
||||||
player.volume_db = -10
|
m_sfx_player.volume_db = 5
|
||||||
player.connect("finished", _sfx_end)
|
|
||||||
add_child(player)
|
|
||||||
m_sfx_players.push_back(player)
|
|
||||||
player.play()
|
|
||||||
|
|
||||||
func _sfx_end():
|
|
||||||
m_sfx_players = m_sfx_players.filter(func (x): return x.playing)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
Binary file not shown.
|
@ -4,13 +4,9 @@ var m_world = null
|
||||||
var m_shoot_time = 0.2
|
var m_shoot_time = 0.2
|
||||||
var m_shoot_timer = 0.0
|
var m_shoot_timer = 0.0
|
||||||
|
|
||||||
func _process(_delta):
|
|
||||||
var to_mouse: Vector2 = get_global_mouse_position() - $Actor.global_position
|
|
||||||
var angle: float = to_mouse.angle() - PI/2.0
|
|
||||||
$Actor/Sprite2D.rotation = angle
|
|
||||||
|
|
||||||
func _physics_process(dt):
|
func _physics_process(dt):
|
||||||
var delta = Vector2(0, 0)
|
var delta = Vector2(0, 0)
|
||||||
|
|
||||||
if Input.is_action_just_pressed("player_jump") and $Actor.is_normal():
|
if Input.is_action_just_pressed("player_jump") and $Actor.is_normal():
|
||||||
$Actor.to_jump()
|
$Actor.to_jump()
|
||||||
|
|
||||||
|
@ -38,9 +34,6 @@ func _physics_process(dt):
|
||||||
if delta.length_squared() > 0:
|
if delta.length_squared() > 0:
|
||||||
delta = delta.normalized()
|
delta = delta.normalized()
|
||||||
$Actor.m_dir = delta
|
$Actor.m_dir = delta
|
||||||
$Actor/Sprite2D.play("Walk")
|
|
||||||
else:
|
|
||||||
$Actor/Sprite2D.play("Idle")
|
|
||||||
|
|
||||||
if $Actor.is_normal() or $Actor.is_jump():
|
if $Actor.is_normal() or $Actor.is_jump():
|
||||||
$Actor.velocity = delta * $Actor.m_speed
|
$Actor.velocity = delta * $Actor.m_speed
|
||||||
|
|
|
@ -8,6 +8,5 @@ script = ExtResource("1_2pfvx")
|
||||||
|
|
||||||
[node name="Actor" parent="." instance=ExtResource("2_s40rr")]
|
[node name="Actor" parent="." instance=ExtResource("2_s40rr")]
|
||||||
|
|
||||||
[node name="Camera2D" type="Camera2D" parent="Actor" groups=["camera"]]
|
[node name="Camera2D" type="Camera2D" parent="Actor"]
|
||||||
ignore_rotation = false
|
|
||||||
zoom = Vector2(1.5, 1.5)
|
zoom = Vector2(1.5, 1.5)
|
||||||
|
|
|
@ -48,8 +48,6 @@ func process(delta):
|
||||||
break
|
break
|
||||||
if ground:
|
if ground:
|
||||||
Music.play_sfx('strike')
|
Music.play_sfx('strike')
|
||||||
var cam = get_tree().get_nodes_in_group('camera')[0]
|
|
||||||
cam.rotation = randf_range(-PI/25.0, PI/25.0)
|
|
||||||
self.add_broken_ground(ground, 1, 0.8)
|
self.add_broken_ground(ground, 1, 0.8)
|
||||||
$Strikes.add_line(to_global($TileMap.map_to_local(ground)), 0.15)
|
$Strikes.add_line(to_global($TileMap.map_to_local(ground)), 0.15)
|
||||||
m_strike_timer = 0.0
|
m_strike_timer = 0.0
|
||||||
|
|
|
@ -1,21 +0,0 @@
|
||||||
extends Control
|
|
||||||
|
|
||||||
|
|
||||||
# Called when the node enters the scene tree for the first time.
|
|
||||||
func _ready():
|
|
||||||
pass # Replace with function body.
|
|
||||||
|
|
||||||
|
|
||||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
|
||||||
func _process(delta):
|
|
||||||
pass
|
|
||||||
|
|
||||||
|
|
||||||
func _on_main_menu_btn_pressed():
|
|
||||||
get_tree().change_scene_to_file("res://MainMenu/main_menu.tscn")
|
|
||||||
|
|
||||||
func _on_restart_btn_pressed():
|
|
||||||
get_tree().change_scene_to_file("res://Levels/level_intro.tscn")
|
|
||||||
|
|
||||||
func _on_quit_btn_pressed():
|
|
||||||
get_tree().quit()
|
|
|
@ -1,59 +0,0 @@
|
||||||
[gd_scene load_steps=2 format=3 uid="uid://bhkf4qcibdpkv"]
|
|
||||||
|
|
||||||
[ext_resource type="Script" path="res://WinMenu/win_menu.gd" id="1_litpr"]
|
|
||||||
|
|
||||||
[node name="WinMenu" type="Control"]
|
|
||||||
layout_mode = 3
|
|
||||||
anchors_preset = 15
|
|
||||||
anchor_right = 1.0
|
|
||||||
anchor_bottom = 1.0
|
|
||||||
grow_horizontal = 2
|
|
||||||
grow_vertical = 2
|
|
||||||
script = ExtResource("1_litpr")
|
|
||||||
|
|
||||||
[node name="ColorRect" type="ColorRect" parent="."]
|
|
||||||
layout_mode = 1
|
|
||||||
anchors_preset = 15
|
|
||||||
anchor_right = 1.0
|
|
||||||
anchor_bottom = 1.0
|
|
||||||
grow_horizontal = 2
|
|
||||||
grow_vertical = 2
|
|
||||||
color = Color(0, 0, 0, 1)
|
|
||||||
|
|
||||||
[node name="VBoxContainer" type="VBoxContainer" parent="."]
|
|
||||||
layout_mode = 1
|
|
||||||
anchors_preset = 8
|
|
||||||
anchor_left = 0.5
|
|
||||||
anchor_top = 0.5
|
|
||||||
anchor_right = 0.5
|
|
||||||
anchor_bottom = 0.5
|
|
||||||
offset_left = -37.5
|
|
||||||
offset_top = -20.0
|
|
||||||
offset_right = 37.5
|
|
||||||
offset_bottom = 20.0
|
|
||||||
grow_horizontal = 2
|
|
||||||
grow_vertical = 2
|
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="VBoxContainer"]
|
|
||||||
layout_mode = 2
|
|
||||||
size_flags_horizontal = 4
|
|
||||||
text = "VICTORY !"
|
|
||||||
|
|
||||||
[node name="HSeparator" type="HSeparator" parent="VBoxContainer"]
|
|
||||||
layout_mode = 2
|
|
||||||
|
|
||||||
[node name="MainMenuBtn" type="Button" parent="VBoxContainer"]
|
|
||||||
layout_mode = 2
|
|
||||||
text = "Back to main menu"
|
|
||||||
|
|
||||||
[node name="RestartBtn" type="Button" parent="VBoxContainer"]
|
|
||||||
layout_mode = 2
|
|
||||||
text = "Restart"
|
|
||||||
|
|
||||||
[node name="QuitBtn" type="Button" parent="VBoxContainer"]
|
|
||||||
layout_mode = 2
|
|
||||||
text = "Quit"
|
|
||||||
|
|
||||||
[connection signal="pressed" from="VBoxContainer/MainMenuBtn" to="." method="_on_main_menu_btn_pressed"]
|
|
||||||
[connection signal="pressed" from="VBoxContainer/RestartBtn" to="." method="_on_restart_btn_pressed"]
|
|
||||||
[connection signal="pressed" from="VBoxContainer/QuitBtn" to="." method="_on_quit_btn_pressed"]
|
|
Loading…
Reference in New Issue