mirror of
https://codeberg.org/Melon-Bread/Comets.gd.git
synced 2025-07-06 22:54:36 -04:00
Game now have a level system.
This commit is contained in:
@ -14,12 +14,13 @@ func _ready() -> void:
|
||||
for comet in range(comet_count):
|
||||
random_position.x = randf_range(viewport_size.x - 100, viewport_size.x)
|
||||
random_position.y = randf_range(viewport_size.y - 100, viewport_size.y)
|
||||
spawn_comet(0, random_position)
|
||||
spawn_comet(2, random_position)
|
||||
|
||||
func _process(_delta: float) -> void:
|
||||
viewport_size = get_viewport_rect().size
|
||||
if $Comets.get_child_count() <= 0:
|
||||
screen_cleared.emit()
|
||||
queue_free()
|
||||
|
||||
|
||||
func spawn_comet(size : int, pos : Vector2) -> void:
|
||||
|
@ -1,24 +1,33 @@
|
||||
extends Node2D
|
||||
|
||||
# TODO: Display a game over screen when the ship is hit by a comet with abilty to restart
|
||||
# TODO: Detect when all comets are gone and increase the level (& maybe speed?)
|
||||
# TODO: Make a space like background, maybe some scrolling, maybe randomly generated
|
||||
# TODO: Make a small title screen that starts before the game scene
|
||||
# TODO: MAYBE track high score in a file & show it on HUD
|
||||
|
||||
@export var level : int = 1
|
||||
var score : int = 0
|
||||
const COMET_SPAWNER = preload("res://scenes/comet_spawner.tscn")
|
||||
|
||||
@export var level : int = 1
|
||||
|
||||
var score : int = 0
|
||||
var points_per_comet := 300
|
||||
|
||||
func _ready() -> void:
|
||||
pass
|
||||
new_level(level)
|
||||
|
||||
func _process(_delta: float) -> void:
|
||||
update_ui()
|
||||
|
||||
func new_level(current_level : int) -> void:
|
||||
pass
|
||||
var comet_spawner := COMET_SPAWNER.instantiate()
|
||||
comet_spawner.comet_count *= current_level
|
||||
comet_spawner.comet_shot.connect(increase_score)
|
||||
comet_spawner.screen_cleared.connect(level_finished)
|
||||
self.add_child(comet_spawner)
|
||||
|
||||
func level_finished() -> void:
|
||||
level += 1
|
||||
new_level(level)
|
||||
|
||||
func game_over() -> void:
|
||||
pass
|
||||
|
Reference in New Issue
Block a user