Форум HeroesWorld-а - Показать сообщение отдельно - Несколько вопросов о скриптах
Показать сообщение отдельно
#2
Старый 23.08.2019, 21:18
  #2
^
Gerter
 
Аватар для Gerter
📖
Регистрация: 16.07.2012
Адрес: Санкт-Петербург
Сообщения: 824
pegn0ly#9113
Выставка наград
Регистрация: 16.07.2012
Адрес: Санкт-Петербург
Сообщения: 824
pegn0ly#9113
Выставка наград
По умолчанию
Re: Несколько вопросов о скриптах

1. если txt файл лежит в основной папке карты(т.е. Maps/SingleMissions/имя_карты), то путь к нему можно указать таким образом:
	GetMapDataPath()..'имя_файла.txt'

2. ну самым простым способом будет повесить на все необходимые объекты OBJECT_CAPTURE_TRIGGER и завести переменную, которая будет хранить число захваченных объектов:

	huts = {таблица_скриптовых_имен_объектов}
huts_captured = 0 -- число захваченных объектов

for i, hut in huts do
  Trigger(OBJECT_CAPTURE_TRIGGER, hut, 'CaptureHut')
end

-- функция, срабатывающая при захвате объекта
function CaptureHut(p_owner, n_owner)
  -- новый владелец объекта - игрок?
  if n_owner == PLAYER_1 then
    -- увеличить число захваченных
    huts_captured = huts_captured + 1
    -- если все захвачены и задание активно
    if huts_captured = length(huts) and GetObjectiveState('имя_задания') == OBJECTIVE_ACTIVE then
      -- завершить задание
      SetObjectiveState('имя_задания', OBJECTIVE_COMPLETED)
    end
  else -- если новый владелец - не игрок?
    if p_owner == PLAYER_1 then
      -- уменьшить число захваченных, если игрок был предыдущим владельцем
      huts_captured = huts_captured - 1
    end
  end
end

3. MoveHeroRealTime() в помощь
4. OpenCircleFog() в помощь

p.s. советую читать мануалы повнимательнее, вопросы максимально банальные и раскрываются в любых гайдах
__________________
Нет войне.
Нет войне.
Gerter вне форума
Ответить с цитированием