Сообщения от Скрипты
StartCutScene
StartCutScene — запускает ролик.
Синтаксис
StartDialogScene(cutSceneName, callback = "", saveName = "");
Описание
Функция запускает заданный ролик.
cutSceneName — указатель на ролик в базе ресурсов
callback — имя функции, которая будет вызвана после проигрывания диалоговой сцены
saveName — имя save-файла (см. команду Save) который будет сделан перед диалоговой
сценой.
StartDialogScene
StartDialogScene — запускает диалоговую сцену.
Синтаксис
StartDialogScene(dialogSceneName, callback = "", saveName = "");
Описание
Функция запускает заданную диалоговую сцену.
dialogSceneName — указатель на диалоговую сцену в базе ресурсов
callback — имя функции, которая будет вызвана после проигрывания диалоговой сц
saveName — имя save-файла (см. команду Save) который будет сделан перед диалого
сценой
Пример 1. Пример:
StartDialogScene("/DialogScenes/C6/M4/C1/DialogScene.xdb#xpointer(/DialogScene)")
Цикл кампаний "Дыхание Смерти" из трёшки в четвёртом исполнении
Учебная карта
Астралия
За Королеву!
Подземелья и Дьяволы
Отголоски войны
Освобождение
Добавлено через 50 секунд
а диалоговую сцену где создавать
Добавлено через 44 минуты
в функции MessageBox путь к файлу с текстом указывать полностью ( например D:/games/hmm2mp/папка где текст) или как?
Добавлено через 20 минут
что я неправилно написал тут: MessageBox ("/messagaName/UserCampaigns/dialog.txt(/messageName)")
Добавлено через 1 минуту
если чо то вот так MessageBox ("/messageName/UserCampaigns/dialog.txt(/messageName)")
вот пример
MessageBox("/Maps/SingleMissions/Necronomicon/Rss.txt")
+
ты уверен что осилишь диалоговую и скриптовую сцену
и без них можно создать прекрасную карту
++
вобще в сети есть мапы (да может и тут есть) со скриптовыми и далоговыми сценами
всё, что тебе нужно сделать, посмотреть взаимосвязь в скрпите такой мапы и понять её
а потом скопипастить к себе и переделать опять же для себя
Цикл кампаний "Дыхание Смерти" из трёшки в четвёртом исполнении
Учебная карта
Астралия
За Королеву!
Подземелья и Дьяволы
Отголоски войны
Освобождение
function reg1 ()
Trigger(REGION_ENTER_AND_STOP_TRIGGER, "reg1","reg1F");
MessageBox ("/Maps/dialog.txt");
end;
function reg2 ()
Trigger(REGION_ENTER_AND_STOP_TRIGGER, "reg2","reg2F")
MessageBox ("/Maps/griffin.txt");
end;
function reg3 ()
Trigger(REGION_ENTER_AND_STOP_TRIGGER, "reg3","reg3F");
MessageBox ("/Maps/ghost.txt");
end;
подскажите что я не так написал... я уже придумал сюжет и мне надо чтоб в этих реионах появляось сообщение
Добавлено через 3 минуты
когда я нажимаю "chek"(проверить ошибки он мне пишет:
function reg1 not defined, line 1
function reg2 not defined, line 5
function reg3 not defined, line 9
если что reg1, reg2, reg3 это регионы
Добавлено через 56 минут
и еще такой скрипт:
function build ()
if HasArtefact ("Isabell", ID_runa);
then MessageBox ("/Maps/runa.txt");
ChangeHeroStat ("Isabell", STAT_EXPERIENCE, 12000);
Trigger(OBJECT_TOUCH_TRIGGER, "build", nil );
else MessageBox ("/Maps/runa1.txt");
end;
end;
здесь:
build - function name
runa - ID арефакта
Isabell - скриптовое имя героя
что-то не так:confused: но что:confused:
function FunEx (hero)
{код}
Trigger(REGION_ENTER_AND_STOP_TRIGGER,"RegEx",nil);
end;
Trigger(REGION_ENTER_AND_STOP_TRIGGER,"RegEx","FunEx",nil);
В другом скрипте принцип тот же.
На сообщения внимания не нужно обращать. Редактор всегда ругается, но иногда всё-равно работает.
Добавлено через 7 минут
и вот такой
Добавлено через 3 минуты
и вот такой вопрос:
мне надо чтобы герой заходил в хижину если у него есть определенный артефакт то герой получает опыт, а если нет то выходит сообщение с извиниями о том что вы не нашли нужный артефакт. вот что я написал:
function buildF ()
if HasArtefact ("Isabell",ID_86;);
then MessageBox ("/Maps/SingleMissions/Let's go!/runa.txt");
ChangeHeroStat ("Isabell", STAT_EXPERIENCE, 12000);
Trigger(OBJECT_TOUCH_TRIGGER, "build", nil );
else MessageBox ("/Maps/SingleMissions/Let's go!/runa1.txt");
end;
end;
Trigger(OBJECT_TOUCH_TRIGGER, "build", "buildF");
Добавлено через 35 секунд
чо нетак а то чето не работает
Цикл кампаний "Дыхание Смерти" из трёшки в четвёртом исполнении
Учебная карта
Астралия
За Королеву!
Подземелья и Дьяволы
Отголоски войны
Освобождение
function primer()
while 1 do
if HasArtefact ("Isabell",ID_86) then
ChangeHeroStat ("Isabell", STAT_EXPERIENCE, 12000);
MessageBox ("/Maps/SingleMissions/Let's go!/runa.txt");
sleep( 3 );
Trigger(OBJECT_TOUCH_TRIGGER, "primerreg", nil );
end;
sleep( 3 );
end;
end;
Trigger(OBJECT_TOUCH_TRIGGER, "primerreg", "primer");
while do это цикл в языке С++ который собственно и задействован в игре. 1 значит один раз и все. Во всех скриптах у разработчика стоит 1, выводы делайте сами и экспериментируйте.
Должно работать так. Если есть срабатывает, если нет то фиг. Можешь попробовать else, а точнее elseif. Но тут опять же дерево сработает только один раз. И уже получив артефакт скрипт не заработает. Поэтому придется придумать что-то посложнее.
И да... ЧенджХироСтат кажется работает иначе, у себя гляну как нибудь и скажу если так не заработает.
while 1 do
if HasArtefact ("Isabell",ID_86) then
ChangeHeroStat ("Isabell", STAT_EXPERIENCE, 12000);
MessageBox ("/Maps/SingleMissions/Let's go!/runa.txt");
sleep( 3 );
Trigger(OBJECT_TOUCH_TRIGGER, "primerreg", nil );
end;
sleep( 3 );
end;
end;
Trigger(OBJECT_TOUCH_TRIGGER, "primerreg", "primer");
это все равно не работает
Let's go! - это карта? Вообще пробуй без пробелов, я у разработчиков ни одного пробела не видел кроме как вот так _



