Выход SA-MP 0.3d

2 минут

После длительного тестирования 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 и функциями по контролю параметров игрока.

Страница скачивания