aboutsummaryrefslogtreecommitdiff
path: root/client
diff options
context:
space:
mode:
Diffstat (limited to 'client')
-rw-r--r--client/game.gd10
-rw-r--r--client/global.gd2
2 files changed, 10 insertions, 2 deletions
diff --git a/client/game.gd b/client/game.gd
index 8b2b00c3..64bdb78f 100644
--- a/client/game.gd
+++ b/client/game.gd
@@ -45,6 +45,7 @@ var in_lobby := false
var is_replay := false
var is_joined := false
var join_sent := false
+var tutorial_running = false
var last_position := Vector2(0, 0)
var players := {}
@@ -185,7 +186,8 @@ func handle_packet(p):
var player: Player = players[p.player]
var item_name: String = item_names[p.message.item]
player.item_message(item_name, timeout_initial, timeout_remaining)
- if player.is_customer and Global.get_profile("tutorials_played") < 3:
+ if player.is_customer and not tutorial_running and not Global.get_profile("tutorials_played").has(item_name):
+ tutorial_running = true
mp.send_chat(player_id, "/start-tutorial %s" % item_name)
elif "text" in p.message:
players[p.player].text_message(p.message.text, timeout_initial, timeout_remaining)
@@ -221,6 +223,12 @@ func handle_packet(p):
"score":
if p.time_remaining != null:
overlay.update(p.demands_failed, p.demands_completed, p.points, p.time_remaining)
+ "tutorial_ended":
+ tutorial_running = false
+ var played: Array = Global.get_profile("tutorials_played")
+ played.append(p.item)
+ Global.set_profile("tutorials_played", played)
+ Global.save_profile()
"menu":
match p.menu:
"book":
diff --git a/client/global.gd b/client/global.gd
index a4f7ed2a..41677e46 100644
--- a/client/global.gd
+++ b/client/global.gd
@@ -26,7 +26,7 @@ var default_profile := {
"username": "Giovanni",
"character": 0,
"last_server_url": "",
- "tutorials_played": 0,
+ "tutorials_played": [],
"hints": {
"has_seen_nametags": false,
"has_moved": false,