Перейти к содержанию
#262
Победитель
А можно немного подробнее объяснить :o?

Поставил вместо "~1" "2", всё равно ничего не происходит. Потом сделал так: при захвате одного города, проверяется, не захвачен ли второй. Теперь, при захвате двух городов игра вылетает :D. С тем квестом тоже непонятно... Видимо, придётся переделывать.
значит так запускаю цикл: (также у меня здесь проверка на наличие монстра на карте, если его нету - миссия завалена)

while 1 do
if atonce_5==1 then
startThread (lost_PL4);
if IsObjectExists('Lelliana')==nil then
SetObjectiveState ('obj_7',OBJECTIVE_FAILED);
startThread(gameover);
end;
end;
sleep (5);
end;

этой функцией проверяем состояние игрока 4, т.е. тут если PL_4 в игре не участвует, то задание 'obj_7' выполняется
function lost_PL4()
if GetPlayerState(PLAYER_4)~=1 then
atonce_5=99;
SetObjectiveState ('obj_7',OBJECTIVE_COMPLETED);
end;
end;

ну и еще при активации задания нужно присвоить
atonce_5=1; а после выполнения задания atonce_5=99; чтоб цикл не затармаживал игру.
Попробуй еще сделать новое задание во вкладке Objectives, не изменяя параметры (сделать только name, description, OBJECTIVE_KIND_MANUAL) , и проверь как оно себя вести будет в случае его выполнения (будет ли миссия сразу выиграна, без выполнения других заданий)

Статистика

Приветствуем новейшего участника: Emil

Сейчас на сайте 2 пользователей 1060 гостей