masterXL> необходима помощь в таком вопросеmasterXL> { 1 2 3 } value items-listmasterXL> как заставить этот список обработать в такой задачеmasterXL> item-list ['] n items_removemasterXL> тормознул полностью. думаю это многим пригодитсяmasterXL> Бал помогай!!!!! не молчи
1. Если просто забрать список из N предметов с разным количеством, то я делал в эвентах, скажем, так:
code forth
false uvalue flag
item_id remove_count
{ { 3879 2 } G
{ 3875 2 } A
{ 3877 1 } E
{ 3886 1 } S
{ 3882 1 } L
} value needed_items_list
: item-check ( {item_id count} -- )
list> drop items# <=
flag and to flag
;
: all-runes? ( -- flag )
true to flag
needed_items_list ['] item-check do-list
flag
;
: remove-rune ( {item_id count} -- )
list> drop items_remove
;
: remove-runes ( -- success-flag )
all-runes? not if false exit then
needed_items_list ['] remove-rune do-list
true
;
Это с проверкой на наличие итемов заданного количества и, если их достаточно, то с удалением.
Пример эвента с обменом квестовых вещей на полезные безделущки см. в
Error: Not Found – L2J Fortress