• Страница 1 из 1
  • 1
Модератор форума: No_MaTTeR, staford11  
[wotlk-335] баг при просеивании руды и измельчении травы
absourd
Скаут
Мучаюсь уже неделю. При просеивании и измельчении предмета в стопке нельзя собрать с этой же стопки лут во второй и более раз.

Цитата
(пример измельчение Сребролиста для добычи Алебастрового красителя [начертание])
стак 20 сребролиста
1. Первое применение спелла "измельчение" - все как и должно быть: появился лут с красителем, по закрытии 5 сребролиста исчезло, осталось 15 штук в стаке
2. Второе применение на этот-же стак (15 сребролиста осталось) - проходит spelltime, появляется пустое окно лута, по закритии окошка лута остается 15 шт. сребролиста. Ничего не меняется.
3. Отделяю от стака 10 сребролиста и кладу в другую стопку. остается 5 сребролиста в старой стопке. - возвращаюсь к пункту 1 и происходит повторение с 1 по 2 пункты.

В логе сервера (logfilelevel = 3)
ошибок и предупреждений в процессе каста и лута нет.

в SRC (последняя на 23,11,2015 ревизия ядра скачанно с офф репозитория) откомментировал для себя некоторые участки lootmgr.cpp насколько понял сам код. компилируется, кстати без ошибок и предупреждений.
               
Код
//  !!bugged: not loot on that stack again!! temporary loot in stacking items, clear loot state, no auto loot move
                case LOOT_MILLING:
                case LOOT_PROSPECTING:
                {
                    uint32 count = m_itemTarget->GetCount();

                    // если стопка больше 5 то убрать из нее "count"
                    if (count > 5) // значение по умолчанию >5
                        count = 5; // значение по умолчанию =5

                    // reset loot for allow repeat looting if stack > 5
                   //
                    Clear();
                    m_itemTarget->SetLootState(ITEM_LOOT_REMOVED); // по умолчанию: ITEM_LOOT_REMOVED

                    player->DestroyItemCount(m_itemTarget, count, true); //убрать треб. количество (указанно в count)
                    break;
                }
                // !!end of bugged code!!
на сколько я понял систему этого участка кода идет спелл, если стопка больше 5 то снять с нее лишь 5 предметов, сбросить состояние лута для стопки.
и насколько я понял сам баг исходя из вышеизложенного проблемма с состоянием лута...
С переменными отмеченными комментами (значение по умолчанию) уже испробовал всё, что мог. Может я не там ищу?

Добавлено (23.11.2015, 10:20)
---------------------------------------------
добавляю ССЫЛКУ (yandexdisk) на участок лога с ответными действиями сервера на действия персонажа, описанные в начале темы

Добавлено (15.12.2015, 14:36)
---------------------------------------------
ап...

Сообщение # 1 отредактировано absourd - Понедельник, 23.11.2015, 10:25
  • Страница 1 из 1
  • 1
Поиск: