summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2024-07-08 19:06:46 +0200
committermetamuffin <metamuffin@disroot.org>2024-07-08 19:06:46 +0200
commitaeeb376c1faceacb8856add20a820271cc3254b3 (patch)
treeda4784e70e9d19dd35f1d6dacd50e4b73c4938e2
parent21ad289fc51ba09c86b4f6c6936ae30823ad847e (diff)
parente3ca09a6d8d288855e601135ba683ea06490ba48 (diff)
downloadhurrycurry-aeeb376c1faceacb8856add20a820271cc3254b3.tar
hurrycurry-aeeb376c1faceacb8856add20a820271cc3254b3.tar.bz2
hurrycurry-aeeb376c1faceacb8856add20a820271cc3254b3.tar.zst
Merge branch 'master' of https://codeberg.org/metamuffin/hurrycurry
-rw-r--r--client/game.gd25
-rw-r--r--client/menu/ingame.gd1
2 files changed, 20 insertions, 6 deletions
diff --git a/client/game.gd b/client/game.gd
index b6646407..8fe150e6 100644
--- a/client/game.gd
+++ b/client/game.gd
@@ -273,10 +273,23 @@ func set_tile(tile: Vector2i, kind = null, neighbors = null):
map.set_tile(tile, tile_names[kind], neighbors)
func update_center():
- var players_count := players.size()
- var new_center := Vector3(0, 0, 0)
- for p in players.values():
- new_center += p.position
- if players_count > 0:
- new_center /= players_count
+ if is_joined:
+ return
+ var sum: int = 0
+ var player_sum: int = 0
+ var center: Vector3 = Vector3(0., 0., 0.)
+ var player_center: Vector3 = Vector3(0., 0., 0.)
+ for v in players.values():
+ var p: Player = v
+ if p.character_idx >= 0:
+ player_sum += 1
+ player_center += p.position
+ sum += 1
+ center += p.position
+
+ var new_center: Vector3 = Vector3(0., 0., 0.)
+ if player_sum > 0:
+ new_center = player_center / player_sum
+ elif sum > 0:
+ new_center = center / sum
$Center.position = new_center
diff --git a/client/menu/ingame.gd b/client/menu/ingame.gd
index f8653411..6f1e40fe 100644
--- a/client/menu/ingame.gd
+++ b/client/menu/ingame.gd
@@ -28,6 +28,7 @@ func _ready():
lobby_button.disabled = game.in_lobby
game.joined.connect(_on_game_joined)
game.left.connect(_on_game_left)
+ update_button_text()
super()
func anim_setup(): pass