diff options
author | metamuffin <metamuffin@disroot.org> | 2025-09-27 22:07:11 +0200 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2025-09-27 22:07:19 +0200 |
commit | 46897ebdbe69145d6e9290c474c8ac426372226e (patch) | |
tree | e23e38de34c8c80f2b691228da201db828d09dac /client/game.gd | |
parent | 481ca4dc8d03d2e2b10fffbed5fa8ce58f7291bb (diff) | |
download | hurrycurry-46897ebdbe69145d6e9290c474c8ac426372226e.tar hurrycurry-46897ebdbe69145d6e9290c474c8ac426372226e.tar.bz2 hurrycurry-46897ebdbe69145d6e9290c474c8ac426372226e.tar.zst |
Chat system messages
Diffstat (limited to 'client/game.gd')
-rw-r--r-- | client/game.gd | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/client/game.gd b/client/game.gd index 020c43db..34040034 100644 --- a/client/game.gd +++ b/client/game.gd @@ -24,13 +24,12 @@ signal text_message(message: TextMessage) signal update_tutorial_running(running: bool) class TextMessage: - var username: String + var username #: String var color: Color var text: String var timeout_initial: float var timeout_remaining - enum SpectatingMode { CENTER, FREE, @@ -82,6 +81,11 @@ func _ready(): get_parent().replace_menu("res://gui/menus/error.tscn", [reason, menu.data]) ) mp.connect_to_url(menu.data) + text_message.connect(func(m): + text_message_history.push_back(m) + while text_message_history.size() > 64: + text_message_history.pop_front() + ) func handle_packet(p): match p.type: @@ -261,7 +265,6 @@ func handle_packet(p): player.text_message(data) text_message.emit(data) - text_message_history.append(data) elif "tile" in p.message: push_error("TODO: tile message") else: @@ -369,6 +372,13 @@ func handle_packet(p): _: push_error("Unrecognized packet type: %s" % p.type) +func system_message(s: String): + var message = TextMessage.new() + message.text = s + message.color = Color.GOLD + message.timeout_remaining = 5. + text_message.emit(message) + func set_join_state(state: JoinState): join_state = state join_state_updated.emit(state) |