Register

Автор Тема: освещенность комнаты  (Прочитано 1570 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн aldaril

  • Постоялец
  • *
  • Сообщений: 169
  • Карма: 2
  • Пол: Мужской
освещенность комнаты
« : 21.04.05, 18:29:47 »
=====================
то Игрокам:

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

пользуемся ;)
=====================

то иммам:
ошибка Смауга лечится так:
смотрим load_char_obj
находим вхождение
               if ( save_equipment[x] )
               {
                   equip_char( ch, save_equipment[x], i );
                   save_equipment[x] = NULL;
               }

добавляем строкой ниже после equip_char
                   if ( get_eq_light(ch) && ch->in_room && ch->in_room->light > 0 )
                      --ch->in_room->light;

В: что такое get_eq_light(ch) ?
О: выявляет наличие освещения у чара (мне было проще вывести отдельной функцией)

В: в чем был глюк ?
О: при загрузке игрока в мад происходит дубляж увеличения показателя ->light для комнаты
первый раз в equip_char
второй раз в char_to_room

исправляем ;)
=====================


Оффлайн Nanni

  • Братство Ронинов
  • Победитель нежити
  • **
  • Сообщений: 695
  • Карма: 74
  • Пол: Женский
  • Атипичный эльф
освещенность комнаты
« Ответ #1 : 21.04.05, 18:53:46 »
*обалдела*

мдя... если даже после такого разбора багу не исправят...
А вообще я белая и пушистая...

Оффлайн Alanna

  • Бессмертные
  • Победитель нежити
  • *****
  • Сообщений: 613
  • Карма: 5
освещенность комнаты
« Ответ #2 : 24.02.07, 17:54:16 »
Спасибо, Алдарил, верное замечание.
Только правится это куда проще: в equip_char вставить проверку
if (ch != loading_char).
Исправлено, вскоре подключим.
Легконогая