Форум HeroesWorld-а - Показать сообщение отдельно - Скрипты
Тема: Скрипты
Показать сообщение отдельно
#3952
Старый 04.12.2024, 18:31
  #3952
^
Dogenator
 
Аватар для Dogenator
📖
Регистрация: 06.06.2024
Сообщения: 58
Регистрация: 06.06.2024
Сообщения: 58
По умолчанию
Re: Скрипты

Еще не до конца разобрался со всеми возможностями форума и как вставлять сюда части кода... Прошу простить

Ошибок в синтаксисе нет, но тем не менее, не работает. 

Сделал так, как вы сказали, а именно добавил отладочную печать, но в консоли ничего не выходит.

Насчет способа с читами и пропуском хода, читы вроде бы не работают в сетевой игре(А карта именно для сетевой), поэтому этот вариант не подходит
Подставил отладочную печать в функцию первого дня:

function first_day ()
 if GetDate (0) == 1 then         -----Проверка дня недели (понедельник)
  startThread (day_1);
  print("hello,");
 elseif GetDate (0) == 3 then     -----Проверка дня недели (среда)
  startThread (day_3rd);
 end;
end;

Весь скрипт:

function first_day ()
 if GetDate (0) == 1 then         -----Проверка дня недели (понедельник)
  startThread (day_1);
  print("hello,");
 elseif GetDate (0) == 3 then     -----Проверка дня недели (среда)
  startThread (day_3rd);
 end;
end;

function day_1 ()
ChangeHeroStat ('Brem', 7, -999999999);      -----Убираем мувы у игрока 2
end;

function day_3rd ()
if GetTownRace ('player_1') == 1 then     -----Проверка фракции города игрока 1
  sleep(5);
  startThread (zaclyatye_1);
 end;
 if GetTownRace ('player_2') == 1 then    -----Проверка фракции города игрока 2
  sleep(5);
  startThread (zaclyatye_2);
 end;
end;


function zaclyatye_1 ()
  if GetTownRace ('player_2') == 0 then SetObjectPosition('zaclyatye_humy_1', 125, 15);
  elseif GetTownRace ('player_2') == 1 then SetObjectPos('zaclyatye_elfy_1_1', 125, 15);
  elseif GetTownRace ('player_2') == 2 then SetObjectPos('zaclyatye_magi_1', 125, 15);
  elseif GetTownRace ('player_2') == 3 then SetObjectPos('zaclyatye_liga_1', 125, 15);
  elseif GetTownRace ('player_2') == 4 then SetObjectPos('zaclyatye_nekry_1', 125, 15);
  elseif GetTownRace ('player_2') == 5 then SetObjectPos('zaclyatye_demony_1', 125, 15);
  elseif GetTownRace ('player_2') == 6 then SetObjectPos('zaclyatye_gnomy_1', 125, 15);
  elseif GetTownRace ('player_2') == 7 then SetObjectPos('zaclyatye_orki_1', 125, 15);
  end;
 end;


function zaclyatye_2 ()
  if GetTownRace ('player_1') == 0 then SetObjectPosition('zaclyatye_humy_1', 8, 122);
  elseif GetTownRace ('player_1') == 1 then SetObjectPos('zaclyatye_elfy_1_2', 8, 122);
  elseif GetTownRace ('player_1') == 2 then SetObjectPos('zaclyatye_magi_1', 8, 122);
  elseif GetTownRace ('player_1') == 3 then SetObjectPos('zaclyatye_liga_1', 8, 122);
  elseif GetTownRace ('player_1') == 4 then SetObjectPos('zaclyatye_nekry_1', 8, 122);
  elseif GetTownRace ('player_1') == 5 then SetObjectPos('zaclyatye_demony_1', 8, 122);
  elseif GetTownRace ('player_1') == 6 then SetObjectPos('zaclyatye_gnomy_1', 8, 122);
  elseif GetTownRace ('player_1') == 7 then SetObjectPos('zaclyatye_orki_1', 8, 122);
  end;
 end;

Trigger(NEW_DAY_TRIGGER, 'first_day' );

И еще появился вопрос, вот у меня есть два скрипта, которые зависят от Trigger(NEW_DAY_TRIGGER) , но как я вычитал, что при использовании двух функций под один и тот же тригер отменяет вторую функцию. То есть у меня есть ...

function Spawn_army()
....
....
....
Trigger(NEW_DAY_TRIGGER, 'Spawn_army' );

Каким образом можно запустить 2 скрипта так, чтобы они начинались в один день? На примере, в среду - спавн армии в караванах и перенос пака существ на координаты игрока(Эльфу для выставления заклятых)

Dogenator вне форума
Ответить с цитированием