Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
  • Нужна помощь?

    Создайте тему в соответствующем разделе
    Не нужно писать всё в чат!
  • Загляните на торговую площадку

    Там вы можете купить
    всё что касается игровых серверов
  • Не хотите бан?

    Пожалуйста, ознакомьтесь с нашими правилами
    Не нарушайте порядок!
  • Продаёте или покупаете?

    Пользуйтесь услугами гаранта
    Мы сделаем вашу сделку безопасной
BorizzK

DAYZ enScript (вопросы, ответы)

Рекомендованные сообщения

Всем привет.

Вопрос: Есть ли функция в DayZ которая позволит по координатам получить объект на карте (статический или динамический) с возвратом в какой-либо тип?

 

Смысл вопроса: Есть координаты:  "x z y", в этой точке есть объект (здание/забор/лопата/оружие/гараж/техника и т.д.), объект может быть частью карты (статический объект) или объект игрока/лута (динамический объект). Задача получить этот объект в ссылку и к примеру удалить его с карты.


Цимус вопроса: удаление стандартных построек с карты (облегчение строительства к примеру или удаление ненужного через миссию).

Кто вообще не понял вопроса, то примерный смысл:
 

 Object obj = GetGame().НайтиОбъект("x y z");

if (obj != null)

{

      switch (obj.Gettype())

      {

            case "Land_SomeBuilding":

                  // чёт творим, к примеру удаляем
            break;

            case "Land_Garage_Row_Small": // закроем двери

                  House house = House.Cast(obj);

                  house.CloseDoor(0);
                  house.CloseDoor(1);
                  house.CloseDoor(2);

            break;
            ...

      }

}

      

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах



делать тебе надо так, если ты точные координаты постройки знаешь и ее id:

1. от точки в малом радиуcе сканируешь все объекты
2. выбираешь нужный из списка найденных
3. играешься с тем. что тебе надо над ним сделать.
 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

123new griha41 Обьекты расставленные на карте движком с помощью "картообустраивающего модуля" который берет здания/обьекты из файла mapgroupcluster.xml  (и его нумерованных продолжений) и mapgrouppos.xml - УДАЛИТЬ НЕЛЬЗЯ. Только убрать из этих файлов или закомментировать...

Изменено пользователем BorizzK (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

griha41 По существу

бегло

 

vector positin = "2040 23 9070";			
array<Object> nearest_objects = new array<Object>;
array<CargoBase> proxy_cargos = new array<CargoBase>;
GetGame().GetObjectsAtPosition(position , 5, nearest_objects, proxy_cargos );
for (int i = 0; i < nearest_objects.Count(); i++)
{
	if (nearest_objects[i].IsBuilding())
	{
       Building building = Building.Cast(nearest_objects[i])
       if (building)
       {
		   int compIndex = 256;
		   for ( int j = 0; j < compIndex; j++ )
		   {
			   int doorIndex = building.GetDoorIndex(j);
			   if (doorIndex != -1) 
			   {
				   if (building.IsDoorOpen(j)) building.CloseDoor(j);
			   }
		   }
       }
    }   
                                        
}

Ищем здание в заданной координате в радиусе 5метров и закрываем у него все открытые двери если они открыты

Изменено пользователем BorizzK (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

griha41 Добавлю

почему int compIndex = 256;

поскольку хрен знает сколько у дома компонентов и какие из них точно двери я решил делать так
ибо в 1.01 еще была еще пара домиков где двери были под номерами 10, 11 и 201 и чот там еще
почему - фиг знает

с тех пор я ничего не менял

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

BorizzK hide есть такое в скриптах. хз сработает ли на объекты карты, но из скрипта то более приемлимо чем с xml

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

BorizzK Ну как то так...

Правда это локальная функция, - видимо там совсем обожратые работают, и не доделали ее для МП, так что только с клиентской стороны... Ну а если всем с сервера, то - список, синхрон, рассылка через РПС.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У меня два вопроса:

1) Как удалить определенный лут из инвентаря персонажей, ящиков, тачек и т.д. Хочу запретить определенный лут всем игрокам, кроме админов

 

2) Как в mpmissipn в ini.c считывать данные с текстовых файлов. Хочу туда запихнуть список uid

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

fedotovyasha Вы для начала научитесь писать грамотно

По теме

по Вашему вопросу все есть на сервере  - вот прям с примерами и тд итп

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

BorizzK А что я не так написал?

 

2 вопрос нашёл. Первый нет

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
29.11.2019 в 21:23, fedotovyasha сказал:

BorizzK А что я не так написал?

 

2 вопрос нашёл. Первый нет

а на первый вопрос ответ один - писать свой скрипт, который в цыкле работы сервера будет шерстить у всех игроков их инвентари и удалять нужные вам шмотки, либо скидывать на землю. Если на клиенте игры, то еще проще, просто искать в инвентаре игрока и скидывать на землю. Второй вариант граммотнее, т.к. нагрузки на сервер будет меньше.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Я так понял, нужно будет в .pbo заворачивать, если второй вариант?

 

Как мне смотреть инвентарь игрока и выкинуть вещь из него?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
59 минут назад, fedotovyasha сказал:

Я так понял, нужно будет в .pbo заворачивать, если второй вариант?

 

Как мне смотреть инвентарь игрока и выкинуть вещь из него?

верно насчет пбо. А как - ответ простой. Писать свою функцию. которая будет просмативать у каждой шмотки на игроке и у каждой шмотки, которая внутри любой шмотки у игрока его содержимое, а именно вложенные вещи, аттачменты. И при обнаружении нужного будет выдавать true или false. Разумеется это уже цикл в цикле, это сложно, но реализуемо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
1 час назад, 123new сказал:

верно насчет пбо. А как - ответ простой. Писать свою функцию. которая будет просмативать у каждой шмотки на игроке и у каждой шмотки, которая внутри любой шмотки у игрока его содержимое, а именно вложенные вещи, аттачменты. И при обнаружении нужного будет выдавать true или false. Разумеется это уже цикл в цикле, это сложно, но реализуемо.

Спасибо, буду пробовать)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Столько прочитал, аж мозг закипел. В итоге подскажите скрипт, как создать зону? если можно полное описание

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
3 часа назад, xeks1 сказал:

Столько прочитал, аж мозг закипел. В итоге подскажите скрипт, как создать зону? если можно полное описание

Глянь сюда 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вот сижу думаю... как в этом языке сравнить 2 даты....

Если я укажу String 01.02.2020.

Потом соберу текущую дату через GetYearMonthDay получу Integer дня, месяца и года.

 

И дальше нужно приведение Стринг к Инт...

Либо посравнивать содержимое строк.

Либо может есть "классический" метод получения даты через long тип, от 01.01.1970

Где вы вообще получаете справку по данному языку? )

Он похож чем то на С/С++, но это не он.

 

Задача, ограничить действие скрипта после определенной даты (String).

 

Заранее, огромное спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
17 часов назад, VDT сказал:

Вот сижу думаю... как в этом языке сравнить 2 даты....

Если я укажу String 01.02.2020.

Потом соберу текущую дату через GetYearMonthDay получу Integer дня, месяца и года.

 

И дальше нужно приведение Стринг к Инт...

Либо посравнивать содержимое строк.

Либо может есть "классический" метод получения даты через long тип, от 01.01.1970

Где вы вообще получаете справку по данному языку? )

Он похож чем то на С/С++, но это не он.

 

Задача, ограничить действие скрипта после определенной даты (String).

 

Заранее, огромное спасибо.

Легко

 

bool IsExpirationDate()
{
	int year, month, day;
	GetYearMonthDay(year, month, day);
	if (year >= 2020) //2020 и более
		if (month >= 2) //февраль и дале
			if (day > 0) //Тут понятно
				return true; //Дата истечения срока
	return false; //Не время ишшо
}

 

Язык этот C# по большому счету
Кое-что - основное есть в вики бегемотов
Остальное - стандартные скрипты - вот прям как примеры

Ну и C# плюс методы многочасового тыка, логгирования и тд итп

Изменено пользователем BorizzK (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

 

20 часов назад, BorizzK сказал:

Легко

 


bool IsExpirationDate()
{
	int year, month, day;
	GetYearMonthDay(year, month, day);
	if (year >= 2020) //2020 и более
		if (month >= 2) //февраль и дале
			if (day > 0) //Тут понятно
				return true; //Дата истечения срока
	return false; //Не время ишшо
}

 

Язык этот C# по большому счету
Кое-что - основное есть в вики бегемотов
Остальное - стандартные скрипты - вот прям как примеры

Ну и C# плюс методы многочасового тыка, логгирования и тд итп

 

Благодарю... Сделал так.

 

if (( day_GetDateTime() >= sets_day_active.ToInt() ) && (month_GetDateTime()==sets_moth_active.ToInt()))
{
Закончился срок
}

Где функция это текущая дата, а переменные - заданная (до которого работать).

А так, я видимо (судя по всему) ваши скрипты и дописываю )))))

Точка спавна с лутом (со сроком давности) да КиллФид (со счетчиком смертей (глобал и сессионно).

Изменено пользователем VDT (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Точка спавна с лутом да КиллФид
Понятно
 

Статичная что ли?

Изменено пользователем BorizzK (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Похожие публикации

    • Автор: RedWoodGamer
      Ищу мододела который напишет мод на поиск предметов в ванильной фурнитуре с возможностью конфигурации лутабельных объектов и лута внутри них, а так-же КД на лутаемый объект (Простыми словами чтобы нельзя было лутать один и тот же объект двум игрокам одновременно, если один залутал, включается определённый таймер и второй игрок может залутать его через прошедшее время, либо же завязать это время на рестарт сервера.)
      Бюджет есть, оценивайте свою работу и предлагайте цену, кто не хочет в комментариях вот Discord : RedWood#6323
    • Автор: CubeIn
      Приветствую друзья, возникла неприятная ошибка.
      Подписал все ключи через DS Utils, вставил ключ в северную часть, но все равно при заходе на сервер пишет данную ошибку.
      Client contains PBO which is not part of server data
       
    • Автор: CubeIn
      Есть ли у кого ни будь шаблон или инструкция как создать свой шеврон?
      Нашел видео от Фидова, но ссылка на шаблон не действительна

      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
  • Наш выбор

×
×
  • Создать...

Важная информация

Используя этот сайт, вы автоматически обязуетесь соблюдать наши Правила и Политика конфиденциальности.
Чтобы сделать этот веб-сайт лучше, мы разместили cookies на вашем устройстве. Вы можете изменить свои настройки cookies, в противном случае мы будем считать, что вы согласны с этим.