![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#21
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
посмотрел еще раз.. можно в НВН так делать. А затык у меня когда-то был из-за попытки в разных ветках объявить переменную с одним именем.. поэтому я ее и до свича ставлю (IMG:style_emoticons/kolobok_light/smile.gif) Но тебе в данном случае все равно лучше сделать как я написал, ибо игрок у тебя во всех ветках одинаковый (IMG:style_emoticons/kolobok_light/smile.gif)
зы: но вот что-то в свичах нельзя делать точно.. а что, я уже и забыл. |
![]()
Сообщение
#22
|
|
Level 9 ![]() Класс: Фея Характер: Chaotic Evil Раса: Тварь NWN: Скриптинг [PW] ![]() |
QUOTE(Lex @ Dec 5 2006, 00:56) [snapback]99838[/snapback] зы: но вот что-то в свичах нельзя делать точно.. а что, я уже и забыл. переменные объявленные в свитчах глючили испокон веков, поддавались неоднократной правке, но не факт что залечились до конца. поэтому, во избежание, так сказать, их лучше не использовать вообще. |
![]()
Сообщение
#23
|
|
Стилспатер ![]() ![]() Класс: Воин Характер: Chaotic Good Раса: Человек ![]() |
QUOTE Господа... Есть проблема. Проблема в файлике http://www.hotfile.ru/30533/ (1,2Мб - модуль для НВН2) Там есть диалог с лежаком. Если при первом подходе нажать отдохнуть, то следующая фраза этого лежака не выводится... Не понимаю... Поставил патч 1.03 - все исправилось. Так что - это глюк тулса.... был. Сообщение отредактировал Plut - Dec 5 2006, 10:11 |
![]()
Сообщение
#24
|
|
Level 19 ![]() Класс: Воин Характер: Lawful Good Раса: Человек NWN: Скриптинг [Sn] ![]() |
Хз, как там во втором тулсете, но в первом и правда переменные объявленные в свичах глючили, да и инфа о том, что их объявлять там низя, из Лексекона взята.
|
![]() ![]()
Сообщение
#25
|
|
Лорд AxisTown'a ![]() Класс: Монах Характер: Lawful Good Раса: Дварф NWN: Маппинг ![]() |
QUOTE Да, по этому поводу там усе сделано. Даже можно строку выводить или в экшн писать по несколько скриптов... Тут все ок. Можно теперь вообще всю обработку диалогов в 1 скрипт запихать... Чтоб не рыть потом тоннами. ...ммм а пгодробнее об этом можно и в деталях как именно...для тех, кто пока в обсидиановском тулсете не работает.... насколько все удобней.. итд итп ...плз (IMG:style_emoticons/kolobok_light/biggrin.gif) Сообщение отредактировал mamuc - Dec 5 2006, 12:49 |
![]()
Сообщение
#26
|
|
Level 12 ![]() Класс: Оборотень Характер: Chaotic Neutral Раса: Нежить NWN: Скриптинг [Sn] ![]() |
QUOTE(mamuc @ Dec 5 2006, 12:48) [snapback]99860[/snapback] QUOTE Да, по этому поводу там усе сделано. Даже можно строку выводить или в экшн писать по несколько скриптов... Тут все ок. Можно теперь вообще всю обработку диалогов в 1 скрипт запихать... Чтоб не рыть потом тоннами. ...ммм а пгодробнее об этом можно и в деталях как именно...для тех, кто пока в обсидиановском тулсете не работает.... насколько все удобней.. итд итп ...плз Берешь ветку диалога, выбираешь Экшн -> Добавить и суешь туды скрипт (ну пока как обычно), далее впечатываешь в появившиеся поля переменные для этого скрипта (появляются если он их поддерживает). Если мало - добававить еще таких скриптов к той же ветке, выполнятся они будут по очереди. В игре уже есть пачка простеньких кирпичиков типа "Заставить (таг1) напасть на объект (таг2)", "Забрать итем (таг)" и т.п. Так что можно выстроить комбинацию из них вместо написания отдельного скрипта для каждой ветки. |
![]() ![]()
Сообщение
#27
|
|
Лорд AxisTown'a ![]() Класс: Монах Характер: Lawful Good Раса: Дварф NWN: Маппинг ![]() |
azathoth большое спасибо за информацию.... (IMG:style_emoticons/kolobok_light/hi.gif)
меня больше всего заинтересовал вот такой нюанс QUOTE Даже можно строку выводить это что-то действительно новое и больше не надо будет с SetCustomToken() работать? или это и есть то самое... ...или я чего-то не так понял... (IMG:style_emoticons/kolobok_light/pardon.gif) |
![]()
Сообщение
#28
|
|
Level 19 ![]() Класс: Обыватель Характер: True Neutral Раса: Дварф NWN: Контент ![]() |
Мамук, я не в теме, но думаю, строка это "string". Т.е. можно выводить строку в фразу из тлк.
|
![]() ![]()
Сообщение
#29
|
|
Level 2 ![]() Класс: Псионик Характер: True Neutral Раса: Рептилия ![]() |
Вопрос косвенно связанный со скриптами... а сколько спелов(spells) в NWN2?
Griffon: Открой spells.2da и посчитай. Сообщение отредактировал Griffon - Dec 6 2006, 10:54 |
![]()
Сообщение
#30
|
|
Стилспатер ![]() ![]() Класс: Воин Характер: Chaotic Good Раса: Человек ![]() |
QUOTE это что-то действительно новое и больше не надо будет с SetCustomToken() работать? или это и есть то самое... Этого я делать пока не пробовал... попробуем возвращать строку.... |
![]() ![]()
Сообщение
#31
|
|
Level 1 Класс: Страж Тьмы Характер: Chaotic Evil Раса: Нежить ![]() |
Народ, а не кто не знает, как поменять расу, пол и класс игрока при входе в локацию и желательно при этом и внешний вид?
|
![]()
Сообщение
#32
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
если не урезали это в НВН2, то по идее SetCreatureAppearance или что-нить в этом роде. А если урезали - полиморфом тока наверное (IMG:style_emoticons/kolobok_light/unknw.gif)
|
![]() ![]()
Сообщение
#33
|
|
Level 1 Класс: Страж Тьмы Характер: Chaotic Evil Раса: Нежить ![]() |
NSS void SetCreatureAppearanceType(object oCreature, int nAppearanceType); Только меняет внешний вид, при этом, если игрок менял при создании персонажа лицо прическу и из-за некоторой одежды персонаж просто исчезает, но все равно спасибо. Будим исследовать дальше. |
![]()
Сообщение
#34
|
|
Level 12 ![]() Класс: Оборотень Характер: Chaotic Neutral Раса: Нежить NWN: Скриптинг [Sn] ![]() |
Класс не поменять точно, максимум, что можно сделать - это сбить уровни до 1, а затем пролевелять РС обратно до того уровня, на котором он был нужным классом(см функции SetXP() и LevelUpHenchman()). Т.е, к примеру, если меняем на файтера, то Маг(20) превратится в Маг(1)-Воин(19). Если игрок 1го уровня, то этот трюк, конечно, не даст вообще никаких результатов.
|
![]() ![]()
Сообщение
#35
|
|
Level 1 Класс: Страж Тьмы Характер: Chaotic Evil Раса: Нежить ![]() |
Просто по ходу сюжета игрок вспоминает свои прошлые жизни, где он был воином магом и творил великие дела. Попробую обойтись только внешним видом и Cut-Сценами вместо боев (IMG:style_emoticons/kolobok_light/sad.gif) . Отсюда следует следующая проблема, как запретить ему просмотр персонажа?
|
![]()
Сообщение
#36
|
|
Level 4 ![]() ![]() Класс: Некромант Характер: Chaotic Evil Раса: Нежить ![]() |
ShadowKeeper, ну для кутсцены ничего делать и не нужно, игроку и так доступен только внешний вид. (IMG:style_emoticons/kolobok_light/smile.gif) Посему, SetCreatureAppearanceType, будет в самый раз. (IMG:style_emoticons/kolobok_light/wink3.gif)
|
![]() ![]()
Сообщение
#37
|
|
Level 2 ![]() Класс: Псионик Характер: True Neutral Раса: Рептилия ![]() |
Вопрос следующий
Нужен таг локации в которой находится игрок и еще интересно почему не работает NSS string sCheckTag = GetTag(GetArea(oPC)); он возвращает пустоту |
![]()
Сообщение
#38
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
QUOTE(Gloom @ Jan 5 2007, 19:07) [snapback]101568[/snapback] он возвращает пустоту хм.. попробуй для начала определить, получается ли там локация. Типа так: NSS void main() { object oPC = GetFirstPC(); SendMessageToPC(oPC,"Имя: "+GetName(oPC)); object oArea = GetArea(oPC); SendMessageToPC(oPC,"Локация: "+GetName(oArea)); } Короче суть в том, чтобы дебажить на всех этапах (определение игрока, определение локации), чтобы понять где именно косяк. Так как игра только вышла, ни у кого еще нет достаточных знаний об ошибках и подводных камней, так что ищем (IMG:style_emoticons/kolobok_light/smile.gif) |
![]()
Сообщение
#39
|
|
Level 2 ![]() Класс: Псионик Характер: True Neutral Раса: Рептилия ![]() |
Не получается (IMG:style_emoticons/kolobok_light/sad.gif)
только у меня NSS object oPC = GetEnteringObject(); потомучто скрипт oncliententer |
![]()
Сообщение
#40
|
|
Level 19 ![]() Класс: Воин Характер: Lawful Good Раса: Человек NWN: Скриптинг [Sn] ![]() |
Что не получается-то?
Возможно возвращается пустота, так как стоит скрипт на КлиентЭнтер. Попробуй проверить на тригере или на ОнЭнтер локи. Сообщение отредактировал -fenix- - Jan 5 2007, 19:34 |
![]()
Сообщение
#41
|
|
Level 2 ![]() Класс: Псионик Характер: True Neutral Раса: Рептилия ![]() |
Не получается = возвращает "Локация - " т.е пустоту
он_энтер локи тоже не работает С он_ентер тригера ситуация та же... Пустота Ах да, во всех трех случаях имя игрока показывается правильно |
![]()
Сообщение
#42
|
|
Level 2 ![]() Класс: Паладин Характер: Lawful Good Раса: Человек ![]() |
QUOTE(Gloom @ Jan 5 2007, 20:53) [snapback]101575[/snapback] Не получается = возвращает "Локация - " т.е пустоту он_энтер локи тоже не работает С он_ентер тригера ситуация та же... Пустота Предположу, что название локи на русском. На OnClientEnter не советую вешать. Слабо срабатывает. Лучше на эвенты локации или уж на PC Loaded. Попробовал у себя только что. Версия 1.03. Работает. Кинул вещь на землю в локе и дописал этот код в On Acquire Item (чиста ради срабатывания (IMG:style_emoticons/kolobok_light/smile.gif) ) NSS object oPC = GetFirstPC ();
object oArea = GetArea (oPC); string sName = GetName (oArea); FloatingTextStringOnCreature (sName, oPC); Сообщение отредактировал Narruin - Jan 5 2007, 20:57 |
![]()
Сообщение
#43
|
|
Level 2 ![]() Класс: Псионик Характер: True Neutral Раса: Рептилия ![]() |
Имя локи на английском, версия 1.3, повесил ваш скрипт он_ентер тригера...
NSS object oArea = GetArea (); ругается дебагер NSS FloatingTextStringOnCreature (sName, oPC); текст не показывает Моя ошибка, тепрь показывает имя... у меня DisplayName было пусто |
![]()
Сообщение
#44
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
ну потому что там не скрипт в полном понимании, а набросок (с синтаксическими и прочими ошибками типа лишних пробелов)
Если бы глюк был только в onClientEnter, можно было бы списать на то что не успевает грузиться.. но если такая же петрушка на триггере, то похоже возможно не определяет.. возможное те банально GetArea не работает. Эх,, был бы тулс под рукой, поэкспериментировал бы. зы: попробуй взять локу по тэгу и вывести ее название. зыы: попробуй взять локу не по oPC, а по триггеру, те oArea = GetArea(OBJECT_SELF). -------------- э.. а теперь помедленнее, что показывает и где? (IMG:style_emoticons/kolobok_light/smile.gif) |
![]()
Сообщение
#45
|
|
Level 2 ![]() Класс: Паладин Характер: Lawful Good Раса: Человек ![]() |
QUOTE(Lex @ Jan 5 2007, 22:02) [snapback]101587[/snapback] те банально GetArea не работает. Эх,, был бы тулс под рукой, поэкспериментировал бы. GetArea работает. |
![]() ![]() |
Текстовая версия | Сейчас: 17th July 2025 - 07:15 |