Shiroyasha2910, касательно боевых скриптов есть отличное руководство от уважаемого }{0TT@6bI4: боевые скрипты - гайд
А касательно вашей задумки, то сам пока подобного не делал, но как я вижу, стоит попробовать использовать функцию HasHeroSkill(), а результат записать в переменную через функцию SetGameVar() и его получить в файле боевого скрипта через GetGameVar(). Возможно есть и иной способ, но этот мне кажется самым очевидным.
Сообщения от Скрипты
Добрый вечер. Пытаюсь разобраться в боевых скриптах.. пока безуспешно. Видел тут кто-то писал, что есть руководство по боевым скриптам, может кто ссылочку на нее дать? Ибо я не нашел.
Возможно ли, что также, кто поможет сделать необходимый скрипт? Если это реализовать возможно конечно. Идея такова. Битва началась и если у героя вкачено умение "Покровительство Асхи", то на поле боя появятся 3 архангела.
Первое - руководство есть в сообщении от IchGViji)
Второе - такое, наверно, возможно, но по сюжету, мне кажется, неправильно. Покровитель Ангелов - Эльрат, а не Асха) И 3 архангела на начальных порах - это как-то жёстко
Добрый вечер. Переименовал объёкты стандартным скриптом. Однако, почему-то не все объекты переименовались, в х = 2 абсолютно всё. В х = 1,3,4 частично.
Подумал, пожет где-то есть одинаковые наименования объектов, а нет, имена уникальные. Из-за чего подобная проблема могла еще получится?
for i = 118,132 do -- подкрепление в подземелье (первое)
for x = 1,4 do
OverrideObjectTooltipNameAndDescription('PortalP'..x..'_'..i,"Maps/Multiplayer/JoyPatriot/Teks/Portal/ReinforcementsName.txt",
"Maps/Multiplayer/JoyPatriot/Teks/Portal/ReinforcementsBio.txt")
end
end
Добрый вечер. Переименовал объёкты стандартным скриптом. Однако, почему-то не все объекты переименовались, в х = 2 абсолютно всё. В х = 1,3,4 частично.
Подумал, пожет где-то есть одинаковые наименования объектов, а нет, имена уникальные. Из-за чего подобная проблема могла еще получится?
for i = 118,132 do -- подкрепление в подземелье (первое)
for x = 1,4 do
OverrideObjectTooltipNameAndDescription('PortalP'. .x..'_'..i,"Maps/Multiplayer/JoyPatriot/Teks/Portal/ReinforcementsName.txt",
"Maps/Multiplayer/JoyPatriot/Teks/Portal/ReinforcementsBio.txt")
end
end
Также рекомендуемую не прописывать абсолютные пути к файлам карты, лучше использовать функцию GetMapDataPath(). Это избавит вас от необходимости переписывать все пути, если вдруг вы примете решение переименовать карту.
P.S. какие объекты вы переименовываете? Если это существа, попробуйте функцию SetMonsterNames()
Сценарии:
"Холм мертвецов"
"Священное древо"
А консоль ничего не говорит?
Также рекомендуемую не прописывать абсолютные пути к файлам карты, лучше использовать функцию GetMapDataPath(). Это избавит вас от необходимости переписывать все пути, если вдруг вы примете решение переименовать карту.
P.S. какие объекты вы переименовываете? Если это существа, попробуйте функцию SetMonsterNames()
Консоль по этому поводу ничего не пишет.
Консоль по этому поводу ничего не пишет.
Функция OverrideObjectTooltipNameAndDescription работает не со всеми типами объектов, некоторые из них нельзя переименовать через неё, для тех же существ есть отдельная функция в сообщении выше.
Какие объекты вы хотите в принципе переименовать: существа, двеллинги, что-то другое?
Сценарии:
"Холм мертвецов"
"Священное древо"
Функция OverrideObjectTooltipNameAndDescription работает не со всеми типами объектов, некоторые из них нельзя переименовать через неё, для тех же существ есть отдельная функция в сообщении выше.
Какие объекты вы хотите в принципе переименовать: существа, двеллинги, что-то другое?
Это все для одностороннего портала
Это все для одностороннего портала
Сценарии:
"Холм мертвецов"
"Священное древо"
Любопытно🤔... В принципе для односторонних порталов можно перезаписать их наименование и описание. У меня единственное предположение пока, что нужные объекты находятся где-то в другом месте, а вместо них стоят обычные порталы (если вы говорите, что консоль не ругается и абсолютно все объекты имеют разные имена, ведь переименовываются 60 объектов)
Ладненько, допустим, просто еще раз пересмотрю, может при проверке что-то не заметил.
Кто-то еще знает, возможно ли по скриптам изменить команду для героя? То-есть стоит на карте герой 2-го игрока, сделал определенную фигню и по скрипту он стал героем 3-го игрока. Подобное возможно? А то я найти подобное в скриптах пока не смог.
Ладненько, допустим, просто еще раз пересмотрю, может при проверке что-то не заметил.
Кто-то еще знает, возможно ли по скриптам изменить команду для героя? То-есть стоит на карте герой 2-го игрока, сделал определенную фигню и по скрипту он стал героем 3-го игрока. Подобное возможно? А то я найти подобное в скриптах пока не смог.
Всё легко - SetObjectOwner(имягероя, номеркоманды)
Приветствую. Голову уже сломал, как работают SetHeroLootable и IsHeroLootable
Я попробовал IsHeroLootable(“heroname”, nil)
Пробовал SetHeroLootable(“heroname”,nil)
SetHeroLootable(“heroname”, disable)
Все равно как не крути, артефакты у героя отбираются.
Подскажите, что я делаю не так?
Приветствую. Голову уже сломал, как работают SetHeroLootable и IsHeroLootable
Я попробовал IsHeroLootable(“heroname”, nil)
Пробовал SetHeroLootable(“heroname”,nil)
SetHeroLootable(“heroname”, disable)
Все равно как не крути, артефакты у героя отбираются.Подскажите, что я делаю не так?
Если же вы хотите сделать Проверку, используйте IsHeroLootable("ИмяГероя")
Всё просто - если вы хотите сделать так, чтобы артефакты у героя Не отнимались, используйте SetHeroLootable("ИмяГероя", nil)
Если же вы хотите сделать Проверку, используйте IsHeroLootable("ИмяГероя")
Я и пробовал SetHeroLootable, не сработало. У меня два типа битвы, запускающиеся через скрипт, где у героев есть артефакты. Одна битва запускается через StartCombat другая SiegeTown. В обоих случаях при победе над героями, я получаю их лут.
Может надо в функцию отдельно написать? Потому что я просто в общий код карты кинул
Я и пробовал SetHeroLootable, не сработало. У меня два типа битвы, запускающиеся через скрипт, где у героев есть артефакты. Одна битва запускается через StartCombat другая SiegeTown. В обоих случаях при победе над героями, я получаю их лут.Может надо в функцию отдельно написать? Потому что я просто в общий код карты кинул
Поставьте этот скрипт в самое начало своего кода, может, сработает)