summaryrefslogtreecommitdiff
path: root/client/menu/character_menu.gd
blob: 80fcdcb64131407fd5ff1bfd5fb510b3b6dee6eb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# Undercooked - a game about cooking
# Copyright 2024 metamuffin
# 
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, version 3 of the License only.
# 
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU Affero General Public License for more details.
# 
# You should have received a copy of the GNU Affero General Public License
# along with this program.  If not, see <https://www.gnu.org/licenses/>.
# 
extends Control

@onready var character: Character = $Character
@onready var num_hairstyles := character.hairstyles.keys().size()
@onready var back_button := $VBoxContainer/bottom_panel/back

func _ready():
	$VBoxContainer/top_panel/a/username.text = Global.profile["username"]
	character.select_hairstyle(Global.profile["character"])
	Global.focus_first_button(self)

func _input(event):
	if Input.is_action_just_pressed("ui_cancel"):
		_on_back_pressed()

func _on_back_pressed():
	Global.fade_next = true
	$SceneTransition.transition_to("res://menu/menu_manager.tscn")

func _on_username_text_changed(new_text):
	Global.profile["username"] = new_text

func _on_character_back_pressed():
	Global.profile["character"] = (Global.profile["character"] - 1) % num_hairstyles
	character.select_hairstyle(Global.profile["character"])
	Global.save_profile()

func _on_character_forward_pressed():
	Global.profile["character"] = (Global.profile["character"] + 1) % num_hairstyles
	character.select_hairstyle(Global.profile["character"])
	Global.save_profile()