Код:
//допустим мы перехватываем функцию SetPlayerPos
stock SetPlayerPosEx(playerid, Float:X,Float:Y,Float:Z) //SetPlayerPosEx - название перехватчика
{
//Функции,которые вам необходимо вызывать вместе с SetPlayerPos
//Допустим записать координаты, для анти-чита на телепорт
return SetPlayerPos(playerid, X,Y,Z); //Вызываем перехватываемую функцию
}
#if defined _ALS_SetPlayerPos // Проверяем, если функция уже перехвачена, то...
#undef SetPlayerPos // Раздефайневаем/удаляем функцию. Также, если вы уже использовали перехват с префиксом _ALS_,то старый перехват тоже удалится
#else // Если функция с префиксом _ALS_ еще не перехвачена...
#define _ALS_SetPlayerPos // Перехватываем функцию
#endif //Заканчиваем перехват
#define SetPlayerPos SetPlayerPosEx // Даем знать, что теперь функция SetPlayerPos будет использоваться, как SetPlayerPosEx
Таким образом мы перехватили функцию SetPlayerPos и теперь при использовании ее - она будет заменяться на SetPlayerPosEx, в исключении тела перехватчика.