#meow 64 Опубликовано 27 февраля, 2019 (изменено) Здравствуйте, мне нужна помощь в создании зон на карте, если выйти за определённые координаты - игрока спавнит. Ранее не работал с зонами, да и на разных форумах информации почти что и нет. Изменено 27 февраля, 2019 пользователем #meow Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
#Storm 29 Опубликовано 27 февраля, 2019 Тебе мало стандартной карты?)) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
16Shadows 101 Опубликовано 27 февраля, 2019 (изменено) Если я правильно понял, и Вам нужно ограничить места, в пределах которых игрок может находиться: Зоны есть в стримере. О них, думаю, и речь. Вам, скорее всего, подойдёт кубоид (параллелепипед): CreateDynamicCuboid(Float:minx, Float:miny, Float:minz, Float:maxx, Float:maxy, Float:maxz, worldid = -1, interiorid = -1, playerid = -1, priority = 0) Обязательные параметры: Float:minx, Float:miny, Float:minz, Float:maxx, Float:maxy, Float:maxz - координаты крайних точек кубоида. Float:minx, Float:miny, Float:minz - левый нижний угол Float:maxx, Float:maxy, Float:maxz - правый верхний minx < maxx, miny < maxy, minz < maxz соответственно Можно опустить: worldid - ID виртуального мира (если оставить -1, то зона будет работать во всех мирах) interiorid - ID интерьера (аналогично с вирт. миром) playerid - ID игрока, для которого работает зона (-1 - все игроки) priority - приоритет (чем выше значение приоритета, тем раньше объект/зона будет рендериться для игрока при рендере объектов. В большинстве случаев можно не менять) Если высота неважна, можно использовать функцию создания прямоугольника: CreateDynamicRectangle(Float:minx, Float:miny, Float:maxx, Float:maxy, worldid = -1, interiorid = -1, playerid = -1, priority = 0); Работаем с зоной Создаём зону new Zone; public OnGameModeInit() { Zone = CreateDynamicCuboid(Float:minx, Float:miny, Float:minz, Float:maxx, Float:maxy, Float:maxz, worldid = -1, interiorid = -1, playerid = -1, priority = 0); } Если у Вас включены теги стримера, то переменной нужно добавить тег STREAMER_TAG_AREA: new STREAMER_TAG_AREA:Zone; Определяем выход из зоны public OnPlayerLeaveDynamicArea(playerid, areaid) { if(Zone == areaid) { //... } } Изменено 27 февраля, 2019 пользователем 16Shadows 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты