/* AMX Mod X script. Dproto functions by Zetex. Version: 2.0 (last modified 28.02.2014) WARNING!!! Include works only with dproto >= 0.4.4 */ #if defined _dproto_included #endinput #endif #define _dproto_included // Constants: #define DP_AUTH_NONE 0 #define DP_AUTH_DPROTO 1 #define DP_AUTH_STEAM 2 #define DP_AUTH_STEAMEMU 3 #define DP_AUTH_REVEMU 4 #define DP_AUTH_OLDREVEMU 5 #define DP_AUTH_HLTV 6 #define DP_AUTH_SC2009 7 #define DP_AUTH_AVSMP 8 #define DP_AUTH_SXEI 9 #define DP_AUTH_REVEMU2013 10 // Returns true or false. stock bool:is_user_steam(index) { new dp_provider = get_cvar_pointer("dp_r_id_provider"); if (dp_provider) { server_cmd("dp_clientinfo %d", index); server_exec(); return (get_pcvar_num(dp_provider) == DP_AUTH_STEAM) ? true : false; } return false; } // Returns auth mode. stock get_user_client(index, client[], len) { new dp_provider = get_cvar_pointer("dp_r_id_provider"), dp_protocol = get_cvar_pointer("dp_r_protocol"); if (dp_provider && dp_protocol) { server_cmd("dp_clientinfo %d", index); server_exec(); switch (get_pcvar_num(dp_provider)) { case DP_AUTH_NONE: copy(client, len, "Unknown"); case DP_AUTH_DPROTO: copy(client, len, "Non-Steam"); case DP_AUTH_STEAM: copy(client, len, "Native Steam"); case DP_AUTH_STEAMEMU: copy(client, len, "SteamEmu"); case DP_AUTH_REVEMU: copy(client, len, "RevEmu"); case DP_AUTH_OLDREVEMU: copy(client, len, "Old RevEmu"); case DP_AUTH_HLTV: copy(client, len, "HLTV"); case DP_AUTH_SC2009: copy(client, len, "SteamClient 2009"); case DP_AUTH_AVSMP: copy(client, len, "AVSMP"); case DP_AUTH_SXEI: copy(client, len, "sXe Injected"); case DP_AUTH_REVEMU2013: copy(client, len, "RevEmu 2013"); default: copy(client, len, "Erroneous"); } } } // Returns player protocol. stock get_user_protocol(index) { new dp_protocol = get_cvar_pointer("dp_r_protocol"); if (dp_protocol) { server_cmd("dp_clientinfo %d", index); server_exec(); return get_pcvar_num(dp_protocol); } return 0; }