Started implementing player stats and score tracking
parent
79e566b00d
commit
f581cd1696
|
@ -9,9 +9,11 @@ func updateHealth(health: int):
|
|||
|
||||
func update_crosshair(kill):
|
||||
$Crosshair.visible = true # visible
|
||||
$Crosshair/HitConfirmation.activate(0.15, false)
|
||||
#$Crosshair/HitConfirmation.activate(0.15, false)
|
||||
|
||||
#if hit:
|
||||
# $Crosshair/HitConfirmation.activate(0.15, false)
|
||||
#elif kill:
|
||||
# $Crosshair/HitConfirmation.activate(0.3, true)
|
||||
print("HUD: kill = ", kill)
|
||||
|
||||
if kill:
|
||||
$Crosshair/HitConfirmation.activate(0.3, true)
|
||||
else:
|
||||
$Crosshair/HitConfirmation.activate(0.15, false)
|
||||
|
|
|
@ -67,6 +67,14 @@ var bodyHitEffect = preload("res://Assets/Effects/BodyHit.tscn")
|
|||
onready var nickname = "guest" setget set_nickname
|
||||
var player_class = "none"
|
||||
|
||||
var player_stats = stats.new()
|
||||
|
||||
class stats:
|
||||
var score: int
|
||||
var kills: int
|
||||
var deaths: int
|
||||
var suicides: int
|
||||
|
||||
#func sfx_play_footsteps():
|
||||
# if not sfx_footsteps_play:
|
||||
# sfx_footsteps_play = true
|
||||
|
@ -78,6 +86,11 @@ var player_class = "none"
|
|||
# yield(get_tree().create_timer(sfx_footsteps_delay),"timeout")
|
||||
# sfx_footsteps_play = false
|
||||
|
||||
func score(target):
|
||||
print("Player ", name, " scored a kill on ", target)
|
||||
player_stats.kills += 1
|
||||
player_stats.score += 1
|
||||
|
||||
func set_health(value):
|
||||
health = value
|
||||
$HUD.updateHealth(value)
|
||||
|
@ -306,6 +319,8 @@ master func kill():
|
|||
|
||||
is_dead = true
|
||||
|
||||
player_stats.deaths += 1
|
||||
|
||||
set_health(0)
|
||||
$CollisionShapeBody.disabled = true
|
||||
|
||||
|
|
|
@ -66,10 +66,15 @@ func shoot(camera):
|
|||
hit.rpc("on_hit", 30, result.position)
|
||||
|
||||
if hit is Player:
|
||||
var kill = hit.health <= 0
|
||||
var kill = true if hit.health <= 0 else false
|
||||
|
||||
print ("Player: kill = ", kill, " Target health: ", hit.health)
|
||||
emit_signal("damage_dealt", kill)
|
||||
print(get_signal_connection_list("damage_dealt")[0]["target"].name)
|
||||
|
||||
if kill:
|
||||
player.score(hit.name)
|
||||
|
||||
else:
|
||||
reload()
|
||||
|
||||
|
|
Reference in New Issue