Скрипты - Страница 177 - Форум HeroesWorld-а

Быстрая навигация по основным разделам форума:
Турниры
КАРТЫ
Heroes 6
Heroes 5
Heroes 4
Heroes 3
Heroes 2
Heroes 1
Might&Magic

Герои Меча и Магии 5 - Картостроительство (Редактор карт) В этом разделе можно обсуждать все что касается редактора карт для Heroes of Might and Magic V. Так же здесь обсуждаем картостроительство.

Ответ
Страница 177 из 260
 
Опции темы
#2641
Старый 11.04.2018, 19:03
  #2641
^
AstralLein
 
Аватар для AstralLein
📖
Регистрация: 02.06.2017
Адрес: В Империи Незанхельм.
Сообщения: 3911
Регистрация: 02.06.2017
Адрес: В Империи Незанхельм.
Сообщения: 3911
По умолчанию
Re: Скрипты

Такой вопрос. Имеем это в боевом скрипте:

function AttackerUnitDeath(unit)
SummonCreature(DEFENDER, CREATURE_GHOST, 50 * diff)
end

Какое нужно поставить условие, чтобы призраки не появлялись при потере боевых машин (тележка, баллиста и палатка)? Что-то не соображу. Помогите, плиз.
__________________
Ох это сладостное, поглощающее разум безумие! 

Готовые проекты:


Карты для героев 5:
"Плата за любовь"
"Путь некроманта"
"Темные грани"

Карты для Disciples 3:
"Противостояние"

Проекты в разработке:

Моды для Disciples 3:
"Астельнаир" - разработка возобновлена в мае 2019 год

Карты для героев 5:
"Рок Гримхейма" - в активной разработке
Ох это сладостное, поглощающее разум безумие! 

Готовые проекты:


Карты для героев 5:
"Плата за любовь"
"Путь некроманта"
"Темные грани"

Карты для Disciples 3:
"Противостояние"

Проекты в разработке:

Моды для Disciples 3:
"Астельнаир" - разработка возобновлена в мае 2019 год

Карты для героев 5:
"Рок Гримхейма" - в активной разработке
AstralLein вне форума
Ответить с цитированием
#2642
Старый 11.04.2018, 21:48
  #2642
^
Jack_of_shadows
 
Аватар для Jack_of_shadows
📖
Регистрация: 08.09.2013
Сообщения: 510
Выставка наград
Регистрация: 08.09.2013
Сообщения: 510
Выставка наград
По умолчанию
Re: Скрипты

function AttackerUnitDeath(unit)
Можно проверить тип юнита:
IsCreature(unit);
А ещё там реализованы готовые функции где всё это уже проверяется, можно использовать AttackerCreatureDeath вместо AttackerUnitDeath. Цитата из руководства Новика:
В файле /scripts/combat-startup.lua данный хук заменен на целый набор функций:
void AttackerUnitDeath(unitName)
void AttackerHeroDeath(sUnitName)
void AttackerCreatureDeath(sUnitName)
void AttackerWarMachineDeath(sUnitName)
void AttackerBuildingDeath(sUnitName)
void DefenderUnitDeath(sUnitName)
void DefenderHeroDeath(sUnitName)
void DefenderCreatureDeath(sUnitName)
void DefenderWarMachineDeath(sUnitName)
void DefenderBuildingDeath(sUnitName)
__________________
РПГ-сценарий для HoMM5: Путь героя

ЧаВо по созданию карт для HoMM5: ЧаВо
РПГ-сценарий для HoMM5: Путь героя

ЧаВо по созданию карт для HoMM5: ЧаВо
Jack_of_shadows вне форума
Ответить с цитированием
#2643
Старый 11.04.2018, 22:30
  #2643
^
AstralLein
 
Аватар для AstralLein
📖
Регистрация: 02.06.2017
Адрес: В Империи Незанхельм.
Сообщения: 3911
Регистрация: 02.06.2017
Адрес: В Империи Незанхельм.
Сообщения: 3911
По умолчанию
Re: Скрипты

Спасибо!
__________________
Ох это сладостное, поглощающее разум безумие! 

Готовые проекты:


Карты для героев 5:
"Плата за любовь"
"Путь некроманта"
"Темные грани"

Карты для Disciples 3:
"Противостояние"

Проекты в разработке:

Моды для Disciples 3:
"Астельнаир" - разработка возобновлена в мае 2019 год

Карты для героев 5:
"Рок Гримхейма" - в активной разработке
Ох это сладостное, поглощающее разум безумие! 

Готовые проекты:


Карты для героев 5:
"Плата за любовь"
"Путь некроманта"
"Темные грани"

Карты для Disciples 3:
"Противостояние"

Проекты в разработке:

Моды для Disciples 3:
"Астельнаир" - разработка возобновлена в мае 2019 год

Карты для героев 5:
"Рок Гримхейма" - в активной разработке
AstralLein вне форума
Ответить с цитированием
#2644
Старый 12.04.2018, 14:56
  #2644
^
Gerter
 
Аватар для Gerter
📖
Регистрация: 16.07.2012
Адрес: Санкт-Петербург
Сообщения: 825
pegn0ly#9113
Выставка наград
Регистрация: 16.07.2012
Адрес: Санкт-Петербург
Сообщения: 825
pegn0ly#9113
Выставка наград
По умолчанию
Re: Скрипты

такой вопрос - есть ли возможность узнать через боевой скрипт, было ли совершено какое-либо действие героем или юнитом? все функции из руководств по типу UnitCastGlobalSpell() и т.п. заставляют юнит совершить какое-либо действие, но можно ли узнать было ли совершено такое действие в принципе по ходу боя, не прописывая его явным образом?
__________________
Нет войне.
Нет войне.
Gerter вне форума
Ответить с цитированием
#2645
Старый 19.04.2018, 19:36
  #2645
^
AstralLein
 
Аватар для AstralLein
📖
Регистрация: 02.06.2017
Адрес: В Империи Незанхельм.
Сообщения: 3911
Регистрация: 02.06.2017
Адрес: В Империи Незанхельм.
Сообщения: 3911
По умолчанию
Re: Скрипты

Тут такой вопрос (для финальной версии карты нужно), есть скриптовая команда MoveHero("Straker", GetObjectPosition("PlayerTown")). Она рабочая, но не всегда... порой он остается на месте. К примеру, если у входа в город стоит герой. Можно ли как-то это изменить?

Добавлено через 1 минуту
Мне нужно одно: чтобы герой сломя голову бежал после своего появления на конкретный замок.

Добавлено через 2 минуты
Помнится, в кампании Империя Единорога некромант в первой миссии так себя и ведет. Мне нужно что-то подобное, но:

Герой появляется в определенный день и в замке может сидеть герой.
__________________
Ох это сладостное, поглощающее разум безумие! 

Готовые проекты:


Карты для героев 5:
"Плата за любовь"
"Путь некроманта"
"Темные грани"

Карты для Disciples 3:
"Противостояние"

Проекты в разработке:

Моды для Disciples 3:
"Астельнаир" - разработка возобновлена в мае 2019 год

Карты для героев 5:
"Рок Гримхейма" - в активной разработке
Ох это сладостное, поглощающее разум безумие! 

Готовые проекты:


Карты для героев 5:
"Плата за любовь"
"Путь некроманта"
"Темные грани"

Карты для Disciples 3:
"Противостояние"

Проекты в разработке:

Моды для Disciples 3:
"Астельнаир" - разработка возобновлена в мае 2019 год

Карты для героев 5:
"Рок Гримхейма" - в активной разработке
AstralLein вне форума
Ответить с цитированием
#2646
Старый 24.04.2018, 23:25
  #2646
^
OrnsteinDragonslayer
 
Аватар для OrnsteinDragonslayer
📖
Регистрация: 10.01.2016
Сообщения: 172
Регистрация: 10.01.2016
Сообщения: 172
По умолчанию
Re: Скрипты

Вопрос: я поставил регион у замка игрока 2 и назвал его vyhod1, я хочу чтобы оттуда никто не выходил, посему хочу заблокировать этот регион. Пишу
SetRegionBlocked(vyhod1, true, 2);
Но это не работает и герой гуляет. Что не так?
OrnsteinDragonslayer вне форума
Ответить с цитированием
#2647
Старый 25.04.2018, 08:50
  #2647
^
AstralLein
 
Аватар для AstralLein
📖
Регистрация: 02.06.2017
Адрес: В Империи Незанхельм.
Сообщения: 3911
Регистрация: 02.06.2017
Адрес: В Империи Незанхельм.
Сообщения: 3911
По умолчанию
Re: Скрипты

Вместо true нужно 1.
__________________
Ох это сладостное, поглощающее разум безумие! 

Готовые проекты:


Карты для героев 5:
"Плата за любовь"
"Путь некроманта"
"Темные грани"

Карты для Disciples 3:
"Противостояние"

Проекты в разработке:

Моды для Disciples 3:
"Астельнаир" - разработка возобновлена в мае 2019 год

Карты для героев 5:
"Рок Гримхейма" - в активной разработке
Ох это сладостное, поглощающее разум безумие! 

Готовые проекты:


Карты для героев 5:
"Плата за любовь"
"Путь некроманта"
"Темные грани"

Карты для Disciples 3:
"Противостояние"

Проекты в разработке:

Моды для Disciples 3:
"Астельнаир" - разработка возобновлена в мае 2019 год

Карты для героев 5:
"Рок Гримхейма" - в активной разработке
AstralLein вне форума
Ответить с цитированием
#2648
Старый 25.04.2018, 10:24
  #2648
^
RedHeavenHero
 
Аватар для RedHeavenHero
📖
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
По умолчанию
Re: Скрипты

OrnsteinDragonslayerВопрос: я поставил регион у замка игрока 2 и назвал его vyhod1, я хочу чтобы оттуда никто не выходил, посему хочу заблокировать этот регион. Пишу
SetRegionBlocked(vyhod1, true, 2);
Но это не работает и герой гуляет. Что не так?
Кавычек вокруг имени региона не хватает.
__________________
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
RedHeavenHero вне форума
Ответить с цитированием
#2649
Старый 25.04.2018, 11:46
  #2649
^
Годрикова впадина
📖
Регистрация: 09.01.2018
Сообщения: 139
Регистрация: 09.01.2018
Сообщения: 139
По умолчанию
Re: Скрипты

Можно ли как то сделать так, что бы функция работала каждую неделю не переписывая код много раз с переменной?
Код:
SetObjectEnabled("tav", nil)
function Army(heroname)
MessageBox("Maps/SingleMissions/Revenge of the/qwe.txt")
QuestionBox("Maps/SingleMissions/Revenge of the/rtyui.txt", "arm")
Trigger(OBJECT_TOUCH_TRIGGER, "tav", "nil")
end

function arm(heroname)
sleep(2)
gold= GetPlayerResource(1, 6)
sleep(1)
if gold<6000 then
sleep(1)
MessageBox("Maps/SingleMissions/Revenge of the/rtyu.txt")
else
gold= GetPlayerResource(1, 6)
sleep(1)
if gold>=6000 then
SetPlayerResource(1, GOLD, gold - 6000)
AddHeroCreatures("Godric", 2, 80)
MessageBox("Maps/SingleMissions/Revenge of the/aer.txt")
end
end
end
Годрикова впадина вне форума
Ответить с цитированием
#2650
Старый 27.04.2018, 10:41
  #2650
^
DarkLordax
 
Аватар для DarkLordax
📖
Регистрация: 01.06.2017
Сообщения: 70
Регистрация: 01.06.2017
Сообщения: 70
По умолчанию
Re: Скрипты

Годрикова впадинаМожно ли как то сделать так, что бы функция работала каждую неделю не переписывая код много раз с переменной?
Код:
SetObjectEnabled("tav", nil)
function Army(heroname)
MessageBox("Maps/SingleMissions/Revenge of the/qwe.txt")
QuestionBox("Maps/SingleMissions/Revenge of the/rtyui.txt", "arm")
Trigger(OBJECT_TOUCH_TRIGGER, "tav", "nil")
end

function arm(heroname)
sleep(2)
gold= GetPlayerResource(1, 6)
sleep(1)
if gold<6000 then
sleep(1)
MessageBox("Maps/SingleMissions/Revenge of the/rtyu.txt")
else
gold= GetPlayerResource(1, 6)
sleep(1)
if gold>=6000 then
SetPlayerResource(1, GOLD, gold - 6000)
AddHeroCreatures("Godric", 2, 80)
MessageBox("Maps/SingleMissions/Revenge of the/aer.txt")
end
end
end
Конечно можно просто триггер обнулять не надо
__________________
Кампания в разработке:

Название не придумал

Выполнено 5%
Кампания в разработке:

Название не придумал

Выполнено 5%
DarkLordax вне форума
Ответить с цитированием
#2651
Старый 27.04.2018, 11:52
  #2651
^
Годрикова впадина
📖
Регистрация: 09.01.2018
Сообщения: 139
Регистрация: 09.01.2018
Сообщения: 139
По умолчанию
Re: Скрипты

Всмысли?
Сейчас стоит OBJECT_TOUCH_TRIGGER, надо просто что бы функция снова была доступна каждую неделю.
Годрикова впадина вне форума
Ответить с цитированием
#2652
Старый 28.04.2018, 12:57
  #2652
^
DarkLordax
 
Аватар для DarkLordax
📖
Регистрация: 01.06.2017
Сообщения: 70
Регистрация: 01.06.2017
Сообщения: 70
По умолчанию
Re: Скрипты

Годрикова впадинаВсмысли?
Сейчас стоит OBJECT_TOUCH_TRIGGER, надо просто что бы функция снова была доступна каждую неделю.
Блин ну тогда...
проверку дня сделай на понедельник или другой нужный день
__________________
Кампания в разработке:

Название не придумал

Выполнено 5%
Кампания в разработке:

Название не придумал

Выполнено 5%
DarkLordax вне форума
Ответить с цитированием
#2653
Старый 29.04.2018, 11:57
  #2653
^
Kavalar
 
Аватар для Kavalar
📖
Регистрация: 29.04.2018
Сообщения: 6
Регистрация: 29.04.2018
Сообщения: 6
По умолчанию
Re: Скрипты

Gerterтакой вопрос - есть ли возможность узнать через боевой скрипт, было ли совершено какое-либо действие героем или юнитом? все функции из руководств по типу UnitCastGlobalSpell() и т.п. заставляют юнит совершить какое-либо действие, но можно ли узнать было ли совершено такое действие в принципе по ходу боя, не прописывая его явным образом?
Вот кстати тоже интересует данный вопрос. Насколько широкие возможности у комбат скриптов? И можно ли как то взаимодействовать с комбат логом? Например отслеживать и заносить походу боя определенные данные в переменную(количество потраченной маны, или сколько урона определенным заклинанием нанес).
Возможно ли это в принципе на уровне интерпретируемых скриптов? Или это все это скрыто без какой либо возможности взаимодействия?
Kavalar вне форума
Ответить с цитированием
#2654
Старый 29.04.2018, 12:44
  #2654
^
RedHeavenHero
 
Аватар для RedHeavenHero
📖
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
По умолчанию
Re: Скрипты

KavalarВот кстати тоже интересует данный вопрос. Насколько широкие возможности у комбат скриптов? И можно ли как то взаимодействовать с комбат логом? Например отслеживать и заносить походу боя определенные данные в переменную(количество потраченной маны, или сколько урона определенным заклинанием нанес).
Возможно ли это в принципе на уровне интерпретируемых скриптов? Или это все это скрыто без какой либо возможности взаимодействия?
1. Лог недоступен для скриптов
2. Количество потраченной маны можно отслеживать через функцию GetUnitManaPoints.
3. Косвенно можно определить, сколько существ убил герой каким-то заклинанием (само заклинание определить вряд ли удастся), если замерить ману и количество существ в каждом отряде до и после сотворения заклинания.
__________________
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
RedHeavenHero вне форума
Ответить с цитированием
#2655
Старый 29.04.2018, 13:24
  #2655
^
Kavalar
 
Аватар для Kavalar
📖
Регистрация: 29.04.2018
Сообщения: 6
Регистрация: 29.04.2018
Сообщения: 6
По умолчанию
Re: Скрипты

RedHeavenHero1. Лог недоступен для скриптов
2. Количество потраченной маны можно отслеживать через функцию GetUnitManaPoints.
3. Косвенно можно определить, сколько существ убил герой каким-то заклинанием (само заклинание определить вряд ли удастся), если замерить ману и количество существ в каждом отряде до и после сотворения заклинания.
То есть что-то вроде, если мана героя уменьшилась проверяем стеки врага?

Появилась идея по идентификации заклинания, например извлекать до начала боя его наличие у героя в книжке, и считать аналитически с поправкой на SP и бонусы от школ сколько урона оно должно наносить. Потом просто провести сравнение, и если сошлось количество затрачиваемой маны и урон то записать. Как думаете может сработать?
Единственная проблема правда это учет резиста, и если существ еще можно проанализировать то как быть с геройскими бонусами, или бонусами от артефактов пока непонятно.
Kavalar вне форума
Ответить с цитированием
Ответ
Страница 177 из 260


Опции темы



Часовой пояс GMT +4, время: 00:49.


vBulletin v3.5.0, Copyright ©2000-2024, Jelsoft Enterprises Ltd. (Русский)

Яндекс цитирование    Top.Mail.Ru