|
@@ -434,9 +434,9 @@ void coreServerStop(void) {
|
|
|
if(server.server != nullptr) {
|
|
|
CoreHashMapIterator i;
|
|
|
coreInitHashMapIterator(&i, &server.clients);
|
|
|
- while(coreHashMapHasNext(&i)) {
|
|
|
- CoreHashMapNode* n = coreHashMapNext(&i);
|
|
|
- enet_peer_reset(coreHashMapValue(n, ENetPeer*));
|
|
|
+ while(coreHasNextHashMapNode(&i)) {
|
|
|
+ CoreHashMapNode* n = coreNextHashMapNode(&i);
|
|
|
+ enet_peer_reset(*(ENetPeer**)n->value);
|
|
|
}
|
|
|
enet_host_destroy(server.server);
|
|
|
server.server = nullptr;
|
|
@@ -460,8 +460,10 @@ static CoreClient getId(ENetPeer* peer) {
|
|
|
|
|
|
static void handleConnect(ENetEvent* e) {
|
|
|
CoreClient id = server.idCounter++;
|
|
|
- assert(!coreHashMapContains(&server.clients, CoreClient, id));
|
|
|
- coreHashMapPut(&server.clients, CoreClient, id, ENetPeer*, e->peer);
|
|
|
+ assert(coreSearchTypedHashMapKey(&server.clients, CoreClient, id, void*) ==
|
|
|
+ nullptr);
|
|
|
+ corePutTypedHashMapPair(&server.clients, CoreClient, id, ENetPeer*,
|
|
|
+ e->peer);
|
|
|
writeId(e->peer, id);
|
|
|
server.onConnect(id);
|
|
|
}
|
|
@@ -476,7 +478,7 @@ static void handlePacket(ENetEvent* e) {
|
|
|
static void handleDisconnect(ENetEvent* e) {
|
|
|
CoreClient id = getId(e->peer);
|
|
|
server.onDisconnect(id);
|
|
|
- coreHashMapRemove(&server.clients, CoreClient, id);
|
|
|
+ coreRemoveTypedHashMapKey(&server.clients, CoreClient, id);
|
|
|
}
|
|
|
|
|
|
void coreServerTick(void) {
|
|
@@ -516,7 +518,7 @@ void coreServerSend(CoreClient clientId, const CoreOutPacket* p,
|
|
|
if(server.server == nullptr) {
|
|
|
return;
|
|
|
}
|
|
|
- ENetPeer** peer = coreHashMapSearchPointer(&server.clients, &clientId);
|
|
|
+ ENetPeer** peer = coreSearchHashMapKey(&server.clients, &clientId);
|
|
|
if(peer != nullptr) {
|
|
|
enet_uint8 index = (enet_uint8)mode;
|
|
|
enet_peer_send(*peer, index, fromBuffer(&p->data, index));
|
|
@@ -528,7 +530,7 @@ void coreServerTimeout(CoreClient clientId, u32 timeout, u32 timeoutMin,
|
|
|
if(server.server == nullptr) {
|
|
|
return;
|
|
|
}
|
|
|
- ENetPeer** peer = coreHashMapSearchPointer(&server.clients, &clientId);
|
|
|
+ ENetPeer** peer = coreSearchHashMapKey(&server.clients, &clientId);
|
|
|
if(peer != nullptr) {
|
|
|
enet_peer_timeout(*peer, timeout, timeoutMin, timeoutMax);
|
|
|
}
|
|
@@ -538,7 +540,7 @@ void coreServerDisconnect(CoreClient clientId) {
|
|
|
if(server.server == nullptr) {
|
|
|
return;
|
|
|
}
|
|
|
- ENetPeer** peer = coreHashMapSearchPointer(&server.clients, &clientId);
|
|
|
+ ENetPeer** peer = coreSearchHashMapKey(&server.clients, &clientId);
|
|
|
if(peer != nullptr) {
|
|
|
enet_peer_disconnect(*peer, 0);
|
|
|
}
|