This commit is contained in:
siembra
2026-02-11 15:16:25 -05:00
parent 09843af6b0
commit 3fc8153e9e
5 changed files with 116 additions and 20 deletions

View File

@@ -11,7 +11,7 @@ var word_set_array
var alphabet = ["A","B","C","D","E","F","G","H","I","J","K","L","M","N",
"O","P","Q","R","S","T","U","V","W","X","Y","Z"]
var comets = []
var comet_speed = 250
var comet_speed = 150
var active
# display
@@ -20,10 +20,21 @@ var scale_factor_x
var scale_factor_y
# numbers
var delay = 1.5
var max_delay = 2
var delay = max_delay
var spawn_timer = 0
var max_character_count = 0
# stats
var health = 100
var miss_count = 0.0
var total_comets = 0.0
# ui init
var hp_label
var acc_label
var miss_label
# objects
var comet_source = preload("res://scenes/objects/game/comet.tscn")
var fade
@@ -31,13 +42,11 @@ var pause_menu
# Runs on start
func _ready() -> void:
# ready ui
viewport_size = get_viewport_rect().size
#scale_factor_x = viewport_size.x/1280
#scale_factor_y = viewport_size.y/720
#print($Tux.position)
#$Tux.position = Vector2($Tux.position.x * scale_factor_x, $Tux.position.y * scale_factor_y)
#print($Tux.position)
hp_label = self.get_node("OnTop").get_node("HUD").get_node("Stack").get_node("Health")
acc_label = self.get_node("OnTop").get_node("HUD").get_node("Stack").get_node("Accuracy")
miss_label = self.get_node("OnTop").get_node("HUD").get_node("Stack").get_node("MissCount")
active = true
@@ -73,6 +82,12 @@ func _process(delta: float) -> void:
if active:
spawn_timer += delta
hp_label.text = "HP: " + str(health)
miss_label.text = "X: " + str(miss_count)
if total_comets > 0:
var accper = (total_comets - miss_count)/(total_comets)*100
acc_label.text = "ACC: " + str(snapped(accper, .02)) + "%"
if spawn_timer >= delay:
spawn_timer = 0
spawn_word()
@@ -88,6 +103,7 @@ func spawn_word():
for char in new_word:
if char != " ":
var new_commet = comet_source.instantiate()
total_comets += 1
new_commet.position = Vector2(offset,-128)
new_commet.get_node("Sprite").get_node("Label").text = char
new_commet.speed = comet_speed
@@ -95,7 +111,13 @@ func spawn_word():
comets.append(new_commet)
offset += dist
delay = randf_range(0.75,2)
delay = randf_range(0.75,max_delay)
func take_damage():
pass
func game_over():
pass
func _input(event):
if event is InputEventKey and event.pressed:
@@ -104,7 +126,7 @@ func _input(event):
if len(comets) > 0:
var comet = comets[0]
if event.as_text() == comet.get_node("Sprite").get_node("Label").text:
comet.active = false
comet.self_active = false
var laser = Line2D.new()
laser.default_color = Color.RED
laser.points = PackedVector2Array([$Tux.position,comet.position])