Впервые здесь? Я Роха — провести быструю экскурсию?
Ошибка соединенияНеверный запросСтраница устарелаСессия истеклаТребуется входЗапрещеноНе найденоСлишком много запросовВнутренняя ошибка сервераПлохой шлюзСервис недоступенТайм-аут шлюзаВерсия HTTP не поддерживается
Сессия истекла
Ваша сессия истекла. Пожалуйста, войдите снова.
Требуется вход
Для этого нужна учётная запись. Войдите или создайте её — это займёт минуту.
Страница устарела
Токен безопасности отклонён — обычно потому, что страница была открыта слишком долго или вы вошли в систему в другом месте. Ничего не сохранено. Обновите страницу и повторите.
Запрос не выполнен
При обработке вашего запроса возникла проблема.
Проверьте подключение к интернету и попробуйте снова.
Где-то читал, что вроде надо писать не startThread( "replacecreature" ) а startThread( replacecreature) например, попробовал и такой вариант, тоже результата не дало
Точно! Уже забыл, но поправка верная. Про вычитание лучников, учли? Ну, а так попрошу предоставить, что пишет консоль. Как её включить, есть в faq.
Поправил у себя код. Там ещё я sleep пропустил, растяпа.
Впрочем, код, что я написал, имеет слабое звено. Подозреваю, у Вас там не 9999 лучников на самом деле. Ошибку выдаст. Надо сделать проверку точного числа лучников и это точное число вычитать! Если смысл в том, чтобы в армии их больше не было. Но пока проверьте без вычитания лучников просто.
Вроде бы команда RemoveHeroCreatures если убирать больше существ, чем у героя есть, или даже, если убирать тех существ, которых у героя вообще нет. На всякий случай проверил без этой строчки, всё равно результата никакого.
function replacecreature () while (1) do sleep(2); local herocr = GetHeroCreatures( "Sarge", CREATURE_ARCHER ); if herocr >= 1 and GetTownBuildingLevel("cheast_town", TOWN_BUILDING_DWELLING_2 ) == 2 then RemoveHeroCreatures( "Sarge", CREATURE_ARCHER, herocr ); AddHeroCreatures( "Sarge", CREATURE_LONGBOWMAN, herocr ); sleep(1); break end; end; end;
startThread(replacecreature);
Работает замечательно, всем огромное спасибо. Только пара маленьких вопросов, почему == а не =? И что нужно сделать, чтобы скрипт работал постоянно (пока возведено строение), а не один раз? Нужно что-то сделать с этой строчкой "while (1) do", я правильно догадываюсь?
Для присваивания значения одно равно, для операции сравнения -- два.
И что нужно сделать, чтобы скрипт работал постоянно (пока возведено строение), а не один раз?
Каждый день, что ли? Ну, тогда можно поставить Trigger(NEW_DAY_TRIGGER,...). Иначе я Вас не понял. Если надо постоянно заменять лучников на арбалетчиков, просто уберите break из кода 32МеТра.
Если надо постоянно заменять лучников на арбалетчиков, просто уберите break из кода 32МеТра.
Да именно это и надо. Понял. Благодарю.)
Добавлено через 19 часов 28 минут Снова всем доброго времени суток.
Нужно решить ещё одну штуку, возможно ли скриптами или как-то ещё разрешить бесконечное строительство, а не одно строение в день (желательно в конкретном городе, но если не возможно то допустимо и во всех городах)?
Ну и продолжаю я тут экспериментировать со скриптами и заметил такую штуку. Скрипт на добавление/убирание существа при постройке определённого строения (как и другие скрипты я полагаю) срабатывает только после выхода из экрана города. Это создаёт некоторые неудобства для моей задумки.
Возможно ли каким то хитрым способом обойти эту штуку, например задать скриптом быстро выйти из города - войти в город (это впрочем кажется невозможно) но вдруг у кого есть какие другие идеи?
Заранее спасибо за советы, вы мне тут очень помогаете.
Нужно решить ещё одну штуку, возможно ли скриптами или как-то ещё разрешить бесконечное строительство, а не одно строение в день (желательно в конкретном городе, но если не возможно то допустимо и во всех городах)?
Насколько мне известно - такое сделать нельзя, хотя может я просто не все хитрости знаю. Единственно, что на ум приходит - реализовать через кастомное походное заклинание talkbox с вариантами постройки зданий, но для этого довольно массивный скрипт нужен. zahar0z
Возможно ли каким то хитрым способом обойти эту штуку, например задать скриптом быстро выйти из города - войти в город (это впрочем кажется невозможно) но вдруг у кого есть какие другие идеи?
Тут все еще печальнее, в окне города работают только общеигровые функции типа random, sqrt и т.д., да 2 функции, вызывающиеся при найме героя или существ. Так что в городе, как мне кажется, вообще ничего сделать нельзя.
Здравствуйте! Помогите пожалуйста как сделать так, чтобы когда ты своим героем подошел к войску (К примеру ангелу) вылезло сообщение, а потом уже они к тебе присоединились? И еще если можно, чтобы войско (Ангел) сделал действие "Воскрешение" или как он празднует победу в сражение (Поднимая руку вверх)...
А как сделать так ,чтобы герою раз в неделю приходил караван с сообщением.И еще как сделать так,чтобы какое-то строение горело ,к примеру хижина крестьян.
Доброго времени суток. Хотелось бы, чтобы кто-нибудь рассказал о том, как сделать так, чтобы при определенном игровом событии, игроку(1) переходил в собственность другой игрок(2), (конкретно в моем случае - при проигрыше игрока(1)). И как на время жизни игрока(1) сделать игрока(2) неактивным?
Drmax4, в качестве идеи, которую можно попробовать (скрипт получается совсем не простым): 1) Убрать из главных квестов задания наподобие "герой должен выжить". В этом случае при потере всех героев и замков игра не должна выдавать проигрыш. (вроде бы была такая возможность, если я ничего не путаю). Если не получится, то тогда придётся придумывать другое событие для перехода игрока. 2) Отловить событие проигрыша игрока. Например по триггеру окончания боя (COMBAT_RESULTS_TRIGGER) проверять сколько у него в наличии героев (GetPlayerHeroes) и замков (GetObjectOwner для всех замков на карте). 3) Второй игрок в это время может находится с отключенным ИИ (EnableHeroAI), без замков и так, чтобы его ход вообще не показывался (DoNotGiveTurnToPlayerAIIfNoTownsAndActiveHeroes). Или просто выключить ИИ героев, а замок пусть стоит без дела. А ещё можно поместить героев в резерв (в редакторе карт есть такая функция). Тут я не уверен, что именно вы хотите получить на выходе. 4) По нужному событию герои, замки и что нужно ещё переводится в собственность игрока 1 функцией SetObjectOwner.