/* This file is part of SourcePawn SteamWorks. SourcePawn SteamWorks is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, as per version 3 of the License. SourcePawn SteamWorks is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with SourcePawn SteamWorks. If not, see . Author: Kyle Sanderson (KyleS). */ #pragma once #include namespace SourceMod { class IForward; } typedef uint32_t Account_t; class SteamWorksForwards { public: SteamWorksForwards(); ~SteamWorksForwards(); public: void NotifyPawnValidateClient(Account_t parent, Account_t child); private: STEAM_GAMESERVER_CALLBACK(SteamWorksForwards, OnGSClientApprove, GSClientApprove_t, m_CallbackGSClientApprove); STEAM_GAMESERVER_CALLBACK(SteamWorksForwards, OnValidateTicket, ValidateAuthTicketResponse_t, m_CallbackValidateTicket); STEAM_GAMESERVER_CALLBACK(SteamWorksForwards, OnSteamServersConnected, SteamServersConnected_t, m_CallbackSteamConnected); STEAM_GAMESERVER_CALLBACK(SteamWorksForwards, OnSteamServersConnectFailure, SteamServerConnectFailure_t, m_CallbackSteamConnectFailure); STEAM_GAMESERVER_CALLBACK(SteamWorksForwards, OnSteamServersDisconnected, SteamServersDisconnected_t, m_CallbackSteamDisconnected); STEAM_GAMESERVER_CALLBACK(SteamWorksForwards, OnGroupStatusResult, GSClientGroupStatus_t, m_CallbackGroupStatus); STEAM_GAMESERVER_CALLBACK(SteamWorksForwards, OnUserStatsReceived, GSStatsReceived_t, m_CallbackUserStatsReceived); STEAM_GAMESERVER_CALLBACK(SteamWorksForwards, OnUserStatsUnloaded, GSStatsUnloaded_t, m_CallbackUserStatsUnloaded); STEAM_GAMESERVER_CALLBACK(SteamWorksForwards, OnUserStatsStored, GSStatsStored_t, m_CallbackUserStatsStored); private: SourceMod::IForward *pFOVC; /* Forward On Validate Client */ SourceMod::IForward *pFOVC_Old; /* OLD Forward On Validate Client */ SourceMod::IForward *pFOSSC; /* Forward On Steam Servers Connected */ SourceMod::IForward *pFOSSCF; /* Forward On Steam Servers Connect Failure */ SourceMod::IForward *pFOSSD; /* Forward On Steam Servers Disconnected */ SourceMod::IForward *pFOCGS; /* Forward On Client Group Status */ SourceMod::IForward* pFUserStatsReceived; // On User Stats Received SourceMod::IForward* pFUserStatsUnloaded; SourceMod::IForward* pFUserStatsStored; };