| 105 | } |
| 106 | |
| 107 | void NetworkManager::ExtendNetworking() |
| 108 | { |
| 109 | auto server = GetServer(); |
| 110 | if (server == nullptr) return; |
| 111 | |
| 112 | if (server->NetMessageFactory->MessagePools.size() > (unsigned)net::ExtenderMessage::MessageId) { |
| 113 | return; |
| 114 | } |
| 115 | |
| 116 | protocol_ = new ExtenderProtocol(); |
| 117 | server->ProtocolList.insert_at(0, protocol_); |
| 118 | server->ProtocolMap.set(ExtenderProtocol::ProtocolId, protocol_); |
| 119 | |
| 120 | auto extenderMsg = new net::ExtenderMessage(); |
| 121 | server->NetMessageFactory->Register((uint32_t)net::ExtenderMessage::MessageId, extenderMsg); |
| 122 | gExtender->GetHooks().HookNetworkMessages(server->NetMessageFactory); |
| 123 | DEBUG("Registered custom server network protocol"); |
| 124 | } |
| 125 | |
| 126 | net::GameServer * NetworkManager::GetServer() const |
| 127 | { |
no test coverage detected