feat: take_powerup VFX, rank fix, admin chat management
- Wire take_powerup AnimatedSprite3D on powerup pickup via add_powerup_from_item() - Make take_powerup animation one-shot (loop: false) - Fix rank Position label hidden at game start (visible = false, only shows when score > 0) - Competition ranking for tied scores in main.gd - Lobby Chat admin tab: system prefix, max messages, wipe, purge old, save config - Chat Storage admin tab: list/browse/delete individual channel messages - Backend RPCs: admin_get_chat_config, admin_set_chat_config, admin_purge_old_messages, admin_list_channel_messages, admin_delete_channel_message - Chat config applied on lobby join (max_messages, prefix injection)
This commit is contained in:
@@ -153,6 +153,12 @@ func add_powerup_from_item(item_id: int):
|
||||
var effect = get_effect_from_item(item_id)
|
||||
if effect == -1: return
|
||||
|
||||
# VFX: show pickup burst on all peers (mirrors skill VFX pattern)
|
||||
if player.is_multiplayer_authority() and player.has_method("can_rpc") and player.can_rpc():
|
||||
player.rpc("play_skill_vfx", "take_powerup")
|
||||
elif player.has_method("play_skill_vfx"):
|
||||
player.play_skill_vfx("take_powerup")
|
||||
|
||||
# 1-PowerUp Rule: If this is a DIFFERENT power-up, clear the old one
|
||||
var is_different = not inventory.get(effect, false)
|
||||
var already_has_any = false
|
||||
|
||||
Reference in New Issue
Block a user