![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#2611
|
|
Level 3 ![]() Класс: Тайный Лучник Характер: Chaotic Good Раса: Дракон ![]() |
Короче бился-бился, но так и не удалось (IMG:style_emoticons/kolobok_light/banned.gif) создать систему отдыха.
Идея такая - Отдыхать на природе по системе HotU. Отдыхать в городе можно, однако только ночью и в 50% шансов около тебя появляется страж и прерывает твой отдых, днём же прерывается. Отдыхать в зданиях можно только на кроватях (в "диалоге" с кроватью), остальной отдых автоматически прерывается ClearAllActions(). Ничего не удалось (IMG:style_emoticons/kolobok_light/crazy.gif) всё глючит (IMG:style_emoticons/kolobok_light/crazy.gif) Дело в том, что проверка на exterior/interior бесполезна, ибо город тоже экстериор. А отдых на кроватях прерывается также, как и не на ней. (Установка/проверка переменных тоже не помогает) Может кто-нибудь поможет ? |
![]()
Сообщение
#2612
|
|
Level 19 ![]() Класс: Воин Характер: Lawful Good Раса: Человек NWN: Скриптинг [Sn] ![]() |
Скрипт отдыха в студию.
|
![]() ![]()
Сообщение
#2613
|
|
Лорд AxisTown'a ![]() Класс: Монах Характер: Lawful Good Раса: Дварф NWN: Маппинг ![]() |
QUOTE Отдыхать в городе можно, однако только ночью и в 50% шансов около тебя появляется страж и прерывает твой отдых, днём же прерывается. Отдыхать в зданиях можно только на кроватях (в "диалоге" с кроватью), остальной отдых автоматически прерывается ClearAllActions(). самоое простое, что приходит на ум - через свич сделай 2 списка с ресрефами и\ или тегами лок : список лок городских( где стражник может пробудить- а ведь это не все горлские места-врятли разрешит спать например , на центральной площади у храма а где нить в трущобах-другое дело, которче говоря к свичу еще неплохо добавить небольшую структуру с ресрефом локи и вероятностью 1-99%) и список лок, где вообще какая нить кровать находиться... а потом проверять по списку мона или нийзя- сразу массу неосответствующих отметет, а потом уже дальше проверяй другие условия (IMG:style_emoticons/kolobok_light/biggrin.gif) но , чтобы разобраться с тонкостям неработы , QUOTE Скрипт отдыха в студию. (с) феникс |
![]()
Сообщение
#2614
|
|
Level 3 ![]() Класс: Тайный Лучник Характер: Chaotic Good Раса: Дракон ![]() |
Пока так и не понял как разделить всё это на группы (IMG:style_emoticons/kolobok_light/blush.gif) всмысле город, внешняя местность и дом.
И - вопрос такой - почему вызываются 2 стража, вместо одного (IMG:style_emoticons/kolobok_light/biggrin.gif) Скрипт на OnPlayerRest (ТОЛЬКО ГОРОД) (сc_rest_cheking) NSS void main() { object oPC = GetFirstPC(); int i = (Random(100)); if (i < 50) { DelayCommand(0.0, ExecuteScript("cc_rest_town", oPC)); } if (i > 50) { DelayCommand(0.0, ExecuteScript("cc_rest_guards", oPC)); } } Cкрипт с охранниками (cc_rest_guards): NSS void main() { object oPC = GetFirstPC(); object oTarget; object oSpawn; location lTarget; oTarget = oPC; DelayCommand(0.0, FadeToBlack(oPC)); DelayCommand(1.0, StopFade(oPC)); lTarget = GetLocation(oTarget); oTarget = CreateObject(OBJECT_TYPE_CREATURE, "rest_cc_guard", lTarget); AssignCommand(oTarget, ActionStartConversation(oPC, "")); } Нормальный отдых в городе (cc_rest_town): NSS void main()
{ object oPC = GetFirstPC(); DelayCommand(1.0, FadeToBlack(oPC)); DelayCommand(10.0, FadeFromBlack(oPC)); } Сообщение отредактировал Solmyr2000 - Nov 13 2006, 17:13 |
![]()
Сообщение
#2615
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
у меня есть автоопределения типа в системе отдыха (разделяет город и дикую местность), но вообще я пользуюсь системой поинтов. (в каждой локе поинт, который хранит настройки для данной локации.. тип зоны, параметры дикого отдыха, общелокационный запрет/разрешение отдыха, радиус поиска энкаунтеров при опасном отдыхе). Правда там отдых скрещен еще с ожиданием (потому что игровые часы имеют значение) и есть подготовка ко сну (в дикой местности постановка лагеря, в городе просто игрок кладет подстилку)
|
![]()
Сообщение
#2616
|
|
Level 4 ![]() ![]() Класс: Клерик Характер: Lawful Neutral Раса: Человек ![]() |
Прет всем, сори за вмешательство.
По отдыху: а нельзя ли геру при вхождении в триггер местности отдыха присваивать ТРУЕ (IMG:style_emoticons/kolobok_light/crazy.gif) , а после отбытия ФАЛЬСЕ (IMG:style_emoticons/kolobok_light/crazy.gif) ? А в свойствах мода OnRest проверять этот параметр если он ФАЛЬСЕ, то прерывать? А вообще такой вопрос? Как сделать, чтобы в скриптах взрывов (баллиста, катапульта, мины) при определении цели учитывалась геометрия местности - чтоб файрболы не летели сквозь стены. Когда создаешь локацию - там же в скриптах нет никакой проверки на геометрию местности - и она может вполне создасться внутри стены или внутри холма и там все и взорвется...Как то нехорошо...Нет ли че-нить учитывающего это? |
![]()
Сообщение
#2617
|
|
![]() Класс: Пьяный Мастер Характер: Lawful Good Раса: Тварь MySQL, PHP, JavaScript Порядок Времени ![]() |
а в локациях, где возможно прерывание отдыха с какой-то вероятностью, присваивать почти true (IMG:style_emoticons/kolobok_light/crazy.gif)
|
![]()
Сообщение
#2618
|
|
Level 4 ![]() ![]() Класс: Клерик Характер: Lawful Neutral Раса: Человек ![]() |
QUOTE(NeoJSmith @ Nov 18 2006, 14:57) [snapback]98428[/snapback] а в локациях, где возможно прерывание отдыха с какой-то вероятностью, присваивать почти true (IMG:style_emoticons/kolobok_light/crazy.gif) не тупи (IMG:style_emoticons/kolobok_light/crazy.gif) (IMG:style_emoticons/kolobok_light/crazy.gif) (IMG:style_emoticons/kolobok_light/crazy.gif) (IMG:style_emoticons/kolobok_light/crazy.gif) |
![]()
Сообщение
#2619
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
QUOTE(r1Stranger @ Nov 18 2006, 14:26) [snapback]98429[/snapback] не тупи если ты не понимаешь ничего в многозначной логике, это не значит, что ее нет. зы: это была шутка, если плохо доходит (IMG:style_emoticons/kolobok_light/smile.gif) QUOTE(r1Stranger @ Nov 18 2006, 13:45) [snapback]98427[/snapback] По отдыху: а нельзя ли геру при вхождении в триггер местности отдыха присваивать ТРУЕ (IMG:style_emoticons/kolobok_light/crazy.gif) , а после отбытия ФАЛЬСЕ (IMG:style_emoticons/kolobok_light/crazy.gif) ? А в свойствах мода OnRest проверять этот параметр если он ФАЛЬСЕ, то прерывать? так обычно и делают. QUOTE(r1Stranger @ Nov 18 2006, 13:45) [snapback]98427[/snapback] А вообще такой вопрос? Как сделать, чтобы в скриптах взрывов (баллиста, катапульта, мины) при определении цели учитывалась геометрия местности - чтоб файрболы не летели сквозь стены. Когда создаешь локацию - там же в скриптах нет никакой проверки на геометрию местности - и она может вполне создасться внутри стены или внутри холма и там все и взорвется...Как то нехорошо...Нет ли че-нить учитывающего это? нормально проверить не сможешь. Ненормально тоже. Я взрывы делал в рандомной точке около расставленных поинтов, было нормально. |
![]()
Сообщение
#2620
|
|
Level 4 ![]() ![]() Класс: Клерик Характер: Lawful Neutral Раса: Человек ![]() |
QUOTE(Lex @ Nov 18 2006, 17:04) [snapback]98434[/snapback] нормально проверить не сможешь. Ненормально тоже. Я взрывы делал в рандомной точке около расставленных поинтов, было нормально. Спасібо. Се, без флуда больше. По взрывам. Еслі в скріптах геометрію местності нікак не проверіть - не подскажіте лі (хотя б прімерно) формулу полета ядра із катапульты. Чтоб через определенный шаг правільно проверять налічіе целі. А то вначале полета все норм (есі сам вперед катапульты во время выстрела сунешься, то взрыв все вокруг расхерачіт включая саму катапульту), а потом отклоенніе ідет. А то очень хочется не по намеченным точкам стелять,перебірая іх, а в завісiмості от меткості стреляющего. (2стрелка/4 катапульты и локация 20/20 за 5 мин зачищена) |
![]()
Сообщение
#2621
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
за форумулой - тебе к физикам-кинетикам. Но вообще тут это и не нужно, ты задаешь тип движения (балистика) и цель. Меткость и прочие навыки можешь включить на уровне расчета радиуса отклонения от точки (чем стреляющий круче, тем меньше радиус и точнее выстрел). Расчитав радиус и взяв цель в качестве центра, расчитываешь случайную точку, куда в итоге полетит снаряд. И усе, вперед.
зы: есть ограничения в плане растояния полета, но я их уже на память не помню. |
![]()
Сообщение
#2622
|
|
Level 12 ![]() Класс: Оборотень Характер: Chaotic Neutral Раса: Нежить NWN: Скриптинг [Sn] ![]() |
формула полета ядра из катапульты: парабола, подробно см. глобальную школьную книжку "Алгебра".
|
![]()
Сообщение
#2623
|
|
Level 4 ![]() ![]() Класс: Клерик Характер: Lawful Neutral Раса: Человек ![]() |
QUOTE(azathoth @ Nov 23 2006, 19:17) [snapback]98989[/snapback] формула полета ядра из катапульты: парабола, подробно см. глобальную школьную книжку "Алгебра". Спасибо. Буду все додумывать сам. А по рандомным точкам все равно не хочется стрелять. Проблема в чем - на плоскости все идет как надо - все зависит от наводки и меткости - куда направлю и как далеко заряжу туда и летит и там взрывается (IMG:style_emoticons/kolobok_light/crazy.gif) (IMG:style_emoticons/kolobok_light/crazy.gif) , тут чисто и без вопросов. А ВОТ КОГДА идет штурм Форта - ядра сквозь стены летают (IMG:style_emoticons/kolobok_light/crazy.gif) (IMG:style_emoticons/kolobok_light/crazy.gif) Приколно смотрится. (IMG:style_emoticons/kolobok_light/crazy.gif) (IMG:style_emoticons/kolobok_light/crazy.gif) Но ето ладно - типа если в стену, значит не попал, а если на стене стрелок-защитник, то хотелось бы его в эту пораболу полета ядра и стовить, чтоб он как цель отмечался. А то локацию взрыва надо создавать в точке цели как никак. ЗЫ Просто хочется штурм переходящих нейтральных (типа завоевал форт - и он за тебя) фортов красивше сделать. |
![]() ![]()
Сообщение
#2624
|
|
Лорд AxisTown'a ![]() Класс: Монах Характер: Lawful Good Раса: Дварф NWN: Маппинг ![]() |
QUOTE object oPC = GetFirstPC(); ммм а почему при ресие не используешь // Get the last PC that has rested in the module. object GetLastPCRested() QUOTE Пока так и не понял как разделить всё это на группы всмысле город, внешняя местность и дом. ну я же писал - сделай просто свича с списком 1) лок которые у тя город 2) лок у которые у тя дома а остальные автоматом у тя будет дикой местностью (IMG:style_emoticons/kolobok_light/biggrin.gif) .... вот примерно такой маленький инклюд NSS /////////////////////////////////////////
// Rest area base // filename : ??????????? ///////////////////////////////////////// struct stRestarea { int nr; int type; int police string name; string tag; }; /////////////////////////////////////// // type = 0 wild area (default) // type = 1 gorod+ strazhnik // type = 2 dom s krovatju // police 1-99% /////////////////////////////////////// struct stRestarea GetSpecRestArea(int nNr) { struct stRestarea stA; stA.nr = nNr; switch (nNr) { case 1: stA.name = "gorod 1"; stA.type = 1; stA.police = 50; stA.tag = "areatag1"; break; case 2: stA.name = "gorod 2-centr"; stA.type = 1; stA.police = 95; stA.tag = "areatag2"; break; case 3: stA.name = "dom 1"; stA.type = 2; stA.police = 0; stA.tag = "areatag3"; break; } return stA; } int CheckSpecRestArea(string sAreatag) { struct stRestarea stArea; int nSpecAreaCount = 3; int i, nRez; for (i=1;i<=nSpecAreaCount;i++) { stArea = GetSpecRestArea(i); if (sAreatag==stA.tag) { nRez = i; } } return nRez; } Сообщение отредактировал mamuc - Nov 24 2006, 14:49 |
![]()
Сообщение
#2625
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
ууу.. ну тут все немного похуже. Летит то она скорее всего по параболике, но параметры какие у функции никто кроме тварей не знает, хотя это не беда - можно расчитать по 2м точкам. (старт и финиш собсна). Потом делается анализ координат НПС по отношению к функции траектории полета (фактически нужно оценить длину нормали, опущенной из точки на параболику), и если он оказываются в опасной зоне (те нормаль меньше критического значения), происходит редирект с точки на данного несчастливого НПС. И все.. но заставить снаряд лететь как летел и сымитировать взрыв от ударв в НПС у тя не получится... те это можно но с таким допущением: снаряд полетит дальше, а вот сам взрыв будет у НПС.
Но подумай, надо ли тебе такой геморой. Конечно круто, но это один небольшой эпизод, который и не все игроки то заметят. ------------- Мамук, это жость... у тебя у лок всего 3 разных тэга? (IMG:style_emoticons/kolobok_light/smile.gif) |
![]() ![]()
Сообщение
#2626
|
|
Лорд AxisTown'a ![]() Класс: Монах Характер: Lawful Good Раса: Дварф NWN: Маппинг ![]() |
QUOTE Мамук, это жость... у тебя у лок всего 3 разных тэга? цэ пример (IMG:style_emoticons/kolobok_light/biggrin.gif) (сделаный на скорую руку) ...а такие свичи реально гораздо длинее (IMG:style_emoticons/kolobok_light/biggrin.gif) человек, который это будет применять, сам допишет все свои спец локи, которые нужно .. и еще типы добавит скоко надо .. и структуру поменяет под свои нужды (IMG:style_emoticons/kolobok_light/moil.gif) (IMG:style_emoticons/kolobok_light/biggrin.gif) Сообщение отредактировал mamuc - Nov 24 2006, 15:50 |
![]()
Сообщение
#2627
|
|
Level 3 ![]() Класс: Самурай Характер: Neutral Evil Раса: Человек ![]() |
Не подскажите, есть ли скрипт не позволяющий сразу прыгнуть в локу как только загрузилась следующая? Тоесть прыгаеш в локу появляешся, но сразу-же обратно прыгнуть не можеш, а к примеру по истечении 6ти секунд.
|
![]()
Сообщение
#2628
|
|
Level 9 ![]() Класс: Обыватель Характер: Lawful Good Раса: Человек NWN: Модмейкер Рыцарская Сага ![]() |
NSS // ДЛЯ ДВЕРЕЙ И ТРИГГЕРОВ void main() { object oPoint = GetTransitionTarget(OBJECT_SELF); // Точка перемещениЯ object oPC = GetFirstPC(); // Наш ПС if (GetLocalInt(oPC, "AREA_BLOK") == 1) return; // Выход из скрипта AssignCommand(oPC, ClearAllActions()); // Чистим акции AssignCommand(oPC,ActionJumpToObject(oPoint)); // Прыгаем в нужное место } // помещать в слот OnClick OnAreaTransitionClick // если триггер, то поставить галку нет точки перемещения. На вход области NSS void main()
{ object oPC = GetEnteringObject(); if (!GetIsPC(oPC)) return; SetLocalInt(oPC,"AREA_BLOK",1); DelayCommand(6.0, SetLocalInt(oPC,"AREA_BLOK",0)); } Сообщение отредактировал gennady - Nov 26 2006, 16:03 |
![]()
Сообщение
#2629
|
|
Level 3 ![]() Класс: Самурай Характер: Neutral Evil Раса: Человек ![]() |
Понял. Спасибо.
|
![]()
Сообщение
#2630
|
|
Level 3 ![]() Класс: Самурай Характер: Neutral Evil Раса: Человек ![]() |
Подскажите, можно ли проскриптить чтоб друид смог кастить в формах, или к примеру в одной форме?
|
![]()
Сообщение
#2631
|
|
Level 4 ![]() ![]() Класс: Клерик Характер: Lawful Neutral Раса: Человек ![]() |
QUOTE(Lex @ Nov 24 2006, 15:48) [snapback]99068[/snapback] ууу.. ну тут все немного похуже. Летит то она скорее всего по параболике, но параметры какие у функции никто кроме тварей не знает, хотя это не беда - можно расчитать по 2м точкам. (старт и финиш собсна). Потом делается анализ координат НПС по отношению к функции траектории полета (фактически нужно оценить длину нормали, опущенной из точки на параболику), и если он оказываются в опасной зоне (те нормаль меньше критического значения), происходит редирект с точки на данного несчастливого НПС. И все.. но заставить снаряд лететь как летел и сымитировать взрыв от ударв в НПС у тя не получится... те это можно но с таким допущением: снаряд полетит дальше, а вот сам взрыв будет у НПС. Но подумай, надо ли тебе такой геморой. Конечно круто, но это один небольшой эпизод, который и не все игроки то заметят. При стрельбе из баллисты - да, херня пока выходит. Но с катапультой у меня все получилось. Проводил испытательные стрельбы по двухуровневому замку. Все потенциальные противники успешно поражены. Полеты ядра при попаданиях нормальные (а если никого нет в локации, то то что заряд на высоте сквозь стену проходит - не беда! Не попал, значит!). При одноуровневом замке - и того проще. Попадание в стену разочарований больших не вызывает, а перелет - взрыв во дворе замка. Вот мой скрипт на выстрел из катапульты: (Формула горбатая, но зато выведенная эксперементальным путем. И можно улучшить при желании.) NSS #include "cat_damage" void main() { object oCurrentArea = GetArea(OBJECT_SELF); object oPC = GetPCSpeaker(); object oBomber = GetLastUsedBy(); vector vCurrentPosition = GetPosition(OBJECT_SELF); float fCurrentFacing = GetFacing(OBJECT_SELF); /*int iRange = GetLocalInt(OBJECT_SELF,"Range");*/ float varz = 0.5; SetLocalInt(OBJECT_SELF,"high",FloatToInt(varz)); if (fCurrentFacing > 360.0) { fCurrentFacing = 720 - fCurrentFacing; } /* ActionWait(10.0);*/ int iRange = 0; SetLocalInt(OBJECT_SELF,"line",iRange); vector vDelta; vDelta.x = cos(fCurrentFacing) * iRange; vDelta.y = sin(fCurrentFacing) * iRange; vDelta.z = varz; vector vImpact; vImpact.x = vCurrentPosition.x + vDelta.x; vImpact.y = vCurrentPosition.y + vDelta.y; vImpact.z = vDelta.z; vector vImpact1 = vImpact; location lImpact = Location(oCurrentArea, vImpact, fCurrentFacing); object oTarget = GetFirstObjectInShape(SHAPE_SPHERE,6.0,lImpact,TRUE,OBJECT_TYPE_DOOR | OBJECT_TYPE_PLACEABLE | OBJECT_TYPE_CREATURE); if (GetIsObjectValid(oTarget)) { if (GetDistanceToObject(oTarget)<=6.5 || GetIsDead(oTarget)) { oTarget = OBJECT_INVALID; } } while (oTarget==OBJECT_INVALID && iRange < GetLocalInt(OBJECT_SELF,"Range") && LineOfSightVector(vImpact1,vImpact)==TRUE && GetLocalInt(OBJECT_SELF,"high")>=0) { iRange = GetLocalInt(OBJECT_SELF,"line")+2; SetLocalInt(OBJECT_SELF,"line",iRange); if (FloatToInt(iRange * 1.66) <= GetLocalInt(OBJECT_SELF,"Range")) { varz = GetLocalInt(OBJECT_SELF,"high")+1.9; SetLocalInt(OBJECT_SELF,"high",FloatToInt(varz)); } else { if (FloatToInt(iRange * 1.5) <= GetLocalInt(OBJECT_SELF,"Range")) { varz = IntToFloat(GetLocalInt(OBJECT_SELF,"high")); SetLocalInt(OBJECT_SELF,"high",FloatToInt(varz)); } else { varz = GetLocalInt(OBJECT_SELF,"high")-3.2; if (varz<0.3) { varz =0.3; } SetLocalInt(OBJECT_SELF,"high",FloatToInt(varz)); } } vector vDelta; vDelta.x = cos(fCurrentFacing) * iRange; vDelta.y = sin(fCurrentFacing) * iRange; vDelta.z = varz; vector vImpact; vImpact.x = vCurrentPosition.x + vDelta.x; vImpact.y = vCurrentPosition.y + vDelta.y; vImpact.z = vDelta.z; lImpact = Location(oCurrentArea, vImpact, fCurrentFacing); oTarget = GetNextObjectInShape(SHAPE_SPHERE,6.0,lImpact,TRUE,OBJECT_TYPE_DOOR | OBJECT_TYPE_PLACEABLE | OBJECT_TYPE_CREATURE); if (GetIsObjectValid(oTarget)) { if (GetDistanceToObject(oTarget)<=6.5 || GetIsDead(oTarget)) { oTarget = OBJECT_INVALID; } } } if (oTarget != OBJECT_INVALID) { lImpact = GetLocation(oTarget); SpeakString("Цель в фокусе:"+GetName(oTarget),TALKVOLUME_TALK); } float fImpactDelay = IntToFloat(iRange)/12; effect eImpact = EffectVisualEffect(VFX_FNF_FIREBALL); effect eBump = EffectVisualEffect(VFX_FNF_SCREEN_BUMP); ActionCastFakeSpellAtLocation(SPELL_FIREBALL, lImpact, PROJECTILE_PATH_TYPE_BALLISTIC); ActionWait(fImpactDelay); ActionDoCommand(ApplyEffectAtLocation(DURATION_TYPE_INSTANT, eImpact, lImpact)); ActionDoCommand(ApplyEffectAtLocation(DURATION_TYPE_INSTANT, eBump, lImpact)); DelayCommand(fImpactDelay,cDamage(lImpact,oBomber)); } Инклуд - для функции cDamage(lImpact,oBomber). Чтоб не загромождать не буду его писать. Если напишите - приведу потом. Его нетрудно и самим дописать как угодно. Для настройки CurrentFacing и GetLocalInt(OBJECT_SELF,"Range") - свои несложные функции. ***К слову - все свершается через диалог и выстрел и повороты/регулировка дальности, вид ядер и тд В догонку - тут еще проблемы! (IMG:style_emoticons/kolobok_light/crazy.gif) (IMG:style_emoticons/kolobok_light/crazy.gif) (IMG:style_emoticons/kolobok_light/crazy.gif) Как ее (баллисту) установить и создать?? Что то CreateObject на заказные объекты не работает никак. А то все зря (IMG:style_emoticons/kolobok_light/vava.gif) И еще: а как свои звуки вставлять в игру - куда копировать ресурсы? |
![]()
Сообщение
#2632
|
|
Level 5 ![]() Класс: Обыватель Характер: Lawful Neutral Раса: Человек NWN: Модмейкер Проклятие Левора Порядок Времени ![]() |
ну.. если тебе надо заранее поставить - то простов тулсете поставь (IMG:style_emoticons/kolobok_light/smile.gif) там в палитре думаю сам знаешь
А если динамически через скрипт делать, то CreateObject. Только предварительно ты создай свою балисту в палитре, с уникальным тэгом, рефом, закрепленными скриптами и диалогом. Н |
![]()
Сообщение
#2633
|
|
Level 3 ![]() Класс: Самурай Характер: Neutral Evil Раса: Человек ![]() |
Так некто подсказать не может, как можно зделать чтоб друид кастил в форме?
Сообщение отредактировал Адонтос - Dec 6 2006, 23:02 |
![]()
Сообщение
#2634
|
|
Level 4 ![]() ![]() Класс: Клерик Характер: Lawful Neutral Раса: Человек ![]() |
QUOTE(Lex @ Dec 4 2006, 17:25) [snapback]99795[/snapback] ну.. если тебе надо заранее поставить - то простов тулсете поставь (IMG:style_emoticons/kolobok_light/smile.gif) там в палитре думаю сам знаешь А если динамически через скрипт делать, то CreateObject. Только предварительно ты создай свою балисту в палитре, с уникальным тэгом, рефом, закрепленными скриптами и диалогом. Н А реф обязательно уникальный? Создал балисту со своим тегом и пробую создатоь - и ниче не получается. Что это может быть? Скрипт создания такой: void DelayCreate(int iType, string sRes, location lLoc) { CreateObject(iType, sRes, lLoc); } void main() { object oItem = GetItemActivated(); if (GetTag(oItem)=="catapult_unuseable") { object oBomber = GetItemActivator(); DestroyObject(oItem,1.0); DelayCommand(2.0, DelayCreate(OBJECT_TYPE_PLACEABLE,"Catapult_my", GetLocation(oBomber))); FloatingTextStringOnCreature("Собрана катапульта",oBomber,FALSE); } } |
![]()
Сообщение
#2635
|
|
Level 4 ![]() ![]() Класс: Некромант Характер: Chaotic Evil Раса: Нежить ![]() |
To Адонтос, да скорее всего никак, ИМХО, это движковое, хотя... Возможно я ошибаюсь (IMG:style_emoticons/kolobok_light/pleasantry.gif)
To r1Stranger, насчет звуков; - Формат WAV; - Oбязательно Mono; Запаковываем все в хак, подключаем выбераем нужные звуки. (IMG:style_emoticons/kolobok_light/smile.gif) А по поводу катапульты; QUOTE DelayCommand(2.0, DelayCreate(OBJECT_TYPE_PLACEABLE,"Catapult_my", GetLocation(oBomber))); Функция CreateObject, работает по ResRef'y, а он как известно не может начинатся с заглавной буквы. (IMG:style_emoticons/kolobok_light/wink3.gif) Сообщение отредактировал Waromon - Dec 16 2006, 12:49 |
![]() ![]() |
Текстовая версия | Сейчас: 29th April 2025 - 19:18 |