Это хорошо, а то иногда просят найти артефакты Сар-Элама (вместо артефактов Сар-Иссы, да и Сар-Илам пишется не так), и черт его знает, что искать. Или что-то вроде этого.
Да, помню такое)
Впервые здесь? Я Роха — провести быструю экскурсию?
Это хорошо, а то иногда просят найти артефакты Сар-Элама (вместо артефактов Сар-Иссы, да и Сар-Илам пишется не так), и черт его знает, что искать. Или что-то вроде этого.
Вообще-то Сар-Элам. И Эльтрат. Это потом уже все "правильно" перевели.
Я лишь говорю об официальном переводе, в т.ч. о том, что используется в шестых героях, а вот Эльрата зовут Elrath даже в ресурсах игры.
while true do
if GetCurrentPlayer()>1 then
if ((GetObjectPosition("имя героя, на которого будут нападать")-GetObjectPosition("имя монстра, который нападёт"))<7) then
MakeHeroInteractWithObject("имя героя","имя монстра");
end;
if ((GetObjectPosition("имя героя, на которого будут нападать")-GetObjectPosition("имя ещё одного монстра"))<7) then
MakeHeroInteractWithObject("имя героя","имя второго монстра");
end;
...
...
end;
sleep(1);
end;
Trigger(NEW_DAY_TRIGGER, 'NewDay');
-- здесь перечисляем всех монстров, которые могут нападать
attacking_mummy_array = {'mummy01', 'mummy02'};
function NewDay()
if(not IsObjectExists('ИМЯ_ГЕРОЯ')) then return end
local hero_x, hero_y, hero_f = GetObjectPosition('ИМЯ_ГЕРОЯ');
for i, mummy in attacking_mummy_array do
if(IsObjectExists(mummy)) then
local monster_x, monster_y, monster_f = GetObjectPosition(mummy);
local diff_x = hero_x - monster_x;
local diff_y = hero_y - monster_y;
if( (sqrt((diff_x * diff_x) + (diff_y * diff_y)) <= 6) and (hero_f == monster_f)) then
MakeHeroInteractWithObject('ИМЯ_ГЕРОЯ', mummy);
break
end
end
end
endif(IsObjectExists(mummy)) dothen же надо.По хорошему конечно несуществующих монстров еще надо из массива выбрасывать.