53 lines
1.5 KiB
GDScript
53 lines
1.5 KiB
GDScript
extends Node
|
|
|
|
signal player_hit
|
|
|
|
signal start_game_one_player
|
|
signal start_game_two_player
|
|
signal go_to_menu(String)
|
|
signal point_gain(int)
|
|
signal go_to_score_saver(int)
|
|
|
|
var is_multiplayer := false
|
|
var actual_score := 0
|
|
var score :Score
|
|
|
|
func _ready() -> void:
|
|
connect("start_game_one_player",start_one_player)
|
|
connect("start_game_two_player",start_two_player)
|
|
connect("go_to_score_saver", start_score_saver)
|
|
connect("go_to_menu", start_menu)
|
|
if FileAccess.file_exists("user://Score.res"):
|
|
score = ResourceLoader.load("user://Score.res")
|
|
else:
|
|
score = Score.new()
|
|
|
|
|
|
func start_one_player()->void:
|
|
get_tree().change_scene_to_file("res://scene/main_game.tscn")
|
|
|
|
func start_two_player()->void:
|
|
is_multiplayer = true
|
|
get_tree().change_scene_to_file("res://scene/main_game_2_player.tscn")
|
|
|
|
func start_menu(user_name : String)->void:
|
|
printt(user_name, actual_score)
|
|
if is_multiplayer:
|
|
var temp = score.score_multiplayer.get_or_add(user_name, 0.0)
|
|
if temp < actual_score:
|
|
score.score_multiplayer[user_name] = actual_score
|
|
else:
|
|
var temp = score.score_singleplayer.get_or_add(user_name, 0.0)
|
|
if temp < actual_score:
|
|
score.score_singleplayer[user_name] = actual_score
|
|
user_name = ""
|
|
actual_score = 0
|
|
is_multiplayer = false
|
|
print(score.score_singleplayer)
|
|
score.save()
|
|
get_tree().call_deferred("change_scene_to_file", "res://scene/load_screen.tscn")
|
|
|
|
func start_score_saver(score: int)->void:
|
|
actual_score = score
|
|
get_tree().call_deferred("change_scene_to_file", "res://scene/score_saver.tscn")
|