QUOTE (Dik Morris @ Oct 23 2005, 22:23) |
ActionDoCommand |
лишнее.
QUOTE (Dik Morris @ Oct 23 2005, 22:23) |
Как пс обозначить |
QUOTE (Dik Morris @ Oct 23 2005, 22:23) |
фаллТоОпен |
QUOTE (Dik Morris @ Oct 23 2005, 22:23) |
GetLastOpenedBy() |
неа.. он же ее не откроет.
GetLastUsedBy()
+ проверка на то, что это игрок GetIsPC()
Вообще говоря то, как определить игрока в разных местах модуля, имхо, должен знать каждый, кто притендует на скриптера. Это МИНИМУМ.
Nashman
Oct 23 2005, 23:21
Тоесть если я правельно понял то struct представляет из себя масив переменных разного типа? А где его можно исползовать?
не массив, так как индексации порядковой нет.
Структура она и есть структура.
QUOTE (Nashman @ Oct 24 2005, 00:21) |
А где его можно исползовать? |
ну если тебе не надо, не юзай. В обычных скриптах используется крайне редко.
AliceDiren
Oct 23 2005, 23:26
Lex, sorry, не подумала
Nashman, самый простой пример использования структур - это описание NPC. Имя, возраст, класс, раса и т.п. Все это можно скомпановать в одну структуру, описывающую основные характеристики персонажа.
А вообще - зачем использовать структуры, если не знаешь куда ее применить?
Nashman
Oct 23 2005, 23:50
QUOTE |
А вообще - зачем использовать структуры, если не знаешь куда ее применить? |
Я просто перевожу Лексекон(Уматовая тема!!!), и из того что перевел, про структуру сразу мало что понял.

.
А так я только сегодня першел от графики к скриптам. Так что это еще не первый туп... неразумный вопрос...
ПС:
AliceDiren Спасибо!!! Ты мне идею подкинула....
Скажите кто нибудь пожалуйста, можно ли заставить персонажа ударить по пустому месту? Т.е. можно ли сделать анимацию удара?
поставь там нивидимый объект и заставь игрока его молотить.
Анимация, что как-то очень отдаленно напоминает бой это ANIMATION_LOOPING_TALK_FORCEFUL
QUOTE |
поставь там нивидимый объект и заставь игрока его молотить. |
Такое решение мне в голову приходило. Но тогда мне надо, чтобы невидимый обьект появлялся прямо перед персонажем. Не просто рядом - а именно перед его носом. Можно ли это сделать скриптом?
QUOTE (-fenix- @ Oct 23 2005, 21:25) |
Функция не может быть переменной struct |
это ты неправильно перевел. оригинал:
QUOTE |
These are C-style structs, so you can't have member functions |
сие означает, что внутри структуры не может быть полей-функций(в отличие от С++, где структуры практически не отличаются от классов).
а отдельно взятая функция может иметь тип struct. пример, дополняющий твой перевод:
Neverwinter Script Source |
struct MyStruct MyStructFunction(int nA, float fB) { struct MyStruct stResult; stResult.a = nA; stResult.b = fB; return stResult; } |
Как раз результат фукнции как структура наиболее интересен в nss, где пока нельзя вернуть массив как результат функции. Структура позволяет вернуть за раз более одного параметра, что часто бывает нужно. Тот же тип
vector - и есть структура, частный случай.
Правда все преимущества перечеркиваются отсутствием функции SetLocalStruct()
Chimeric
Oct 25 2005, 10:43
Пардон за вторжение грязными ногами в диспут ученых программистов, но хотелось бы узнать, как устроить личную музыкальную тему персонажу? Например, при разговоре с Арибет, Арином Гендом и прочими вальяжными неписями в оригинальной кампании NWN основная музыка зоны плавно, но быстро сменяется подобранной по фигуре мелодией, так же и возвращаясь по завершении беседы.
прописать музыку в ambientmusic.2da(либо выбрать там подходящую), запомнить id, ей соответствующий(первый столбец в 2da) и вставить в скрипт(где-нибудь в начале диалога) вызов функции PlayCharacterTheme(int nTheme):
Neverwinter Script Source |
#include "nw_i0_plot" // <- важно! (PlayCharacterTheme()) void main() { PlayCharacterTheme(51); // mus_theme_aribgd - Aribeth Theme 1 } |
когда нужно будет вернуть игравшую до этого музыку, сделать:
Neverwinter Script Source |
#include "nw_i0_plot" // <- важно! (PlayOldTheme()) void main() { PlayOldTheme(); } |
и ваши ноги будут мягкими и шелковистыми! (а главное - чистыми
QUOTE |
Структура позволяет вернуть за раз более одного параметра, что часто бывает нужно. |
что еще важнее, так это то, что структура позволяет возвращать параметры разных типов...
например в свой системе лута я использую такую структуру:
CODE |
struct stItemProperty { int n; itemproperty ip; int subgrp; int price; string s; int nGC; int nGM; }; |
без структуры мне бы пришлось делать минимум 3-4 таблицы, а так все в одном месте - жутко удобно...
Nashman
Oct 25 2005, 17:58
Привет,
Жители форума, нужна ваша помощь. Короче проблема состоит вот в чём:
- При создании тайлсетов – они не работают. Пробовал ВСЕ, ну может быть почти ВСЕ, и всеравно не работает. Где проблема не могу разобраться. И по этому прошу ПОЖАЛУЙСТА сделайте мне файлы что бы когда я их запихну в хак-пак они работали. В смысле тайлсеты.
helvene
Oct 25 2005, 18:19
QUOTE (Nashman @ Oct 25 2005, 17:58) |
И по этому прошу ПОЖАЛУЙСТА сделайте мне файлы что бы когда я их запихну в хак-пак они работали. В смысле тайлсеты. |
Смеялась. А работающий модуль вам сделать не надо?
Nashman
Oct 25 2005, 23:35
QUOTE |
Смеялась. А работающий модуль вам сделать не надо? |
ХА ха ха!!!
Где как не в СССР могут возникнуть такие вопросы. Может денег заплатить? Ужас!!!
Форум создан что бы брать советы и что бы давать их. Но так, как у меня не тот уровень знаний что бы их давать то пока я прошу.
ПС: Вот так вот...
Добавлено в [mergetime]1130272594[/mergetime] Хотя не только СССР, я извеняюсь, в США тоже.
ПС: Вот за что я люблю КАНАДУ!!!!
не смешно, Nashman.
QUOTE (Nashman @ Oct 25 2005, 18:58) |
сделайте мне файлы что бы когда я их запихну в хак-пак они работали. В смысле тайлсеты. |
ты хоть представляешь, что это такое?
Посмотри любой тайлсет. Это сотни моделей, текстуры и еще пара файлов. Думаешь такое тяп ляп и готово? В России, насколько я знаю, не ни одного собственного тайлсета. (доделаного до конца).
так что просить "сделайте мне тайлсет" это просто смешно.
QUOTE (Nashman @ Oct 26 2005, 00:35) |
Форум создан что бы брать советы и что бы давать их. |
Совет дать могу: используй готовое. Если не можешь, то бросай это и делай то, что можешь. Или ищи помощников.
Но совет и "сделайте мне" вещи малек разные, ты не находишь?
Добавлено в [mergetime]1130273177[/mergetime]
QUOTE (Nashman @ Oct 25 2005, 18:58) |
При создании тайлсетов – они не работают. Пробовал ВСЕ, ну может быть почти ВСЕ, и всеравно не работает. Где проблема не могу разобраться. |
из того набора слов я не смог понять НИЧЕГО.
- что ты пытаешься сделать?
- что не работает?
- что ты пробовал?
Nashman
Oct 25 2005, 23:49
QUOTE |
Но совет и "сделайте мне" вещи малек разные, ты не находишь |
Lex, я не правельно(наверное выразился). Я имею в ввиду, что когда я создаю по туториалу свои ланшафты, то они НЕ работают, я прочитал несколько таких статтей и все без толку, я ведь не хочу что бы мне моели делали, я это сам умею, а например:
одну дверь, одник кусок пола и ВСЕ!!! Я даже делая по статейке где-то за минут 15-10 зделал бы, но они не работают.
ПС: Надеюсь быть понятым или понятным... неважно... надеюсь мысль поняли.
helvene
Oct 26 2005, 00:33
QUOTE (Nashman @ Oct 25 2005, 23:35) |
Где как не в СССР могут возникнуть такие вопросы. |
Ой! путешественник во времени!
Nashman, что у вас с русским языком? Если вы думаете, что из вашего описания хоть что-то понятно...
QUOTE (Nashman @ Oct 25 2005, 23:49) |
Я даже делая по статейке где-то за минут 15-10 зделал бы, но они не работают. |
Делали или сделали бы?
QUOTE (Nashman @ Oct 25 2005, 23:49) |
я это сам умею, а например: одну дверь, одник кусок пола и ВСЕ! |
Ну, немного, но все равно похвально.
В каком месте не работает-то?
В чем тестировали, на каком этапе ошибка?
Nashman
Oct 26 2005, 00:40
QUOTE |
В каком месте не работает-то? |
Не знаю, но думаю неправельно или ІТР или set, хотя может быть и сама модель не правельная. Хотя два файла и создается woc и mdl.
Но при загрузке хакпака ошибки НЕТ! Так, как я еще никогда такого не делаал, то для меня трудно понять где ошибка, вот я прошу...ПЛС!!!
QUOTE |
Ой! путешественник во времени |
Получается, значит путишествую.
После увиденого появился вопрос: Зачем в оригинальных мдл(ах) есть какая-то непонятная(мне) хрень в виде корпуса такая серая из себя?
ПС: Даже мне смешно...
..мдя ..почитал я тут выше изложеные излияния на тему " все плохо, ничего не так как хочу я..значит виноваты вы все"...
Nashman ты не первый работаешь с тулсетом ... до того это делали ой ой сколько людей .. и почему то у других получалось, а у тебя нет ...может наконец в зеркало посмотришь, когда виновника своих неудач ищешь ...
... только САМ работая и набирая опыт ( в том числе и на своих ошибках) ты сможешь( если действительно захочешь) прийти нормальному уровню в разработке, причем если САМ разберешся в своих недоделках и криворукотворчестве, то этот опыт наберешь гораздо быстрее....
создаеться такое впечатление, что ты все хочешь очень быстро, сразу и без всякого напряжения и при мизерном минимуме усилий с твоей стороны... и хватаешь сразу то то ,то это и все просто почему то обязано сразу получаться с первого раза.... ну не становяться сразу чемпионом мира за 5 минут - для этого надо и тренироваться и опыт набирать... так делай это , а не веди себя как маленький ребенок...
п.с. и следи за своим языком и письмом пожалуйста..ей богу читать трудно... а точно понять тем более...
Белатрис
Oct 26 2005, 11:32
А если я создам тригер и в "OnEnter" напишу название диалога, то при входе в тригер будет начинатся диалог?
куда название диалога? и с кем диалог? С триггером вродь низя. Сам с собой или с НПС.
Белатрис,
в OnEnter триггера поставь такой скрипт(введи любое имя для скрипта и нажми Edit):
Neverwinter Script Source |
void main() { object oPC = GetEnteringObject(); if (!GetIsPC(oPC)) return; AssignCommand(oPC, ClearAllActions()); AssignCommand(oPC, ActionStartConversation(oPC, "название диалога", TRUE)); } |
edit: елы-палы, опять забыл nss закрыть... теперь умудрился color забыть закрыть...
helvene
Oct 26 2005, 15:09
QUOTE (Nashman @ Oct 26 2005, 00:40) |
Но при загрузке хакпака ошибки НЕТ! |
А ее так и не должно быть, если хак ни с чем не конфликтует и нигде не используется.
Кстати, ты абсолютно зря кладешь все файлы для тестирования в хак. Их пожно в оверрайд сложить, и тестирование становится намного легче.
QUOTE (Nashman @ Oct 26 2005, 00:40) |
Так, как я еще никогда такого не делаал, то для меня трудно понять где ошибка, вот я прошу...ПЛС!!! |
Для начала посмоотри на модели NWN Explorer'ом. Если там порядок - значит, дело в сборке тайлсета.
Кстати, в чем выражается ошибка, ты так и не написал.
Nashman
Oct 26 2005, 18:20
Короче прозьба снимается... Всем спасибо.
ПС: Сам изучил Делфи - сам изучу и НВН.
helvene
Oct 26 2005, 18:27
QUOTE (Nashman @ Oct 26 2005, 18:20) |
Короче прозьба снимается... Всем спасибо.
ПС: Сам изучил Делфи - сам изучу и НВН |
По-моему, если что-то не получается у вас, и вы не в состояние сформулировать, в чем суть проблемы - пенять надо на себя, а не на зеркало. Вам задали наводящие вопросы, вы даже на них толком не ответили.
P.S. Удачи в изучении.
LEX: присоединяюсь. Удачи в изучении.
Клемент Астилон
Oct 27 2005, 06:41
Сурово вы к парню...
А вообще когда нужна помощь, старайтесь правильно сформулировать вопрос. Тогда больше вероятность положительного ответа. В данном случае, уважаемый
Nashman, не понятна суть проблемы. Мы не телепаты, мысли не читаем.
Из того что я прочитал считаю что новичку в модуль мейкерстве, не стоит сразу лезть в такие дебри как свои тайлсеты... Для того чтобы правильно подключить тайлсет или просто модель, надо как минимум разбиратся в 2да, итп файлах, сет файлах, самой механике подключения хаков.
Не надо громко хлопать дверью, нужно просто подробнее описывать проблемы.
Как конкретно не работает? Не возможно зайти в модуль? Ничего не видно? Не добавляется в ресурсы тулсета?
Ссылку на сам хак и модуль(если не большой)
Здесь люди всегда готовы помочь, просто не надо психовать на свою ошибку.

На будущее - просьба подробно описывать свой вопрос или проблему.
Nashman
Oct 27 2005, 08:10
Та плохо я пишу по РУсски -ПЛОХО!!!
Объясните пожалуйста некоторые вещи:
1)Для чего нужны расширения файлов(nss(скрипты?), are, gic, git, ncs, utc, ute, ifo, jrl, fac, uti)?
2) Как сделать так, что бы можно было(например в портале) выбрать куда тебе нужно, в какую локацию, или какое –то место на локации?
Привествую всех жителей форума, поможите начинающему скриптеру?

Скажите пожалуйста(желательно сначало по проще, а то временами не понимаю я

) что за бяка такая и как с ней дружить

вот
Neverwinter Script Source |
GetUserDefinedEventNumber(); |
и цифирки 1001 и т.д. поможите...
DramУ каждого объекта есть эвенты для скриптов(ну это ты знаешь, я думаю

), а у каждого эвента есть свой номер.
В эвенте UserDefined, ты можешь заэмулировать любой другой эвент по своему желанию...Как бы получить второй такой же, грубо говоря.
Функция которую ты привел, возвращает номер эвента, который ты заэмулировал.
Могу и ошибаться, сразу предупреждаю.
Dik Morris
Oct 27 2005, 12:04
Neverwinter Script Source |
void main() { object oPC = GetEnteringObject(); object oDJ = GetObjectByTag("DJEREMI"); ActionDoCommand(AssignCommand(oDJ,PlaySound("c_werewolf_bat1"))); ActionDoCommand(ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectPolymorph(POLYMORPH_TYPE_WEREWOLF,FALSE),oDJ)); ActionDoCommand(ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectVisualEffect(VFX_IMP_POLYMORPH),oDJ)); ActionDoCommand(AssignCommand(oDJ,ActionAttack(oPC))); ActionDoCommand(DestroyObject(OBJECT_SELF)); } |
oDJ полиморфится в жуткого монстра - терминатора

, его характеристики поднимаются очень высоко, появ. много не нужных мне свойств.
Вопрос:
Можно ли, сделать чтобы oDJ полиморфился, но его характеристики оставались прежними? То есть не поднимались?
NashmanQUOTE |
2) Как сделать так, что бы можно было(например в портале) выбрать куда тебе нужно, в какую локацию, или какое –то место на локации |
Можно легко. Делаешь диалог с порталом, далее в процессе диалога, можно закинуть игрока на нужный тебе вайпоинт, в нужной локации.
1) Диалог с плейсом
На вкладку onUser (в писменах портала) поставь вот такой скриптик:
Neverwinter Script Source |
void main() { ActionStartConversation(GetLastUsedBy()); } |
Не забуть повесить на плейс нужный диалог.
2) Телепорт игрока.
На вкладку в диалоге (совершены действия)
Поставь вот этот скрипт:
Neverwinter Script Source |
void main() { object oPC = GetPCSpeaker(); object oWP = GetObjectByTag("ТАГ НУЖНОГО ВАЙПОИНТА"); ActionDoCommand(AssignCommand(oPC,ClearAllActions())); ActionDoCommand(AssignCommand(oPC,ActionJumpToObject(oWP))); } |
Вроде все.
PS: если разнговор с порталом не нужен, то ставь вот ето на онЮзер портала:
Neverwinter Script Source |
void main() { object oPC = GetLastUsedBy(); object oWP = GetObjectByTag(""); ActionDoCommand(AssignCommand(oPC,ClearAllActions())); ActionDoCommand(AssignCommand(oPC,ActionJumpToObject(oWP))); } |
dumdo спасибо.
QUOTE (Dik Morris @ Oct 27 2005, 13:04) |
Можно ли, сделать чтобы oDJ полиморфился, но его характеристики оставались прежними? То есть не поднимались? |
Neverwinter Script Source |
void main() { object oPC = GetEnteringObject(); object oDJ = GetObjectByTag("DJEREMI"); ActionDoCommand(AssignCommand(oDJ,PlaySound("c_werewolf_bat1"))); ActionDoCommand(SetCreatureAppearanceType(oDJ, APPEARANCE_TYPE_WEREWOLF)); ActionDoCommand(AssignCommand(oDJ,ActionAttack(oPC))); ActionDoCommand(DestroyObject(OBJECT_SELF)); } |
2 Лито.
Получается просто у меня этот скрипт будет идти как HEARBEAT верно?
Dram,
почти все стандартные скрипты в слотах объектов проверяют соответствующую слоту настройку(переменную) и в зависимости от нее посылают сигнал, который приводит к запуску скрипта OnUserDefined. т.е. например:
в скрипте OnSpawn непися убираешь комметарий со строки SetSpawnInCondition(NW_FLAG_HEARTBEAT_EVENT);. теперь стандартный скрипт OnHeartBeat будет вызывать скрипт OnUserDefined с номером события 1001.
также ты можешь сам опосредованно(через вызов SignalEvent) вызывать скрипт OnUserDefined, в котором ты вначале получаешь номер события(заданный при вызове SignalEvent) и в зависимости от оного производишь необходимые тебе действия.
note: более подробную информацию можно узнать в Lexicon'e.
QUOTE (Nashman @ Oct 27 2005, 09:10) |
1)Для чего нужны расширения файлов(nss(скрипты?), are, gic, git, ncs, utc, ute, ifo, jrl, fac, uti)? |
Neverwinter Source Script
AREa
саппорт локи
--"--
Neverwinter Compiled Script
blUeprinT Creature
blUeprinT Encounter
InFOrmation
JouRnaL
FACtions
blUeprinT Item
Каким образом все-таки изменить цвет тайла? Что за тип данных location? Нифига не получается. У меня есть некая Area, типа баня. Я хочу сделать так, чтобы при открытии двери в комнату в ней зажигался свет. Каким образом это прописывается? Только пожалуйста полностью объясните, как для идиота. Я скрипты, можно сказать, первый раз пишу.
AliceDiren
Oct 27 2005, 22:00
QUOTE |
Что за тип данных location? |
Neverwinter Script Source |
location loc = Location(objArea, vecPosition, fFacing); |
в Лексиконе это подробно описано
QUOTE |
Каким образом все-таки изменить цвет тайла? |
по-моему про это уже писали, но:
есть две функции
Neverwinter Script Source |
// Set the main light color on the tile at lTileLocation. // - lTileLocation: the vector part of this is the tile grid (x,y) coordinate of // the tile. // - nMainLight1Color: TILE_MAIN_LIGHT_COLOR_* // - nMainLight2Color: TILE_MAIN_LIGHT_COLOR_* void SetTileMainLightColor(location lTileLocation, int nMainLight1Color, int nMainLight2Color) |
и
Neverwinter Script Source |
// Set the source light color on the tile at lTileLocation. // - lTileLocation: the vector part of this is the tile grid (x,y) coordinate of // the tile. // - nSourceLight1Color: TILE_SOURCE_LIGHT_COLOR_* // - nSourceLight2Color: TILE_SOURCE_LIGHT_COLOR_* void SetTileSourceLightColor(location lTileLocation, int nSourceLight1Color, int nSourceLight2Color) |
после применения этих функций не забудь вызвать
Neverwinter Script Source |
void RecomputeStaticLighting(object oArea) |
Про включение света. Я бы заранее поставила у стен какие-нибудь светильники, а на двери на OnOpen активировала бы (зажигала бы) их и соответственно на OnClose гасила.
Ну, допустим. У меня есть некая область с комнатой, и из нее выход в комнату, от которой нужен ключ и которую просто так не видно (для избранных). Я врубаю на всей области нулевое освещение, задаю руками свет тайлов, а в закрытой комнате оставляю все черное. Я пишу скрипт на ОнОпен. Только вот объясните мне, как он должен выглядеть. Я в упор не понимаю, что писать в качестве параметра типа location. Я смотрел Лексикон - нифига там не подробное объяснение (во всяком случае, даже с третьего раза ничего не понял) - три строчки написано про то, какие там должны быть параметры - ни примеров нифига. Как параметр типа location должен выглядеть? Мне б пример кто выложил - вот это было бы дело.
AliceDiren
Oct 27 2005, 22:34
L33t, самый простой способ функцией
Neverwinter Script Source |
// Get the location of oObject. location GetLocation(object oObject); |
Я так понимаю, что в этой комнате у тебя есть хоть какие-нибудь объекты. Бери их координаты и всё
Например так:
Neverwinter Script Source |
// ... location lTarget = GetLocation(GetNearestObjectByTag("Таг любого объекта в комнате")); // ... |
Ну ладно, если есть то фигня. А если их нет? Каким образом это сделать?
А еще такая штука: я короче решил не освещать сами тайлы, а повесить в комнате две люстры и на открытие двери вешать их активацию. С этим все в порядке - они включаются и светят. Каким чертом их можно погасить? Функции деактивации объекта я не нашел - в Лексиконе тоже ничего подобного нет.
Nashman
Oct 28 2005, 14:13
QUOTE |
Ну ладно, если есть то фигня. А если их нет? Каким образом это сделать? |
Я думаю тебе надо создать что-то невидемое... Но зачем тогда комната, скрытая и в которой ничего нет?
AliceDiren
Oct 28 2005, 14:58
L33t, Аваддон предлагал вот такой скрипт (честно не помню, в какой теме видела):
Neverwinter Script Source |
void main() { object oSelf = OBJECT_SELF; if (GetIsDay()==FALSE && GetLocalInt(OBJECT_SELF,"on")!=1) { SetLocalInt(OBJECT_SELF,"on",1); PlayAnimation(ANIMATION_PLACEABLE_ACTIVATE); effect eLight = EffectVisualEffect(VFX_DUR_LIGHT_YELLOW_10); ApplyEffectToObject(DURATION_TYPE_PERMANENT, eLight, oSelf); }
if (GetIsDay()==TRUE && GetLocalInt(OBJECT_SELF,"on")==1) { SetLocalInt(OBJECT_SELF,"on",0); PlayAnimation(ANIMATION_PLACEABLE_DEACTIVATE); effect eEffect = GetFirstEffect(oSelf); while (GetIsEffectValid(eEffect) == TRUE) { if (GetEffectType(eEffect) == EFFECT_TYPE_VISUALEFFECT) RemoveEffect(oSelf, eEffect); eEffect = GetNextEffect(oSelf); } } } |
Скрипт зажигает фонари, люстры и т.п. по ночам и гасит днем. Если немного доработать, то имхо тебе как раз подойдет. Ставится этот скрипт на OnHeartbeat объекта (в свойствах убери галочку статик).
Dik Morris
Oct 28 2005, 18:57
Скрипт на onPlayerLevelUp:
Neverwinter Script Source |
#include "x0_i0_henchman" void main() { object oS = GetObjectByTag("ТАГ"); LevelUpHenchman(oS); } |
Хенч не поднимает уровень!
PS: скрипт срабатывает если хенчман 1 уровня. Но этот 2.
AliceDiren
Перед тем как спросить я смотрел эту тему. Но как я понял, твой скрипт действует только для мультиклассовых персов, или я ошибаюсь?
А скриптик Айвана почти нечем от моего не отличается.
AliceDiren
Oct 28 2005, 20:50
Dik Morris, вот
здесь есть уже готовые варианты того, что ты делаешь.
Dik Morris, мой работает и для одноклассовых персонажей. Просто он предусматривает возможность поднять уровень и для мультиклассовых. Если будешь его использовать, поставь локальную переменную на хенча ClassToUp = 1, тогда будет подниматься только первый или единственный класс персонажа.
L33t, будласка, всмысле не за что
Данке шон однако!
Та я поняв (я тож оттуда

)
Белатрис
Oct 29 2005, 14:36
Как сделать так, что бы фразы которые были при первом разговоре с PC не появлялись во втором(в смыле при втором разговоре)?
Если нужен скрипт то напишите попобробней, где что.
QUOTE |
********************************************************************************
ВОПРОС Как заставить НПС говорить подругому в диалоге если игрок уже с ним 1 раз поговорил.
ОТВЕТЫ Скриптами. 1. d_st_firsttalk
Neverwinter Script Source | void main() { SetLocalInt(OBJECT_SELF,"FirstTalk",TRUE); } |
|
QUOTE |
2. d_ch_firsttalk
Neverwinter Script Source | int StartingConditional() { return GetLocalInt(OBJECT_SELF,"FirstTalk"); } |
|
QUOTE |
Ставим скрипт 1 в том месте диалога (в закладку Actions), после прохождения которого НПС будет "знать" игрока и в след. диалоге уже говорить с ним как с знакомым. (например после того, как игрок представился)
Ставим скрипт 2 на той ветке, которая должна быть, если НПС знает игрока. (в закладке text appears when) ******************************************************************************** |
Dik Morris
Oct 29 2005, 15:40
AliceDirenСорри за настырность, но чтото не получается. Скорее всего я не так делаю.
Твой скрипт ставлю на
onPlayrLevelUp в мод. свойствах.
В диалоге, вешаю на хенча переменную
ClassToUp =1
Но при повышении уровня, хенч не его не повышает. Что ни так?
Белатрис, это делается скриптами посредством размещения локальных переменных.
Обрати внимание на ниже приведенную ссылку. Там очень подробно расписана работа, этих самых локальных переменных.
http://www.igromania.ru/articles/?nw_63
Golindor
Oct 29 2005, 18:53
Vhall , только не руби с плеча, вoпрос: можно ли выучить 3dmax, Aurora Toolset, рукoводствуясь только форумом?