now saving persistent data

includes number of enemies killed, number of times died, last killed
This commit is contained in:
derek
2024-12-02 13:09:52 -06:00
parent 211c243624
commit 842cc7ecfd
9 changed files with 180 additions and 39 deletions

View File

@@ -13,6 +13,7 @@ extends Node3D
@export var health_drop_enabled = true
@export var money_drop_enabled = true
@onready var crown = preload("res://assets/crown.tscn")
var ammo_drop = [[load("res://assets/ammo_pickup.tscn")],["ammo"]]
var stamina_drop = [[load("res://assets/stamina_pickup.tscn")],["stamina"]]
var health_drop = [[load("res://assets/health_pickup.tscn")],["health"]]
@@ -42,6 +43,17 @@ var engine_time_scale_cache : float = 1.0
# Called when the node enters the scene tree for the first time.
func _ready():
##LOAD DATA
SaveLoad.load_persistent_data()
#Spawn Crown
var crown_spawn = crown.instantiate()
print("LEVELMANAGER LAST HIT " + str(SaveLoad.last_hit_path))
if SaveLoad.last_hit_path:
var crown_target = get_node(SaveLoad.last_hit_path)
crown_target.add_child(crown_spawn)
else:
get_tree().get_root().add_child(crown_spawn)
#global randomize function
randomize()
@@ -133,6 +145,13 @@ func cleared():
clearedmsg.queue_free()
func die():
#record stats
if SaveLoad.player_deaths:
SaveLoad.player_deaths += 1
else:
SaveLoad.player_deaths = 1
SaveLoad.save_persistent_data()
var deadmsg = DEAD_ANNOUNCE.instantiate()
get_parent().add_child(deadmsg)
var instance_dead = dead_player.instantiate()
@@ -140,6 +159,7 @@ func die():
instance_dead.transform.basis = player.global_transform.basis
if last_hit != null:
instance_dead.target = last_hit
SaveLoad.last_hit_path = str(last_hit.get_path())
instance_dead.target_type = target_type
instance_dead.respawn_position = respawn_position
instance_dead.respawn_rotation = respawn_cam_rotation
@@ -176,4 +196,6 @@ func pause_menu():
paused = !paused
func save_quit():
SaveLoad.save_persistent_data()
SaveLoad.save_game_data()
get_tree().quit()