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

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

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

Ответ
Страница 61 из 260
 
Опции темы
#901
Старый 11.01.2013, 13:44
  #901
^
RedHeavenHero
 
Аватар для RedHeavenHero
📖
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
По умолчанию
Re: Скрипты

JonnyPНу почему ж. Похитранил героя - сбежал, докупил армию - снова напал. Не обязательно делать задание 'герой должен выжить'
Пусть автор решает.

Heroist, файлы xdb и lua должны быть не в промежуточных папках.
Вот их настоящие пути (не те, что надо писать в функцию)
\Maps\map1.h5m\CombatScript.xdb
\Maps\map1.h5m\CombatScript.lua
__________________
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

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

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
RedHeavenHero вне форума
Ответить с цитированием
#902
Старый 11.01.2013, 14:59
  #902
^
Heroist
 
Аватар для Heroist
📖
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
По умолчанию
Re: Скрипты

Та не, я не настолько не разбираюсь в скриптах)
вот полный путь к файлу:
('/Maps/SingleMissions/NewRandomMap21/CombatScript.xdb#xpointer(/Script)')

Странно, но как будто неправильно указан путь:
SetHeroCombatScript(hero1, '/CombatScript.xdb#xpointer(/Script)')
__________________
Whatever
Whatever
Heroist вне форума
Ответить с цитированием
#903
Старый 11.01.2013, 15:15
  #903
^
RedHeavenHero
 
Аватар для RedHeavenHero
📖
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
По умолчанию
Re: Скрипты

HeroistТа не, я не настолько не разбираюсь в скриптах)
вот полный путь к файлу:
('/Maps/SingleMissions/NewRandomMap21/CombatScript.xdb#xpointer(/Script)')

Странно, но как будто неправильно указан путь:
SetHeroCombatScript(hero1, '/CombatScript.xdb#xpointer(/Script)')
В том то и дело, что полный путь должен быть не /Maps/SingleMissions/NewRandomMap21/CombatScript.xdb#xpointer(/Script), а /CombatScript.xdb#xpointer(/Script), то есть файл xdb не должен находиться в папке вообще.

Вот, как примерно должен выглядеть архив с картой.
Вложения
Тип файла: zip example.zip (422 байт, 61 просмотров)
__________________
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

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

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
RedHeavenHero вне форума
Ответить с цитированием
#904
Старый 11.01.2013, 20:09
  #904
^
Heroist
 
Аватар для Heroist
📖
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
По умолчанию
Re: Скрипты

да, все, наконец, заработало, как надо! Большое спасибо за помощь, сам бы я не разобрался.

Добавлено через 3 часа 59 минут
вот, новый вопрос.
с помощью какой функции можно работать с боевыми существами?
вот вырезка, что я опять забыл и сделал не так?

x11, x22, x33, x44, x55, x66, x77 = GetDefenderCreatures ()

if GetHeroName(hero) == 'Isabell_A1' then
SetUnitManaPoints (hero, 500)
UnitCastAimedSpell(hero, 107, x11)

знаю, что неправильно, а как еще можно узнать условное имя юнитов на поле боя и потом работать с ними?
__________________
Whatever
Whatever
Heroist вне форума
Ответить с цитированием
#905
Старый 12.01.2013, 12:10
  #905
^
RedHeavenHero
 
Аватар для RedHeavenHero
📖
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
По умолчанию
Re: Скрипты

GetDefenderCreatures даёт массив, и перед "=" должна стоять только одна переменная:
	xnn=GetDefenderCreatures()
Обращение к массиву несколько другое: после его имени должны стоять квадратные скобки с номером элемента, который вам нужен.
xnn[0]
xnn[length(xnn)-1]
__________________
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

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

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
RedHeavenHero вне форума
Ответить с цитированием
#906
Старый 12.01.2013, 12:52
  #906
^
Heroist
 
Аватар для Heroist
📖
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
По умолчанию
Re: Скрипты

снова большое спасибо. кстати, в mapscript.lua я узнавал армию героя с несколькими переменными и все работало.
__________________
Whatever
Whatever
Heroist вне форума
Ответить с цитированием
#907
Старый 12.01.2013, 15:15
  #907
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 30680
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 30680
По умолчанию
Re: Скрипты

LUA на самом деле ОЧЕНЬ гибкий язык, там частенько прокатывают конструкции, за которые в любом другом компилятор бы начал ругаться благим матом. Но иногда даже у него бывают пределы, так что лучше стараться делать всё грамотно )
Ment вне форума
Ответить с цитированием
#908
Старый 12.01.2013, 20:00
  #908
^
Heroist
 
Аватар для Heroist
📖
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
По умолчанию
Re: Скрипты

ага, а как мне тогда можно искуственно повлиять на параметры существ прямо в бою? (Ну, скорее всего, это боевая функция)
Например, у многих героев стоит спеца на бонус + существам. Но похожей функции в боевых скриптах, увы, я не нашел.
__________________
Whatever
Whatever
Heroist вне форума
Ответить с цитированием
#909
Старый 12.01.2013, 20:02
  #909
^
RedHeavenHero
 
Аватар для RedHeavenHero
📖
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
По умолчанию
Re: Скрипты

Heroistснова большое спасибо. кстати, в mapscript.lua я узнавал армию героя с несколькими переменными и все работало.
Если вы про GetHeroCreaturesTypes, то, действительно, она вернёт несколько значений, а другие функции возвращают массивы в основном потому, что число значений может быть достаточно большим. Т.о. массивы удобней, если знать как их готовить.
__________________
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

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

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
RedHeavenHero вне форума
Ответить с цитированием
#910
Старый 12.01.2013, 21:47
  #910
^
Heroist
 
Аватар для Heroist
📖
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
По умолчанию
Re: Скрипты

да, я именно про неё. Массивы удобней, никто и не спорит)
__________________
Whatever
Whatever
Heroist вне форума
Ответить с цитированием
#911
Старый 13.01.2013, 13:23
  #911
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 30680
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 30680
По умолчанию
Re: Скрипты

Ну я поглядел скрипты разработчиков (все, кроме тех, что в бонусных миссиях, но там вроде ничего такого не было), такой функции не нашёл. Я бы рекомендовал поэкспериментировать: самому выдумать, как бы такая функция выглядела, если бы была, на основе известных. Кстати, по поводу известных: вот такие я функции нашёл, которых нет в оф. мануале (может, в неофициальных есть, не знаю):
SetUnitManaPoints(кому,сколько) {вроде здесь даже упоминали её}
setATB(кому, позиция ) {вот это правда интересно на мой взгляд, можно реализовывать специализации на существ с её помощью вместо увеличения статов, если просто давать таким образом определённому существу инициативу}
UnitCastGlobalSpell(кому,какой) {это точно уже упоминали}
GetRagePoints( creatureName )
GetRageLevel( creatureName )
playAnimation(кто, название анимации, повторяемость )
На основе этого могу предположить, что нужная функция, если она есть, выглядит так: SetUnitAttack|SetUnitStat|SetAttack|SetStat
Возможно...
Ment вне форума
Ответить с цитированием
#912
Старый 13.01.2013, 19:26
  #912
^
Heroist
 
Аватар для Heroist
📖
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
По умолчанию
Re: Скрипты

я бы поглядел, но дело в том, что lua механика специализаций героев зарыта так, что найти её я пока не смог...а в обычных баттл скриптах у них ничего особенного нет. Хотя, я нашел себе очень интересную фишку - воскршение Николаса, наконец понял, как это по уму делалось в кампании.
__________________
Whatever
Whatever
Heroist вне форума
Ответить с цитированием
#913
Старый 13.01.2013, 19:38
  #913
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 30680
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 30680
По умолчанию
Re: Скрипты

А я не уверен, что это через боевые скрипты реализовано. Иначе бы это где-то было.
Ну попробуйте те четыре варианта, что я перечислил. Что-нибудь может и подойти.
Ment вне форума
Ответить с цитированием
#914
Старый 13.01.2013, 20:27
  #914
^
RedHeavenHero
 
Аватар для RedHeavenHero
📖
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
Регистрация: 10.02.2012
Сообщения: 2378
Выставка наград
По умолчанию
Re: Скрипты

В этом нет смысла. Те функции, что существуют, есть в экзешнике. Других нет. Во всяком случае те, о которых говорил Мент, там нет.
__________________
Карты для Героев Меча и Магии 5
Одиночные: Завеса срывается, Посол, Последний рывок, Эхо Пустоты
Кампания: Империя Единорога

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

Существа NCF
Орден Порядка: 1
Нейтралы: 1 2 3 4
RedHeavenHero вне форума
Ответить с цитированием
#915
Старый 13.01.2013, 20:52
  #915
^
Heroist
 
Аватар для Heroist
📖
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
Регистрация: 16.12.2012
Адрес: Запределье
Сообщения: 14599
Выставка наград
По умолчанию
Re: Скрипты

а как же тогда выйти на этот механизм действия специализаций героев? если, например, функцию get...race (как-то так), реализованную в 3.1, можно попытаться заменить, пользуясь возможностями 3.0 ., то тут у меня даже вариантов на ум не приходит.

Добавлено через 2 минуты
это должно быть что-то типа changemonsterstat
__________________
Whatever
Whatever
Heroist вне форума
Ответить с цитированием
Ответ
Страница 61 из 260


Опции темы



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


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

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