Nuclide
Software Development Kit for id Technology (BETA)
Loading...
Searching...
No Matches
UserInfoManager.h
1/*
2 * Copyright (c) 2025 Vera Visions LLC.
3 *
4 * Permission to use, copy, modify, and distribute this software for any
5 * purpose with or without fee is hereby granted, provided that the above
6 * copyright notice and this permission notice appear in all copies.
7 *
8 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12 * WHATSOEVER RESULTING FROM LOSS OF MIND, USE, DATA OR PROFITS, WHETHER
13 * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
14 * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
15*/
16
25class
27{
28public:
29 void ncUserInfoManager(void);
30
31 nonvirtual void InitWithSlots(int maxUserSlots);
32 nonvirtual void Shutdown(void);
33
34 nonvirtual void UpdateRanking(void);
35 nonvirtual void UpdateCachedSlot(int cachedSlot);
36
37 nonvirtual int NumSlots(void);
38
39 nonvirtual void DebugPrint(void);
40
41 /* Returns the player info according to internal index. Invalid queries return -1. */
42 nonvirtual ncUserInfo InfoByIndex(int targetIndex);
43
44 /* Returns the player info according to the server ranking. Invalid queries return -1. */
45 nonvirtual ncUserInfo InfoByRanking(int rankingIndex);
46
47private:
48
49 int m_numUsers;
50 ncUserInfo *m_users;
51
52 /* each index = id of a player slot */
53 int *m_serverRanking;
54};
55
56ncUserInfoManager g_userInfo;
A cache/manager for userinfo on the client.
Definition UserInfoManager.h:27
nonvirtual void UpdateRanking(void)
Definition UserInfoManager.qc:56
nonvirtual ncUserInfo InfoByRanking(int rankingIndex)
Definition UserInfoManager.qc:150
nonvirtual ncUserInfo InfoByIndex(int targetIndex)
Definition UserInfoManager.qc:136
nonvirtual void UpdateCachedSlot(int cachedSlot)
Definition UserInfoManager.qc:91
void ncUserInfoManager(void)
Definition UserInfoManager.qc:18
nonvirtual void Shutdown(void)
Definition UserInfoManager.qc:40
nonvirtual int NumSlots(void)
Definition UserInfoManager.qc:101
nonvirtual void DebugPrint(void)
Definition UserInfoManager.qc:107
nonvirtual void InitWithSlots(int maxUserSlots)
Definition UserInfoManager.qc:26
Definition UserInfo.h:19