• Добро пожаловать, Гость. Войдите или зарегистрируйтесь.

Автор Тема: Помогите со скриптом)  (Прочитано 834 раз)

Описание:

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Aerose

  • *
  • Сообщений: 8
  • Репутация: 0
    • Просмотр профиля
Помогите со скриптом)
« : 10 Ноябрь, 2012, 17:21:17 »
0
Подскажите, возможно ли скриптом изменить требуемый ключ для двери? Если да, то как.

Оффлайн Luna

  • Распорядитель ФА
  • *
  • *
  • Сообщений: 2258
  • Репутация: 71.4
  • Пол: Женский
    • Просмотр профиля
    • Имперский Город
    • Email
Re: Помогите со скриптом)
« Ответ #1 : 10 Ноябрь, 2012, 17:27:27 »
0
не совсем понятен смысл вопроса.. а зачем его менять скриптом? не проще ли просто заменить в КС на другой?
Награды Участникам бета-тестов TESO За упорство в ожидании окончания 2х-недельной загрузки файлов TESO За создание новогоднего настроения Всем принявшим участие в 9-летии Тиарума

Оффлайн Aerose

  • *
  • Сообщений: 8
  • Репутация: 0
    • Просмотр профиля
Re: Помогите со скриптом)
« Ответ #2 : 10 Ноябрь, 2012, 17:29:25 »
0
Дело в том, что он у меня должен меняться динамически.. Так как это не конкретный сундук или дверь, а те, на которые кастует игрок.

Оффлайн NAVYgator

  • *
  • Сообщений: 1472
  • Репутация: 30.7
  • Пол: Мужской
  • скрипты никому не пишу
    • Просмотр профиля
    • Email
Re: Помогите со скриптом)
« Ответ #3 : 10 Ноябрь, 2012, 18:23:08 »
0
Дело в том, что он у меня должен меняться динамически.. Так как это не конкретный сундук или дверь, а те, на которые кастует игрок.
Ты скажи, что этот ключ должен делать и зачем нужна его динамическая смена?
Сундук открывать? Один ключ на все замки? А каст зачем?
Ведь ключ (любой) является только признаком (условием)того, что имеющий его в инвентаре может открыть замок. Сам ключ ничего не открывает.
« Последнее редактирование: 10 Ноябрь, 2012, 18:39:02 от NAVYgator »
Награды Всем форумчанам, принимавшим участие в праздновании 10-летия Морровинд За создание новогоднего настроения Всем принявшим участие в 9-летии Тиарума За огромный вклад в развитие Румора

Оффлайн defmotion3

  • *
  • Сообщений: 165
  • Репутация: 0.1
  • Пол: Мужской
    • Просмотр профиля
Re: Помогите со скриптом)
« Ответ #4 : 10 Ноябрь, 2012, 23:48:24 »
0
Дело в том, что он у меня должен меняться динамически.. Так как это не конкретный сундук или дверь, а те, на которые кастует игрок.
Сделай это в форме диалога скриптом, да и все(по наличию ключей у игрока, эффекта от заклинания).
Так будет и проще, и быстрее, и результат сопоставимый и легко управляемый скриптами.
Только я вот не помню можно ли кастовать на контейнеры, по моему игра вылетит, если в скрипте (от спелла) указать виа-реф (не персистент) контейнером.

Оффлайн Aerose

  • *
  • Сообщений: 8
  • Репутация: 0
    • Просмотр профиля
Re: Помогите со скриптом)
« Ответ #5 : 11 Ноябрь, 2012, 19:08:24 »
0
Объясняю подробно, ну а вы уж советуйте)

Требуется сделать заклинание, которое при касте закрывает дверь на ключ, имеющий у игрока. Ну т.е. определенный ключ, созданный в редакторе. Поэтому мне и требуется скриптовая смена отпирающего ключа.

З.Ы. т.е. дверь любая может быть, а ключ к ним один.

Оффлайн Aerose

  • *
  • Сообщений: 8
  • Репутация: 0
    • Просмотр профиля
Re: Помогите со скриптом)
« Ответ #6 : 18 Ноябрь, 2012, 21:12:24 »
0
Up.....

Оффлайн Luna

  • Распорядитель ФА
  • *
  • *
  • Сообщений: 2258
  • Репутация: 71.4
  • Пол: Женский
    • Просмотр профиля
    • Имперский Город
    • Email
Re: Помогите со скриптом)
« Ответ #7 : 18 Ноябрь, 2012, 21:24:35 »
0
По-моему, запертую на ключ дверь можно активировать командой консоли activate ?  Еси да, то  должен быть скрипт тогда - что при наличии определенного ключа в инвентаре, при активации двери выполняется проверка - закрыта ли она. Если да, то запускается команда activate.
Награды Участникам бета-тестов TESO За упорство в ожидании окончания 2х-недельной загрузки файлов TESO За создание новогоднего настроения Всем принявшим участие в 9-летии Тиарума

Оффлайн Aerose

  • *
  • Сообщений: 8
  • Репутация: 0
    • Просмотр профиля
Re: Помогите со скриптом)
« Ответ #8 : 18 Ноябрь, 2012, 21:29:28 »
0
А как добавить проверку, что именно игрок закрывал эту дверь?
Тут еще какое условие, открыть дверь можно этим ключом только ту, которую игрок запер скилом, а запереть он может только открытую дверь. ВОт такой коктейль.

Оффлайн Luna

  • Распорядитель ФА
  • *
  • *
  • Сообщений: 2258
  • Репутация: 71.4
  • Пол: Женский
    • Просмотр профиля
    • Имперский Город
    • Email
Re: Помогите со скриптом)
« Ответ #9 : 18 Ноябрь, 2012, 21:38:13 »
0
тогда непонятно, для чего нужна была смена ключей скриптом?
Награды Участникам бета-тестов TESO За упорство в ожидании окончания 2х-недельной загрузки файлов TESO За создание новогоднего настроения Всем принявшим участие в 9-летии Тиарума

Оффлайн Aerose

  • *
  • Сообщений: 8
  • Репутация: 0
    • Просмотр профиля
Re: Помогите со скриптом)
« Ответ #10 : 18 Ноябрь, 2012, 21:48:50 »
0
Повторяюсь.. Игрок кастует на незакрытую дверь скилом, в котором срабатывает скрипт, меняющий ключ двери по умолчанию на ключ Х, имеющийся у игрок. Чтобы в последствии только он мог открыть эту дверь. Количество дверей не ограничено.

Оффлайн Luna

  • Распорядитель ФА
  • *
  • *
  • Сообщений: 2258
  • Репутация: 71.4
  • Пол: Женский
    • Просмотр профиля
    • Имперский Город
    • Email
Re: Помогите со скриптом)
« Ответ #11 : 18 Ноябрь, 2012, 22:16:23 »
0
Так если дверь незакрытая - то там и ключа не нужно?   Просто не представляю ситуацию, при которой может потребоваться такой скрипт.. Скажем, дверь ночью закрыта, днем ее открыли, и в это время пришел ГГ и кастанул заклинание запирания двери? Чтоб потом ее же сам и открыть мог.. Как-то слишком запутано получается...


Но если так, то тогда при кастовании заклинания может быть, переносить к двери какой-то определенный предмет (его копию), чтоб и в глаза не бросался, и стоял рядом с дверью. И тогда при проверке, закрыта ли дверь, делать еще проверку - есть ли возле двери предмет, служащий чем-то вроде маячка.
Награды Участникам бета-тестов TESO За упорство в ожидании окончания 2х-недельной загрузки файлов TESO За создание новогоднего настроения Всем принявшим участие в 9-летии Тиарума

Оффлайн Aerose

  • *
  • Сообщений: 8
  • Репутация: 0
    • Просмотр профиля
Re: Помогите со скриптом)
« Ответ #12 : 18 Ноябрь, 2012, 22:21:05 »
0
А куда скрипт проверки то вешать? Если учесть, что дверь такую не должен открыть не один непись. На дверь не вариант, у нее ведь и свои скрипты могут быть, которые заменять на другие нельзя.

Неужели нет простой функции смены ключа двери?)

Оффлайн NAVYgator

  • *
  • Сообщений: 1472
  • Репутация: 30.7
  • Пол: Мужской
  • скрипты никому не пишу
    • Просмотр профиля
    • Email
Re: Помогите со скриптом)
« Ответ #13 : 19 Ноябрь, 2012, 00:23:38 »
0
Игрок кастует на незакрытую дверь скилом, в котором срабатывает скрипт, меняющий ключ двери по умолчанию на ключ Х, имеющийся у игрок. Чтобы в последствии только он мог открыть эту дверь. Количество дверей не ограничено.

Кастуют не скиллом, а спеллом ;)

Странная задача... Ты знаешь все двери, ключи от которых входят в состав квестов? Ведь "спец. ключи" бывают в большинстве случаев только в квестах. Сменив такой "квестовый ключ" на "универсальный" что делать потом с квестами? Даже не квестовые ключи - при смене ключа, например, непись-хозяин магазина может не открыть магазин ;)
Ведь сам пишешь:
На дверь не вариант, у нее ведь и свои скрипты могут быть, которые заменять на другие нельзя.


Мне кажется, что лучше определять конкретный ключ и класть его игроку в инвентарь.

Для начала нужно определить, каким ключом закрыта дверь.
Но нужно помнить, что некоторые двери - "двойные"! Это на самом деле связка из двух дверей: дверь с одной стороны двери и со второй стороны двери.

Это можно сделать, используя функцию OBSE GetOpenKey См. ЗДЕСЬ
Пример скрипта:
ref pDoor '- переменная для хранения REF двери
ref pKey '- переменная для хранения REF ключа
...
set pDoor to DoorRef '- берем REF двери (как ее определить - при касании-активации, или кастом?)
set pKey to pDoor.GetOpenKey '- определяем REF ключа, закрывающего данную дверь
if (pKey == 0) '- если данная дверь ключа не имела
  set pDoor to pDoor.GetLinkedDoor  '- то определяем  REF двери "на другой стороне" связки
  if pDoor '- если таковая есть
    set pKey to pDoor.GetOpenKey '- определяем каким ключом она закрывается.
  endif
endif
'- далее действуем по необходимости: например создаем копию ключа в инвентаре игрока
player.additem pKey 1
Т.о., в инвентарь игрока добавиться копия нужного ключа.

Неужели нет простой функции смены ключа двери?)

Если же мысль останется в силе, то заменить ключ для конкретной двери на собственный можно функцией OBSE SetOpenKey

Цитировать (выделенное)
DoorRef.SetOpenKey MyKey

Делать это можно не только спеллом, но и при касании. Проще - включить строку в спелл.

Существенный вопрос: а если дверь не "общественная"? Т.е. "кому-то принадлежит"? См. ЗДЕСЬ Открытие такой двери будет считаться взломом...

Я не разбирался так досконально с закрытием дверей - нужно смотреть.
« Последнее редактирование: 19 Ноябрь, 2012, 00:43:00 от NAVYgator »
Награды Всем форумчанам, принимавшим участие в праздновании 10-летия Морровинд За создание новогоднего настроения Всем принявшим участие в 9-летии Тиарума За огромный вклад в развитие Румора

Оффлайн Aerose

  • *
  • Сообщений: 8
  • Репутация: 0
    • Просмотр профиля
Re: Помогите со скриптом)
« Ответ #14 : 19 Ноябрь, 2012, 09:20:47 »
0
Огромное спасибо, думаю пока вопросов больше нет)

Теги:
 

Помогите со скриптом

Автор ElderXardasРаздел Скриптинг под TES IV

Ответов: 19
Просмотров: 5707
Последний ответ 10 Январь, 2011, 09:03:59
от Galib
Помогите со скриптом(

Автор AzAzELРаздел Мастерская TES IV

Ответов: 18
Просмотров: 1466
Последний ответ 02 Октябрь, 2010, 20:28:01
от AzAzEL
Помогите со скриптом

Автор SinklРаздел Скриптинг под TES IV

Ответов: 6
Просмотров: 941
Последний ответ 27 Сентябрь, 2011, 14:04:30
от Sinkl
Помогите со скриптом

Автор Silent_AssassinРаздел Скриптинг под TES IV

Ответов: 49
Просмотров: 1988
Последний ответ 21 Октябрь, 2012, 20:41:20
от Silent_Assassin
Помогите со скриптом

Автор WereWolfРаздел Скриптинг под TES V

Ответов: 4
Просмотров: 1056
Последний ответ 15 Май, 2013, 14:12:29
от AleksTirex
Помогите со скриптом

Автор gloomdaemonРаздел Скриптинг под TES V

Ответов: 3
Просмотров: 992
Последний ответ 26 Ноябрь, 2013, 19:59:54
от gloomdaemon
Помогите разобраться

Автор GARRETTРаздел TES III: Morrowind, Tribunal, Bloodmoon

Ответов: 1
Просмотров: 3401
Последний ответ 19 Август, 2005, 14:51:39
от GL.Sam
Помогите! Не могу молот разыскать

Автор КсенияРаздел TES III: Morrowind, Tribunal, Bloodmoon

Ответов: 5
Просмотров: 4028
Последний ответ 07 Январь, 2007, 15:44:48
от GL.Sam
Проблема Со Скриптом

Автор volandРаздел Скриптинг под TES IV

Ответов: 10
Просмотров: 7933
Последний ответ 01 Декабрь, 2007, 20:44:04
от Garin
Помогите плиииз написать скрипт отключающий свет

Автор VintРаздел Скриптинг под TES IV

Ответов: 3
Просмотров: 2621
Последний ответ 06 Март, 2008, 19:09:58
от LiLu

Поиск

 
Top
SimplePortal 2.3.5 © 2008-2012, SimplePortal