Update.
Вид для печати
Update.
Может не будем велосипед изобретать?
http://wiki.sa-mp.com/wiki/Floatabs
Ограничение количества патронов на оружие (автоматическая установка патронов на указанное количество в 3 параметре).
Пример использования:PHP код:
#define WeaponRestrict(%0,%1,%2) \
GetPlayerWeapon(%0) == %1 && GetPlayerAmmo(%0) > %2 && GivePlayerWeapon(%0, %1, -GetPlayerAmmo(%0) + %2)
Автор макроса: LondlemPHP код:
if(WeaponRestrict(playerid, 38, 500))
SendClientMessage(playerid, -1, "Запрещено носить с собой более чем 500 патронов от минигана.");
if(WeaponRestrict(playerid, WEAPON_DEAGLE, 120))
SendClientMessage(playerid, -1, "Запрещено носить с собой более чем 120 патронов от пустынного орла.");
Update.
Update.
Update.
Предлагаем новые (а главное интересные ) макросы.
Удалил один макрос, ибо он не работал.
1.Пример:PHP код:
#define min(%0) (%0*60)
2.PHP код:
AddStaticVehicleEx(420,1062.4160000,-1737.3077000,13.1495000,-90.0000000,6,6,min(15));
Пример:PHP код:
#define RandomEx(%1,%2) (random(%2-%1)+%1)
3.PHP код:
if(RandomEx(0,25) == 3) print("Random равен 3");
PHP код:
#define IsName(%0,%1) (strcmp(PlayerName[%0],%1,true) == 0)
Пример:
P.S: PlayerName замените на свойPHP код:
CMD:test(playerid)
{
if(!IsName(playerid,"Admin_Adminovich") return true;
print("Команда /test");
return true;
}
Проверяет пароль на соответствие. Необходим плагин regex.
Проверяет email на валидность по стандартам RFC. Необходим плагин regex.Код:#define IsValidPassword(%1) regex_match(%1, "^[a-zA-Z0-9_]{8,32}$")
Бесконечное значениеКод:#define IsValidEmail(%1) regex_match(%1, "^[a-zA-Z0-9_]{3,64}@[a-zA-Z0-9-]{2,250}\\.[a-zA-Z]{2,4}$")
Может пригодится кому-нибудь эта байда)Код:#define INFINITE_VALUE 0x7F800000
- - - Добавлено - - -
void в с++ это не функция. Это означает, что функция ничего не возвращает.
Костыли для zcmd
PHP код:
#if defined _zcmd_included
// by Untonyst
#define zcmd::%0(%1)\
CallLocalFunction(#cmd_%0, !"is", %1)
#define ZALT:%0:%1;\
forward cmd_%1(playerid, params[]);\
public cmd_%1(playerid, params[])\
return cmd_%0(playerid, params);
#endif
- Вызов команды с параметрами
PHP код:
zcmd::КОМАНДА(для кого вызываем команду, параметры);
- Альтернативное имя для команды
PHP код:
ZALT:КОМАНДА:АЛЬТЕРНАТИВНОЕ_ИМЯ;