diff options
author | metamuffin <metamuffin@disroot.org> | 2024-08-11 01:30:59 +0200 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2024-08-11 01:35:05 +0200 |
commit | 218da36b4f963a5dfcd619d543cb95c5c196d214 (patch) | |
tree | 244ecd10f4ca3d9798cedf7149394a1d4827b5d9 /client | |
parent | f753629acd906ff7acd42a18a266cc93a883330c (diff) | |
download | hurrycurry-218da36b4f963a5dfcd619d543cb95c5c196d214.tar hurrycurry-218da36b4f963a5dfcd619d543cb95c5c196d214.tar.bz2 hurrycurry-218da36b4f963a5dfcd619d543cb95c5c196d214.tar.zst |
update movement in protocol and all clients
Diffstat (limited to 'client')
-rw-r--r-- | client/game.gd | 4 | ||||
-rw-r--r-- | client/multiplayer.gd | 21 |
2 files changed, 13 insertions, 12 deletions
diff --git a/client/game.gd b/client/game.gd index 07e8aa3b..d3d8ab13 100644 --- a/client/game.gd +++ b/client/game.gd @@ -108,9 +108,9 @@ func _ready(): mp.set_tile.connect(set_tile) mp.remove_tile.connect(func (pos): map.clear_tile(pos)) - mp.position.connect(func(player: int, pos: Vector2, rot: float, boosting: bool): + mp.movement.connect(func(player: int, pos: Vector2, rot: float, boost: bool, dir: Vector2): var player_instance: Player = players[player] - player_instance.update_position(pos, rot, boosting) + player_instance.update_position(pos, rot, boost) if player == player_id: last_position = pos ) 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, |