Перейти к содержанию

Сообщения от Скрипты

Аватар пользователя
16 лет назад
или вот тоже понятная и довольно большая...нет даже так БОЛЬШАЯ таблица разъяснений и описаний функций по этой таблице я даже сделал скрипт.. и он работает! вообщем ВЕЩЬ!
Вложения 1
1 файл • Общий размер: 1,1 MB
Аватар пользователя
16 лет назад
балин нето вот корочь
Вложения 1
1 файл • Общий размер: 88,3 KB
Аватар пользователя
16 лет назад
объясните правильное написание функции StartDialogScene
Аватар пользователя
16 лет назад
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)")
помогло :D
Аватар пользователя
16 лет назад
нне очень:smile50:

Добавлено через 50 секунд
а диалоговую сцену где создавать

Добавлено через 44 минуты
в функции MessageBox путь к файлу с текстом указывать полностью ( например D:/games/hmm2mp/папка где текст) или как?

Добавлено через 20 минут
что я неправилно написал тут: MessageBox ("/messagaName/UserCampaigns/dialog.txt(/messageName)")

Добавлено через 1 минуту
если чо то вот так MessageBox ("/messageName/UserCampaigns/dialog.txt(/messageName)")
Аватар пользователя
16 лет назад
путь надо рпавильный делать
вот пример
MessageBox("/Maps/SingleMissions/Necronomicon/Rss.txt")

+
ты уверен что осилишь диалоговую и скриптовую сцену
и без них можно создать прекрасную карту

++
вобще в сети есть мапы (да может и тут есть) со скриптовыми и далоговыми сценами
всё, что тебе нужно сделать, посмотреть взаимосвязь в скрпите такой мапы и понять её
а потом скопипастить к себе и переделать опять же для себя
Аватар пользователя
16 лет назад
все терь понял))
Аватар пользователя
16 лет назад
этот скрипт не работает((:
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:
Аватар пользователя
16 лет назад
Надо вызывать Trigger после функции, а не во время. Во время нужно отменить его выполнение. Пример:
function FunEx (hero)
{код}
Trigger(REGION_ENTER_AND_STOP_TRIGGER,"RegEx",nil);
end;
Trigger(REGION_ENTER_AND_STOP_TRIGGER,"RegEx","FunEx",nil);
В другом скрипте принцип тот же.
На сообщения внимания не нужно обращать. Редактор всегда ругается, но иногда всё-равно работает.
В ответ пользователю Ment
Аватар пользователя
16 лет назад
понятно.....

Добавлено через 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 секунд
чо нетак а то чето не работает
Аватар пользователя
16 лет назад
не знаю как скрпитами, но если мне не изменяет память, то там всё что нужно можно выставить в дереве свойств этого объекта
Аватар пользователя
16 лет назад
Ох, за сложные ты скрипты взялся и тут тебе кроме тебя уже ни кто не поможет. Я как-то пытался создать нечто подобное но ни чего путного не вышло. Вот как проще:
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. Но тут опять же дерево сработает только один раз. И уже получив артефакт скрипт не заработает. Поэтому придется придумать что-то посложнее.

И да... ЧенджХироСтат кажется работает иначе, у себя гляну как нибудь и скажу если так не заработает.
Аватар пользователя
16 лет назад
Как убрать из под трупика крестьянина юбку? Никто не разобрался? Трупик с кругом под ним странно выглядит))
Аватар пользователя
16 лет назад
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");

это все равно не работает
Аватар пользователя
16 лет назад
В консоле что пишет? И еще пробуй скрипт проверять на новой без других скриптов карте.

Let's go! - это карта? Вообще пробуй без пробелов, я у разработчиков ни одного пробела не видел кроме как вот так _

Статистика

Приветствуем новейшего участника: recijeb

Сейчас на сайте 7 пользователей 1149 гостей