На сколько я вижу в ядре за генерацию мультиселлов отвечает L2 Multisell.java
структура генерации такова
PHP код:
private void loadHardcoded()
{
// 4000 - Enchance Weapon - C, B (Insert SA)
MultiSellListContainer list = new MultiSellListContainer();
list.setListId(4000);
list.setShowAll(false);
list.setKeepEnchant(true);
list.setNoTax(true);
generateSAInsertion(Grade.C, Grade.B, list);
entries.put(list.getListId(), list);
// 4001 - Enchance Weapon - A (Insert SA)
list = new MultiSellListContainer();
list.setListId(4001);
list.setShowAll(false);
list.setKeepEnchant(true);
list.setNoTax(true);
generateSAInsertion(Grade.A, Grade.A, list);
entries.put(list.getListId(), list);
// 40011 - Enchance Weapon - S (Insert SA)
list = new MultiSellListContainer();
list.setListId(40011);
list.setShowAll(false);
list.setKeepEnchant(true);
list.setNoTax(true);
generateSAInsertion(Grade.S, Grade.S, list);
entries.put(list.getListId(), list);
// 326150002 - Enchance Weapon - S80/S84 (Insert SA)
list = new MultiSellListContainer();
list.setListId(326150002);
list.setShowAll(false);
list.setKeepEnchant(true);
list.setNoTax(true);
generateSAInsertion(Grade.S80, Grade.S84, list);
entries.put(list.getListId(), list);
// 4002 - Remove SA
list = new MultiSellListContainer();
list.setListId(4002);
list.setShowAll(false);
list.setKeepEnchant(true);
list.setNoTax(true);
generateSARemove(list);
entries.put(list.getListId(), list);
// 311262517 - Finish Masterwork
list = new MultiSellListContainer();
list.setListId(311262517);
list.setShowAll(true);
list.setKeepEnchant(true);
list.setNoTax(true);
list.setNoKey(true);
generateFinishMastetrwork(list);
entries.put(list.getListId(), list);
// 364790006 - PvP weapon add
list = new MultiSellListContainer();
list.setListId(364790006);
list.setShowAll(false);
list.setKeepEnchant(true);
list.setNoTax(true);
generatePvPAdd(list);
entries.put(list.getListId(), list);
// 364790007 - PvP weapon remove
list = new MultiSellListContainer();
list.setListId(364790007);
list.setShowAll(false);
list.setKeepEnchant(true);
list.setNoTax(true);
generatePvPRemove(list);
entries.put(list.getListId(), list);
// 1002 - unseal B
list = new MultiSellListContainer();
list.setListId(1002);
list.setShowAll(false);
list.setKeepEnchant(true);
list.setNoTax(false);
generateUnseal(Grade.B, Grade.B, list);
entries.put(list.getListId(), list);
// 1003 - reseal B
list = new MultiSellListContainer();
list.setListId(1003);
list.setShowAll(false);
list.setKeepEnchant(true);
list.setNoTax(false);
generateReseal(Grade.B, Grade.B, list);
entries.put(list.getListId(), list);
// 1005 - unseal A
list = new MultiSellListContainer();
list.setListId(1005);
list.setShowAll(false);
list.setKeepEnchant(true);
list.setNoTax(false);
generateUnseal(Grade.A, Grade.A, list);
entries.put(list.getListId(), list);
// 1007 - reseal A
list = new MultiSellListContainer();
list.setListId(1007);
list.setShowAll(false);
list.setKeepEnchant(true);
list.setNoTax(false);
generateReseal(Grade.A, Grade.A, list);
entries.put(list.getListId(), list);
// 1008 - unseal S
list = new MultiSellListContainer();
list.setListId(1008);
list.setShowAll(false);
list.setKeepEnchant(true);
list.setNoTax(false);
generateUnseal(Grade.S, Grade.S, list);
entries.put(list.getListId(), list);
// 1009 - unseal S80
list = new MultiSellListContainer();
list.setListId(1009);
list.setShowAll(false);
list.setKeepEnchant(true);
list.setNoTax(false);
generateUnseal(Grade.S80, Grade.S80, list);
entries.put(list.getListId(), list);
// 1010 - unseal S84
list = new MultiSellListContainer();
list.setListId(1010);
list.setShowAll(false);
list.setKeepEnchant(true);
list.setNoTax(false);
generateUnseal(Grade.S84, Grade.S84, list);
entries.put(list.getListId(), list);
// 1011 - unseal S80/S84 using adena
list = new MultiSellListContainer();
list.setListId(1011);
list.setShowAll(false);
list.setKeepEnchant(true);
list.setNoTax(false);
generateUnseal(Grade.S80, Grade.S84, list, 57, 5);
entries.put(list.getListId(), list);
}
следственно мультиселл 4002 генерируется так:
PHP код:
// 4002 - Remove SA
list = new MultiSellListContainer();
list.setListId(4002);
list.setShowAll(false);
list.setKeepEnchant(true);
list.setNoTax(true);
generateSARemove(list);
entries.put(list.getListId(), list);
Так вот я не знаю как написать отдельный мультиселл, что бы он показывал только то оружие что в инвентаре.
Или как сделать запрос на генерацию.
Задача ясна.
Сделать запрос на генерацию, или мультисел с функцией отбора.
Добавлено через 1 минуту
Кстате на генерации мультиселов не только фениксы но nextgen работает.
Это только то что я виде своими глазами в ядре