![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#4426
|
|
Level 3 ![]() Класс: Воин Характер: True Neutral Раса: Эльф ![]() |
Извиняюсь за глупые вопросы, но..
1) Как сделать так, чтобы NPC, ходящие по точкам ночью исчезали (или засыпали) 2) Как организовать их активность? (Как в тавернах там каких-нибудь, чтобы они между собой разговаривали или просто двигались и т.п.) 3) Как выключить на ночь свет? (Колонны света, магические вспышки..) Я пытался поставить вот это 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); } } } но ничего не вышло (IMG:style_emoticons/kolobok_light/unsure.gif) |
![]()
Сообщение
#4427
|
|
Level 9 ![]() Класс: Обыватель Характер: Lawful Good Раса: Человек NWN: Модмейкер Рыцарская Сага ![]() |
1) Как сделать так, чтобы NPC, ходящие по точкам ночью исчезали (или засыпали) 2) Как организовать их активность? (Как в тавернах там каких-нибудь, чтобы они между собой разговаривали или просто двигались и т.п.) http://remmgen.narod.ru/tmonster.html 3) Как выключить на ночь свет? http://remmgen.narod.ru/tplace.html |
![]()
Сообщение
#4428
|
|
Level 3 ![]() Класс: Воин Характер: True Neutral Раса: Эльф ![]() |
Как сделать так, чтобы NPC лежал на земле (а лучше на алтаре) весь израненый и полуживой, но потом с ним можно было поговорить (при этом он вставал или садился на край алтаря), и он исчез (с анимацией телепортации)?
|
![]()
Сообщение
#4429
|
|
Level 6 ![]() ![]() Класс: Маг Характер: Lawful Evil Раса: Нежить ![]() |
Neverwinter Script void main() { effect eKnock = EffectKnockdown(); ApplyEffectToObject(DURATION_TYPE_PERMANENT,Effect Damage(3), OBJECT_SELF); // Нанести урон в количестве 3 ApplyEffectToObject(DURATION_TYPE_PERMANENT, eKnock, OBJECT_SELF); } На onSpawn; это положит объект в состояние еле живой и снесет ему сколько-то хитов. Можно говорить. На алтарь положить - вряд ли, размещаемые объекты pc и npc не держат, только если алтарь будет являться частью локации. Ну а про излишества навроде "садился на край" - в каком мире мы живем, набор анимаций в нвне строго ограничен. Со второй частью хз, что тебе требуется. Если исчезать будет в диалоге, то где-то на ветку диалога и вешать, перемещение - смотреть функцию ActionJumpToObject, эффекты - ApplyEffectToObject и таблицу константы либо лексикон для выбора нужных визуальных эффектов, которые сойдут за телепортацию. |
![]()
Сообщение
#4430
|
|
Level 2 ![]() Класс: Псионик Характер: Chaotic Evil Раса: Чудовище ![]() |
// OnSpawn
void main() { ApplyEffectToObject(OBJECT_SELF, EffectDamage(GetCurrentHitPoints(OBJECT_SELF) - 1); AssigCommand(OBJECT_SELF, ActionPlayAnimation(ANIMATION_LOOPING_DEAD_BACK, 1.0, 100000.0)); } На OnConversation(или где-нибудь на старте диалога) вешать AssignCommand(OBJECT_SELF, ActionSit(GetNearestObjectByTag("тег_невидимого обьекта"))); // невидимый обьект на котором будем сидеть, вроде есть в стандартной палитре, ставим его на край алтаря или куда мы там хотим садиться. |
![]()
Сообщение
#4431
|
|
Level 6 ![]() ![]() Класс: Маг Характер: Lawful Evil Раса: Нежить ![]() |
Да уж. Сам-то пробовал? Мало того, что он не соберется из-за опечаток и неправильного оформления функции, так еще и фактические ошибки. Во-первых, событие на onSpawn, оно не нуждается в AssignCommand(OBJECT_SELF... , так как само по себе уже выполняется объектом, вызвавшим скрипт. Во-вторых, анимация сбросится после первого же обращения к НПС.
А посадить на алтарь с помощью невидимого объекта кстати вряд ли получится - персонажи фиксированы по z-координате, поэтому в самом лучшем случае нпс просто будет торчать из середины объекта. Сообщение отредактировал Talarasha - Dec 3 2010, 10:43 |
![]()
Сообщение
#4432
|
|
Level 2 ![]() Класс: Псионик Характер: Chaotic Evil Раса: Чудовище ![]() |
Не пробовал, вполне могут быть опечатки. Что не так с оформлением? С AssignCommand просто привык, а анимацию можно ресторить на других событиях. Алтарь да, по-другому думаю никак, только эти костыли.
|
![]()
Сообщение
#4433
|
|
Level 6 ![]() ![]() Класс: Маг Характер: Lawful Evil Раса: Нежить ![]() |
Цитата Что не так с оформлением? Neverwinter Script void ApplyEffectToObject(int nDurationType, effect eEffect, object oTarget, float fDuration=0.0f) Сравни со своим вариантом. Цитата а анимацию можно ресторить на других событиях. Вопрос - а зачем? Эффективность кода не растет вместе с искуственным наращиванием его сложности. |
![]()
Сообщение
#4434
|
|
Level 2 ![]() Класс: Псионик Характер: Chaotic Evil Раса: Чудовище ![]() |
Затем чтобы решить поставленную задачу.
Цитата чтобы NPC лежал на земле И причем тут эффективность кода? (IMG:style_emoticons/kolobok_light/wacko.gif) |
![]()
Сообщение
#4435
|
|
Level 6 ![]() ![]() Класс: Маг Характер: Lawful Evil Раса: Нежить ![]() |
Цитата Затем чтобы решить поставленную задачу. И причем тут эффективность кода? Притом, что делать один кривой скрипт, реализованный через костыль с временным ограничением, сбрасывающий анимацию после каждого обращения и требующий дополнительного скрипта для восстановления анимации гораздо менее эффективно, чем сделать один нормальный скрипт того же размера. Сообщение отредактировал Talarasha - Dec 3 2010, 14:09 |
![]()
Сообщение
#4436
|
|
Level 2 ![]() Класс: Псионик Характер: Chaotic Evil Раса: Чудовище ![]() |
У нас разные понятия об эффективности кода.
Кстати, покажешь этот нормальный скрипт? Только не тот который кночит чара. |
![]()
Сообщение
#4437
|
|
Level 6 ![]() ![]() Класс: Маг Характер: Lawful Evil Раса: Нежить ![]() |
Ну, в принципе... если требуется именно анимация на спине, тогда да, это вполне разумный вариант.
|
![]()
Сообщение
#4438
|
|
Level 2 ![]() Класс: Вор Характер: Lawful Good Раса: Человек ![]() |
У меня возник такой вопрос даже 2
1- Как привезать скрипт к свитку ? 2- Как поставить огранечение по уровню к томуже свитку ? Заранее при много блогодарен |
![]()
Сообщение
#4439
|
|
Level 2 ![]() Класс: Псионик Характер: Chaotic Evil Раса: Чудовище ![]() |
1. В скрипте события загрузки модуля('OnModuleLoad') пишем эту
Neverwinter Script SetModuleSwitch (MODULE_SWITCH_ENABLE_TAGBASED_SCRIPTS, TRUE); строчку, потом создаем скрипт с таким же именем как тег у свитка. Копируем в скрипт вот это http://pastie.org/pastes/1359105/text (украдено с lexicon'а) и дописываем по своему желанию.2. Ограничение по уровню ставим в том же скрипте функцией GetHitDice() либо если включен ILR, в св-вах шмотки накручиваем стоимость. |
![]()
Сообщение
#4440
|
|
Level 6 ![]() ![]() Класс: Клерик Характер: Chaotic Neutral Раса: Животное ![]() |
Копируем в скрипт вот это http://pastie.org/pastes/1359105/text (украдено с lexicon'а) Стоит добавить, что если используются дефолтные скрипты в слотах OnEquip - x2_mod_def_equ OnUnEquip - x2_mod_def_unequ OnAcquire - x2_mod_def_aqu OnUnAcqucire - x2_mod_def_unaqu OnActivate - x2_mod_def_act То копировать ничего не надо. А если кастомные, тогда или копировать в каждый новый скрипт, то что в ссылке (что муторно) или просто вызвать с кастомных скриптов, соответствующие дефолтные |
![]()
Сообщение
#4441
|
|
Level 2 ![]() Класс: Вор Характер: Lawful Good Раса: Человек ![]() |
Что то я вообше не догнал
Можно по подробнее сам скрипт куда пехать тег придмета А на счёт OnModuleLoad куда сунуть SetModuleSwitch (MODULE_SWITCH_ENABLE_TAGBASED_SCRIPTS, TRUE); У меня вот такой: Neverwinter Script // HCR v3.2.0 -
//:://////////////////////////////////////////////////////////////////////////// //:: FileName: HC_On_Mod_Load //:://////////////////////////////////////////////////////////////////////////// /* */ //:://////////////////////////////////////////////////////////////////////////// #include "HC_Inc" #include "HC_Inc_On_Load" #include "HC_Inc_HTF" #include "X2_Inc_Switches" //PC Vampire Subrace System by Fallen code: #include "x2_inc_switches" //ATS code: #include "ats_inc_init" //PCs Autosaving #include "pc_export_inc" //Player Guild System #include "inc_gsystem_evnt" //:://////////////////////////////////////////////////////////////////////////// void main() { //************************************************** ************************** //PCs Autosaving function pc_export_onmoduleload(); //---------------------------------------------------------------------------- //PC Vampire Subrace System by Fallen: // //if you are using another spellscript override you will need to execute the //"f_vampirespells" script right before returning to the spell. If an altered //spell is ran by f_vampirespells SetModuleOverrideSpellScriptFinished will be //set (see x2_inc_switches and x2_inc_spellhook for more info). SetModuleOverrideSpellscript("f_vampirespells"); // ----------------------------------------------------------- // //ATS code { object oMod=GetModule(); ATS_Initialize(); //Player Guild System PGSModuleLoadEvent(); } // ----------------------------------------------------------- // //HCR code: if (!preEvent()) return; // Bioware Module Switches. if (GetGameDifficulty() >= GAME_DIFFICULTY_CORE_RULES) { // * Setting the switch below will enable a seperate Use Magic Device // * Skillcheck for rogues. This only applies to scrolls. //SetModuleSwitch(MODULE_SWITCH_ENABLE_UMD_SCROLLS, TRUE); // * Activating the switch below will make AOE spells hurt neutral NPCS by // * default. SetModuleSwitch(MODULE_SWITCH_AOE_HURT_NEUTRAL_NPC S, TRUE); } // * AI: Activating the switch below will make the creaures using the WalkWaypoint function // * able to walk across areas SetModuleSwitch(MODULE_SWITCH_ENABLE_CROSSAREA_WAL KWAYPOINTS, TRUE); // * Spells: Activating the switch below will make the Glyph of Warding spell behave differently: // * The visual glyph will disappear after 6 seconds, making them impossible to spot //SetModuleSwitch(MODULE_SWITCH_ENABLE_INVISIBLE_GLY PH_OF_WARDING, TRUE); // * Craft Feats: Want 50 charges on a newly created wand? We found this unbalancing, // * but since it is described this way in the book, here is the switch to get it back... //SetModuleSwitch(MODULE_SWITCH_ENABLE_CRAFT_WAND_50 _CHARGES, TRUE); // * Craft Feats: Use this to disable Item Creation Feats if you do not want // * them in your module //SetModuleSwitch(MODULE_SWITCH_DISABLE_ITEM_CREATIO N_FEATS, TRUE); // * Palemaster: Deathless master touch in PnP only affects creatures up to a certain size. // * We do not support this check for balancing reasons, but you can still activate it... //SetModuleSwitch(MODULE_SWITCH_SPELL_CORERULES_DMAS TERTOUCH, TRUE); // * Epic Spellcasting: Some Epic spells feed on the liveforce of the caster. However this // * did not fit into NWNs spell system and was confusing, so we took it out... //SetModuleSwitch(MODULE_SWITCH_EPIC_SPELLS_HURT_CAS TER, TRUE); // * //SetModuleSwitch(MODULE_SWITCH_RESTRICT_USE_POISON_ TO_FEAT, TRUE); // * Spellcasting: Some people don't like caster's abusing expertise to raise their AC // * Uncommenting this line will drop expertise mode whenever a spell is cast by a player //SetModuleSwitch(MODULE_VAR_AI_STOP_EXPERTISE_ABUSE , TRUE); // * SpellScript: This is the name of the spell router script. SetModuleOverrideSpellscript("hc_spell_router"); // Hark - Remarked out all PWDB stuff since it isnt used anymore. //if (GetLocalInt(oMod, "AlreadyExecutedOMD") == 1) // { // postEvent(); // return; // } //else // { SetLocalInt(oMod, "AlreadyExecutedOMD", 1); } //ExecuteScript("hc_pwdb_data", oMod); //SetLocalInt(GetModule(), "ModLoadEvent", 1); //int PWDB_HEARTBEAT_EVENT = 502; //event evEvent = EventUserDefined(PWDB_HEARTBEAT_EVENT); //SignalEvent(OBJECT_SELF, evEvent); // Execute the default script and set the HTF area variables. ExecuteScript("hc_defaults", oMod); ExecuteScript("hc_setareavars", oMod); // Store the starting year, month, day and hour. if (!GetPersistentInt(oMod, "HourStart")) SetPersistentInt(oMod, "HourStart", GetTimeHour()); if (!GetPersistentInt(oMod, "DayStart")) SetPersistentInt(oMod, "DayStart", GetCalendarDay()); if (!GetPersistentInt(oMod, "MonthStart")) SetPersistentInt(oMod, "MonthStart", GetCalendarMonth()); if (!GetPersistentInt(oMod, "YearStart")) SetPersistentInt(oMod, "YearStart", GetCalendarYear()); // Restore the calendar if one was saved. int iCurYear = GetPersistentInt(oMod, "CurrentYear"); if (iCurYear > 0) { int iCurMonth = GetPersistentInt(oMod, "CurrentMonth"); int iCurDay = GetPersistentInt(oMod, "CurrentDay"); int iCurHour = GetPersistentInt(oMod, "CurrentHour"); int iCurMin = GetPersistentInt(oMod, "CurrentMin"); SetCalendar(iCurYear, iCurMonth, iCurDay); SetTime(iCurHour, iCurMin, 0, 0); } // HCR v3.1. //LoopHTFSystemChk(); postEvent(); { //Music Changer: } ExecuteScript("toj_cm_ol",GetModule()); } //:://////////////////////////////////////////////////////////////////////////// |
![]()
Сообщение
#4442
|
|
Level 6 ![]() ![]() Класс: Клерик Характер: Chaotic Neutral Раса: Животное ![]() |
|
![]()
Сообщение
#4443
|
|
Level 2 ![]() Класс: Вор Характер: Lawful Good Раса: Человек ![]() |
Что то я вообше не догнал Можно по подробнее сам скрипт куда пехать тег придмета А на счёт OnModuleLoad куда сунуть SetModuleSwitch (MODULE_SWITCH_ENABLE_TAGBASED_SCRIPTS, TRUE); У меня вот такой: Neverwinter Script // HCR v3.2.0 - //:://////////////////////////////////////////////////////////////////////////// //:: FileName: HC_On_Mod_Load //:://////////////////////////////////////////////////////////////////////////// /* */ //:://////////////////////////////////////////////////////////////////////////// #include "HC_Inc" #include "HC_Inc_On_Load" #include "HC_Inc_HTF" #include "X2_Inc_Switches" //PC Vampire Subrace System by Fallen code: #include "x2_inc_switches" //ATS code: #include "ats_inc_init" //PCs Autosaving #include "pc_export_inc" //Player Guild System #include "inc_gsystem_evnt" //:://////////////////////////////////////////////////////////////////////////// void main() { //************************************************** ************************** //PCs Autosaving function pc_export_onmoduleload(); //---------------------------------------------------------------------------- //PC Vampire Subrace System by Fallen: // //if you are using another spellscript override you will need to execute the //"f_vampirespells" script right before returning to the spell. If an altered //spell is ran by f_vampirespells SetModuleOverrideSpellScriptFinished will be //set (see x2_inc_switches and x2_inc_spellhook for more info). SetModuleOverrideSpellscript("f_vampirespells"); // ----------------------------------------------------------- // //ATS code { object oMod=GetModule(); ATS_Initialize(); //Player Guild System PGSModuleLoadEvent(); } // ----------------------------------------------------------- // //HCR code: if (!preEvent()) return; // Bioware Module Switches. if (GetGameDifficulty() >= GAME_DIFFICULTY_CORE_RULES) { // * Setting the switch below will enable a seperate Use Magic Device // * Skillcheck for rogues. This only applies to scrolls. //SetModuleSwitch(MODULE_SWITCH_ENABLE_UMD_SCROLLS, TRUE); // * Activating the switch below will make AOE spells hurt neutral NPCS by // * default. SetModuleSwitch(MODULE_SWITCH_AOE_HURT_NEUTRAL_NPC S, TRUE); } // * AI: Activating the switch below will make the creaures using the WalkWaypoint function // * able to walk across areas SetModuleSwitch(MODULE_SWITCH_ENABLE_CROSSAREA_WAL KWAYPOINTS, TRUE); // * Spells: Activating the switch below will make the Glyph of Warding spell behave differently: // * The visual glyph will disappear after 6 seconds, making them impossible to spot //SetModuleSwitch(MODULE_SWITCH_ENABLE_INVISIBLE_GLY PH_OF_WARDING, TRUE); // * Craft Feats: Want 50 charges on a newly created wand? We found this unbalancing, // * but since it is described this way in the book, here is the switch to get it back... //SetModuleSwitch(MODULE_SWITCH_ENABLE_CRAFT_WAND_50 _CHARGES, TRUE); // * Craft Feats: Use this to disable Item Creation Feats if you do not want // * them in your module //SetModuleSwitch(MODULE_SWITCH_DISABLE_ITEM_CREATIO N_FEATS, TRUE); // * Palemaster: Deathless master touch in PnP only affects creatures up to a certain size. // * We do not support this check for balancing reasons, but you can still activate it... //SetModuleSwitch(MODULE_SWITCH_SPELL_CORERULES_DMAS TERTOUCH, TRUE); // * Epic Spellcasting: Some Epic spells feed on the liveforce of the caster. However this // * did not fit into NWNs spell system and was confusing, so we took it out... //SetModuleSwitch(MODULE_SWITCH_EPIC_SPELLS_HURT_CAS TER, TRUE); // * //SetModuleSwitch(MODULE_SWITCH_RESTRICT_USE_POISON_ TO_FEAT, TRUE); // * Spellcasting: Some people don't like caster's abusing expertise to raise their AC // * Uncommenting this line will drop expertise mode whenever a spell is cast by a player //SetModuleSwitch(MODULE_VAR_AI_STOP_EXPERTISE_ABUSE , TRUE); // * SpellScript: This is the name of the spell router script. SetModuleOverrideSpellscript("hc_spell_router"); // Hark - Remarked out all PWDB stuff since it isnt used anymore. //if (GetLocalInt(oMod, "AlreadyExecutedOMD") == 1) // { // postEvent(); // return; // } //else // { SetLocalInt(oMod, "AlreadyExecutedOMD", 1); } //ExecuteScript("hc_pwdb_data", oMod); //SetLocalInt(GetModule(), "ModLoadEvent", 1); //int PWDB_HEARTBEAT_EVENT = 502; //event evEvent = EventUserDefined(PWDB_HEARTBEAT_EVENT); //SignalEvent(OBJECT_SELF, evEvent); // Execute the default script and set the HTF area variables. ExecuteScript("hc_defaults", oMod); ExecuteScript("hc_setareavars", oMod); // Store the starting year, month, day and hour. if (!GetPersistentInt(oMod, "HourStart")) SetPersistentInt(oMod, "HourStart", GetTimeHour()); if (!GetPersistentInt(oMod, "DayStart")) SetPersistentInt(oMod, "DayStart", GetCalendarDay()); if (!GetPersistentInt(oMod, "MonthStart")) SetPersistentInt(oMod, "MonthStart", GetCalendarMonth()); if (!GetPersistentInt(oMod, "YearStart")) SetPersistentInt(oMod, "YearStart", GetCalendarYear()); // Restore the calendar if one was saved. int iCurYear = GetPersistentInt(oMod, "CurrentYear"); if (iCurYear > 0) { int iCurMonth = GetPersistentInt(oMod, "CurrentMonth"); int iCurDay = GetPersistentInt(oMod, "CurrentDay"); int iCurHour = GetPersistentInt(oMod, "CurrentHour"); int iCurMin = GetPersistentInt(oMod, "CurrentMin"); SetCalendar(iCurYear, iCurMonth, iCurDay); SetTime(iCurHour, iCurMin, 0, 0); } // HCR v3.1. //LoopHTFSystemChk(); postEvent(); { //Music Changer: } ExecuteScript("toj_cm_ol",GetModule()); } //:://////////////////////////////////////////////////////////////////////////// А как быть со свитком Я хочу телепорт через свиток зделать Если вам не трудно помогите плиз Предположим что мне надо поподать постоянно в точку ( 001 ) а тег свитка TP_001 А ResRef ( item01 ) |
![]()
Сообщение
#4444
|
|
Level 6 ![]() ![]() Класс: Клерик Характер: Chaotic Neutral Раса: Животное ![]() |
Так. Постараюсь доступным языком. Сначала идешь в слот OnModuleLoad. Вставляешь сразу же после
void main() { такие строчки Neverwinter Script ExecuteScript( "x2_mod_def_load", OBJECT_SELF); SetModuleSwitch ( MODULE_SWITCH_ENABLE_TAGBASED_SCRIPTS, TRUE); Потом идешь в OnEquip и если там стоит не x2_mod_def_equ вставляешь в скрипт Neverwinter Script ExecuteScript( "x2_mod_def_equ", OBJECT_SELF); Если тот - ничего не делаешь. Ту же процедуру проводишь для других слотов по списку ниже, заменяя данные на нужные OnUnEquip - x2_mod_def_unequ OnAcquire - x2_mod_def_aqu OnUnAcqucire - x2_mod_def_unaqu OnActivate - x2_mod_def_act Потом создаешь любой итем и даешь ему свойство Каст спелл-активатед итем. Создаешь новый скрипт ( в котором и пишешь, что должно произойти при активации) с именем таким же, как и тэг у итема Скрипт должен быть примерно следующий: Neverwinter Script int nEvent =GetUserDefinedItemEventNumber(); if (nEvent == X2_ITEM_EVENT_ACTIVATE) { //Тут что должно произойти } Вобщем как-то так Предположим что мне надо поподать постоянно в точку ( 001 ) а тег свитка TP_001 А ResRef ( item01 ) Значит делаешь то, что я описал выше. Создаешь скрипт TP_001 и пишешь в нем Neverwinter Script int nEvent =GetUserDefinedItemEventNumber(); if (nEvent == X2_ITEM_EVENT_ACTIVATE) { object oPC = GetItemActivator(); //наш игрок object oTarget = GetObjectByTag("WP_001"); // Предварительно созданный в нужном месте ВП // Кидаем чара if (GetIsPC(oPC)) AssignCommand(oPC, ClearAllActions()); AssignCommand(oPC, JumpToObject(oTarget)); } Как-то так Сообщение отредактировал kiruhs - Dec 8 2010, 20:06 |
![]()
Сообщение
#4445
|
|
Level 2 ![]() Класс: Вор Характер: Lawful Good Раса: Человек ![]() |
Потом идешь в OnEquip
Чёт у мея токого нет Единственное что похоже это OnPlayerEquipItem но там пусто вообше |
![]()
Сообщение
#4446
|
|
Level 6 ![]() ![]() Класс: Клерик Характер: Chaotic Neutral Раса: Животное ![]() |
|
![]()
Сообщение
#4447
|
|
Level 2 ![]() Класс: Вор Характер: Lawful Good Раса: Человек ![]() |
не работает
kiruhs, Может если тебе не трудно полностью напишиш скрипты |
![]()
Сообщение
#4448
|
|
Level 6 ![]() ![]() Класс: Клерик Характер: Chaotic Neutral Раса: Животное ![]() |
kiruhs, Может если тебе не трудно полностью напишиш скрипты Скрипты, по сути, я тебе уже написал. Дальше, осталось только вместо тебя модуль сделать. Извини, но это уже слишком (IMG:style_emoticons/kolobok_light/rolleyes.gif) ЗЫ. Глянь - http://www.city-of-masters.ru/forums/index...?showtopic=1612 и не выдумывай велосипед Сообщение отредактировал kiruhs - Dec 8 2010, 21:45 |
![]()
Сообщение
#4449
|
|
Level 2 ![]() Класс: Вор Характер: Lawful Good Раса: Человек ![]() |
ну и за это сосибо большое за помошь
|
![]()
Сообщение
#4450
|
|
Level 1 Класс: Оборотень Характер: Chaotic Good Раса: Танар'ри ![]() |
Снова здрасте.
Как сделать так, чтобы во время диалога игрок сдал свое оружие NPC, а потом мог забрать его обратно? |
![]() ![]() |
Текстовая версия | Сейчас: 28th April 2025 - 19:33 |