Выход SA-MP 0.3d
После длительного тестирования RC'шек, наконец состоялся релиз SA-MP 0.3d.
Что нового?🔗︎
Мой перевод официальной темы релиза:
- Поддержка аудио потоков.
- Значительно улучшена производительность.
- Улучшена синхронизация.
- Новые модели, такие как: замена торгового центра, воздушный шар, пожарные шляпы.
- Вы можете свободно передвигаться на объектах, в любом их состоянии.
- Серверы могут удалить любой объект из игры.
- Объекты теперь могут плавно изменять свою ротацию.
- Несколько новых функций, каллбэков для SA-MP серверов.
Новенькое для серверов🔗︎
Стоит отметить отключение функции AllowAdminTeleport
и AllowPlayerTeleport
. Это связанно с появлением нового каллбэка - OnPlayerClickMap
, который вызывается когда игрок кликает по карте, создавая красно-чёрную метку.
Если вы использовали AllowAdminTeleport
или AllowPlayerTeleport
, то я предложу вам этот скрипт:
#define AllowPlayerTeleport(%0,%1) SetPVarInt(%0,"PlayerAllowTeleport",%1)
#define IsPlayerAllowTeleport(%0) GetPVarInt(%0,"PlayerAllowTeleport")
public OnPlayerClickMap(playerid, Float:fX, Float:fY, Float:fZ)
{
if (IsPlayerAdmin(playerid) || IsPlayerAllowTeleport(playerid))
{
SetPlayerPos(playerid,fX,fY,fZ);
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
}
return 1;
}
Также, наконец скриптерам дали возможность контролировать нанесённый и полученный урон с помощью каллбэков OnPlayerGiveDamage
и OnPlayerTakeDamage
. Поэтому, создать античит на патроны не составит труда.
Добавлена возможность воспроизведения аудио-потоков (также добавлена команда /audiomsg, которая включает/выключает сообщение о текущем потоке).
Получение ID вашей цели и удаление любого объекта - всё это присутствует в новой версии SA-MP.
Для удобства, все нововведённые функции и каллбэки списком:
forward OnPlayerClickMap(playerid, Float:fX, Float:fY, Float:fZ);
native GetPlayerTargetPlayer(playerid);
native PlayAudioStreamForPlayer(playerid, url[], Float:posX = 0.0, Float:posY = 0.0, Float:posZ = 0.0, Float:distance = 50.0, usepos = 0);
native StopAudioStreamForPlayer(playerid);
native RemoveBuildingForPlayer(playerid, modelid, Float:fX, Float:fY, Float:fZ, Float:fRadius);
forward OnPlayerTakeDamage(playerid, issuerid, Float:amount, weaponid)
forward OnPlayerGiveDamage(playerid, damagedid, Float:amount, weaponid);
Чтож, скромненько и очень долго(версии 0.3c уже около года), надеюсь в следующих версиях SA-MP будут расширения связанные с GUI и функциями по контролю параметров игрока.