Уже есть, но в твоей версии подсветочка :3PHP код:
#define function %1(%2) forward %1(%2); public %1(%2)
Вид для печати
Мини-античит на деньги.
PHP код:
enum pInfo:
{
pMoney,
}
new Player[MAX_PLAYERS][pInfo];
PHP код:
#define GiveMoney(%1, %2) Player[%1][pMoney]+=%2; GivePlayerMoney(%1, %2)
UPD//Caypen
Тогда уж
PHP код:
new g_player_money[MAX_PLAYERS];
stock GivePlayerMoneyEx(playerid, money)
{
g_player_money[playerid] += money;
ResetPlayerMoney(playerid);
return GivePlayerMoney(playerid, g_player_money[playerid]);
}
#define GivePlayerMoney(%0,%1) GivePlayerMoneyEx(%0, %1)
#define ReloadPlayerMoney(%0) GivePlayerMoneyEx(%0, 0)
#define SetPlayerMoney(%0,%1) GivePlayerMoneyEx(%0, %1-g_player_money[%0])//Хотя этот макрос вряд ли будет работать правильно
Нажатие кнопки.PHP код:
#define PRESSED(%0) (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
Пример использования:
PHP код:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(PRESSED(KEY_JUMP | KEY_SPRINT) && (GetPlayerState(playerid) != 2)) ClearAnimations(playerid);
return true;
}
Отсюда взял? :D
http://wiki.sa-mp.com/wiki/OnPlayerKeyStateChange
Мой макросец заменить стоит на этот
PHP код:
#define ABS(%0) (%0 < 0) ? (-(%0)) : (%0)