Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions scenes/hero.gd
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@ func _on_collectable_collected(type: String):
if type == "crystal":
#print("num collected: ", crystals_collected)
$Hud/HBoxContainer/CrystalLabel.text = str(Globals.crystals_collected)
get_parent().gems_collected += 1

if type == "armor":
Globals.player_armor = Globals.player_max_armor

Expand Down
8 changes: 7 additions & 1 deletion scenes/levels/level.gd
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,8 @@ var level_images = {

var hero: Hero
var _change_scene:bool = false
var gems_collected:int = 0
var total_gems:int = 0

func _ready() -> void:
Globals.enemy_died.connect(_on_enemy_died)
Expand Down Expand Up @@ -85,7 +87,7 @@ func _ready() -> void:
enemy.switch_state(enemy.PURSUIT)

func _process(_delta):
if (_enemy_wave_cleared() and not _change_scene):
if (_all_gems_collected() and _enemy_wave_cleared() and not _change_scene):
_change_scene = true
_next_level()
#if Input.is_action_just_pressed("ui_page_down"):
Expand Down Expand Up @@ -121,6 +123,9 @@ func _enemy_wave_cleared() -> bool:
else:
return false

func _all_gems_collected() -> bool:
return gems_collected == total_gems

func _next_level():
hero.teleport_out()
await get_tree().create_timer(1.0).timeout
Expand Down Expand Up @@ -178,6 +183,7 @@ func load_level_from_image(load_level: int) -> void:
add_child(crystal)
crystal.position = Vector2(x * 150, y * 150)
aoe_tilemap_image.set_pixel(x, y, Color.BLACK)
total_gems += 1
Color.RED:
if current_level <= 4:
var lava_ant = LAVA_ANT.instantiate()
Expand Down