re-enable it (whoops) and clean up its code.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@5698 c06c8d41-db1a-0410-9941-cceddc491573
Q5YUZONIIPGRWOIQNL6DHRGLKF4V3K5XSZCBH2SL7DP4WPLDNOSQC 26OIELYSIJCJWYEFGIMLOUFROF5T3DW5VQ4H4YDHBIOEOXZ7KWVAC SQUBRQGLCJ6QRKDFXTEW4G7KIRKZJXZSGENVL6HCSYUXDBIMFOMQC QGUV5IINCOK6AXWQ2QTZMPDJTEZPON5O565ANT2EE236I5OAPAVAC ALHRVZZEWK6YGOVB422CRLBKHV6ANAWMPP2EIWURXLKEWSHPHXCAC 4GYZYBY7FFORRNPIEFTV4ZM2C7Z6D2KTQOM537ZCC2YBXT2TNSHAC K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC 3D6NWJ44UYHLZMD3BOQIWXJUEGITAVCHK6Z2WWDQONVQC4HSBRXQC NGW2XPEX2XRK3CYC37DNUZSSB5IQLECMKRB6NX257I2X3G35LMPAC RPOZZWKG5GLPHVZZ7ZKMKS64ZMV2LDCQSARBJFJ6FZOTOKCQO7FAC EEZCC5GUYHETFQV4KSZJSJ6BTTWZHKS7RXQ25XQ6ODGKLDD4XFRAC SDLKLUNFGVKDS55DDJZCBAVIB7NL3RRYPTACAY65SCUQKV6APFSAC 4D4U3FNTYBIIM7Q67O4ISUTYBMT5DP746B7VKLXXJDWPTARPAKDQC GKA3ZGZ2P6F22FDNSYNQDMCS3N7HNZD5QCOSQ6VJRAU2K5U4YYTQC RX6575DZOHRUXQUZH34YZGPZJF4STUPLBQDIVTINA2L6LVCKRIGQC UET576SVCGS2TXEDRTO7BUTOTLJ77MYHIVZJCDWGH2BAXYMKG6DAC JGKYRZ34S3I23PMJX6IUBR7EHEFD6I4XXEGXNT7GKT2M2VIRBSMQC SXTWWMONWAVOGIYRQP6ALJLLNCDNT4NNDTE2HXCUOVP6HZ7XNXFQC NVSFIV2ZKP44XHCSCXG6OZVGL67OIFINC34J2EMKTA4KULCERUEAC O2GH2BHUL4XXIIJSMKNV2NIC4KQACE6HLMUL4KEUDFNFEAGMZSZAC 45QV77UI6QFW4234P365LD3FGJYRVWTT5455DPB324NG2NFQMKTQC CAHE52HL2ZGRJPBYZ3DS4BVKUD2XC7N3SG25TGG7JGHGJDST4P3QC UBUOMGDTBC5WVGCZWLPC7JXZRPKNODQODFEPWB5ECSJT5J445JLQC L2BH25YQXSIQ7B66SXO7Q3IWUFVX7HTERRJZ5ZJJZS54ZETVFP6AC TDAVD56MGLFSMJLPLSYLEVW7MBRMT7V5BNII4TRWVDIHH47CD2OAC JLCSPMTVGUYTGZNCWPMFITEZZ2CDHL2JF67FFODO5L44OVAW4WWAC RVST2QHYJ757ZHK4AUJ5NGPDZ44AD6RVFVXYPKQIBJXZBDNUCHXQC 3ZX3OFVURH4SQETNKSZBESRSV2XX7OYY2V3ZE3YATTRGWAJ53NZAC WL5WZXFJ6TONUQRSHUY4GQ5USU47ILWNN5X2JDQZO4CRJJZSRQIAC XPCGZBHHSL6MB3ORMUJI64BAERU6AZTIY6RK56BBW7SNB3IK24IAC TTGCXNOSKYDDDJYGJV2RKHKJTWZROB7RNOZCXIO2TVXVYIDNIAWQC ----------------------------------------------------------------------------- eat.lua:-- Pick up a butchering weapon if we don't already have one.-- This requires ) to be in the autopickup option line.---- To use this, add this line to your init.txt:-- lua_file = lua/pickup.lua---------------------------------------------------------------------------function can_butcher(it)if item.name(it):find("distort", 0, true) thenreturn falseendlocal skill = item.weap_skill(it)-- Have to handle polearms separately, since only some of them can butcher.if skill == "Polearms" or skill == "Staves" thenlocal butcherable_polearms = {"scythe", "lajatang", "halberd", "bardiche", "glaive"}for _, weap in ipairs(butcherable_polearms) doif string.find( item.name(it, "a"), weap ) thenreturn trueendendreturn falseelsereturn string.find( skill, "Blades" ) or skill == "Axes"endendfunction ch_autopickup(it)if item.class(it, true) == "weapon" then-- Trolls and Ghouls don't need weapons to butcher things, and Mummies-- and Spriggans can't eat chunks. Ideally, we could detect a player-- with the claws mutation here too, but that's not currently possible.if you.race() == "Troll"or you.race() == "Ghoul"or you.race() == "Mummy"or you.race() == "Spriggan" thenreturn falseend-- The item is not a good butchering tool, either.if item.cursed(it) or not can_butcher(it) thenreturn falseend-- Check the inventory for butchering tools.local inv = item.inventory()for _, inv_it in ipairs(inv) doif item.class(inv_it, true) == "weapon"and can_butcher(inv_it)and not item.cursed(inv_it) thenreturn falseendendend-- If we got here, we found no butchering tool in the inventory-- AND this weapon is a good candidate tool for a butchering tool.-- Ergo: pick it up.return trueend
if (slot1 < 0 || slot1 >= ENDOFPACK ||slot2 < 0 || slot2 >= ENDOFPACK ||slot1 == slot2 || !is_valid_item(you.inv[slot1]))
if (slot1 < 0 || slot1 >= ENDOFPACK|| slot2 < 0 || slot2 >= ENDOFPACK|| slot1 == slot2 || !is_valid_item(you.inv[slot1])){
{ "easy_open", &Options.easy_open, option_hboolean },{ "colour_map", &Options.colour_map, option_hboolean },{ "clean_map", &Options.clean_map, option_hboolean },
{ "easy_open", &Options.easy_open, option_hboolean },{ "colour_map", &Options.colour_map, option_hboolean },{ "clean_map", &Options.clean_map, option_hboolean },
{ "easy_open", &Options.easy_open, option_hboolean },{ "easy_armour", &Options.easy_unequip, option_hboolean },{ "easy_unequip", &Options.easy_unequip, option_hboolean },{ "easy_butcher", &Options.easy_butcher, option_hboolean },
{ "easy_open", &Options.easy_open, option_hboolean },{ "easy_armour", &Options.easy_unequip, option_hboolean },{ "easy_unequip", &Options.easy_unequip, option_hboolean },{ "easy_butcher", &Options.easy_butcher, option_hboolean },
{ "note_skill_max", &Options.note_skill_max, option_hboolean },{ "delay_message_clear", &Options.delay_message_clear, option_hboolean },{ "no_dark_brand", &Options.no_dark_brand, option_hboolean },{ "auto_list", &Options.auto_list, option_hboolean },{ "pickup_thrown", &Options.pickup_thrown, option_hboolean },{ "pickup_dropped", &Options.pickup_dropped, option_hboolean },{ "show_waypoints", &Options.show_waypoints, option_hboolean },{ "item_colour", &Options.item_colour, option_hboolean },
{ "note_skill_max", &Options.note_skill_max, option_hboolean },{ "delay_message_clear", &Options.delay_message_clear, option_hboolean },{ "no_dark_brand", &Options.no_dark_brand, option_hboolean },{ "auto_list", &Options.auto_list, option_hboolean },{ "pickup_thrown", &Options.pickup_thrown, option_hboolean },{ "pickup_dropped", &Options.pickup_dropped, option_hboolean },{ "show_waypoints", &Options.show_waypoints, option_hboolean },{ "item_colour", &Options.item_colour, option_hboolean },
{ "target_wrap", &Options.target_wrap, option_hboolean },{ "easy_exit_menu", &Options.easy_exit_menu, option_hboolean },
{ "target_wrap", &Options.target_wrap, option_hboolean },{ "easy_exit_menu", &Options.easy_exit_menu, option_hboolean },
# Pick up a butchering weapon if we don't already have one< doreturn falseendreturn falseendreturn trueendendendadd_autopickup_func(pickup_butcher)end >for _, inv_it in pairs(item.inventory()) doif can_butcher(inv_it, item.name(inv_it)) thenreturn falseendendreturn truereturn falsefunction pickup_butcher(it, name)if you.has_claws() > 0 thenreturn falseendif not you.can_consume_corpses() and not you.god_likes_butchery() thenreturn falseendif not can_butcher(it, name) thenif item.cursed(it) thenreturn falseendif name:find("distort", 0, true) thenlocal function can_butcher(it, name)if not item.can_cut_meat(it) then
# lua routines for automatically picking up one butchering tool# This require ) in autopickup and no further weapons are picked up.include = pickup_butcher_tool.txt
# Note that ")" have to be in the above list for pickup.lua# (autopickup a butchering tool if you don't already have one)# to work.