Merge pickupitems.txt with items_control.txt
Since items_control can manage pickupitems.txt functions with an extra flag I don't see why it can't be combined into a single file. Results in cleaner control folder and less code.
I actually think our item management is horrible, I wrote a complete change on the inventory code a few months ago but it never got merged (#119)
We have no "storage to cart" function and we use 2 data files and some config.txt lines (getAuto, sellAuto, buyAuto) to manage items. We should have only one more complete data file with options like:
invToStorage invToCart storageToCart cartToStorage sellAuto butAuto getAuto pickUp
And many others I can't remember now.
I talked about your idea that I came up with separately (did not know you already implemented it) with allanon a couple of weeks ago, he says this is best to be done as a separate item_controls file with a plugin for backwards compatibility if the users choose to use the old settings.
My perspective is that such backwards compatibility is a minor issue and that this improvement outweighs the gains. A migration script can also be written to assist users. That said I think we can implement this as core using a new control file and not disabling old way of configuration but just deprecate it.
Are you able to code it as a plugin first so for those who wants to be use it can use it now and merging to core files can be worked on?
I also think cart should be last as only a merc class uses them. I think it should be:
sellAuto block
(item name) (pickup) (inventory amount) (auto store amount - if more than 0 activate auto store) (auto store npc) (auto sell amount - if more than 0 activate auto-sell block) (auto buy block) [put in cart] [get from cart]
We can even add a check if BuyAuto and SellAuto is active in the same line to prevent selling loop by confirming with the users.
@Cozzie I think backwards compatibility is very important, there are many users who have been using kore for years and suddenly invalidating their configurations is never a good idea.
I like the idea of deprecation for now.