![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#1226
|
|
Level 6 ![]() Класс: Страж Тьмы Характер: Lawful Good Раса: Баатезу ![]() |
Спасибо Лекс, но возникли некоторые неполадки, дело в том что скелет, после смерти непися, долго появляется, и эффект смери не работает, скелет нападает на ПК.
Добавлено в [mergetime]1117488620[/mergetime] Спецефический вопрос. Если играть за друида, то ПК может превращатся в жевотных, дак вот, скажите можно ли, также поменять ПК только ранне задуманным NPC? |
![]()
Сообщение
#1227
|
|
Level 4 ![]() ![]() Класс: Волшебник Характер: Chaotic Good Раса: Эльф ![]() |
Я выложил вариант с двумя ингридиентами так как он проще. Но и в не мчто-то не работает.
Функция SetupLab () создает своебразный массив по номеру комбинации. Допустим если было кастованр заклинание из первой комбинации, то имеем в переменной nComboNumber = 1. А в массиве под этим номером уже читаем сами ингридиенты и то что должно получиться. mamuc в каком именно цикле for? |
![]()
Сообщение
#1228
|
|
Миловидный Бегрюссунг ![]() Класс: Воин Характер: Chaotic Good Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Minion, ты можешь перепутать FALSE и TRUE и не будет пахать ничего. Сделай фукцию Debug и впиши ее после каждого действия в код. Пусть она выводит тебе мессаги, что сделано и что происходит. Так гадать можно до второго пришествия. Увидишь что и как, сам найдешь ошибку. У меян при входе в мод все пестрит мессагами, кто где пукнул, выдохнул у меян все пишет в дебаг.
2 Архангел. Табличку кроме панели смерти прилепить нельзя. |
![]()
Сообщение
#1229
|
|||||
Восставший из пепла ![]() ![]() ![]() Класс: Бледный Мастер Характер: Neutral Evil Раса: Человек ПОДМАСТЕРЬЕ ![]() |
Ладно, спасибо. Че-нить придумаем... ;) |
||||
![]() ![]()
Сообщение
#1230
|
|||||||
Лорд AxisTown'a ![]() Класс: Монах Характер: Lawful Good Раса: Дварф NWN: Маппинг ![]() |
в SetupLab () . ..сначало напишу как у тебя работает по тому , что написано сейчас 1) устатнавливаешь int nComboNumber = 1; 2) запускаешь цыкл for для того же nComboNumber с 1 до 5 (nNumberOfCombos = 5) ...таким образом цыкл работает 5 раз 3) в цыкле у тебя токо один свич для того самого бедного nComboNumber , где в зависимости от значения создает твой "своебразный массив по номеру комбинации"...усе это срабатывает 5 раз каждый раз присваивается знач масива и в итоге ты получаешь в своем масиве ВСЕГДА то что присваиваешь, когда nComboNumber=5, поскольку это действие присвоения в SetupLab () выполняеться последним что бы работало так как ты описал SetupLab () должен быть с параметром nComboNumber, и цыкл там совсем ненужен, должен токо свич остатся.... короче- с исправлениями должна выглядеть примерно так
..я конечно еще рекомендовал бы вместо SetLocalArrayInt ,SetLocalArrayString использовать структуры ...это гораздо удобнее ( и короче в записи тоже) ИМХО :yes: вот примерно так...(это кроме всего дает возможность вообще обходиться без навешивания лишних локальных на плейс)
Сообщение отредактировал mamuc - Jun 3 2005, 08:48 |
||||||
![]()
Сообщение
#1231
|
|
4-х Кубовый ![]() Класс: Некромант Характер: Lawful Evil Раса: Человек NWN: Скриптинг [Sn] Проклятие Левора ![]() |
Народ, объясните плиз мне, как переопределить ряд стандартных спеллов? Что такое спеллхук и че с ним делать?..
В этом я совсем профан... :ph34r: =) Проясните плз... только пошагово. Можно и кратко, но по шагам. А также о зависимостях между 2да-хами и скритами спеллов. |
![]()
Сообщение
#1232
|
|||||||||||
Level 9 ![]() Класс: Фея Характер: Chaotic Evil Раса: Тварь NWN: Скриптинг [PW] ![]() |
нарисовал тут на досуге: 1. dmb_inc_ilr:
2. в OnModuleLoad:
3. пользовать по усмотрению. например, в OnPlayerEquipItem:
ps. особо не проверялось, посему ежели что - пишите... Добавлено в [mergetime]1117537069[/mergetime] DBColl по spell-hook'ам - ТУТ основная зависимость скриптов спеллов от 2да'х - в spells.2da в колонке ImpactScript прописаны их имена.. :) или ты про что-то другое? |
||||||||||
![]()
Сообщение
#1233
|
|||
4-х Кубовый ![]() Класс: Некромант Характер: Lawful Evil Раса: Человек NWN: Скриптинг [Sn] Проклятие Левора ![]() |
Да, я про это. Спасибо, почитаю ;). :good: |
||
![]()
Сообщение
#1234
|
|||
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
так тебе это и надо было, нет? Или надо чтобы скелет на земле валялся? Тогда при его создании ставь SetIsDestroyable(FALSE,FALSE); и накладывай эффект смерти EffectDeath() через ApplyEffectToObject() |
||
![]()
Сообщение
#1235
|
|||
Level 6 ![]() Класс: Страж Тьмы Характер: Lawful Good Раса: Баатезу ![]() |
Не лекс, эффекты ты прописал, но они не работают!? Мне надо было чтобы скелет мгновенно, появился за место НПК, как это было в ХотУ, я и сам эффекты накладывал, всё кампилилось, но не работало! во как. Наверное я уже достал..Понимаю |
||
![]()
Сообщение
#1236
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
те он появляется, а тот НПС еще дергается? Так местами там поменяй функции анимации и создания скелета..
|
![]()
Сообщение
#1237
|
|||||
Level 9 ![]() Класс: Фея Характер: Chaotic Evil Раса: Тварь NWN: Скриптинг [PW] ![]() |
Мефистофель ну и задачку ты себе нашел! :crazy: на OnDamage вешать эту анимацию не очень хорошо, потому как есть всякая нехорошая магия, которая убивает сразу. если смотреть в торону OnDeath, то при смерти движок с довольно большой вероятностью успевает до вызова скрипта навесить анимацию падения - отследить это без мазы, поэтому часто начальная часть анимации пропадает. хотя и в OnDamage могут убить в лежачем положении(кнок)... вобщем, сделать так, чтоб это работало всегда красиво и правильно невозможно, так что вешай вот это на OnDeath и смирись :yes:
также, на все остальные слоты лучше навесить врапперы типа:
вызываемый скрипт для каждого слота, естественно, свой. критичны 1,2,3,5,6,8,b... короче, проще все сделать. :crazy: ps. после "чуть-чуть подумать" переделал все, посему пришлось прибегнуть к редактированию поста... :oops: Сообщение отредактировал dumbo - Jun 3 2005, 03:42 |
||||
![]()
Сообщение
#1238
|
|
Level 4 ![]() ![]() Класс: Волшебник Характер: Chaotic Good Раса: Эльф ![]() |
mamuc У меня тут появилась немного другая идея, но раз ты предложил решенте проблемы то я сначала рассмотрю твое. Спасибо за помощь. :good:
Если будут еще вопросы, то непременно об этом сообщу. Aiwan У меня и стаяли дебаги везде. Вот только я все равно не мог понять в чем баг. :yes: Но все равно спасибо. |
![]()
Сообщение
#1239
|
|
Level 3 ![]() Класс: Оборотень Характер: Chaotic Good Раса: Человек ![]() |
В нормальном состоянии в игре кнопкой (Esc) можно прервать любой диалог, есть ли возможность вставив скрипт в () запретить прерывание (Уж больно ответственный момент в игре) диалога? Как выглядит этот скрипт?
|
![]()
Сообщение
#1240
|
|||||
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Над этим бились очень долго сингловики. Выход нашли такой: в начале диалога такое сделать (те в скрипте onDialog у НПС добавить строку)
а в конце
|
||||
![]()
Сообщение
#1241
|
|
Level 3 ![]() Класс: Оборотень Характер: Chaotic Good Раса: Человек ![]() |
Попробую. Спас:)
|
![]()
Сообщение
#1242
|
|||
Level 4 ![]() ![]() Класс: Волшебник Характер: Chaotic Good Раса: Эльф ![]() |
mamuc А если я хочу, чтобы на одном спелле висело 3 ингридиента, а на другом допустим 4, то я могу сделать так:
Т.е. сначала я определяю кастуемый спелл, а потом вызываю SetupLab (кастуемый спелл). Или мне надо сделать по другому? |
||
![]()
Сообщение
#1243
|
|||
Восставший из пепла ![]() ![]() ![]() Класс: Бледный Мастер Характер: Neutral Evil Раса: Человек ПОДМАСТЕРЬЕ ![]() |
Неподскажите, что тут неправильно:
Мдя... наверно тут написана полная охинея. :crazy: Че-то плоховато я разбираюсь с изменением режима камер. :swoon: |
||
![]()
Сообщение
#1244
|
|
Level 4 ![]() ![]() Класс: Волшебник Характер: Chaotic Good Раса: Эльф ![]() |
Archangelэ А что должно произойти по твоей задумке? А то не совсем понятно.
Добавлено в [mergetime]1117987770[/mergetime] по тому что у тебя написано камера закрепится за игроком без возможности поворота. |
![]()
Сообщение
#1245
|
|||||
Восставший из пепла ![]() ![]() ![]() Класс: Бледный Мастер Характер: Neutral Evil Раса: Человек ПОДМАСТЕРЬЕ ![]() |
Должен поменятся режим камеры. От вида "сверху" к виду "со спины". Добавлено в [mergetime]1117988024[/mergetime]
Мне невожна возможность поворота. У мня КутСцена. Так что камера должна быть статичной. Сообщение отредактировал Archangel - Jun 5 2005, 19:11 |
||||
![]()
Сообщение
#1246
|
|||
Level 4 ![]() ![]() Класс: Волшебник Характер: Chaotic Good Раса: Эльф ![]() |
Как я написа камера по константе у тебя происходит закрепление камеры за игроком. И для смены режима камеры используй
Сама комманда с параметрами. |
||
![]()
Сообщение
#1247
|
|
Level 6 ![]() Класс: Страж Тьмы Характер: Lawful Good Раса: Баатезу ![]() |
А помойму, нодо просто, джампить РС в другую точку и задать градусы.
Сделай обычный переход камеры от высоты, до спины, задав градусы положения. например 90.0, 6.0 50. вид с высока. и плавно переместив камеру градусами 90.0, 0.0, 79. вид со спины. |
![]()
Сообщение
#1248
|
|||||||||
Level 9 ![]() Класс: Фея Характер: Chaotic Evil Раса: Тварь NWN: Скриптинг [PW] ![]() |
насчет того, что непись должен встать для каких либо действий мы уже прояснили. теперь пару мелких скриптиков для реализации "сидоков". 1. создаем плэйс стула(static). тэг ему прописываем например CHAIR_01. 2. создаем непися. навешиваем на него локалку-string(правый клик на неписе-Variables(Переменные)) с именем Chair и значением = тэг стула, куда он должен садиться. т.е. в нашем случае "CHAIR_01". 3. в слот OnHeartBit неписю пишем скрипт:
4. в OnSpawn:
5. собственно, сам dmb_sit:
все. теперь непись при появлении будет сразу садиться на стул и усаживаться туда после разговора/драки. если на непися не вешать локалку с тэгом стула, то он поищет любой рядом стоящий стул для восседания. ps. только сейчас, заметив в своем тестовом модуле, как мимо проносится девочка и водружает свою пятую точку на сундук, решил чутка подправить... :oops: Сообщение отредактировал dumbo - Jun 7 2005, 23:03 |
||||||||
![]() ![]()
Сообщение
#1249
|
|
Лорд AxisTown'a ![]() Класс: Монах Характер: Lawful Good Раса: Дварф NWN: Маппинг ![]() |
то minion
да можно=) только не забудь вместо **** поставить для stR.req3 ,stR.req4 тэги необходимых компонентов, а stR.rez - ресреф создаваемого итема :D :yes: и можно сделать так что бы обойтись и без поля int num; (неиспользовать) ..ведь в другом скрипте ты наверняка будешь делать проверку наличия компонентов для соотв крафта ...и там поставить условие типа если , скажем stR.req4=="" ( то есть пустой, не используется) то наличие компонента ( пустого компонента =)) есть.. =) но это уже так на любителя..можно иделать стакой структурой как ты создал =) |
![]()
Сообщение
#1250
|
|
Level 11 ![]() ![]() ![]() Класс: Обыватель Характер: True Neutral Раса: Человек NWN: Маппинг ![]() |
dumbo, все круто... но вот одна недоработочка - если таких неписей (которые хотят сест ьпосидеть) будет куча - то буит жутко тормозить (из-за хертбита) тем более, что помимо "садящихся" неписей ест ьи другие скрипты.
Поэтому, имхо, лучше переписать этот скрипт под юзердейфайнед... К тому же можно будет сразу делать проверку на то - сидит он или нет, и если нет - то скрипт вапще не выполялся (прерывался, не идя по следущим веткам) ;) З.Ы. Имхо так нада делать... но, возможно, я ошибаюсь? |
![]() ![]() |
Текстовая версия | Сейчас: 30th April 2025 - 06:52 |