• Страница 2 из 3
  • «
  • 1
  • 2
  • 3
  • »
Форум » Мастерская » В помощь картоделу » Вопросы и ответы » Некоторые стандартные вопросы
Некоторые стандартные вопросы
KazaK
Среда, 27.04.2016, 12:17
Пост №: 16
как ПРАВИЛЬНО прописать снаряжение в ящик чтобы работало в МП? Прописываю в инит ящика, например, так:

Но большинство игроков не может что-либо взять из ящика из того что там прописано. В одиночной все работает, но в МП вот такой гемор.

 
KazaK
Среда, 27.04.2016, 20:28
Пост №: 17
Morkontar спасибо за подсказку! Все работает 100%.
 
Kurt
Воскресенье, 22.05.2016, 20:09
Пост №: 18
Мне приходит на ум только какая-то такая махинация

Код
_obj = (_this select 0);
_obj addAction [
       "<t color='#ffe400'>Обыскать труп</t>",
        "lootitem\loots.sqf",
        "loot1",
        0,
        false,
        true,
        "",
        format ["!(alive (%1 call BIS_fnc_objectFromNetId))", _obj call BIS_fnc_netId];
];


Но легче добавить action игроку, с условием, что cursorTarger это зомби
Сообщение отредактировал Kurt212 - Воскресенье, 22.05.2016, 20:09

 
Kurt
Воскресенье, 22.05.2016, 21:34
Пост №: 19
Тогда можно другой хэндлер поставить

Код
class EventHandlers {
   killed = "(_this select 0) addAction ['<t color='#ffe400'>Обыскать труп</t>', 'art\loots.sqf','loot'];";
  };

Только тогда надо поколдовать над global exec'ом, потому что addAction будет локальный.
Проще всё таки делать это в миссии, а не в моде)
Сообщение отредактировал Kurt212 - Воскресенье, 22.05.2016, 21:36

 
Kurt
Воскресенье, 22.05.2016, 21:38
Пост №: 20
Цитата Kurt212 ()
Мне приходит на ум только какая-то такая махинация

Так мой пример же будет работать через EventHandlers, нет?
Сообщение отредактировал Kurt212 - Воскресенье, 22.05.2016, 21:39

 
Kurt
Понедельник, 23.05.2016, 21:27
Пост №: 21
Зачем такие сложности? Зачем в мод такое вставлять?
Я предлагаю делать всё легче
В ините игрока:

Код
Zombie_targets = ["B_Soldier_F"]; // тут все классы зомби, которые хотим использовать

Zombie_Loot_Act = player addAction [
         "<t color='#ffe400'>Обыскать труп</t>",
        {
           _t = cursorTarget;
           if !(isNull _t) then {
                 _t setVariable ["Zombie_looted", true, true];
                 [_t , "loot1"] execVM "lootitem\loots.sqf"; // тут можно поменять путь и файл
            };
        },
        "", // тут можно поменять аргумент
        0,
        false,
        true,
        "",
        // А вот то, что ниже лучше не менять
        // Только если, например, не надо, чтобы экшен пропадал после одного использования
        "    (typeOf cursorTarget) in Zombie_targets
        && !(alive cursorTarget)
        && !(cursorTarget getVariable ['Zombie_looted', false])"
];


Один экшен для игрока лучше, чем куча экшенов для зомби. И не надо никаких хэндлеров для заспавненных зомби)
Сообщение отредактировал Kurt212 - Вторник, 24.05.2016, 16:19

 
DmitRich
Понедельник, 06.06.2016, 20:12
Пост №: 22
Как убрать отображение ящиков с боеприпасами на карте? Как я понимаю к кому они ближе тот и хозяин?


Код
this setVariable ["WMT_Side", sideLogic];
this setVariable ["WMT_Side", civilian];

и прочее уже не помогает. Только пустые ящики не отображаются
Сообщение отредактировал DmitRich - Понедельник, 06.06.2016, 21:04
Прикрепления: 0509380.jpg (56.8 Kb)

 
Dell
Понедельник, 06.06.2016, 22:28
Пост №: 23
Цитата Morkontar ()
Как я понимаю нужно будет рисовать скрипт, который будет добавлять этот хендлер классу зомби.

Скрипт нашёл, только переписать под вашу карту и под ваши моды, но это детали, которые необходимо обсуждать лично. Но работоспособность его неизвестна, хотел проверить, но нужна миссия свежую на проверку. Данный скрипт сам генерирует их лут, место появление, частоту и т.д. Вопрос, можете предоставить миссию свежую, на испытание?

 
Yakir
Понедельник, 28.11.2016, 19:53
Пост №: 24
Пользователь
Одиночка
Нужно ли ставить модуль TFAR, чтобы выдавались рации или все необходимое будет выдано автоматически?
 
Vogel
Понедельник, 28.11.2016, 22:53
Пост №: 25
Всё будет выдано автоматически.
Модуль на данный момент вообще не работает :с

 
Gagarin
Четверг, 12.10.2017, 12:52
Пост №: 26
Подскажите что прописать в триггере, чтобы через определенное время после старта миссии определенному Юниту выскакивало сообщение hint.
 
Kurt
Четверг, 12.10.2017, 13:56
Пост №: 27
В редакторе юниту ставите переменную. Например

Код
myUnit
В триггере пишите

Код
0 = [] spawn {
    if (player == myUnit) then {
        sleep 10; // подождать 10 секунд
        hint "Text";
    };
};

Только уберите комментарий "// подождать 10 секунд" . А то арма будет ругаться.

 
KazaK
Понедельник, 08.01.2018, 14:12
Пост №: 28
Нашел вот такой скрипт:

активация: 
Код
[имя_юнита,"имя_маркера"] exec "gomarker.sqs"


и сам скрипт:
Код
_man = _this select 0
_marker = _this select 1
#next
_marker setmarkerpos getpos _man
? (alive _man) : goto "next"

Но как сделать так чтобы маркер обновлялся через каждые 60 сек?
Сообщение отредактировал KazaK - Понедельник, 08.01.2018, 14:33

 
Kurt
Понедельник, 08.01.2018, 15:01
Пост №: 29
Насколько я помню SQS нужно добавить, 
Код
~ <количество секунд>
Чтобы получилось

Код
_man = _this select 0
_marker = _this select 1
#next
_marker setmarkerpos getpos _man
~60
? (alive _man) : goto "next"

 
KazaK
Понедельник, 08.01.2018, 18:18
Пост №: 30
Kurt, работает. Спасибо!
 
Форум » Мастерская » В помощь картоделу » Вопросы и ответы » Некоторые стандартные вопросы
  • Страница 2 из 3
  • «
  • 1
  • 2
  • 3
  • »
Поиск: