25221bf3cb
- Fixed double-emission bug in network_manager.gd: ENet signal connections (peer_connected/peer_disconnected) are now only connected when netfox NetworkEvents is NOT available, preventing duplicate player_connected/ player_disconnected signal emissions. - Fixed stop() to only disconnect ENet signals when they were actually connected (mirrors the conditional connection in start_server()). - Fixed headless parse error in player_net_input.gd: replaced direct NetworkTime.before_tick_loop reference with Engine.get_singleton() call, avoiding unresolved type identifier in headless mode. - netfox_bootstrap.gd added as minimal autoload placeholder. - Dual-path architecture: netfox NetworkEvents when available (editor), ENet fallback when netfox unavailable (headless server). - Broadcast RPCs (spawn, round state, scores) kept as-is since they work identically through Godot's MultiplayerAPI in both paths.
11 lines
351 B
GDScript
11 lines
351 B
GDScript
## NetfoxBootstrap — minimal. All class_names should be registered by
|
|
## Godot's global script scanning. We don't reference any netfox
|
|
## class_name directly in our code.
|
|
|
|
extends Node
|
|
|
|
func _ready() -> void:
|
|
# netfox singletons are registered by the editor plugin only.
|
|
# In headless/export builds, Engine.has_singleton checks handle this.
|
|
pass
|