mirror of
https://github.com/rehlds/reapi.git
synced 2025-01-16 08:38:08 +03:00
Added rh_update_user_info
Updated ReHLDS API Fixed platform toolset in msvc for WinXP
This commit is contained in:
parent
d6c3a21dbb
commit
084fc056a7
@ -85,7 +85,7 @@ enum HookChain
|
|||||||
* @return Returns a handle to the hook. Use EnableHookChain/DisableHookChain to toggle the forward on or off.
|
* @return Returns a handle to the hook. Use EnableHookChain/DisableHookChain to toggle the forward on or off.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
native HookChain:RegisterHookChain(any:function_id, const callback[], post = 0);
|
native HookChain:RegisterHookChain({EngineFunc, GamedllFunc, GamedllFunc_CBaseAnimating, GamedllFunc_CBasePlayer, GamedllFunc_CSGameRules}:function_id, const callback[], post = 0);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Stops a hook from triggering.
|
* Stops a hook from triggering.
|
||||||
|
@ -73,8 +73,17 @@ native rh_reset_mapname();
|
|||||||
* @param flags Emit flags
|
* @param flags Emit flags
|
||||||
* @param pitch Sound pitch
|
* @param pitch Sound pitch
|
||||||
* @param emitFlags Additional Emit2 flags, look at the defines like SND_EMIT2_*
|
* @param emitFlags Additional Emit2 flags, look at the defines like SND_EMIT2_*
|
||||||
|
*
|
||||||
* @return 1 if successfully sounds are emitted, 0 otherwise
|
* @return 1 if successfully sounds are emitted, 0 otherwise
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
native rh_emit_sound2(const entity, const recipient, const channel, const sample[], Float:vol = VOL_NORM, Float:attn = ATTN_NORM, const flags = 0, const pitch = PITCH_NORM, emitFlags = 0, const Float:origin[3] = {0.0,0.0,0.0});
|
native rh_emit_sound2(const entity, const recipient, const channel, const sample[], Float:vol = VOL_NORM, Float:attn = ATTN_NORM, const flags = 0, const pitch = PITCH_NORM, emitFlags = 0, const Float:origin[3] = {0.0,0.0,0.0});
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Forces an userinfo update
|
||||||
|
*
|
||||||
|
* @param playerEntIndex Player entity index (starts from 1)
|
||||||
|
*
|
||||||
|
* @noreturn
|
||||||
|
*/
|
||||||
|
native rh_update_user_info(playerEntIndex);
|
@ -35,7 +35,7 @@
|
|||||||
#include "model.h"
|
#include "model.h"
|
||||||
|
|
||||||
#define REHLDS_API_VERSION_MAJOR 2
|
#define REHLDS_API_VERSION_MAJOR 2
|
||||||
#define REHLDS_API_VERSION_MINOR 12
|
#define REHLDS_API_VERSION_MINOR 13
|
||||||
|
|
||||||
//Steam_NotifyClientConnect hook
|
//Steam_NotifyClientConnect hook
|
||||||
typedef IHookChain<qboolean, IGameClient*, const void*, unsigned int> IRehldsHook_Steam_NotifyClientConnect;
|
typedef IHookChain<qboolean, IGameClient*, const void*, unsigned int> IRehldsHook_Steam_NotifyClientConnect;
|
||||||
@ -280,6 +280,7 @@ struct RehldsFuncs_t {
|
|||||||
void(*Steam_NotifyClientDisconnect)(IGameClient* cl);
|
void(*Steam_NotifyClientDisconnect)(IGameClient* cl);
|
||||||
void(*SV_StartSound)(int recipients, edict_t *entity, int channel, const char *sample, int volume, float attenuation, int flags, int pitch);
|
void(*SV_StartSound)(int recipients, edict_t *entity, int channel, const char *sample, int volume, float attenuation, int flags, int pitch);
|
||||||
bool(*SV_EmitSound2)(edict_t *entity, IGameClient *receiver, int channel, const char *sample, float volume, float attenuation, int flags, int pitch, int emitFlags, const float *pOrigin);
|
bool(*SV_EmitSound2)(edict_t *entity, IGameClient *receiver, int channel, const char *sample, float volume, float attenuation, int flags, int pitch, int emitFlags, const float *pOrigin);
|
||||||
|
void (* SV_UpdateUserInfo)(IGameClient *pGameClient);
|
||||||
};
|
};
|
||||||
|
|
||||||
class IRehldsApi {
|
class IRehldsApi {
|
||||||
|
@ -283,13 +283,13 @@
|
|||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
<UseDebugLibraries>true</UseDebugLibraries>
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
<PlatformToolset>v120</PlatformToolset>
|
<PlatformToolset>v120_xp</PlatformToolset>
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
<UseDebugLibraries>false</UseDebugLibraries>
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
<PlatformToolset>v120</PlatformToolset>
|
<PlatformToolset>v120_xp</PlatformToolset>
|
||||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
@ -993,7 +993,7 @@ cell AMX_NATIVE_CALL rg_set_user_team(AMX *amx, cell *params)
|
|||||||
pPlayer->m_bHasDefuser = false;
|
pPlayer->m_bHasDefuser = false;
|
||||||
pPlayer->pev->body = 0;
|
pPlayer->pev->body = 0;
|
||||||
|
|
||||||
MESSAGE_BEGIN(MSG_ONE, gmsgStatusIcon, NULL, pPlayer->pev);
|
MESSAGE_BEGIN(MSG_ONE, gmsgStatusIcon, nullptr, pPlayer->pev);
|
||||||
WRITE_BYTE(STATUSICON_HIDE);
|
WRITE_BYTE(STATUSICON_HIDE);
|
||||||
WRITE_STRING("defuser");
|
WRITE_STRING("defuser");
|
||||||
MESSAGE_END();
|
MESSAGE_END();
|
||||||
@ -1552,12 +1552,30 @@ cell AMX_NATIVE_CALL rh_emit_sound2(AMX *amx, cell *params)
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// TODO: should we duplicate documentation for native here and in include?
|
||||||
|
cell AMX_NATIVE_CALL rh_update_user_info(AMX *amx, cell *params)
|
||||||
|
{
|
||||||
|
enum args_e { arg_count, arg_playerEntIndex };
|
||||||
|
|
||||||
|
CBasePlayer *pPlayer = getPrivate<CBasePlayer>(params[arg_playerEntIndex]);
|
||||||
|
if (pPlayer != nullptr && pPlayer->has_disconnected) {
|
||||||
|
MF_LogError(amx, AMX_ERR_NATIVE, "%s: player %i is not connected", __FUNCTION__, params[arg_playerEntIndex]);
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
CAmxArgs args(amx, params);
|
||||||
|
g_RehldsFuncs->SV_UpdateUserInfo(args[arg_playerEntIndex]);
|
||||||
|
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
AMX_NATIVE_INFO Misc_Natives_RH[] =
|
AMX_NATIVE_INFO Misc_Natives_RH[] =
|
||||||
{
|
{
|
||||||
{ "rh_set_mapname", rh_set_mapname },
|
{ "rh_set_mapname", rh_set_mapname },
|
||||||
{ "rh_get_mapname", rh_get_mapname },
|
{ "rh_get_mapname", rh_get_mapname },
|
||||||
{ "rh_reset_mapname", rh_reset_mapname },
|
{ "rh_reset_mapname", rh_reset_mapname },
|
||||||
{ "rh_emit_sound2", rh_emit_sound2 },
|
{ "rh_emit_sound2", rh_emit_sound2 },
|
||||||
|
{ "rh_update_user_info", rh_update_user_info },
|
||||||
|
|
||||||
{ nullptr, nullptr }
|
{ nullptr, nullptr }
|
||||||
};
|
};
|
||||||
|
@ -5,4 +5,4 @@
|
|||||||
|
|
||||||
// reapi version
|
// reapi version
|
||||||
#define REAPI_VERSION_MAJOR 3
|
#define REAPI_VERSION_MAJOR 3
|
||||||
#define REAPI_VERSION_MINOR 0
|
#define REAPI_VERSION_MINOR 1
|
||||||
|
Loading…
x
Reference in New Issue
Block a user