Форма входа
 
Приветствуем тебя, корсар Юнга!

Гость, мы рады вас видеть. Пожалуйста зарегистрируйтесь или авторизуйтесь!


Купить игры
 



Чат
 
500


Статистика
 
Пользователи, посетившие сайт за текущий день:
Maydg, Gagulka, Andrey__3010, Ramaloce, Kriogener, ukdouble1, MarisaBel, Vika
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]

Модератор форума: NikK  
Всего по чуть-чуть.
MettДата: Воскресенье, 28.06.2015, 17:42 | Сообщение # 241
Капитан I ранга
Группа: Корсар
Сообщений: 586
Награды: 91
Репутация: 565
Статус: В открытом море
Внимание, народ!
Вопросы как что можно изменить задаются в специальных темах!
В теме "Всего по чуть-чуть" выкладываем мелкие уроки или гайды для которых открываться отдельную тему нет необходимости.

Благодарю за внимание!


Что толку, если не можешь сделать мир лучше.
PsychoShooterДата: Пятница, 25.09.2015, 20:01 | Сообщение # 242
Матрос
Группа: Корсар
Сообщений: 30
Награды: 21
Репутация: 203
Статус: В открытом море
Есть вопрос по теме. Играю в КПС, добавил модель Беатрис Шарп и заменил нею квестого персонажа. Проблема в анимации и иконке этого персонажа. В скрипте указывается модель, пол и анимация перса, остальное он ставит сам, т.е если ставлю модель Яна Стейса, то иконку он каким-то образом находит сам. А здесь - нет. В общем заменил я этого офицера Беатрис и также создал в HeroDiscribe персонажа с той же моделью, анимацией и прочим. Когда играю этим персонажем - всё отлично, а точно такой же персонаж, но как квестовый офицер - корявая анимация. Всё на скриншоте:


На абордаж!

Сообщение отредактировал PsychoShooter - Пятница, 25.09.2015, 20:07
NathanielДата: Пятница, 25.09.2015, 23:17 | Сообщение # 243
Контр-адмирал
Группа: Капитан
Сообщений: 8036
Награды: 347
Репутация: 1845
Статус: В открытом море
Цитата PsychoShooter ()
Проблема в анимации и иконке этого персонажа

Хм... Всё элементарно. Анимация прописывается там же, в инишнике офицера. Я по традиции добавляю такие инициализации в файл LSC_Q2Utilite, а диалоги для них (если нужны) - в файл ForAll_dialog. Обычно инициализация выглядит вот так.

Цитата
/* Оливер Траст */
sld = GetCharacter(NPC_GenerateCharacter("PoorKillSponsor", "smuggler_boss", "man", "man", 30, PIRATE, -1, false));
sld.name = "Оливер";
sld.lastname = "Траст";
sld.talker = 8; //начать диалог
LAi_SetLoginTime(sld, 9.0, 21.99);
sld.Dialog.Filename = "Quest\ForAll_dialog.c";
sld.dialog.currentnode = "Begin_PoorKill";
sld.greeting = "Gr_OliverTrast";
LAi_SetCitizenType(sld);
LAi_SetImmortal(sld, true);
LAi_SetHP(sld, 100.0, 100.0);
sld.SaveItemsForDead = true;
GiveItem2Character(sld, "blade75");
sld.equip.blade = "blade75";
sld.greeting = "Gr_OliverTrast";

Выделенным шрифтом я отметил название модели, которое и прописано в упомянутом выше файле characters_face, а также анимацию. В данном случае - это "man".

Если вы заменили квестового офицера - ищите его базовый инишник. Там должна быть объявлена анимация. Иконка с портретом задаётся любому персонажу в файле characters_face внутри функции FaceMaker() и задаёт номер для всех портретов этого персонажа. Обратите внимание, что иконка связывается не с идентификатором NPC, а с его моделью.

Файл Hero_Describe.txt предназначен исключительно для задания атрибутов ГГ, для создания прочих NPC он не подходит.

P. S. В очередной раз отмечу, что эта тема - не место для вопросов. Тут публикуются уже готовые и зачастую интересные авторские решения для пользователей.


Я был на краю земли, на краю бескрайних озёр, за горизонтом и на вершинах самых высоких гор.
Но я не нашёл там никого, кто не был бы моим другом!
MettДата: Пятница, 30.10.2015, 02:50 | Сообщение # 244
Капитан I ранга
Группа: Корсар
Сообщений: 586
Награды: 91
Репутация: 565
Статус: В открытом море
переносные источники света
теоретически можно реализовать хождение с факелом, но нет подходящих анимаций

кусок кода использовать по своему усмотрению
Код
    if(CheckAttribute(pchar, "HandLight") == 0)
    {
  SendMessage(pchar, "lss", MSG_CHARACTER_EX_MSG, "HandLightOn", "handtorchlight");    //установить переносной источник в руку
  pchar.HandLight = true;
    }
    else
    {
  SendMessage(pchar, "ls", MSG_CHARACTER_EX_MSG, "HandLightOff");    //убрать переносной источник из руки
  DeleteAttribute(pchar, "HandLight");
    }


Что толку, если не можешь сделать мир лучше.
NathanielДата: Пятница, 30.10.2015, 14:12 | Сообщение # 245
Контр-адмирал
Группа: Капитан
Сообщений: 8036
Награды: 347
Репутация: 1845
Статус: В открытом море
Цитата Mett ()
теоретически можно реализовать хождение с факелом...

Довольно интересно выглядит!.. Создаётся впечатление, что персонаж носит в рукаве или кармане фонарь. Или светится изнутри, в то время как при оригинальном освещении свет падает как бы со стороны.

В связи с этим вопрос - а можно ли как-нибудь сделать этот свет поярче?

Вот как это у меня выглядит, например...



Я был на краю земли, на краю бескрайних озёр, за горизонтом и на вершинах самых высоких гор.
Но я не нашёл там никого, кто не был бы моим другом!
MettДата: Суббота, 31.10.2015, 00:02 | Сообщение # 246
Капитан I ранга
Группа: Корсар
Сообщений: 586
Награды: 91
Репутация: 565
Статус: В открытом море
Цитата Nathaniel ()
В связи с этим вопрос - а можно ли как-нибудь сделать этот свет поярче?

источники света правятся в resource/ini/lights.ini

тестировал свой код на КТБ, у меня там другая система освещения, там все нормально работает
в ГПК/ККС из-за статического освещения может работать иначе

в КТБ выглядит так:


ВАЖНО
источник света в руке погасает при переходе из локации в локацию, его надо включать заново
в идеале - при загрузки новой локации и если у персонажа есть атрибут
Код
if(CheckAttribute(pchar, "HandLight"))

Прикрепления: 3709583.jpg (1010.6 Kb)


Что толку, если не можешь сделать мир лучше.
MettДата: Понедельник, 09.11.2015, 20:49 | Сообщение # 247
Капитан I ранга
Группа: Корсар
Сообщений: 586
Награды: 91
Репутация: 565
Статус: В открытом море
Генератор "отбермуженных" характеристик для кораблей

написал простенький генератор "отбермуженных" статов для кораблей
Код

//генератор "отбермуженных" статов для кораблей
void SetTuningShipStates(ref chr)
{
    int iRand = 50;
    ref rShip = &RealShips[sti(chr.ship.type)];
    
    if(rShip.class == 7) return;    //мелкие корабли отсекаем
    if(rShip.stolen == 0) return;    //генератор будет только на захваченных в море
    
    SetShipMaxCaliberTuning(chr, rand(iRand));  //увеличение калибра
    SetShipCapacityTuning(chr, rand(iRand));  //увеличение трюма
    SetShipSpeedRateTuning(chr, rand(iRand));  //увеличение скорости
    SetShipMaxCrewTuning(chr, rand(iRand));   //увеличение команды
    SetShipTurnRateTuning(chr, rand(iRand));  //увеличение маневренности
    SetShipHPTuning(chr, rand(iRand));    //увеличение ХП
}

//генератор "отбермуженных" статов для кораблей с ручным рандомом
void SetTuningShipStatesRandom(ref chr, int iRand)
{
    ref rShip = &RealShips[sti(chr.ship.type)];
    
    if(rShip.class == 7) return;    //мелкие корабли отсекаем
    if(rShip.stolen == 0) return;    //генератор будет только на захваченных в море
    
    SetShipMaxCaliberTuning(chr, rand(iRand));  //увеличение калибра
    SetShipCapacityTuning(chr, rand(iRand));  //увеличение трюма
    SetShipSpeedRateTuning(chr, rand(iRand));  //увеличение скорости
    SetShipMaxCrewTuning(chr, rand(iRand));   //увеличение команды
    SetShipTurnRateTuning(chr, rand(iRand));  //увеличение маневренности
    SetShipHPTuning(chr, rand(iRand));    //увеличение ХП
}

//установка назначенных "отбермуженных" статов для корабля
void SetTuningStates2Ship(ref chr, bool MaxCaliber, bool Capacity, bool SpeedRate, bool MaxCrew, bool TurnRate, bool HP)
{
    if(MaxCaliber)    SetShipMaxCaliberTuning(chr, MaxCaliber);  //увеличение калибра
    if(Capacity)    SetShipCapacityTuning(chr, Capacity);   //увеличение трюма
    if(SpeedRate)    SetShipSpeedRateTuning(chr, SpeedRate);   //увеличение скорости
    if(MaxCrew)  SetShipMaxCrewTuning(chr, MaxCrew);    //увеличение команды
    if(TurnRate)    SetShipTurnRateTuning(chr, TurnRate);   //увеличение маневренности
    if(HP)   SetShipHPTuning(chr, HP);      //увеличение ХП
}

//увеличение калибра
void SetShipMaxCaliberTuning(ref chr, bool isSet)
{
    ref rShip = &RealShips[sti(chr.ship.type)];

    if(!CheckAttribute(rShip, "Tuning.MaxCaliber") && sti(rShip.MaxCaliber) < 32)
    {
  if(isSet)
  {
   int iCaliber = sti(rShip.MaxCaliber);
   switch(iCaliber)
   {
    case 12: iCaliber = 0; break;
    case 16: iCaliber = 1; break;
    case 24: iCaliber = 2; break;
    case 32: iCaliber = 3; break;
   }
   iCaliber = iCaliber + 1;
   if(iCaliber > 3) iCaliber = 3;
   switch(iCaliber)
   {
    case 0: iCaliber = 12; break;
    case 1: iCaliber = 16; break;
    case 2: iCaliber = 24; break;
    case 3: iCaliber = 32; break;
   }
   rShip.MaxCaliber = iCaliber;
   rShip.Tuning.Cannon = true;
  }
    }
}

//увеличение трюма
void SetShipCapacityTuning(ref chr, bool isSet)
{
    ref rShip = &RealShips[sti(chr.ship.type)];

    if(!CheckAttribute(rShip, "Tuning.Capacity"))
    {
  if(isSet)
  {
   rShip.Capacity = sti(rShip.Capacity) + makeint(sti(rShip.Capacity)/5);
   rShip.Tuning.Capacity = true;
  }
    }
}

//увеличение скорости
void SetShipSpeedRateTuning(ref chr, bool isSet)
{
    ref rShip = &RealShips[sti(chr.ship.type)];

    if(!CheckAttribute(rShip, "Tuning.SpeedRate"))
    {
  if(isSet)
  {
   rShip.SpeedRate = (stf(rShip.SpeedRate) + stf(rShip.SpeedRate)/5.0);
   rShip.Tuning.SpeedRate = true;
  }
    }
}

//увеличение команды
void SetShipMaxCrewTuning(ref chr, bool isSet)
{
    ref rShip = &RealShips[sti(chr.ship.type)];

    if(!CheckAttribute(rShip, "Tuning.MaxCrew"))
    {
  if(isSet)
  {
   rShip.MaxCrew = sti(rShip.MaxCrew) + makeint(sti(rShip.MaxCrew)/5);
   rShip.Tuning.MaxCrew = true;
  }
    }
}

//увеличение маневренности
void SetShipTurnRateTuning(ref chr, bool isSet)
{
    ref rShip = &RealShips[sti(chr.ship.type)];

    if(!CheckAttribute(rShip, "Tuning.TurnRate"))
    {
  if(isSet)
  {
   rShip.TurnRate = (stf(rShip.TurnRate) + stf(rShip.TurnRate)/5.0);
   rShip.Tuning.TurnRate = true;
  }
    }
}

//увеличение ХП
void SetShipHPTuning(ref chr, bool isSet)
{
    ref rShip = &RealShips[sti(chr.ship.type)];

    if(!CheckAttribute(rShip, "Tuning.HP"))
    {
  if(isSet)
  {
   rShip.HP = sti(rShip.HP) + makeint(sti(rShip.HP)/5);
   rShip.Tuning.HP = true;
   chr.ship.HP = sti(rShip.HP);  //чтобы были полные ХП после тюнинга
  }
    }
}


подключаем через #include "qwerty.c" в нужный вам файл
в characterUtilite.c находим функцию void SetBaseShipData(ref refCharacter) и в нее подключаем генератор
комментарии в коде есть, так что разобраться будет несложно (надеюсь)

найдете косяки - отпишитесь, т.к. генератор еще в процессе тестирования

скачиваем прикрепленный файл!

Прикрепления: ShipsTuningGene.c (4.3 Kb)


Что толку, если не можешь сделать мир лучше.
Новик4Дата: Понедельник, 09.11.2015, 22:00 | Сообщение # 248
Матрос
Группа: Корсар
Сообщений: 21
Награды: 0
Репутация: 4
Статус: В открытом море
Цитата Mett ()
Генератор "отбермуженных" характеристик для кораблей

Как я понял, после ввода данного кода в игру в игре начнут появляться отбермуженные корабли?
Или же это рандомно изменяет параметры уже отмермуженного корабля, который плавает в игре?
MettДата: Понедельник, 09.11.2015, 22:08 | Сообщение # 249
Капитан I ранга
Группа: Корсар
Сообщений: 586
Награды: 91
Репутация: 565
Статус: В открытом море
Цитата Новик4 ()
после ввода данного кода в игру в игре начнут появляться отбермуженные корабли?

именно так


Что толку, если не можешь сделать мир лучше.
NathanielДата: Четверг, 26.11.2015, 11:37 | Сообщение # 250
Контр-адмирал
Группа: Капитан
Сообщений: 8036
Награды: 347
Репутация: 1845
Статус: В открытом море
Поменял вчера для себя кое-что в интерфейсе вывода логов на экран...
Речь идёт о формулировках вида: "На корабле <таком-то> крысы сожрали..." Основная идея - дополнение информации, теперь указывается тип каждого корабля, если у вас, например, целая эскадра. Вдруг кому-то это будет интересно!..

Теперь у меня это выглядит примерно вот так:


Чтобы внести такие изменения, необходимо открыть файл \program\scripts\food.c. В теле функции DailyRatsEatGoodsUpdate() найти строчку, в которой запрограммирован вывод этой строки и вместо текста "На корабле..." вписать нечто вроде такого кода...

Цитата
Log_SetStringToLog("На " + XI_ConvertString(RealShips[sti(chref.Ship.Type)].BaseName+"Voc") + " ''" + chref.Ship.Name + "'' крысы" + LinkRandPhrase(" испортили ", " повредили ", " уничтожили ") + "часть груза " + LanguageConvertString(iSeaGoods, "seg_" + Goods[iGoods].Name) + "!"));

Важно! Обратите внимание на то, что в выделенном фрагменте нужно писать chref, а дальше - только rСhar!

Точно такой же кусок (я его выделил в предыдущем примере) можно вписать и в строчку, находящуюся в теле функции DailyEatCrewUpdateForShip(), например:

Цитата
if(!IsCompanionTraveler) Log_Info("На " + XI_ConvertString(RealShips[sti(rChar.Ship.Type)].BaseName+"Voc") + " ''" + rChar.Ship.Name + "'' от болезней умерло " + FindRussianSailorString(cn, "No") + "!");

и

Цитата
if(!IsCompanionTraveler) Log_Info("На " + XI_ConvertString(RealShips[sti(rChar.Ship.Type)].BaseName+"Voc") + " ''" + rChar.Ship.Name + "'' осталось мало медикаментов!");

и

Цитата
if(!IsCompanionTraveler) Log_Info("На " + XI_ConvertString(RealShips[sti(rChar.Ship.Type)].BaseName+"Voc") + " ''" + rChar.Ship.Name + "'' закончились запасы рома!");

и

Цитата
Log_Info("На " + [b]XI_ConvertString(RealShips[sti(rChar.Ship.Type)].BaseName+"Voc")[/b] + " ''" + rChar.Ship.Name + "'' продовольствия осталось на " + FindRussianDaysString(cn) + "!");

и

Цитата
if(!IsCompanionTraveler) Log_Info("На " + XI_ConvertString(RealShips[sti(rChar.Ship.Type)].BaseName+"Voc") + " ''" + rChar.Ship.Name + "'' матросы голодают. Мораль команды падает!");

и

Цитата
Log_Info("На " + XI_ConvertString(RealShips[sti(rChar.Ship.Type)].BaseName+"Voc") + " ''" + rChar.Ship.Name + "'' произошёл бунт!");

Текст можете писать в каждом конкретном примере свой собственный, неизменными должны быть только выделенные куски. Точно так же можете найти любые другие формулировки вида: "На корабле..." и вставить ссылку на конкретный тип корабля вместо слова...

И ещё одна немаловажная деталь... Внутри функции XI_ConvertString() у меня указан предложный ("Voc") падеж. Если у Вас его нет - его нужно вставить в файле:

\resource\ini\texts\russian\common.ini

Пример добавления ниже под спойлером.


Можно, в принципе, ничего не добавлять и не изменять, но тогда велика вероятность того, что у вас будут неправильно склоняться слова, ибо в оригинальном common.ini некоторые падежи, мягко говоря, переставлены местами и написаны неправильно.


Я был на краю земли, на краю бескрайних озёр, за горизонтом и на вершинах самых высоких гор.
Но я не нашёл там никого, кто не был бы моим другом!


Сообщение отредактировал Nathaniel - Суббота, 28.11.2015, 00:23
MettДата: Суббота, 20.02.2016, 23:11 | Сообщение # 251
Капитан I ранга
Группа: Корсар
Сообщений: 586
Награды: 91
Репутация: 565
Статус: В открытом море
фиксим "черный квадрат"!
для этого открываем файл Evening.c (путь до файла Program\Weather\Init) и находим там блок для 9 вечера
Код
Weathers[n].id = "21 Hour";

листаем вниз, нам нужны настройки солнца
нам нужны строки
Код
Weathers[n].Sun.Glow.Enable = false;
и
Код
Weathers[n].Sun.Overflow.Enable = false;

заменяем в них false на true и сохраняемся
у меня после таких манипуляций "черный квадрат" исчез

теперь фиксим отсутствие должного освещения в пещерах и светящуюся траву во время дождя
вся соль проблемы в том, что используется освещение storm1, а для локаций пещер присутствует только evening23 и поэтому движок не может найти нужный файл с освещением
нам надо добавить дополнительное условие в код, чтобы в пещерах во время дождя срабатывало освещение evening23
для этого открываем файл WhrWeather.c (путь до файла Program\Weather) и находим там функцию
Код
string Whr_GetRainyLightningPath()
{
    return "storm1";
}
и меняем ее на вот такой код
Код
string Whr_GetRainyLightningPath()
{    //Mett: fix кривого освещения в пещерах
    if(loadedLocation.type == "dungeon")
    {
        return "evening23";
    }
    return "storm1";
}


для того, чтобы притемнить траву мы находим файл globals.c внутри папки Program
и находим там функцию
Код
int EventReturn_isGrassLightsOn()
{
    // trace("EventReturn_isGrassLightsOn"); это я перевел на 1 раз за все время создания травы
    // 1 - светится, 0 - темная    
    if (bSeaActive || bStorm || bTornado)
    {
  return 0;
    }
    
    if (GetHour() >= 9 && GetHour() <= 18)
    {
     return 1;
    }
    return 0;
}
и меняем ее на мой аналог
Код
int EventReturn_isGrassLightsOn()
{
    // trace("EventReturn_isGrassLightsOn"); это я перевел на 1 раз за все время создания травы
    // 1 - светится, 0 - темная
    //Mett: теперь проверка по WeatherParams
    if(CheckAttribute(&WeatherParams, "Rain") && sti(WeatherParams.Rain))
    {
  return 0;
    }
    
    if (bSeaActive || bStorm || bTornado)
    {
  return 0;
    }
    
    if (GetHour() >= 9 && GetHour() <= 18)
    {
     return 1;
    }
    return 0;
}


как-то так


Что толку, если не можешь сделать мир лучше.
PirateModderДата: Воскресенье, 21.02.2016, 16:14 | Сообщение # 252
Пороховая обезьяна
Группа: Корсар
Сообщений: 19
Награды: 3
Репутация: 25
Статус: В открытом море
Цитата Mett ()
теоретически можно реализовать хождение с факелом, но нет подходящих анимаций

Можно сделать - просто нарезать кадры из анимации спокойного шага с оружием в руках.
Вполне подойдет.
КоролёвДата: Понедельник, 22.02.2016, 18:41 | Сообщение # 253
Капитан I ранга
Группа: Команда Аддона
Сообщений: 542
Награды: 58
Репутация: 406
Статус: В открытом море
Цитата PirateModder ()
Можно сделать - просто нарезать кадры из анимации спокойного шага с оружием в руках.

Что ты имеешь ввиду? Ты знаешь, как кадры нарезаются?

Цитата Mett ()
теоретически можно реализовать хождение с факелом, но нет подходящих анимаций

Такую анимацию легко создать. Достаточно зафиксировать руку в согнутом положении для анимаций стояния и хождения.
Поскольку я не знаю, как воткнуть в файлы анимаций дополнительные кадры и могу редактировать только те, что уже есть, файлу отвечающему за анимации придется быть отличным от "man" (например, "man3"), а факелу останется надеваться только по аналогии с тем, как надевается мушкет. (т.к. к мушкету тоже идет отдельный файлик анимаций)
Если в коде можно как-нибудь прописать изменение анимации в зависимости от пола, то нет никаких проблем и с созданием анимаций для женщин. Иначе можно будет создать отдельно женские, отдельно мужские факелы jokingly ))

Добавлено (22.02.2016, 18:41)
---------------------------------------------
Ах, ещё одна "вроде бы мелочь" )

Сам факел нужно будет замоделить и впихнуть в него локатор, который будет отвечать за горение в правильном месте.

Дальше останется только впихнуть эту палку в правильный, другой локатор в руке.



Вы даже представить себе не можете, насколько просто и легко все то, что кажется вам сложным.


Сообщение отредактировал Королёв - Понедельник, 22.02.2016, 18:37
PirateModderДата: Понедельник, 22.02.2016, 20:20 | Сообщение # 254
Пороховая обезьяна
Группа: Корсар
Сообщений: 19
Награды: 3
Репутация: 25
Статус: В открытом море
Цитата Королёв ()
Что ты имеешь ввиду? Ты знаешь, как кадры нарезаются?



Сообщение отредактировал PirateModder - Понедельник, 22.02.2016, 20:21
КоролёвДата: Понедельник, 22.02.2016, 20:56 | Сообщение # 255
Капитан I ранга
Группа: Команда Аддона
Сообщений: 542
Награды: 58
Репутация: 406
Статус: В открытом море
Да, знаем мы такой способ. Такие анимации будут кривоваты, а кадры можно будет запускать только в прямом или обратном порядке, согласно их номерам, и тут даже не перепрыгнуть через "лишнее". К тому же факел будет держаться криво, и ещё хуже будет происходить доставание меча. Плюс, вы предложили запретить ему бег. Нельзя запрещать бег, никто из игроков не перемещается пешком, никто никогда не отключает "автоматический" бег во время игры.

Сам в моделинге ноль...
Спалю кое-что...
NikK писал, что с таким факелом отблесков на стенах не будет, так как свет задается кулами, и "смысла в факеле немного".

Тут нужно делать факел не в правую руку, а в левую, а после доставания меча, нужно либо убирать факел, либо делать анимации для боя с факелом.
Даже при том, что факел не будет полностью выполнять свое прямое назначение, это можно рассматривать, как новую фишку...

Сейчас сделать всё это реально. Можем попробовать.



Вы даже представить себе не можете, насколько просто и легко все то, что кажется вам сложным.
PirateModderДата: Понедельник, 22.02.2016, 21:58 | Сообщение # 256
Пороховая обезьяна
Группа: Корсар
Сообщений: 19
Награды: 3
Репутация: 25
Статус: В открытом море
Цитата Королёв ()
Нельзя запрещать бег, никто из игроков не перемещается пешком, никто никогда не отключает "автоматический" бег во время игры.

Факел можно сделать только в качестве единичного элемента по какому-либо квесту, не более.
Зачем он на постоянной основе? ) Ещё и анимацию ему делать новую.

Цитата Королёв ()
Сейчас сделать всё это реально. Можем попробовать.

Творите, ребят. Если есть время, то чего бы и не попробовать? )

КоролёвДата: Вторник, 23.02.2016, 11:39 | Сообщение # 257
Капитан I ранга
Группа: Команда Аддона
Сообщений: 542
Награды: 58
Репутация: 406
Статус: В открытом море
Анимацию не показать без видео, но с видео было больше трудностей, чем с анимацией jokingly



Цитата PirateModder ()
Зачем он на постоянной основе? )

Стражникам ночью можно раздать + бандитам в джунглях, патрулям.

Цитата PirateModder ()
Закончу на этом про факела флудить

Да ладно, надуюсь, модератор перенесет все сообщения в правильную тему jokingly



Вы даже представить себе не можете, насколько просто и легко все то, что кажется вам сложным.
Джин-БейнДата: Вторник, 23.02.2016, 22:20 | Сообщение # 258
Капитан I ранга
Группа: Команда Аддона
Сообщений: 1073
Награды: 40
Репутация: 197
Статус: В открытом море
Цитата Королёв ()
NikK писал, что с таким факелом отблесков на стенах не будет, так как свет задается кулами, и "смысла в факеле немного".


http://pirates-life.ru/forum/39-1969-278669-16-1446238965




Сообщение отредактировал Джин-Бейн - Среда, 24.02.2016, 04:22
КоролёвДата: Среда, 24.02.2016, 04:15 | Сообщение # 259
Капитан I ранга
Группа: Команда Аддона
Сообщений: 542
Награды: 58
Репутация: 406
Статус: В открытом море
Джин-Бейн,


Вы даже представить себе не можете, насколько просто и легко все то, что кажется вам сложным.
Джин-БейнДата: Среда, 24.02.2016, 04:23 | Сообщение # 260
Капитан I ранга
Группа: Команда Аддона
Сообщений: 1073
Награды: 40
Репутация: 197
Статус: В открытом море
Королёв, Не ту ссылку вставил, уже исправил, дублирую тут на всякий случай http://pirates-life.ru/forum/39-1969-278669-16-1446238965



Сообщение отредактировал Джин-Бейн - Среда, 24.02.2016, 04:23
Поиск:

Copyright Pirates-Life.Ru © 2008-2024


Семь Футов под Килем - Бухта Корсаров и Пиратов!