NWMUDS:GetConnectionStatus: Difference between revisions
No edit summary |
|||
(20 intermediate revisions by 3 users not shown) | |||
Line 34: | Line 34: | ||
| 0x0 | | 0x0 | ||
| 0x4 | | 0x4 | ||
| u32 | | u32 status | ||
|- | |- | ||
| 0x4 | | 0x4 | ||
| | | 0x4 | ||
| | | Unknown u32. Official user-processes check for values: 0x0, 0x1, and non-zero. | ||
|- | |||
| 0x8 | |||
| 0x2 | |||
| u16 NetworkNodeID for this device. This is the broadcast alias when connected as a spectator. | |||
|- | |||
| 0xA | |||
| 0x2 | |||
| u16, changed_nodes. This is a bitmask of the nodes that changed and triggered the update. | |||
|- | |||
| 0xC | |||
| 0x20 | |||
| u16 nodes[16]. Array of NetworkNodeIds, the values inside this array is what's passed to [[NWMUDS:GetNodeInformation]]. | |||
|- | |- | ||
| 0x2C | | 0x2C | ||
| 0x1 | | 0x1 | ||
| u8 | | u8 total_nodes. | ||
|- | |- | ||
| 0x2D | | 0x2D | ||
| | | 0x1 | ||
| | | u8 max_nodes, originally from the NetworkStruct. | ||
|- | |||
| 0x2E | |||
| 0x2 | |||
| u16 node_bitmask. This is a bitmask of NetworkNodeIDs: bit0 for NetworkNodeID 0x1(host), bit1 for NetworkNodeID 0x2(first original client), and so on. | |||
|} | |} | ||
== | Right after [[NWMUDS:InitializeWithVersion|initializing]], this structure is all-zero except for the status which is value 0x3. | ||
==Status values== | |||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
|- | |- | ||
! Type | ! Type | ||
! Description | ! Description | ||
|- | |||
| 0x3 | |||
| Not connected to any network as a host/client, or just initialized. | |||
|- | |- | ||
| 0x6 | | 0x6 | ||
| | | Connected to a network as a host. | ||
|- | |||
| 0x9 | |||
| Connected to a network as a client. | |||
|- | |||
| 0xA | |||
| Connected to a network as a spectator. | |||
|- | |||
| 0xB | |||
| For this value official user-processes use [[NWMUDS:UpdateNetworkAttribute]] to clear attributes bitmask 0x6. | |||
|} | |} | ||
=Description= | =Description= | ||
This is mainly used when the event handle from [[NWMUDS:Initialize]] is | This is mainly used when the event handle from [[NWMUDS:Initialize]] is signaled. This is also used before using [[NWMUDS:Bind]]. For certain user-processes this may be used during NWMUDS initialization as well. | ||
The event is not signaled when using [[NWMUDS:DestroyNetwork]] or [[NWMUDS:DisconnectNetwork]]. However the event does get signaled when creating or connecting to a network. |