X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=network.h;h=752c6c3c46534e7bf580b5a60ef2c3462e08323e;hb=a7d144c7905105909cc4434e0ab43008bbb8f89f;hp=066b9f82f3e1bc245ce3a3fbe63fa6a3331ec03c;hpb=46f4e9ee87dc67402166e4c6b05efbe922cd7574;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/network.h b/network.h index 066b9f8..752c6c3 100644 --- a/network.h +++ b/network.h @@ -10,6 +10,9 @@ #include "steam.h" #include "network_msg.h" #include "highscores.h" +#include "addon_types.h" + +#define NETWORK_MAX_REQUESTS 8 static int network_scores_updated = 0; @@ -42,8 +45,6 @@ struct { u8 app_symmetric_key[ 1024 ]; u32 app_key_length; EServerMode auth_mode; - - int name_update; HSteamNetConnection remote; ESteamNetworkingConnectionState state; @@ -52,11 +53,24 @@ struct { u32 retries; i32 network_info; + + struct network_request { + vg_pool_node poolnode; + void (*callback)( netmsg_request *res, vg_msg *body ); + f64 sendtime; + } + *request_buffer; + vg_pool request_pool; } static network_client = { - .state = k_ESteamNetworkingConnectionState_None, .auth_mode = eServerModeAuthentication, - .name_update = 1 + .state = k_ESteamNetworkingConnectionState_None, }; +static int packet_minsize( SteamNetworkingMessage_t *msg, u32 size ); +static void network_send_item( enum netmsg_playeritem_type type ); +static void network_request_scoreboard( const char *mod_uid, + const char *route_uid, + u32 week ); + #endif /* NETWORK_H */