diff options
| author | tpart <tpart120@proton.me> | 2024-09-18 18:10:21 +0200 | 
|---|---|---|
| committer | tpart <tpart120@proton.me> | 2024-09-18 18:10:21 +0200 | 
| commit | 8461de5a604d7fede00855632c55b5ec59779d0f (patch) | |
| tree | 677f58636560c3f58f742f9fd877b8c536f759ed /client/game.gd | |
| parent | a182706feb0f4112063f73a3cca8ef133cd2aa66 (diff) | |
| download | hurrycurry-8461de5a604d7fede00855632c55b5ec59779d0f.tar hurrycurry-8461de5a604d7fede00855632c55b5ec59779d0f.tar.bz2 hurrycurry-8461de5a604d7fede00855632c55b5ec59779d0f.tar.zst  | |
Implement new server message packet; Remove old server error packet; Bump protocol version to 7.0
Diffstat (limited to 'client/game.gd')
| -rw-r--r-- | client/game.gd | 19 | 
1 files changed, 16 insertions, 3 deletions
diff --git a/client/game.gd b/client/game.gd index ef7a4575..87613003 100644 --- a/client/game.gd +++ b/client/game.gd @@ -255,9 +255,15 @@ func _ready():  	)  	mp.server_message.connect( -		func(text): -			print("== ", text) -			popup_message.display_server_msg(text) +		func(message: Dictionary, error: bool): +			var message_str := get_message_str(message) +			 +			if error: +				# TODO: Custom popup message style for errors +				popup_message.display_server_msg(message_str) +				push_error("Server error: %s" % message_str) +			else: +				popup_message.display_server_msg(message_str)  	)  	mp.score.connect(overlay.update) @@ -289,6 +295,13 @@ func _process(delta):  	if is_replay and mp != null:  		mp.send_replay_tick(delta) +func get_message_str(m: Dictionary) -> String: +	if "text" in m: return m.text +	if "translation" in m: return tr(m.translation.id) % m.translation.params.map(get_message_str) +	if "tile" in m: return tile_names[m.tile] +	if "item" in m: return item_names[m.item] +	return "[unknown message type]" +  func get_tile_collision(pos: Vector2i) -> bool:  	var t = map.get_tile_name(pos)  	if t == null: return true  |