mirror of
https://github.com/godotengine/godot.git
synced 2025-12-08 06:09:55 +00:00
Add error messages and docs to explain allowed transitions in NetworkedMultiplayerCustom.set_connection_status()
This commit is contained in:
parent
38601ba824
commit
738e76b710
2 changed files with 14 additions and 8 deletions
|
|
@ -154,17 +154,19 @@ void NetworkedMultiplayerCustom::set_max_packet_size(int p_max_packet_size) {
|
|||
}
|
||||
|
||||
void NetworkedMultiplayerCustom::set_connection_status(NetworkedMultiplayerPeer::ConnectionStatus p_connection_status) {
|
||||
// Can only go to connecting, if we are disconnected.
|
||||
if (p_connection_status == ConnectionStatus::CONNECTION_CONNECTING && connection_status == ConnectionStatus::CONNECTION_DISCONNECTED) {
|
||||
connection_status = p_connection_status;
|
||||
if (connection_status == p_connection_status) {
|
||||
return;
|
||||
}
|
||||
// Can only go to connected, if we are connecting.
|
||||
else if (p_connection_status == ConnectionStatus::CONNECTION_CONNECTED && connection_status == ConnectionStatus::CONNECTION_CONNECTING) {
|
||||
|
||||
ERR_FAIL_COND_MSG(p_connection_status == ConnectionStatus::CONNECTION_CONNECTING && connection_status != ConnectionStatus::CONNECTION_DISCONNECTED,
|
||||
"Can only change connection status to CONNECTION_CONNECTING from CONNECTION_DISCONNECTED");
|
||||
ERR_FAIL_COND_MSG(p_connection_status == ConnectionStatus::CONNECTION_CONNECTED && connection_status != ConnectionStatus::CONNECTION_CONNECTING,
|
||||
"Can only change connection status to CONNECTION_CONNECTED from CONNECTION_CONNECTING");
|
||||
|
||||
if (p_connection_status == ConnectionStatus::CONNECTION_CONNECTED) {
|
||||
connection_status = p_connection_status;
|
||||
emit_signal("connection_succeeded");
|
||||
}
|
||||
// Can only go to disconnected, if we aren't already disconnected.
|
||||
else if (p_connection_status == ConnectionStatus::CONNECTION_DISCONNECTED && connection_status != ConnectionStatus::CONNECTION_DISCONNECTED) {
|
||||
} else if (p_connection_status == ConnectionStatus::CONNECTION_DISCONNECTED) {
|
||||
ConnectionStatus old_connection_status = connection_status;
|
||||
connection_status = p_connection_status;
|
||||
|
||||
|
|
@ -175,6 +177,8 @@ void NetworkedMultiplayerCustom::set_connection_status(NetworkedMultiplayerPeer:
|
|||
emit_signal("server_disconnected");
|
||||
}
|
||||
}
|
||||
} else {
|
||||
connection_status = p_connection_status;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue