Помощь - Поиск - Пользователи - Календарь
Полная версия: Вопросы новичков
Город Мастеров > РЕДАКТОРЫ > Neverwinter Nights Aurora Toolset
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103
Nokoll
А Так?

Neverwinter Script Source
AssignCommand(oPC, ClearAllActions());
        DelayCommand(2.0, AssignCommand(oPC, ActionStartConversation(OBJECT_SELF, "Тег ", FALSE, FALSE)));
        return;
    }

unsure.gif
Добавлено в [mergetime]1108338861[/mergetime]
Кажись надо добавить.

Neverwinter Script Source
AssignCommand(oPC, JumpToObject(GetObjectByTag("ALT_START_LOC")));
        SetLocalInt(GetModule(), "??????", 10);
      // AssignCommand(oPC, ExecuteScript("bk_levelup", oPC));
      //AssignCommand(oPC, ActionStartConversation(oPC, "Тег"));
        return;
    }
Maniac
Hi всем!!! Отдельное спасибо Lex'у yahoo.gif . У меня ещё вопрос. Как сделать так, чтобы ПЕРС
доставал оружие из инвентаря только тогда когда на него нападают, а так у него в
руках его небыло?
Добавлено в [mergetime]1108372399[/mergetime]
Тут я. dirol.gif
Nokoll
Поставь Оружие в быстрый слот, Просто переташи его из инвентаря в быстрый слот и нажми когда надо!
Archangel
Извиняюсь конечно - это вопрос Мaniac`a, но я че-то не понял Nokoll, что значит
QUOTE
и нажми когда надо!
.
Просто я бы тоже такую фишку у ся в модуле прописал........ biggrin.gif biggrin.gif biggrin.gif lol.gif lol.gif lol.gif
Nokoll
Ну в быстром Слоте будет видно оружие когда враги близко нажми и Пк Возьмёт, мечь или чтонибудь другое
Если хочеш чтобы Пк убрал меч нажи ещё раз. (НАЖАТЬ НА БЫСТРЫЙ СЛОТ)
Archangel
Хэллоу всем!
Я вот тут думал куда засунуть этот вопрос: в тему "Скрипты" или "Вопросы новичков". biggrin.gif
И решил, что лучше сюда, т.к. мне нужен не совет, а сам скрипт.
Ладно, хватит трепаться.......
Вот вопросик, надеюсь кто-нибудь да поможетpardon.gif))

Например, у мня в моде есть библиотека, но из нее,как и из любой библиотеки, книжки выносить нельзя.......
Дык как сделать так, чтобы книжки автомотически убирались из инвенторя Игрока и клались обратно на полки? dntknw.gif dntknw.gif dntknw.gif

Maniac
Хай всем! У меня возникло два вопроса:
1) Первый - Lеx'у
В скрипте с факелом у стражи такой глюк - в строчке
if (GetIsDay())&&(GetLocalInt(OBJECT_SELF,"TORCH"))
косяк какой-то, посмотри пожалуйста и скажи если чё не так.
P.S.- А может это я косяк? black eye.gif
2) Второй - Nokoll'у
Чё то до меня не доходит чё значит:
"Поставь Оружие в быстрый слот, Просто переташи его из инвентаря в
быстрый слот и нажми когда надо!" Не знал что у НеПСя есть быстрые слоты, обьясни?? unsure.gif
Aiwan
Ставишь его на OnAreaTransition двери. При этом заранее свяжи эту дверь с выходом куда надо.
Скрипт я не проверял. Если что пости тут.
Neverwinter Script Source
//:://////////////////////////////////////////////
//:: Copyright © 2004 WRG!  www.wrg.ru
//:: OnAreaTransition
//:://////////////////////////////////////////////
/*
          СКРИПТ ЗАПРЕЩАЮЩИЙ ВЫХОДИТЬ
    ИЗ ЛОКАЦИИ ЕСЛИ В ИНВЕНТАРЕ ЕСТЬ ПРЕДМЕТ
      ИЛИ ОН БРОШЕН НА ПОЛ В ЛОКАЦИИ
*/

//:://////////////////////////////////////////////
//:: Created By: Aiwan    Aiwan@e-mail.ru
//:: Created On: 14.02.2005
//:://////////////////////////////////////////////
void main()
{
    object oPC = GetEnteringObject();
    object oItem = GetItemPossessedBy(oPC, "TAG_book"); //ТАГ книги
    object oJamp = GetTransitionTarget(OBJECT_SELF);
  if (!GetIsPC(oPC)) // Если это не РС то возврат
    return;
  if (!GetIsObjectValid(oItem)) // Если в инвентаре нет КНИГ
        {
        object oItem = GetFirstObjectInArea(); // Ищем не ли выложенных книг
        while(GetIsObjectValid(oItem))        // На локации
          {
          if(GetTag(oItem)=="TAG_book") // Если есть, то предупреждаем об этом
            {
            FloatingTextStringOnCreature("Не разбрасывайте книги на полу!", oPC);
            return; // Возврат
            }
          oItem = GetNextObjectInArea();
          }
      AssignCommand(oPC, JumpToObject(oJamp)); // Все нормально, книг нет нигде
      return;
      }
// Книга точно есть у инвентаре
FloatingTextStringOnCreature("Вы не можете покинуть библиотеку с книгами!", oPC);
}
Nokoll
QUOTE
Чё то до меня не доходит чё значит:
"Поставь Оружие в быстрый слот, Просто переташи его из инвентаря в
быстрый слот и нажми когда надо!" Не знал что у НеПСя есть быстрые слоты, обьясни??


Подробное Обяснение :
Итак У Перса в игре есть быстые Слоты в ночале игры туда помещаются заклинания...
Это Очень удобно..
Быстрые слоты Это. Внизу Экрана Есть Чёрные Прямоугольники прописанные на нажатие быстрых клавиш например F1,F2,F3/\ и т д. victory.gif
Итак Если ты Хочеш чтобы Перс достовал оружие или убирал, то Включи Инвентарь Нажми на оружие Которое у Пк в Инвентаре или в руке. И не отпуская левую кнопку мыши перетащи оружие на Самый перый слот. те 1 черный прямоугольник. На слоте должно появится очертание оружия, если такое имеется нажми на F1 пк уберёт оружие ещё нажатеем F1.пк достанет.
Слотов много нажатием клавиши Шифт появится новая строка пустых слотов, и нажатием Контрл ещё один дополнительный слот...
Описал невероятно подробно помойму но всюравно кольвозникнут вопросы обращайся я всегда помогу! good.gif


ЗЫЫЫ.. Очень стыдно перед админами что описал так подробно что даж смешно..


Friedrich
QUOTE
Не знал что у НеПСя есть быстрые слоты, обьясни??

QUOTE
Подробное Обяснение :
Итак У Перса в игре есть быстые Слоты в ночале игры туда помещаются заклинания...

Мдя, Ноколл! swoon.gif Маньяк про НПС, вроде, спрашивал, а не про своего перса вигре...

Например, это можно так сделать.
Раскоментируй в onSpawn строчку SetSpawnInCondition(NW_FLAG_HEARTBEAT_EVENT)
А в onUserDefined поставь это:
Neverwinter Script Source
object GetNearestEnemy(object oTarget=OBJECT_SELF)
{
  return GetNearestCreature(CREATURE_TYPE_REPUTATION, REPUTATION_TYPE_ENEMY, oTarget);
}

void main()
{
  int nEvent = GetUserDefinedEventNumber();
  switch (nEvent)
  {
    case 1001: //HEARTBEAT
    {
      object oWeapon = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND);
      if (GetIsInCombat())
      {
        if (oWeapon == OBJECT_INVALID)
        {
          object oEnemy = GetNearestEnemy();
          ClearAllActions();
          ActionEquipMostDamagingMelee();
          ActionSpeakString("Смерть неверным!");
          ActionAttack(oEnemy);
        }
      }
      else
      { ActionUnequipItem(oWeapon); }
    } break;
  }
}
Lex
QUOTE (Maniac @ Feb 14 2005, 19:24)
1) Первый - Lеx'у В скрипте с факелом у стражи такой глюк - в строчкеif (GetIsDay())&&(GetLocalInt(OBJECT_SELF,"TORCH"))косяк какой-то, посмотри пожалуйста и скажи если чё не так.


вот так надо вроде. я ( и ) забыл еще одну пару
if ((GetIsDay())&&(GetLocalInt(OBJECT_SELF,"TORCH")))
<small>Добавлено в 20:17</small>
QUOTE (Maniac @ Feb 14 2005, 12:12)
Как сделать так, чтобы ПЕРС доставал оружие из инвентар

Maniac, ПЕРС это РС, те игрок. Чтобы просто не было недоразумений в будущем.
Archangel
Friedrich, помоему есть способ полегче.
Вот мой вариант скрипта для Maniaca`a:

Neverwinter Script Source
void main()
{
  object oSword = GetItemPossessedBy(OBJECT_SELF, "Mech");
  object oItem = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND);
  if (oItem != oSword)
    AssignCommand(OBJECT_SELF, ActionEquipItem(oItem, INVENTORY_SLOT_RIGHTHAND));
}


Скрипт вставляется в OnDamage НеПиСя.......
biggrin.gif biggrin.gif biggrin.gif lol.gif lol.gif lol.gif
Lex
QUOTE (Archangel @ Feb 15 2005, 21:24)
Вот мой вариант скрипта для
вообще то автор скрипта dumbo, что не мешало бы указать.
Friedrich
Archangel, во первых, нужно, чтобы НПС не только доставал меч в нужный момент (это, вообще говоря в дефолтных скриптах уже прописано), но и убирал его, когда бой окончен.

Во-вторых, onDamage - далеко не единственное событие, инициирующие бой. И, по-уму, тогда уж надо перебрать все эти события (onPerception, onCastSpellAt, и чего там еще). Чтобы этого не делать, я и использовал хербит.

В-третьих, завязывать скрипт на оружие с определенным тегом, в данном случае не очень мудро, т.к. это вызовет трудности, если ты захочешь поменять НПС оружие, или использовать этот скрипт на разных НПСях.
tongue.gif
Мой вариант, конечно, тоже не идеален. Так если у НПС не будет вообще никакого оружия (н.п.: в результате дизарма), то возникнет довольно не хорошая ситуация.
Lex
Friedrich верно говорит, что
QUOTE (Friedrich @ Feb 15 2005, 21:54)
(это, вообще говоря в дефолтных скриптах уже прописано)

Проблема остается 1 - убрать.

Мое скромное мнение такое:
надо юзать UD ветку EndCombatRound. Проверить, что нету рядом врагов и убрать оружие.


Friedrich, а если у НПС нету оружия или только дистанционное? Можно написать функцию, которая в зависимости от ситуации (что есть + растояние до врага) будет выбирать нужное оружие (те нужный тип. Мили или Дистант.)
Nokoll
QUOTE
Мдя, Ноколл!  Маньяк про НПС, вроде, спрашивал, а не про своего перса вигре...

Сначало он спасил про перса а потом дальше стал спрашивать опятьтаки про перса токо называл его Неписем. wacko.gif
Archangel
QUOTE
вообще то автор скрипта dumbo, что не мешало бы указать.


ПРИНОШУ СВОИ ИЗВЕНЕНИЯ dumbo! ЭТО ДЕЙСТВИТЕЛЬНО ЕГО СКРИПТ.Вы не подумайте, я не хотел выпендриться....
Прсто забыл енто указать. angel.gif
ПРОСТИТЕ УЖ..........
Balgarat
Как делать loadscreen'ы? Помогите пожалуйста (ток не на английском)!!!
Leon PRO
Balgarat Иди в тему http://www.wrg.ru/forums/index.php?showtopic=78
http://www.wrg.ru/forums/index.php?showtopic=704
http://www.wrg.ru/forums/index.php?showtopic=663

думаю после прочтения вопросов не останется.
Balgarat
Нефига я там не нашел, там все кроме лоадскринов.
ЗЫ может я пропустил т.к. смотрел быстро, времени мало. Если наткнешся именно на лоадскрин, скинь сссылку плиз сюда. Спасибо.
doneman
Как можно в НвН добавить новый тип оружия? со своими характеристиками .. типа ружье с пайкой 1д12 стреляет 1 раз в 4 раунда крит 20х4 и анимацией своей?
Nokoll
создай свой тип оружия а в свойствах поставь всё что надо, или скачай Хак Пак! russian_roulette.gif
Gelu
Такс, есть вопросик.. crazy.gif

Хочу прих...ть к СоУ и ХоТУ - СЕР и PRC, вроде тулсет пишетче мол есть конфликты, а PRC ваще не ставиться.. выдает хренов ерор и усе..

Очень хоцца, помогите советом..

НВН 1,65 СЕР последняя версия, пропаченая и PRC вроде тоже последняя, кажись 22c..

Как быть? swoon.gif
Vhall
QUOTE (Gelu @ Feb 18 2005, 20:29)
Как быть?

Не использовать CEP good.gif
Gelu
Не ставиться сволочь... кто нить пробовал прикрепить PRC к оригинальным кампаниям НВН?
Aiwan
QUOTE (Gelu @ Feb 18 2005, 23:29)
вроде тулсет пишетче мол есть конфликты

Дык скажи какие конфликты.
Gelu
Фуф.. плохо я в этом разбераюси..
Вот такая хренотень, полсе че установка завесает намертво..
user posted image
Vhall
Ты не пугай так! biggrin.gif Я бросился уже ОК нажимать! lol.gif

Поробуй заменить dialog.tlk на английский и проверь свою версию НВНа
Proydoha
Глупый вопрос, наверное, но все же. Как делать раненых неписей?
dumbo
Proydoha
в OnSpawn этому NPC воткни такую бяку:
Neverwinter Script Source
void main() { ApplyEffectToObject(DURATION_TYPE_INSTANT,
                EffectDamage(GetCurrentHitPoints(oPC)/2),
                OBJECT_SELF);
}
Лито
У меня такой вопрос, в палитре с вейпоинтами, есть множество всяких примочек, вроде: точка-таверна, точка-дом. Я так понимаю это для того чтобы имитировать реальное поведение неписей. Как активировать PlayAmbientAnimations функцию? Просто поставить вэйпоинт в локацию не получилось, не работает black eye.gif
MasterMage
Вопросик:
Есть три постамента, образовавшие равносторонний треугольник. Их соединяют три луча молнии, поставленные перманентно...
Все хорошо, все получилось, но вопрос, как сделать так, чтобы персонаж не мог пройти сквозь лучи?
-------------------*--------------------
----------------*-----*----------------
-------------*----------*--------------
----------*----------------*-----------
--------* * * * * * * *---------
----------------------------------------
И будет еще лучше, если кто-нибудь поможет сделать так, чтобы лучи наносили дамаг за попытки...
----
Мне думается, надо использовать триггер, или же есть спец. функции?
----
И еще, компиляция модуля только ошибки ищет, или как-то упаковывает?
2GoDoom
Чтобы не пройти - ставь инвизибл обжэкты...
Чтобы ранилось - надо рисовать тригеры и вешать скрипт на OnEnter.
Aiwan
QUOTE (MasterMage @ Feb 19 2005, 19:58)
И еще, компиляция модуля только ошибки ищет, или как-то упаковывает?

Компилирует твои скрипты и выражаясь языком Лукашенко "ПЕРЕТРАХИВАЕТ". Нужная весчь. Многие ресурсы не вписываются без билда те же инлюды в уже использующих их скриптах.
Лито
Как заставить моба нормально пользоватся хайдом? Есть ли какие нибудь скрипты?
Тобур
QUOTE (Лито @ Feb 20 2005, 10:13)
Как заставить моба нормально пользоватся хайдом? Есть ли какие нибудь скрипты?

Если вопрос про моба-шадоудансера, то самый простой путь, который мы с Ярлом нашли не требует написания никаких скриптов. Все что надо, это не давать мобу НИКАКИХ активных боевых фитов (т.е. кнок, дизарм и т.д.). В этом случае, стандартные скрипты очень здорово позволяют ШД прятаться во время боя.
Лито
А какая команда нужна чтобы посадить NPC на землю? tomato.gif
Aiwan
Почитай есть анимация сидеть на земле.
DBColl
QUOTE (Тобур @ Feb 21 2005, 07:52)
Если вопрос про моба-шадоудансера, то самый простой путь, который мы с Ярлом нашли не требует написания никаких скриптов. Все что надо, это не давать мобу НИКАКИХ активных боевых фитов (т.е. кнок, дизарм и т.д.). В этом случае, стандартные скрипты очень здорово позволяют ШД прятаться во время боя.

Класс! Тобур, респект! Попробую обязательно! good.gif Сенки.
Archangel
Я блин, конечно извиняюсь за ОЧЕНь глупый вопрос, но всеж задам его:
Как добавить свою музыку в NWN.Всмысле, чтоб можно ее было в своих модулях включать.
А то я че-то ща с музыкой решил поразбираться......

ПЛИЗЗ.НЕ БРЕЗГУЙТЕ - ОТВЕТЬТЕ. swoon.gif
Nokoll
Для музыки ваще Хак нужен, но я делаю лучше На WRG есть конвентатор который переведёт любую твою музыку фарматом MP3 в Формат BMU этот формат поддерживает НВН когда переведёш в нужный формат вставь твою музыку вместо "битвы в городе 1" или любой другой которая тебе надаела, включи Тулсет и музон будет! good.gif
Добавлено в [mergetime]1109085465[/mergetime]
QUOTE
Я блин, конечно извиняюсь за ОЧЕНь глупый вопрос, но всеж задам его:

Зачем Извенятся вопрос помойму не глупый.
Добавлено в [mergetime]1109085532[/mergetime]
Программа называется MP3toBMU, поищи в WRG!
Archangel
Спасибо Nokoll. Ща полезу за прогой......... wacko.gif
Nokoll
QUOTE
Спасибо Nokoll. Ща полезу за прогой.........

Если не найдёш я скину тебе на мыло, но тока ночю.
Friedrich
А там разве еще 2да не нужно редактировать?
Archangel
Спасибо Nokoll, очень помог со звуками. Но все таки жалко оригинальные.Да, ладно.Чего уж там. tongue.gif tongue.gif tongue.gif

Вообщем я не об ентом ща.
Вот смотрите у мня есть ф-ия:
Neverwinter Script Source
DelayCommand(4.0, AssignCommand(oNPC1, ActionForceMoveToObject(oTK1, TRUE,4.0, 7.0)));

Насколько я понимаю первая цифра после TRUE означает скорость, с которой НеПиСь побежит к точке.
Но у мня че-то не получается сделать так, чтобы он не бежал, а ШЕЛ к ней. Я и цифру уменьшал - не помогает.
Может ей отрицательное значение присвоить? ХЭЛП. this.gif

Friedrich, неа не надо. Все и так фурычит хорошо. mamba.gif
Aiwan
Archangel посмотри мою статью про аврору. Там я писал как это сделать.
Добавлено в [mergetime]1109090898[/mergetime]
QUOTE (Archangel @ Feb 22 2005, 22:12)
Насколько я понимаю первая цифра после TRUE означает скорость, с которой НеПиСь побежит к точке.
Но у мня че-то не получается сделать так, чтобы он не бежал, а ШЕЛ к ней. Я и цифру уменьшал - не помогает.
Может ей отрицательное значение присвоить? ХЭЛП. 

Замени TRUE на FALSE.
Archangel
Ага, обязательно посмотрю[Archangel с умным выражением лица полез на сайт качать статью Aiwan`a] cool.gif
Tiger Greyhawk
QUOTE (Nokoll @ Feb 22 2005, 18:16)
Для музыки ваще Хак нужен, но я делаю лучше

Это не лучше, это проще. Лучше, именно, хак. (Nokoll, дестроить не строить)
QUOTE (Friedrich @ Feb 22 2005, 19:02)
А там разве еще 2да не нужно редактировать?

редактировать надо (ambientmusic.2da), если хочется оставить оригинальные и добавить новые. Немного сложнее, но...
QUOTE (Archangel @ Feb 22 2005, 19:12)
Но все таки жалко оригинальные.

Так что, Archangel, тебе выбирать: "или ноги, или комары" ( (с) мой брат в 4 года соседке в юбке, женщине в преклонном возрасте)

А ежели не нужны оригинальные, то можно, конечно, и простой заменой (как Nokoll и посоветовал). Но в этом случае придеться заменять и на других машинах, где будет запускаться этот модуль.

З.Ы. Оффтоп
QUOTE (Aiwan @ Feb 22 2005, 19:43 )
Замени TRUE на FALSE.

QUOTE (Nokoll @ Feb 22 2005, 21:42)
Поставь вместо TRUE FALSE!


LOL!!! lol.gif lol.gif lol.gif Последнее время стало гораздо веселее на форуме благодаря тебе. Почти каждое выражение - перл! Только я не знаю: веселиться или плакать от этого? Жаль удалили ту тему, где ты на DarkT(по-моему так звали бедолагу) наехал. Я долго ржал. За дело, конечно, наехал, но...
или вот это:
QUOTE (Nokoll @ Feb 25 2005, 03:32)
Классный вы сделали видео ролик, у меня Пиратский но все ваши ники указанны!
Bregolas
День добрый. Aiwan'у еще раз спасибо за скрипт, правда, я бы его самую малость поправил smile.gif Может, кому пригодится.


Neverwinter Script Source
//:://////////////////////////////////////////////
//:: Copyright © 2004 WRG
//:: a0_onareaexit
//:://////////////////////////////////////////////
/*
    СКРИПТ ЗАПРЕЩАЮЩИЙ МОНСТРАМ ВЫХОДИТЬ
        ИЗ ЛОКАЦИИ ВСЛЕД ЗА ИГРОКОМ
*/

//:://////////////////////////////////////////////
//:: Created By: Aiwan    Aiwan@e-mail.ru
//:: Created On: 21.04.2004
//:://////////////////////////////////////////////
void main()
{
  object oPC = GetEnteringObject();
  object oAnimal = GetAssociate(ASSOCIATE_TYPE_ANIMALCOMPANION, oPC);
  object oDominated = GetAssociate(ASSOCIATE_TYPE_DOMINATED, oPC);
  object oFamiliar = GetAssociate(ASSOCIATE_TYPE_FAMILIAR, oPC);
  object oHenchman = GetAssociate(ASSOCIATE_TYPE_HENCHMAN, oPC);
  object oSummoned = GetAssociate(ASSOCIATE_TYPE_SUMMONED, oPC);
  object oJamp = GetTransitionTarget(OBJECT_SELF);
  //Чисто для моих земель, чтобы фамилиары не разгуливали где попало, пока их владельцы задумчиво стоят в области
  if (GetIsPC(oPC) && !GetIsPosessedFamiliar(oPC))
  {
  AssignCommand(oPC, JumpToObject(oJamp));
  AssignCommand(oAnimal, JumpToObject(oJamp));
  AssignCommand(oDominated, JumpToObject(oJamp));
  AssignCommand(oFamiliar, JumpToObject(oJamp));
  AssignCommand(oHenchman, JumpToObject(oJamp));
  AssignCommand(oSummoned, JumpToObject(oJamp));
  }
  else
  {
  //Иначе наши монстрyaшки будут задумчиво покачиваться у двери, совершенно беззащитные
  AssignCommand(oPC, ClearAllActions());
  }
}


А теперь небольшой вопрос wink.gif прошу сильно не пинать, если где уже обсуждалось. Разумеется, без запоминания состояния игрока при выходе с сервера, можно чрезвычайно просто осуществить "нелегальный" респаун. Я решил проблему таким образом: OnDeath на игроке создается такая вещичка - Death Ward, типа страж смерти smile.gif Если игрок попытается зайти снова с этой вещичкой, его живо пришибет. OnRespawn и в нескольких скриптах/ заклинаниях вроде ressurriction этот Ward уничтожается. Вопрос: существует ли более "цивилизованный" способ запрещения такого рода респауна (вариаблы, как понимаю, сбрасываются при выходе клиента).

Equil
Вопрос : Как .mdl пользовательскую скелетную анимацию втюхать в игру, связать с движком? может сия инфа уже есть тут - искать влом drag.gif линивый я, если вас не затруднит или так ответьте или ткните туда, где она есть.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Invision Power Board © 2001-2025 Invision Power Services, Inc.