Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • 0
SpiritWolf

Динамическое изменение меток

скажите, возможно ли динамически изменить название, цвет и координаты (последнее не обязательно) меток на карте, маркеров (не те которые на миссиях), не перезапуская сервер? Помогите пожалуйста

Edited by SpiritWolf (see edit history)

Share this post


Link to post
Share on other sites

7 answers to this question

Recommended Posts

  • 0

а зачем их менять? Вообще они из файла загружаются, так что вряд ли наверное.

Share this post


Link to post
Share on other sites



  • 0

а зачем их менять? Вообще они из файла загружаются, так что вряд ли наверное.

Ну фишка у нас такая, с захватом территорий, хотя тогда это лучше сделать с помощью маркеров?

Share this post


Link to post
Share on other sites
  • 0

Ну фишка у нас такая, с захватом территорий, хотя тогда это лучше сделать с помощью маркеров?

Переработай систему миссий, если хочешь. Оттуда возьми маркеры. Думаю обсуждать тут  нечего больше.

Share this post


Link to post
Share on other sites
  • 0

Удаляешь старый маркер, создаешь новый.

Всё просто до безумия, да? А-то о том как это без рестарта сделать.

Share this post


Link to post
Share on other sites
  • 0

Всё просто до безумия, да? А-то о том как это без рестарта сделать.

Для этого не нужен рестарт. Удаляешь метку с помощью https://community.bistudio.com/wiki/deleteMarker а затем создаешь новый с помощью https://community.bistudio.com/wiki/createMarker

Например. Есть у нас условие - метка, круг, радиусом 400м на городе. Наша задача, чтобы при убийстве всех ботов исчезла метка и отспавнилась новая. Я вижу решение данной проблемы путем создания динамического триггера, который будет проверять наличие ботов, но триггеры обычно неплохо грузят систему, поэтому можно заморочиться с циклом. Это будет меньше жрать. При исчезновении ботов, триггер удаляет маркер и создает новый и спавнит ботов и новый триггер. Сам удаляется через 5 секунд. Все просто, я такие миссии клепал очень давно для армы.

Share this post


Link to post
Share on other sites
  • 0

Для этого не нужен рестарт. Удаляешь метку с помощью https://community.bistudio.com/wiki/deleteMarker а затем создаешь новый с помощью https://community.bistudio.com/wiki/createMarker

Например. Есть у нас условие - метка, круг, радиусом 400м на городе. Наша задача, чтобы при убийстве всех ботов исчезла метка и отспавнилась новая. Я вижу решение данной проблемы путем создания динамического триггера, который будет проверять наличие ботов, но триггеры обычно неплохо грузят систему, поэтому можно заморочиться с циклом. Это будет меньше жрать. При исчезновении ботов, триггер удаляет маркер и создает новый и спавнит ботов и новый триггер. Сам удаляется через 5 секунд. Все просто, я такие миссии клепал очень давно для армы.

Клёво. Не знал об этой фиче.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By 123new
      Такого плана вопрос по моддингу на 1.0.
      В моде есть, например, класс:
      class ExpansionGlobalChat с кучей функций
      создаю свой мод, в котором указываю
      modded class ExpansionGlobalChat { override void GlobalChat(CallType type, ref ParamsReadContext ctx, ref PlayerIdentity sender, ref Object target) { super.GlobalChat(type, ctx, sender, target); Param2< string, string > data; if ( !ctx.Read( data ) ) return; if( type == CallType.Server ) { string name = sender.GetName(); string steamid = sender.GetPlainId(); string bisid = sender.GetId(); string idtable = sender.GetPlayerId().ToString(); string log_date_time = ExpansionGetDateTime(); string format = "[" + log_date_time + "] " + "[Chat]" + " " + name + "(steamid=" + steamid + ", bisid=" + bisid + ") " + data.param2; Print(format); } } } и пакую, запускаю сервер. Пишет как на скрине.

      Если modded убираю - пишет что класс уже используется. Что я не так делаю? Как делать правильно? не допираю.
    • By DrTauren
      Собственно, из названия понятно, что в этом гайде мы научимся отключать уровень стамины игрока, отключать усталость

      Инструкция:
      1) Находим файл dta/scripts.pbo и распаковываем его при помощи PBO Manager и копируем только что распакованную папку scripts в корневую папку сервера
      2) Открываем файл scripts/3_Game/constants.c и изменяем этот код под себя:
      const int STAMINA_DRAIN_STANDING_SPRINT_PER_SEC = 5; //в единицах (сколько единиц выносливости отбавляется при ускорении) const int STAMINA_DRAIN_CROUCHED_SPRINT_PER_SEC = 1; //в единицах (сколько единиц выносливости отбавляется при ускорении на корточках) const int STAMINA_DRAIN_PRONE_SPRINT_PER_SEC = 3; //в единицах (сколько единиц выносливости отбавляется при ускорении лёжа) const float STAMINA_DRAIN_HOLD_BREATH = 0.2; //в единицах (сколько единиц выносливости отбавляется при задержке дыхания) const int STAMINA_DRAIN_JUMP = 20; //в единицах (сколько единиц выносливости отбавляется при прыжке) const int STAMINA_DRAIN_MELEE_LIGHT = 5; //в единицах (сколько единиц выносливости отбавляется при лёгком ударе в ближнем бою) const float STAMINA_DRAIN_MELEE_HEAVY = 20; //в единицах (сколько единиц выносливости отбавляется при сильном ударе в ближнем бою) const int STAMINA_DRAIN_MELEE_EVADE = 8; //в единицах (сколько единиц выносливости отбавляется при уклонении) Таким образом мы можем отключить усталость игрока, стамина всегда будет максимальная. Для этого нужно всего лишь установить все параметры на значение 0
       
    • By DrTauren
      Дорогие друзья, Администрацией форума приняты новые правила касательно слива\распространения античита InfiSTAR 

      Теперь коллектив сайта не несёт ответственности за слив продукта, т.к. будет создана специальная тема, в которой будут выкладываться уже слитые версии, найденные в интернете, на других сайтах. Выкладываться они будут абсолютно без изменений. Кстати, все темы касательно InfiSTAR будут удалены с сайта.
      Обращаю внимание что данное решение было принято не мной лично, а всем коллективом S-Platoon.
      Внимание! На форуме все так же запрещено сливать\продавать\выкладывать InfiSTAR, это будет караться баном без предупреждения. 
      В данной теме вы можете изложить своё мнение по этому вопросу, а также предложить другие пути разрешения ситуации
    • By DrTauren
      Собственно из названия темы всё понятно, да и сам скрипт всем давно известен. Он позволяет изменить дальность прорисовки при нажатии ПКМ по биноклю или дальномеру.

      Что вам понадобится:

      Инструкция по установке:
      1) Качаем архив: 
      2) Открываем наш extra_rc.hpp и добавляем туда код:
      class Binocular { class distanceb500m { text = "500 meters"; script = "execVM 'custom\setview\500.sqf'"; }; class distanceb1000m { text = "1000 meters"; script = "execVM 'custom\setview\1000.sqf'"; }; class distanceb1500m { text = "1500 meters"; script = "execVM 'custom\setview\1500.sqf'"; }; class distanceb2000m { text = "2000 meters"; script = "execVM 'custom\setview\2000.sqf'"; }; class distanceb2500m { text = "2500 meters"; script = "execVM 'custom\setview\2500.sqf'"; }; class distanceb3000m { text = "3000 meters"; script = "execVM 'custom\setview\3000.sqf'"; }; class distanceb3500m { text = "3500 meters"; script = "execVM 'custom\setview\3500.sqf'"; }; class distanceb4000m { text = "4000 meters"; script = "execVM 'custom\setview\4000.sqf'"; }; class distanceb4500m { text = "4500 meters"; script = "execVM 'custom\setview\4500.sqf'"; }; class distanceb5000m { text = "5000 meters"; script = "execVM 'custom\setview\5000.sqf'"; }; }; class Binocular_Vector { class distanceb500m { text = "500 meters"; script = "execVM 'custom\setview\500.sqf'"; }; class distanceb1000m { text = "1000 meters"; script = "execVM 'custom\setview\1000.sqf'"; }; class distanceb1500m { text = "1500 meters"; script = "execVM 'custom\setview\1500.sqf'"; }; class distanceb2000m { text = "2000 meters"; script = "execVM 'custom\setview\2000.sqf'"; }; class distanceb2500m { text = "2500 meters"; script = "execVM 'custom\setview\2500.sqf'"; }; class distanceb3000m { text = "3000 meters"; script = "execVM 'custom\setview\3000.sqf'"; }; class distanceb3500m { text = "3500 meters"; script = "execVM 'custom\setview\3500.sqf'"; }; class distanceb4000m { text = "4000 meters"; script = "execVM 'custom\setview\4000.sqf'"; }; class distanceb4500m { text = "4500 meters"; script = "execVM 'custom\setview\4500.sqf'"; }; class distanceb5000m { text = "5000 meters"; script = "execVM 'custom\setview\5000.sqf'"; }; }; }; 3) Копируем папку setview из архива в нашу папку custom, находящуюся в папке миссии

      Вот и всё. Надеюсь кому-то помог 

      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
    • By kenguru74
      Всем привет!
       
      Необходимо поднять солнце на нескольких картах. Вроде положение солнца в полдень прописано в конфиге в аддоне самой карты, так? Смотрел, но и у Тави и у Черно одна и та же latitude.. WTF?
       
      Невозможно играть из-за HDR, а гугля обделался, инфы нет
×
×
  • Create New...

Important Information

By using this site, you automaticly agree to our Guidelines and Privacy Policy.
We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.