final commit
This commit is contained in:
+59
-10
@@ -8,6 +8,7 @@ extends Node2D
|
||||
@onready var healthLabel = $hud/healthlabel
|
||||
@onready var slowdown = $hud/slowdown
|
||||
@onready var upgradesHUD = $hud/upgrades
|
||||
@onready var goldupgradesHUD = $hud/goldupgrades
|
||||
@onready var ff = $hud/ff
|
||||
@onready var beep = $hud/beep
|
||||
@onready var beep2 = $hud/beep2
|
||||
@@ -22,6 +23,7 @@ extends Node2D
|
||||
#
|
||||
|
||||
@onready var shooter = preload("res://assets/scenes/shooter.tscn")
|
||||
@onready var bomber = preload("res://assets/scenes/walkingBomb.tscn")
|
||||
@onready var upgradeUI = preload("res://assets/scenes/upgradeUI.tscn")
|
||||
|
||||
var healthLast = 0
|
||||
@@ -59,15 +61,43 @@ func wfc():
|
||||
pass
|
||||
|
||||
func appendUpgrade(upgradeID : String):
|
||||
print(upgradeUnlocksPerTick)
|
||||
|
||||
if randi_range(1,10) == 1:
|
||||
# gold upgrade
|
||||
|
||||
var upgradeIDE = Globals.availableGoldUpgrade.pick_random()
|
||||
Globals.unlockedUpgrades[upgradeIDE] = Globals.unlockedUpgrades.get(upgradeIDE, 0) + 1
|
||||
|
||||
var instantiated = upgradeUI.instantiate()
|
||||
instantiated.get_node("texture").texture = load(str("res://assets/images/upgrades/", upgradeIDE, ".png"))
|
||||
#instantiated.timer = Globals.UPGRADE_TIMERSTART
|
||||
instantiated.goldUpgrade = true
|
||||
instantiated.upgradeID = upgradeIDE
|
||||
#instantiated.get_node("animations").play("init")
|
||||
goldupgradesHUD.add_child(instantiated)
|
||||
|
||||
$newupgrade/title.text = "[GOLD] " + upgradeIDE.capitalize().to_lower()
|
||||
$newupgrade/icon.texture = load(str("res://assets/images/upgrades/", upgradeID, ".png"))
|
||||
|
||||
if Globals.goldUpgradeDescriptionOverrides.get(upgradeIDE, "") == "":
|
||||
$newupgrade/text.text = Globals.upgradeDescriptions[upgradeIDE]
|
||||
else:
|
||||
$newupgrade/text.text = Globals.goldUpgradeDescriptionOverrides[upgradeIDE]
|
||||
|
||||
$newupgrade/animations.stop()
|
||||
$newupgrade/animations.play("newUpgrade")
|
||||
|
||||
return
|
||||
|
||||
#print(upgradeID)
|
||||
Globals.unlockedUpgrades[upgradeID] = Globals.unlockedUpgrades.get(upgradeID, 0) + 1
|
||||
upgradeUnlocksPerTick[ticks].append(upgradeID)
|
||||
#upgradeUnlocksPerTick[ticks].append(upgradeID)
|
||||
#TextureRect.new().texture.resource_path
|
||||
|
||||
var modified := false
|
||||
for icon in upgradesHUD.get_children():
|
||||
if icon.upgradeID == upgradeID:
|
||||
#icon.amount += 1
|
||||
icon.amount += 1
|
||||
modified = true
|
||||
break
|
||||
|
||||
@@ -87,7 +117,9 @@ func appendUpgrade(upgradeID : String):
|
||||
$newupgrade/animations.play("newUpgrade")
|
||||
|
||||
func _ready():
|
||||
#appendUpgrade("rollback")
|
||||
|
||||
#appendUpgrade("stopwatch")
|
||||
#appendUpgrade("shotgun")
|
||||
|
||||
for i in range(11):
|
||||
patterns.append(tilemap.tile_set.get_pattern(i))
|
||||
@@ -111,6 +143,17 @@ var timer := 0.0
|
||||
func _process(delta: float) -> void:
|
||||
waveTimer -= delta
|
||||
|
||||
if player.health <= 0:
|
||||
Engine.time_scale = 1
|
||||
$hud/deathrect.modulate.a += (1 - $hud/deathrect.modulate.a) * delta
|
||||
|
||||
if Input.is_action_just_pressed("shoot"):
|
||||
get_tree().change_scene_to_file("res://assets/scenes/mainMenu.tscn")
|
||||
|
||||
return
|
||||
|
||||
#appendUpgrade("shotgun")
|
||||
|
||||
if not baked:
|
||||
timer += delta
|
||||
$bakewait/Label.text = "baking collisions"
|
||||
@@ -164,7 +207,6 @@ func _process(delta: float) -> void:
|
||||
healthLast = int(player.health)
|
||||
slowdown.material.set_shader_parameter('saturation', player.grayscaleVal)
|
||||
#a
|
||||
|
||||
|
||||
func _on_navigation_bake_finished() -> void:
|
||||
$bakewait.queue_free()
|
||||
@@ -174,21 +216,28 @@ func _on_navigation_bake_finished() -> void:
|
||||
|
||||
func _on_spawntimer_timeout() -> void:
|
||||
var newEnemy = shooter.instantiate()
|
||||
newEnemy.health = 100 * pow(currentWave, 0.7)
|
||||
newEnemy.maxHealth = 100 * pow(currentWave, 0.7)
|
||||
newEnemy.health = 80 * pow(currentWave, 0.7)
|
||||
newEnemy.maxHealth = 80 * pow(currentWave, 0.7)
|
||||
newEnemy.wave = currentWave
|
||||
newEnemy.global_position = player.global_position + Vector2(randi_range(-500, 500), randi_range(-100, 100))
|
||||
get_node("enemies").add_child(newEnemy)
|
||||
|
||||
if currentWave >= 3 and randi_range(1, 5) == 1:
|
||||
var thebomba = bomber.instantiate()
|
||||
thebomba.health = 200 * pow(currentWave, 0.7)
|
||||
thebomba.maxHealth = 200 * pow(currentWave, 0.7)
|
||||
thebomba.wave = currentWave
|
||||
thebomba.global_position = player.global_position + Vector2(randi_range(-500, 500), randi_range(-100, 100))
|
||||
get_node("enemies").add_child(thebomba)
|
||||
|
||||
func _on_player_transition_start(seconds: Variant) -> void:
|
||||
for enemy in get_node("enemies").get_children():
|
||||
enemy.moveback(max(seconds, enemy.ticks / 20))
|
||||
print("moveback1")
|
||||
|
||||
print(upgradeUnlocksPerTick, "\n", max(ticks - int(seconds) - 1,tickToDel))
|
||||
for upgrade in upgradeUnlocksPerTick[max(ticks - int(seconds) - 1,tickToDel)]:
|
||||
appendUpgrade(upgrade)
|
||||
#print(upgradeUnlocksPerTick, "\n", max(ticks - int(seconds) - 1,tickToDel))
|
||||
#for upgrade in upgradeUnlocksPerTick[max(ticks - int(seconds) - 1,tickToDel)]:
|
||||
#appendUpgrade(upgrade)
|
||||
|
||||
|
||||
func _on_upgradetick_timeout() -> void:
|
||||
|
||||
Reference in New Issue
Block a user