Форум HeroesWorld-а - Показать сообщение отдельно - Скрипты
Тема: Скрипты
Показать сообщение отдельно
#2389
Старый 01.11.2017, 19:50
  #2389
^
Jack_of_shadows
 
Аватар для Jack_of_shadows
📖
Регистрация: 08.09.2013
Сообщения: 510
Выставка наград
Регистрация: 08.09.2013
Сообщения: 510
Выставка наград
По умолчанию
Re: Скрипты

sergejez, триггер нового дня может быть только один, поэтому скрипт не работает. Если отбросить выдачу опыта в несколько шагов, а оставить только логику "каждый день Зехир получает опыт, пропорциональный своему уровню", то можно написать так:
	-- таблица уровней и величины опыта
zehir_lvl_and_exp = {от большего уровня к меньшему, {3,600}, {1,320}};

function NewDay()
  if IsHeroAlive("Zehir") == not nil then
    local zehir_level = GetHeroLevel("Zehir");
    for lvl_and_exp in zehir_lvl_and_exp do
      if zehir_level >= lvl_and_exp[1] then
        ChangeHeroStat("Zehir", STAT_EXPERIENCE, lvl_and_exp[2]);
        break
      end
    end
  end
end

Trigger(NEW_DAY_TRIGGER, "NewDay" );
Jack_of_shadows вне форума
Ответить с цитированием