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

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

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

Ответ
Страница 17 из 237
 
Опции темы
#241
Старый 04.12.2011, 11:15
  #241
^
Олегарх
 
Аватар для Олегарх
📖
Регистрация: 02.12.2011
Сообщения: 294
Регистрация: 02.12.2011
Сообщения: 294
По умолчанию
Re: Скрипты

function mmmF ()
if HasArtefact ("Erasial", 66);
then MessageBox ("/Maps/SingleMissions/1/art.txt");
ChangeHeroStat ("Erasial", STAT_EXPERIENCE, 10000);
Trigger (OBJECT_TOUCH_TRIGGER, "mmm", nil);
else MessageBox ("/Maps/SingleMissions/1/artno.txt");
end;
end;
Trigger (OBJECT_TOUCH_TRIGGER, "mmm", "mmmF");

можете посмотреть, где ошибка?
Олегарх вне форума
Ответить с цитированием
#242
Старый 04.12.2011, 11:20
  #242
^
JonnyP
📖
Регистрация: 01.09.2011
Сообщения: 462
Отправить сообщение для  JonnyP с помощью ICQ
Регистрация: 01.09.2011
Сообщения: 462
Отправить сообщение для  JonnyP с помощью ICQ
По умолчанию
Re: Скрипты

Олегархможете посмотреть, где ошибка?
здесь:
if HasArtefact ("Erasial", 66)==nil then...
или
if HasArtefact ("Erasial", 66)==not nil then...
Че с консолью?
JonnyP вне форума
Ответить с цитированием
#243
Старый 04.12.2011, 12:56
  #243
^
Олегарх
 
Аватар для Олегарх
📖
Регистрация: 02.12.2011
Сообщения: 294
Регистрация: 02.12.2011
Сообщения: 294
По умолчанию
Re: Скрипты

JonnyPЧе с консолью?
какая консоль? Да, в чем именно ошибка? пробовал поисправлять, не получилось
Олегарх вне форума
Ответить с цитированием
#244
Старый 04.12.2011, 13:18
  #244
^
JonnyP
📖
Регистрация: 01.09.2011
Сообщения: 462
Отправить сообщение для  JonnyP с помощью ICQ
Регистрация: 01.09.2011
Сообщения: 462
Отправить сообщение для  JonnyP с помощью ICQ
По умолчанию
Re: Скрипты

Олегархкакая консоль?
Before you can use the cheat codes you must first enable the console.
This requires that you edit two files. First, locate the autoexec_a2.cfg
file in your INSTALL FOLDER\Profiles folder. Open this file with Notepad
and add the following line to the end of the file (in the // Startup section):

setvar dev_console_password = schwinge-des-todes

Next, locate the input_a2.cfg file located in next folder:
\MY DOCUMENTS\MY GAMES\HOMM5TOE\PROFILES\\
Open this file with Notepad and in the // console section,
add the following line:

bind show_console '`'

Once you've done the above, you can bring up the console by pressing [`]

она позволяет находить ошибки в скрипте
JonnyP вне форума
Ответить с цитированием
#245
Старый 04.12.2011, 14:33
  #245
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 24744
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 24744
По умолчанию
Re: Скрипты

if HasArtefact ("Erasial", 66)==nil then...
или
if HasArtefact ("Erasial", 66)==not nil then...
Можно просто if HasArtefact("Erasial",66) then...
Он поймёт, главное точку с запятой убрать.
__________________
Так гулко сердце бьёт
Моим всем чувствам вопреки!
Пылающей душе моей
Давленье претит тоски!











Стикеры GBF в Telegram
Так гулко сердце бьёт
Моим всем чувствам вопреки!
Пылающей душе моей
Давленье претит тоски!











Стикеры GBF в Telegram
Ment вне форума
Ответить с цитированием
#246
Старый 05.12.2011, 16:28
  #246
^
Олегарх
 
Аватар для Олегарх
📖
Регистрация: 02.12.2011
Сообщения: 294
Регистрация: 02.12.2011
Сообщения: 294
По умолчанию
Re: Скрипты

не. нет консоли мож, как-то по-другому надо?
Олегарх вне форума
Ответить с цитированием
#247
Старый 05.12.2011, 16:36
  #247
^
Dyrman
 
Аватар для Dyrman
📖
Регистрация: 24.06.2008
Адрес: Там, где неба кончается край
Сообщения: 3479
Отправить сообщение для  Dyrman с помощью ICQ
Регистрация: 24.06.2008
Адрес: Там, где неба кончается край
Сообщения: 3479
Отправить сообщение для  Dyrman с помощью ICQ
По умолчанию
Re: Скрипты

Олегархне. нет консоли мож, как-то по-другому надо?
Украли
Есть есть. Может из-за того,что у JonnyP не по-русски написано, поэтому непонятно
Ну или у вас 64 битная семёрка и карточка нвидеа - в некоторых таких случаях её действительно спёрли
Всемогущий гуглВ директории установленной игры найти файл "autoexec_a2.cfg":
...................Heroes of Might and Magic V/profiles/
открыть его с помощью текстового редактора.
Добавить строку:

setvar dev_console_password = schwinge-des-todes

в самый конец файла, сохраните изменения в файле.

В этой директории найти файл "input_a2.cfg":
C:/Documents and Settings/Ваш_ник/My Documents/My Games/Heroes of Might and Magic V/HOMM5TOE(или типа того)/Profiles/Ваш_ник/
открыть его с помощью текстового редактора.
После текста:

// obsolete, but strictly need for compability with some interfaces
bind close_window 'ESC'
bind confirm_action 'ENTER'
bind confirm_action 'NUM_ENTER'

Добавить строку:

bind show_console '`'

сохраните изменения в файле.

Запустить игру, запустить любую миссию, вызвать консоль с помощью клавиши '`', в консоли напечатать эту команду:

enable_cheats

Нажать клавишу "Enter".
Всё!!!
Dyrman вне форума
Ответить с цитированием
#248
Старый 05.12.2011, 17:11
  #248
^
Олегарх
 
Аватар для Олегарх
📖
Регистрация: 02.12.2011
Сообщения: 294
Регистрация: 02.12.2011
Сообщения: 294
По умолчанию
Re: Скрипты

DyrmanУкрали
Есть есть. Может из-за того,что у JonnyP не по-русски написано, поэтому непонятно
Ну или у вас 64 битная семёрка и карточка нвидеа - в некоторых таких случаях её действительно спёрли
я это и деелал. система у меня 32 битная семерка,а карта - нвидиа
Олегарх вне форума
Ответить с цитированием
#249
Старый 07.12.2011, 12:35
  #249
^
Победитель
 
Аватар для Победитель
📖
Регистрация: 18.07.2008
Сообщения: 3427
Выставка наград
Регистрация: 18.07.2008
Сообщения: 3427
Выставка наград
По умолчанию
Re: Скрипты

Появился вопрос. Нет ли такого триггера, срабатывающего, если у игрока нет городов и героев = игрок проиграл ?

И проблема есть. Когда выполняется задание 'obj1', миссия сразу заканчивается победой игрока. Что может быть этому причиной?
Победитель вне форума
Ответить с цитированием
#250
Старый 07.12.2011, 13:27
  #250
^
JonnyP
📖
Регистрация: 01.09.2011
Сообщения: 462
Отправить сообщение для  JonnyP с помощью ICQ
Регистрация: 01.09.2011
Сообщения: 462
Отправить сообщение для  JonnyP с помощью ICQ
По умолчанию
Re: Скрипты

ПобедительПоявился вопрос. Нет ли такого триггера, срабатывающего, если у игрока нет городов и героев = игрок проиграл ?

И проблема есть. Когда выполняется задание 'obj1', миссия сразу заканчивается победой игрока. Что может быть этому причиной?
не совсем триггер, но можно так сделать:
function lost_PL4()
if GetPlayerState(PLAYER_4)~=1 then
.....................
end;
end;
и на функцию 'lost_PL4' вешаем триггер на потерю игроком героя
Trigger (PLAYER_REMOVE_HERO_TRIGGER,PLAYER_4,'lost_PL4');

тут либо в 'obj1' в параметр 'Ignore' стоит 'false', либо у вас само задание записано не в 'objectives', а в 'scenario informations'[u]
JonnyP вне форума
Ответить с цитированием
#251
Старый 07.12.2011, 20:38
  #251
^
Победитель
 
Аватар для Победитель
📖
Регистрация: 18.07.2008
Сообщения: 3427
Выставка наград
Регистрация: 18.07.2008
Сообщения: 3427
Выставка наград
По умолчанию
Re: Скрипты

JonnyPне совсем триггер, но можно так сделать:
function lost_PL4()
if GetPlayerState(PLAYER_4)~=1 then
.....................
end;
end;
и на функцию 'lost_PL4' вешаем триггер на потерю игроком героя
Trigger (PLAYER_REMOVE_HERO_TRIGGER,PLAYER_4,'lost_PL4');

тут либо в 'obj1' в параметр 'Ignore' стоит 'false', либо у вас само задание записано не в 'objectives', а в 'scenario informations'[u]
Триггер не сработал. Меня смущает "~=1". Здесь нужно было заменить на что-либо, или писать именно так? Ошибки не выдало, просто не сработало.

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

Заменил во всех обжективах 'false' на 'true'. Теперь при выполнении того квеста игроку выдаётся поражение .
Победитель вне форума
Ответить с цитированием
#252
Старый 07.12.2011, 20:49
  #252
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 24744
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 24744
По умолчанию
Re: Скрипты

~=1
Это означает "не равно".
По поводу Ignore не знаю, но там ещё есть параметр NeedComplete (нужно выполнить, по идее, если эти параметры не выставить, то будет достаточно выполнения оставшихся квестов для победы).
__________________
Так гулко сердце бьёт
Моим всем чувствам вопреки!
Пылающей душе моей
Давленье претит тоски!











Стикеры GBF в Telegram
Так гулко сердце бьёт
Моим всем чувствам вопреки!
Пылающей душе моей
Давленье претит тоски!











Стикеры GBF в Telegram
Ment вне форума
Ответить с цитированием
#253
Старый 07.12.2011, 20:59
  #253
^
Победитель
 
Аватар для Победитель
📖
Регистрация: 18.07.2008
Сообщения: 3427
Выставка наград
Регистрация: 18.07.2008
Сообщения: 3427
Выставка наград
По умолчанию
Re: Скрипты

Не помогло . Мистика какая-то. Значит надо будет убрать эту задачу.

А по поводу выполнения задачи при поражении другого игрока? Можете что-то посоветовать ?
Победитель вне форума
Ответить с цитированием
#254
Старый 07.12.2011, 21:43
  #254
^
JonnyP
📖
Регистрация: 01.09.2011
Сообщения: 462
Отправить сообщение для  JonnyP с помощью ICQ
Регистрация: 01.09.2011
Сообщения: 462
Отправить сообщение для  JonnyP с помощью ICQ
По умолчанию
Re: Скрипты

Победитель
А по поводу выполнения задачи при поражении другого игрока? Можете что-то посоветовать ?
Странно, я делал именно так как написал - при поражении 4-ех вражеских героев - задание выполнено.
тут GetPlayerState — получить текущее состояние игрока,
а '~=1' это не равно, а цифра любая может быть, подробнее из мануала:
Возвращает состояние участия/победы/поражения игрока player: 0 — игрок в игре не
участвует, 1 — игрок еще играет, 2 — игрок проиграл, 3 — ни то, ни другое, ни третье
(возможно, победил, но нельзя сказать определенно).


Добавлено через 6 минут
MentЭто означает "не равно".
но там ещё есть параметр NeedComplete (нужно выполнить, по идее, если эти параметры не выставить, то будет достаточно выполнения оставшихся квестов для победы).
Так его лучше вообще не трогать - он и не используется.
Напишу так: Если в 'Ignore' поставить 'false' , то после выполнения этого задания мииссия будет выиграна, игнорируя другие задания
JonnyP вне форума
Ответить с цитированием
#255
Старый 08.12.2011, 11:38
  #255
^
Победитель
 
Аватар для Победитель
📖
Регистрация: 18.07.2008
Сообщения: 3427
Выставка наград
Регистрация: 18.07.2008
Сообщения: 3427
Выставка наград
По умолчанию
Re: Скрипты

JonnyPСтранно, я делал именно так как написал - при поражении 4-ех вражеских героев - задание выполнено.
тут GetPlayerState — получить текущее состояние игрока,
а '~=1' это не равно, а цифра любая может быть, подробнее из мануала:
[i]Возвращает состояние участия/победы/поражения игрока player: 0 — игрок в игре не
участвует, 1 — игрок еще играет, 2 — игрок проиграл, 3 — ни то, ни другое, ни третье
(возможно, победил, но нельзя сказать определенно).
Спасибо, попробую двойку поставить .

По поводу Ignore - изменил на 'true' и теперь при выполнении этого задания выдаётся сообщение о поражении.
Победитель вне форума
Ответить с цитированием
Ответ
Страница 17 из 237


Опции темы



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


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

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