diff options
Diffstat (limited to 'client/multiplayer.gd')
-rw-r--r-- | client/multiplayer.gd | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/client/multiplayer.gd b/client/multiplayer.gd index 7a63059e..095d3d7b 100644 --- a/client/multiplayer.gd +++ b/client/multiplayer.gd @@ -34,7 +34,7 @@ signal item_message(player: int, item: int, persist: bool) signal effect_message(player: int, effect: String, persist: bool) signal add_player(player: int, name: String, pos: Vector2, character: int) signal remove_player(player: int) -signal position(player: int, position: Vector2, rotation: float, boosting: bool) +signal movement(player: int, position: Vector2, rotation: float, boost: bool, direction: Vector2) signal movement_sync() signal take_item(tile: Vector2i, player: int) signal put_item(player: int, tile: Vector2i, ) @@ -57,7 +57,7 @@ signal connection_closed(reason: String) signal show_rating(stars: int, points: int) signal show_book() # TODO: Connect this -const VERSION_MAJOR: int = 3 +const VERSION_MAJOR: int = 4 const VERSION_MINOR: int = 0 var connected := false @@ -86,7 +86,7 @@ func _process(_delta): var code = socket.get_close_code() var reason = socket.get_close_reason() connection_closed.emit( - tr("WebSocket closed with code: %d, reason %s. Clean: %s") % [code, reason, code != - 1] + tr("WebSocket closed with code: %d, reason %s. Clean: %s") % [code, reason, code != -1] ) self.queue_free() @@ -124,12 +124,13 @@ func handle_packet(bytes: PackedByteArray): "remove_player": var id = decoded["id"] remove_player.emit(id) - "position": + "movement": var player = decoded["player"] var pos = decoded["pos"] var rot = decoded["rot"] - var boosting = decoded["boosting"] - position.emit(player, pos_to_vec2(pos), rot, boosting) + var boost = decoded["boost"] + var dir = decoded["dir"] + movement.emit(player, pos_to_vec2(pos), rot, boost, pos_to_vec2(dir)) "movement_sync": movement_sync.emit() "take_item": @@ -279,16 +280,16 @@ func send_join(player_name: String, character: int): "character": character }) -func send_movement(player: int, pos: Vector2, direction: Vector2, boosting: bool): +func send_movement(player: int, pos: Vector2, direction: Vector2, boost: bool): send_packet({ "type": "movement", "player": player, "pos": [pos.x, pos.y], - "direction": [direction.x, direction.y], - "boosting": boosting + "dir": [direction.x, direction.y], + "boost": boost }) -func send_tile_interact(player:int, pos: Vector2i, edge: bool): +func send_tile_interact(player: int, pos: Vector2i, edge: bool): send_packet({ "type": "interact", "player": player, |