Скрипты - неотъемлемая часть GECK. При написании возникает очень много казусов. Данная тема должна помочь не наступать на "грабли" новичкам и делиться опытом с другими более продвинутых мододелов.
<a class="link" href="http://nick-name.ru/sertificates/278209/" rel="nofollow" target="_blank"> border="0" alt=""/</a> Да, мы бандиты и бродяги, как злословит молва, Мы попадаем в передряги, помня эти слова. Смотри вперед и не сдавайся ты на милость судьбе! Предай их всех, останься верен себе. (Канцлер Ги - Кантри Бреган Д'Эрт)
спасибо за туториал, правда уже сам разобрался как сделать.
Добавлено (15.02.2011, 20:42) --------------------------------------------- Возникла другая нубская проблема, как сделать активатор двери. Дверь скрытая, то есть когда к ней подходишь не видно что это активатор, а открывается дверь с пульта.
Riff, а теперь тоже самое, но по-русски. Виктор не может давать скрипт по определению.
<a class="link" href="http://nick-name.ru/sertificates/278209/" rel="nofollow" target="_blank"> border="0" alt=""/</a> Да, мы бандиты и бродяги, как злословит молва, Мы попадаем в передряги, помня эти слова. Смотри вперед и не сдавайся ты на милость судьбе! Предай их всех, останься верен себе. (Канцлер Ги - Кантри Бреган Д'Эрт)
Riff, поищи на двери в Коктейль-баре - там Виктора никогда нет и меню вызывается через дверь..
<a class="link" href="http://nick-name.ru/sertificates/278209/" rel="nofollow" target="_blank"> border="0" alt=""/</a> Да, мы бандиты и бродяги, как злословит молва, Мы попадаем в передряги, помня эти слова. Смотри вперед и не сдавайся ты на милость судьбе! Предай их всех, останься верен себе. (Канцлер Ги - Кантри Бреган Д'Эрт)
И еще вопрос: возможно ли создать замену персоонажа через скрипт. Допустим я создал перса в разговоре с которым будет скрипт замены ИД. Он как бы превратится.
И еще вопрос: возможно ли создать замену персоонажа через скрипт. Допустим я создал перса в разговоре с которым будет скрипт замены ИД. Он как бы превратится.
Riff, теоретически - да. В соотв. ветке диалога в окне End script даёшь команду disable выбранному персонажу, а рядом с ним или на его место генеришь нового, например через PlaceLeveledActorAtMe Но как оно пройдёт в реальности - не знаю.
<a class="link" href="http://nick-name.ru/sertificates/278209/" rel="nofollow" target="_blank"> border="0" alt=""/</a> Да, мы бандиты и бродяги, как злословит молва, Мы попадаем в передряги, помня эти слова. Смотри вперед и не сдавайся ты на милость судьбе! Предай их всех, останься верен себе. (Канцлер Ги - Кантри Бреган Д'Эрт)
Народ тут такой вопрос я смог с помощью скрипта двигать объект без колизии (ну и с колизией вроде тоже получилось), но вопрос невтом подскажите как сделать так чтоб скрипт активировался каждые например 2 дня ?
...-Вот такой вот парадокс. Мы делаем моды для игр, в которые уже давно не играем...
Graf, вроде никак, только попробовать счетчик ставить. Но я навскидку не скажу, есть ли возможность определить время в игре. К тому же скрипт сам по себе либо работает, либо нет, поэтому тебе нужно в глобальном скрипте вводить отсчет интервала времени - как, не скажу, не было такой задачи и я не владею нужными функциями.
<a class="link" href="http://nick-name.ru/sertificates/278209/" rel="nofollow" target="_blank"> border="0" alt=""/</a> Да, мы бандиты и бродяги, как злословит молва, Мы попадаем в передряги, помня эти слова. Смотри вперед и не сдавайся ты на милость судьбе! Предай их всех, останься верен себе. (Канцлер Ги - Кантри Бреган Д'Эрт)
Graf, а не знаю, нет у меня готового рецепта. Поройся в функциях, посмотри можно ли как-то отслеживать Время. Кроме GetSecondPassed (или как там она, не помню) - это несколько не то. Именно определение текущего времени в мире игры. Кроме того, теоретически можно сделать такой "финт ушами" - создать эффект на основе скрипта, а в условиях эффектов точно есть функция GameHour. Ну и про НВСЕ я вообще не в курсе - может там вообще всё просто.
<a class="link" href="http://nick-name.ru/sertificates/278209/" rel="nofollow" target="_blank"> border="0" alt=""/</a> Да, мы бандиты и бродяги, как злословит молва, Мы попадаем в передряги, помня эти слова. Смотри вперед и не сдавайся ты на милость судьбе! Предай их всех, останься верен себе. (Канцлер Ги - Кантри Бреган Д'Эрт)
Изменение репутации для пользователя Graf
GrafOffline
Сообщение №73
написано: 1 марта 2011, 14:01
| Отредактировано: Graf - 1 марта 2011, 14:04
<a class="link" href="http://nick-name.ru/sertificates/278209/" rel="nofollow" target="_blank"> border="0" alt=""/</a> Да, мы бандиты и бродяги, как злословит молва, Мы попадаем в передряги, помня эти слова. Смотри вперед и не сдавайся ты на милость судьбе! Предай их всех, останься верен себе. (Канцлер Ги - Кантри Бреган Д'Эрт)
Изменение репутации для пользователя ITU
ITUOffline
Сообщение №76
написано: 1 марта 2011, 20:53
| Отредактировано: ITU - 1 марта 2011, 21:57
int iAktivBash int iAktivStolb int iAktivTurret int iAktivBarrack int iAktivFF int iAktivLight
int iButton
Begin onactivate
ShowMessage 0ITUBaseBuyMenu
End
Begin GameMode
set iButton to GetButtonPressed
set iAktivBash to ITUMarketBashRef.GetDisabled set iAktivStolb to ITUMarketStolbRef.GetDisabled set iAktivTurret to ITUMarketTurretRef.GetDisabled set iAktivBarrack to ITUMarketBarrackRef.GetDisabled set iAktivFF to ITUMarketFFRef.GetDisabled
ITU, а это невнимательно руководства читаем, где русским по белому написано, что "вызов функции ShowMessage не приостанавливает выполнение скрипта". А сообщение об отсутствии нужной суммы у тебя, очевидно - обычный MessageBox с кнопкой. В результате после вывода сообщения скрипт, поскольку секция GameMode циклическая, начинает отрабатывать с начала. Пока кнопка Ок не нажата всё нормально, но как только игрок нажимает Ок, GetButtonPressed возвращает 0 и ты получаешь то, что описывал. Выхода два: 1. Снять галочку MessageBox в настройках сообщения "Мало деньгов" 2. Ввести переменную-признак сообщения. Я бв предпочёл первый. При этом сообщение будет выведено в верхний левый угол экрана.
<a class="link" href="http://nick-name.ru/sertificates/278209/" rel="nofollow" target="_blank"> border="0" alt=""/</a> Да, мы бандиты и бродяги, как злословит молва, Мы попадаем в передряги, помня эти слова. Смотри вперед и не сдавайся ты на милость судьбе! Предай их всех, останься верен себе. (Канцлер Ги - Кантри Бреган Д'Эрт)
Изменение репутации для пользователя Андрей407
Андрей407Offline
Сообщение №79
написано: 5 марта 2011, 14:39
| Отредактировано: Андрей407 - 5 марта 2011, 14:39
С помощью объектных скриптов, прикреплённых к предмету-активатору. ДЛя двери - функционал скрипта должен располагаться в секции OnActivate Для предмета - в секции OnAdd По времени - зависит от того, какой момент/событие должен служить началом отсчета
Собственно "появление" неписей 1. С помощью соотв. функций - на выбор PlaceAtMe, PlaceAtMeHealthPercent, PlaceLeveledActorAtMe 2. Расположить неписей в мире в редакторе изначально задизабленными, а при активации давать команду Enable.
<a class="link" href="http://nick-name.ru/sertificates/278209/" rel="nofollow" target="_blank"> border="0" alt=""/</a> Да, мы бандиты и бродяги, как злословит молва, Мы попадаем в передряги, помня эти слова. Смотри вперед и не сдавайся ты на милость судьбе! Предай их всех, останься верен себе. (Канцлер Ги - Кантри Бреган Д'Эрт)
Maelstrom2, Квесты то существуют? Посмотри, может в названии ошибся.
Graf, а второй endif зачем?
<a class="link" href="http://nick-name.ru/sertificates/278209/" rel="nofollow" target="_blank"> border="0" alt=""/</a> Да, мы бандиты и бродяги, как злословит молва, Мы попадаем в передряги, помня эти слова. Смотри вперед и не сдавайся ты на милость судьбе! Предай их всех, останься верен себе. (Канцлер Ги - Кантри Бреган Д'Эрт)
В окне Result Script (End) вводим такие строки: Player.RemoveItem Rifle 1 ;забираем у игрока ружье Player.AddItem Key 1 ;добавляем ему ключ хозяинRef.RemoveItem Key 1 ;забираем ключ у хозяина хозяинRef.AddItem Rifle 1 ;добавляем хозяину ружье SetObjectiveCompleted Quest 10 1 ;устанавливаем стадию квеста равную 10 (выполненая) SetObjectiveDisplayed Quest 20 1 Продолжение квеста (начало следующей стадии)
Добавлено (08.03.2011, 17:40) --------------------------------------------- Cout, Ну там вроде ещё в Conditions надо что то прописывать немогу объянить.
...-Вот такой вот парадокс. Мы делаем моды для игр, в которые уже давно не играем...
Graf, Да и за это спасибо. Мне хватит. Я просто хочу мод сделать, про мафиози. Типа новая фракция с квестами и т.п
Добавлено (08.03.2011, 18:13) --------------------------------------------- А вот еще вопрос. Можно-ли сделать оружейный кейс по типу "Связки ключей" из Ф3??? Только вместо ключей - пушки.