Ôîðóì HeroesWorld-à - Ïîêàçàòü ñîîáùåíèå îòäåëüíî - Ñêðèïòû
Òåìà: Ñêðèïòû
Ïîêàçàòü ñîîáùåíèå îòäåëüíî
#2389
Ñòàðûé 01.11.2017, 19:50
  #2389
^
Jack_of_shadows
 
Àâàòàð äëÿ Jack_of_shadows
📖
Ðåãèñòðàöèÿ: 08.09.2013
Ñîîáùåíèÿ: 527
Âûñòàâêà íàãðàä
Ðåãèñòðàöèÿ: 08.09.2013
Ñîîáùåíèÿ: 527
Âûñòàâêà íàãðàä
Ïî óìîë÷àíèþ
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 âíå ôîðóìà
Îòâåòèòü ñ öèòèðîâàíèåì