""" ================================================================== SCRIPT: Auto-Skinner & Butcher AUTHOR: Evilrage WEBSITE: unchainedscripts.com ================================================================== DESCRIPTION: Automatically skins corpses within 3 tiles, uses scissors to cut the hides into leather, and moves the leather into your backpack. ================================================================== """ import Misc import Items import Player import Target skinned_corpses = [] SKINNING_TOOL_IDS = [0x0EC4, 0x0F52, 0x0F51, 0x13F6] SCISSORS_ID = 3999 HIDES_ID = 0x1079 LEATHER_ID = 0x1081 def process_corpses(): global skinned_corpses if Player.IsGhost: return corpses = Items.Filter() corpses.Enabled = True corpses.OnGround = True corpses.IsCorpse = True corpses.RangeMax = 3 corpse_list = Items.ApplyFilter(corpses) for corpse in corpse_list: if corpse.Serial in skinned_corpses: continue tool = None for tool_id in SKINNING_TOOL_IDS: found = Items.FindByID(tool_id, -1, Player.Backpack.Serial, True) if found: tool = found; break if tool: Items.UseItem(tool) Target.WaitForTarget(1000, False) Target.TargetExecute(corpse.Serial) skinned_corpses.append(corpse.Serial) if len(skinned_corpses) > 100: skinned_corpses.clear() Misc.Pause(800) scissors = Items.FindByID(SCISSORS_ID, -1, Player.Backpack.Serial, True) if scissors: hides = Items.FindByID(HIDES_ID, -1, corpse.Serial, False) if not hides: hides = Items.FindByID(0x1078, -1, corpse.Serial, False) if hides: Items.UseItem(scissors) Target.WaitForTarget(1000, False) Target.TargetExecute(hides.Serial) Misc.Pause(600) leather = Items.FindByID(LEATHER_ID, -1, corpse.Serial, False) if not leather: leather = Items.FindByID(0x1082, -1, corpse.Serial, False) if leather: Items.Move(leather.Serial, Player.Backpack.Serial, 0) Misc.Pause(500) def main(): Player.HeadMessage(63, "[unchainedscripts.com] Auto-Skinner Active") while True: process_corpses() Misc.Pause(500) if __name__ == "__main__": main()