diff --git a/NoSteamManager/scripting/NoSteamManagerFailSafe_RevEmu.sp b/NoSteamManager/scripting/NoSteamManagerFailSafe_RevEmu.sp index 8f510587..772f2ce7 100644 --- a/NoSteamManager/scripting/NoSteamManagerFailSafe_RevEmu.sp +++ b/NoSteamManager/scripting/NoSteamManagerFailSafe_RevEmu.sp @@ -1,7 +1,7 @@ #pragma semicolon 1 #include -#include +#include #pragma newdecls required @@ -46,8 +46,8 @@ public void GetConnectionType(int client, char[] sConnectionType, int iMaxLength { char sConnectionTypeInternal[32]; - RevEmu_PlayerType PlayerType = RevEmu_GetPlayerType(client); - if (PlayerType == ErrorGet) + RevEmu_UserType PlayerType = RevEmu_GetPlayerType(client); + if (PlayerType == Unknown) sConnectionTypeInternal = "Error"; else if (PlayerType == SteamLegitUser) sConnectionTypeInternal = "SteamLegit"; diff --git a/NoSteamManager/scripting/NoSteamManager_RevEmu.sp b/NoSteamManager/scripting/NoSteamManager_RevEmu.sp index d88c703e..2760543f 100644 --- a/NoSteamManager/scripting/NoSteamManager_RevEmu.sp +++ b/NoSteamManager/scripting/NoSteamManager_RevEmu.sp @@ -2,7 +2,7 @@ #include #include -#include +#include #pragma newdecls required @@ -275,8 +275,8 @@ public void GetConnectionType(int client, char[] sConnectionType, int iMaxLength { char sConnectionTypeInternal[32]; - RevEmu_PlayerType PlayerType = RevEmu_GetPlayerType(client); - if (PlayerType == ErrorGet) + RevEmu_UserType PlayerType = RevEmu_GetPlayerType(client); + if (PlayerType == Unknown) sConnectionTypeInternal = "Error"; else if (PlayerType == SteamLegitUser) sConnectionTypeInternal = "SteamLegit"; diff --git a/includes/RevEmuAPI.inc b/includes/RevEmuAPI.inc new file mode 100644 index 00000000..7af822ee --- /dev/null +++ b/includes/RevEmuAPI.inc @@ -0,0 +1,64 @@ +#ifndef _RevEmuAPI_included +#define _RevEmuAPI_included + +enum RevEmu_UserType +{ + Invalid = -1, + SteamLegitUser = 0, + SteamCrackedUser, + RevEmuUser, + RevEmuUserOld, + SettiSRCScanBot, + RevEmuUserV74, + RevEmuUserVeryOld, + UnknownUser, + Steam2Legit, + Steam2Cracked +}; + +/** + * Check if clients usertype is legit. + * + * @param clients The client index. + * + * @return True if valid, false otherwise. + * @error Invalid client index, not connected or fake client. + */ +native bool RevEmu_IsPlayerSteam(int client); + +/** + * Retrieve clients usertype. + * + * @param clients The client index. + * + * @return The clients usertype. + * @error Invalid client index, not connected or fake client. + */ +native RevEmu_UserType RevEmu_GetPlayerType(int client); + + +public Extension __ext_RevEmuAPI = +{ + name = "RevEmuAPI", + file = "RevEmuAPI.ext", +#if defined AUTOLOAD_EXTENSIONS + autoload = 1, +#else + autoload = 0, +#endif +#if defined REQUIRE_EXTENSIONS + required = 1, +#else + required = 0, +#endif +}; + +#if !defined REQUIRE_EXTENSIONS +public __ext_RevEmuAPI_SetNTVOptional() +{ + MarkNativeAsOptional("RevEmu_IsPlayerSteam"); + MarkNativeAsOptional("RevEmu_GetPlayerType"); +} +#endif + +#endif //_RevEmuAPI_included \ No newline at end of file