aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortpart <tpart120@proton.me>2024-09-19 18:33:42 +0200
committertpart <tpart120@proton.me>2024-09-19 18:33:46 +0200
commitfd6dcda54288c5c5fa6d5419f1924ad92b392fc0 (patch)
treec96f3228cf46749da0a91178c565636352d7fd9e
parent5b4ae38227ab59f1c35008b09604f25d5386d05a (diff)
downloadhurrycurry-fd6dcda54288c5c5fa6d5419f1924ad92b392fc0.tar
hurrycurry-fd6dcda54288c5c5fa6d5419f1924ad92b392fc0.tar.bz2
hurrycurry-fd6dcda54288c5c5fa6d5419f1924ad92b392fc0.tar.zst
Automatically start tutorial for first item requested
-rw-r--r--client/game.gd6
-rw-r--r--client/global.gd1
-rw-r--r--client/player/player.gd2
3 files changed, 8 insertions, 1 deletions
diff --git a/client/game.gd b/client/game.gd
index 74279211..8b2b00c3 100644
--- a/client/game.gd
+++ b/client/game.gd
@@ -182,7 +182,11 @@ func handle_packet(p):
var timeout_remaining: float = p["timeout"]["remaining"] if p["timeout"] != null else 5.
if p.message != null:
if "item" in p.message:
- players[p.player].item_message(item_names[p.message.item], timeout_initial, timeout_remaining)
+ 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:
+ 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)
var username: String = players[p.player].username
diff --git a/client/global.gd b/client/global.gd
index c020f8da..5e016178 100644
--- a/client/global.gd
+++ b/client/global.gd
@@ -26,6 +26,7 @@ var default_profile := {
"username": "Giovanni",
"character": 0,
"last_server_url": "",
+ "tutorials_played": 0,
"hints": {
"has_seen_nametags": false,
"has_moved": false,
diff --git a/client/player/player.gd b/client/player/player.gd
index 4c835ff9..6962744c 100644
--- a/client/player/player.gd
+++ b/client/player/player.gd
@@ -44,6 +44,7 @@ var clear_timer: Timer = Timer.new()
var hand: Item = null
var hand_base: Node3D = Node3D.new()
var character_idx: int
+var is_customer: bool
var _anim_angle: float = 0.0
@@ -74,6 +75,7 @@ func _init(_id: int, new_name: String, pos: Vector2, new_character_idx: int, new
add_child(marker)
character_idx = new_character_idx
+ is_customer = character_idx < 0
func _ready():
character.select_hairstyle(character_idx)