the game where you go into mines and start crafting! but for consoles (forked directly from smartcmd's github)
1/********************************************************
2* *
3* Copyright (C) Microsoft. All rights reserved. *
4* *
5********************************************************/
6
7// Sentient Client User API
8//
9// Include this to get access to all user-related Sentient features.
10
11#pragma once
12
13#include "SenClientSys.h"
14
15
16namespace Sentient
17{
18 //======================//
19 // //
20 // User Data Types //
21 // //
22 //======================//
23
24 /// @brief Roles a user can have in Sentient
25 ///
26 /// @details Roles are not necessarily mutually exclusive.
27 /// A single user may be in multiple roles simultaneously.
28 ///
29 enum SenUserRole
30 {
31 /// The user is a UGC moderator.
32 SenUserRole_UGC_Moderator,
33
34 /// The user has been banned from UGC participation.
35 SenUserRole_UGC_Banned,
36 };
37
38
39 //======================//
40 // //
41 // User Functions //
42 // //
43 //======================//
44
45 /// @brief Ask Sentient whether a user belongs to the enumerated roles
46 ///
47 /// @param[in] userIndex
48 /// Local index [0-3] of the user whose role is being checked
49 ///
50 /// @param[in] role
51 /// Role to check
52 ///
53 /// @param[out] out_isInRole
54 /// Location to store the output role membership state
55 ///
56 /// @param[in] userCallback
57 /// If this call returns a success code, the userCallback will be called at the end of the asynchronous process.
58 ///
59 /// @param[in] userCallbackData
60 /// Data to be passed to the @a userCallback on completion.
61 ///
62 /// @return Check SUCCEEDED( hresult ) or FAILED( hresult ) to determine success. Specific values include:
63 /// SENTIENT_E_NOT_INITIALIZED: You did not call SentientInitialize() first.
64 /// E_POINTER: out_isInRole is NULL.
65 /// E_FAIL: Failed to spawn server call.
66 /// S_OK: Server call spawned successfully.
67 ///
68 HRESULT SenUserIsInRole(
69 int userIndex,
70 SenUserRole role,
71 bool *out_isInRole,
72 SenSysCompletedCallback userCallback,
73 void *userCallbackData );
74
75 /// @brief Ask Sentient whether a user belongs to the enumerated roles
76 ///
77 /// @param[in] xuid
78 /// XUID of user whose role is being checked
79 ///
80 /// @param[in] role
81 /// Role to check
82 ///
83 /// @param[out] out_isInRole
84 /// Location to store the output role membership state
85 ///
86 /// @param[in] userCallback
87 /// If this call returns a success code, the userCallback will be called at the end of the asynchronous process.
88 ///
89 /// @param[in] userCallbackData
90 /// Data to be passed to the @a userCallback on completion.
91 ///
92 /// @return Check SUCCEEDED( hresult ) or FAILED( hresult ) to determine success. Specific values include:
93 /// SENTIENT_E_NOT_INITIALIZED: You did not call SentientInitialize() first.
94 /// E_POINTER: out_isInRole is NULL.
95 /// E_FAIL: Failed to spawn server call.
96 /// S_OK: Server call spawned successfully.
97 ///
98 HRESULT SenUserIsInRole(
99 PlayerUID xuid,
100 SenUserRole role,
101 bool *out_isInRole,
102 SenSysCompletedCallback userCallback,
103 void *userCallbackData );
104}