![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#1141
|
|
Level 9 ![]() ![]() ![]() Класс: Страж Тьмы Характер: Chaotic Evil Раса: Нежить ![]() |
Есть такая проблема, при потере левела, игрок иногда остается в шмоте, который ему не по "размеру". Появилась идея, при респауне снимать и одевать вещи на игрока. Реально ли такое осуществить?
|
![]()
Сообщение
#1142
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
Да.
Через стоимость вещи вроде можно определить уровень. Где-то кто-то расписывал табличку такую. Сравнивай потом с уровнем игрока и все. |
![]()
Сообщение
#1143
|
|||
Level 5 ![]() ![]() Класс: Мастер Оружия Характер: Chaotic Neutral Раса: Полуорк ![]() |
Можно сделать просто вот такую функцию:
И использовать ее в нужном месте :) Она будет переодевать шмот и если что то будет не по лвлу, оно не оденется :) |
||
![]()
Сообщение
#1144
|
|||
![]() Класс: Обыватель Характер: Chaotic Good Раса: Человек NWN: Скриптинг [Sn] ![]() |
А топик "Ссылки" зачем? Там оно есть: Ссылка на пост с хаком лошадей. Наиболее качественные лошади. З.Ы. Lex, удали потом этот мой оффтоп, плз. |
||
![]()
Сообщение
#1145
|
|
Level 9 ![]() ![]() ![]() Класс: Страж Тьмы Характер: Chaotic Evil Раса: Нежить ![]() |
Buldog ,я как раз про это говорил, сенк ;)
|
![]()
Сообщение
#1146
|
|||||
Level 6 ![]() Класс: Страж Тьмы Характер: Lawful Good Раса: Баатезу ![]() |
Лекс Громадное спосибо. но вазникло опять куча вопросов. 1. возможно ли поменять ПК, т.е, Скриптом или чем другим переменить ПК на любого другого НПК.? Здравствуйте, дорогие ВРГшники, очень прошу мне помочь со скриптом. Дак вот в ХотУ был такой скрипт, желейный куб поглощает дроу, а дроу дёргается и превращается в скелета, и, наконец падает. Вопрос. Мне нужно поместить скрипт не как кут сцену, а на on Death, чтобы создавать людей которые при убийстве превращались в скелетов дергались и умирали, функции там были какие-то такие, я попробовал фигня не получается, может вы поможете мне, заранее спасибо.
Лекс нет, я имел ввиду в катсцене,! чтоб ПК сел. на опередённый стул. |
||||
![]()
Сообщение
#1147
|
|||||||||||||||
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
и что я тебе сказал, если там сценка?
Так то...
Чаво??? Превратить НПС в игрока и наоборот..во время игры? Нет. И необходимости никогда не было...
команда WRG является 1% от посетителей форума.. :) Форумчане уж тогда :)
эм..ты мне не рассказывай, как в ХОТУ, я не играл :) Надо, чтобы после смерти проигралась какая-то анимация (дерганье тобишь. Стоя они дергались или как?) и превращение в скелетов? анимация:
превращение..там скорее всего создание на этом месте нового существа - скелета. Это так:
|
||||||||||||||
![]()
Сообщение
#1148
|
|||
Level 9 ![]() ![]() ![]() Класс: Страж Тьмы Характер: Chaotic Evil Раса: Нежить ![]() |
Научите меня функцией ActionStartConversation пользоваться :) Необходимо сделать диалог с плэйсиблом. (хрустальный шар) пишу:
где l_plc_frostball - это имя диалога, ну и ResRef я думаю. Использую шар, диалога нет :xz: |
||
![]()
Сообщение
#1149
|
|||||
Level 5 ![]() ![]() Класс: Маг Характер: True Neutral Раса: Человек ![]() |
Достаточно просто на OnUsed
А диалог вставить в ->свойства плэйса -> улучшеный-> разговор |
||||
![]()
Сообщение
#1150
|
|
Level 9 ![]() ![]() ![]() Класс: Страж Тьмы Характер: Chaotic Evil Раса: Нежить ![]() |
Сейчас попробуемс...
Добавлено в [mergetime]1116686316[/mergetime] Убо-Сатло Не катит такой способ. Игрок просто подходит к шару и все. |
![]()
Сообщение
#1151
|
|||||
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
вот это ты сделал? Добавлено в [mergetime]1116687381[/mergetime]
это пашет - 100%. |
||||
![]()
Сообщение
#1152
|
|
Level 9 ![]() ![]() ![]() Класс: Страж Тьмы Характер: Chaotic Evil Раса: Нежить ![]() |
Конечно :yes: . Все поставил.
Сейчас еще проверю... Сообщение отредактировал Лито - May 21 2005, 18:04 |
![]()
Сообщение
#1153
|
|
Level 5 ![]() ![]() Класс: Маг Характер: True Neutral Раса: Человек ![]() |
Я могу предположить 2 варианта:
1) Твой плэйс расположен так, что PC не может его использовать(подойти к нему с нужной стороны на нужное расстояние). Когда кликаешь на него, в левом верхнем углу вылазит иконка движения. Если когда PC подошел к плэйсу, иконка не ушла, значит это так. 2) Ну, это на всякий случай, проверь, скрипт стоит на OnUsed? Диалог вставлен? Да, и есть ли еще на этом плэйсе какие-то скрипты? Если есть, то где? |
![]()
Сообщение
#1154
|
|
Level 9 ![]() ![]() ![]() Класс: Страж Тьмы Характер: Chaotic Evil Раса: Нежить ![]() |
Все я понял в чем дело...Дело в том что там 10 шаров и я не по тому целкал :swoon:
Новый вопрос у меня, дроп золота я сделал. Теперь у меня задача сделать дроп одной случаной вещи из инвенторя. Дальше возможны варианты выпадение вещи по ее стоимости или скажем выпадение одной одетой вещи(кстати дополнительный вопрос: как правильно говорить? Одетой и надетой? :)). (это когда игроки забивают всю сумку хламом...) |
![]()
Сообщение
#1155
|
|||||
Level 6 ![]() Класс: Страж Тьмы Характер: Lawful Good Раса: Баатезу ![]() |
Lex Большое спасибо, что помогаеш мне, но вотя в этих скриптах дуб дубком, немог бы ты описать более понятным для меня образом.
?????
?????
|
||||
![]()
Сообщение
#1156
|
|
Level 1 Класс: Чемпион Торма Характер: Lawful Good Раса: Человек ![]() |
Кто нибудь помогите. Делаю модуль по мотивам книг Ника Перумова - Хранитель мечей, точнее по миру описанному там.
Скриптер из меня никакой. Нужен скрипт: Герой умирает и переносится в межреальность, там общается и его отправляют назад в место где он погиб. За основу я взял скрипты (помоему от Аваддон"а),и чуть переделал. OnPlayerDying Герой без сознания. void bleed(int iBleedAmt) { effect eShake=EffectVisualEffect(VFX_FNF_SCREEN_SHAKE); effect eBleedEff; if (GetCurrentHitPoints() <= 3) { SpeakStringByStrRef (110519); if (iBleedAmt > 0) { eBleedEff = EffectDamage(iBleedAmt); } else { eBleedEff = EffectDamage(iBleedAmt); } ApplyEffectToObject(DURATION_TYPE_INSTANT, eBleedEff, OBJECT_SELF); if (GetCurrentHitPoints() <= -10) { ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectDeath(), OBJECT_SELF); return; } if (iBleedAmt > 0) { if (d10(1) == 1) { iBleedAmt = -iBleedAmt; } } } DelayCommand(6.0,bleed(iBleedAmt)); } void main() { effect eBlood=EffectVisualEffect(VFX_COM_CHUNK_RED_MEDIUM); object oDying = GetLastPlayerDying(); object oEnemy = GetLastAttacker(); float fWho = (GetFacing(oEnemy)); ApplyEffectAtLocation(DURATION_TYPE_TEMPORARY,eBlood, GetLocation(oDying), 10.0); AssignCommand(oDying, ClearAllActions()); AssignCommand(oDying, bleed(1)); CreateObject(OBJECT_TYPE_PLACEABLE,"bloody",GetLocation(oDying),TRUE); } Далее OnPlayerDeath Герой умирает и переносится в межреальность. void main() { object oPlayer = GetLastPlayerDied(); ApplyEffectAtLocation(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_IMP_DEATH), GetLocation(oPlayer)); ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectVisualEffect(VFX_DUR_PROTECTION_GOOD_MAJOR), oPlayer,6.0); DelayCommand(2.0,FadeToBlack(oPlayer)); DelayCommand(5.0,BlackScreen(oPlayer)); DelayCommand(5.5,ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectResurrection(),oPlayer)); DelayCommand(5.8,ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectHeal(GetMaxHitPoints(oPlayer)), oPlayer)); DelayCommand(6.0,AssignCommand(oPlayer,ClearAllActions())); DelayCommand(6.2,AssignCommand(oPlayer,JumpToLocation(GetLocation(GetObjectByTag("WP_RAISE"))))); } И еще в локации межреальности - куда перемещается мертвый игрок OnEnter void main() { object oPC = GetEnteringObject(); DelayCommand(2.0,FadeFromBlack(oPC,FADE_SPEED_SLOWEST)); } Огромная просьба, ПОМОГИТЕ!!! Допишите скрипт пожалуйста. P.S. Нужен еще один скрипт, который я поставлю на ветвь разговора. И чуть дописать скрипт на OnPlayerDeath. [COLOR=red][COLOR=red] |
![]()
Сообщение
#1157
|
|||||||
Level 9 ![]() ![]() ![]() Класс: Страж Тьмы Характер: Chaotic Evil Раса: Нежить ![]() |
Это просто пример функции. на место int OBJECT_TYPE_* - ставишь константу, типа объекта(плэйсибл, существо и т.д.) string ref - РесРеф создаваемого объекта. location lloc - куда объект создается. FALSE - эффект "появления". Например паук спускается по нити паутины... 2JesterX, гм...ты же сам все сделал. Сообщение отредактировал Лито - May 22 2005, 10:30 |
||||||
![]() ![]()
Сообщение
#1158
|
|||
Восставший из пепла ![]() ![]() ![]() Класс: Бледный Мастер Характер: Neutral Evil Раса: Человек ПОДМАСТЕРЬЕ ![]() |
Люди, памажите! Вот скрипт:
Но почему-то, когда НеПиСь выполняет команду ActionSit, то он больше не встает со стула! Почему же так происходит? Все компилится без проблем. Я пытался после этой ф-ии ставить ClearAllActions(), но непомогает. Так же пытался все преплести к DelayCommand, но толку никакого... :vava: Кто-нибудь знает в чем загвостка? ЗЫ Скрипт ставится в OnHeartBeat НеПиСя. Сообщение отредактировал Archangel - May 22 2005, 11:04 |
||
![]()
Сообщение
#1159
|
|||||||
Level 9 ![]() ![]() ![]() Класс: Страж Тьмы Характер: Chaotic Evil Раса: Нежить ![]() |
Вобщем система выпадения одной шмотки из слота при смерти PС и золота, была написана... Если кому интересно то вот:
Из игроков левелом 5 или меньше, вещи не падают, только золото. Есть шанс выпадения. У 10 -70%,у 20 уровня он равен 80%,у 30 - 90%, у 40%... Если вещей в слотах не было найдено, то тогда ничего не выпадает. Собственно есть задача с которой я не могу справится. Я хочу переписать систему смерти на шарде. При смерти игрока кидает в фугу, где он либо входит в портал, за что с него снимают n-кол-во XP, либо ждет пока его реснут(скастовав райз или резурект на труп, который создается на месте смерти.) Вот с момента воскрешения начинаются проблемы... Пробовал реализовать через стринги которые накладываются при смерти на труп и на игрока.
И если они равны, применять к игроку в фуге необходимые эффекты, но! я на 100% уверен, что -
уже не верно.
Даже не знаю как реализовать :xz: , помогайте мастера :shout: Сообщение отредактировал Лито - May 22 2005, 15:01 |
||||||
![]()
Сообщение
#1160
|
|
Level 9 ![]() Класс: Фея Характер: Chaotic Evil Раса: Тварь NWN: Скриптинг [PW] ![]() |
а причем тут GetNextPC()?! - это функция получения следущего объекта игрока при перечислении игроков. тебе надо при создании трупа игрока на объект трупа вешать ссылку на объект игрока. и потом при юзании резурректа на труп, читать с него переменную объекта игрока и уже с ней работать.
|
![]()
Сообщение
#1161
|
|||||
Level 9 ![]() ![]() ![]() Класс: Страж Тьмы Характер: Chaotic Evil Раса: Нежить ![]() |
dumbo, что надо использовать не GetNextPC() мне понятненько, а вот это: 1п.
- нет, как это сделать? Я надеюсь что пойму вот это: 2п.
Но для начала надо разобратся с 1п :xz: |
||||
![]()
Сообщение
#1162
|
|||||
Level 9 ![]() Класс: Фея Характер: Chaotic Evil Раса: Тварь NWN: Скриптинг [PW] ![]() |
где-то в подыхании игрока стоит что-то вроде:
и, соответственно, в тоем скрипте воскрешения:
ps. и юзайте irc-канал. там самое место для такого чата. :yes: |
||||
![]()
Сообщение
#1163
|
|||||||
Level 9 ![]() ![]() ![]() Класс: Страж Тьмы Характер: Chaotic Evil Раса: Нежить ![]() |
Собственно поставил на OnPlayerDeath
GetName(oPC), потому что делается для шарда, и локалка по идее должна отличатся от локалок других трупов. и написал вот такой скрипт на OnCastSpell трупа
Проверял так: Убивал сам себя, после чего пытался наложить райз или резурект на свой же труп. Эффект = 0. Где проблема опять же ума не приложу :xz: Добавлено в [mergetime]1116779131[/mergetime]
Да...пора бы уже настроить. |
||||||
![]()
Сообщение
#1164
|
|||||||||||
Level 9 ![]() Класс: Фея Характер: Chaotic Evil Раса: Тварь NWN: Скриптинг [PW] ![]() |
Лито, ты своим введением все и поломал. ;)
не должна она отличаться. у каждого трупа своя переменная "oOwner". ты же не путаешь свою ногу с чужой только от того, что они обе называются "нога"? потом еще момент - я писал определение GetSpellTargetObject(), потому как предполагал, что ты изменяешь скрипт спелла(общего). в пределах скрипта OnSpellCastAt это определение бессмысленно. вот эта твоя конструкция вообще не выдерживает никакой критики:
по идее, такое не должно компилиться. но тут огреха компилятора - собирает и не пикает. почему ты выставляешь экспу трупу - вообще загадка.. ;) причем, до этого уничтожаешь его(само уничтожение происходит, кстати, только после выхода из скрипта). ладно. от теории к практике: 1. в скрипте смерти вернуть то, что тебе предлагали:
2. скрипт в слот OnSpellCastAt:
3. скрипт "переодевания" - reequip.nss
ps. модифицировать это все нужно очень вкурчиво, следить за логикой и очередностью происходящих с объектами операций... :drag: |
||||||||||
![]()
Сообщение
#1165
|
|
Level 6 ![]() Класс: Страж Тьмы Характер: Lawful Good Раса: Баатезу ![]() |
Лито немогли бы вы показать целый скрипт, а то, я ничерта несмыслю.
Заранее спасибо. |
![]() ![]() |
Текстовая версия | Сейчас: 14th May 2025 - 06:12 |