From c5244152fa5c686f01470d90749f7accc0e59bf5 Mon Sep 17 00:00:00 2001 From: "R.D. di Giovanni" Date: Tue, 18 Aug 2026 17:03:50 +0200 Subject: [PATCH 1/2] Added scissor support to cut hides into leather --- RazorScripts/Butcher.cs | 29 +++++++++++++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/RazorScripts/Butcher.cs b/RazorScripts/Butcher.cs index 0b698f5..b79b0d2 100644 --- a/RazorScripts/Butcher.cs +++ b/RazorScripts/Butcher.cs @@ -24,6 +24,7 @@ public class Butcher private int _lambLeg = 0x1609; private int _dragonscale = 0x26B4; private int _dragonblood = 0x4077; + private int _scissors = 0x0F9F; private readonly List _daggers = new[] @@ -35,6 +36,8 @@ public class Butcher 0x13F6, //Butchers Knife 0x13B6, //Butchers Knife }.ToList(); + + private Item _scissorsItem; public void Run() { @@ -79,6 +82,14 @@ public void Run() var isHarvestersBlade = dagger.Name == "Harvester's Blade"; + _scissorsItem = DigDeep(Player.Backpack, _scissors); + + if (_scissorsItem == null) + { + Misc.SendMessage("Unable to locate scissors", 201); + return; + } + var corpses = Items.ApplyFilter(new Items.Filter { IsCorpse = 1, @@ -201,9 +212,23 @@ private Item DigDeep(Item container, int itemId) private void LootItems(Item corpse, int itemId, string name = null) { var stack = corpse.Contains.Where(i => i.ItemID == itemId && (string.IsNullOrEmpty(name) || i.Name.Contains(name))).ToList(); - foreach (var feather in stack) + foreach (var stackItem in stack) { - Items.Move(feather, Player.Backpack.Serial, feather?.Amount ?? int.MaxValue); + Items.Move(stackItem, Player.Backpack.Serial, stackItem?.Amount ?? int.MaxValue); + + if (stackItem.ItemID == _hide) + { + Misc.SendMessage("Cutting hides", 201); + Misc.Pause(300); + // After moving, find the item again inside backpack + var moved = Player.Backpack.Contains.FirstOrDefault(i => i.ItemID == itemId); + if (moved != null && moved.ItemID == _hide) + { + Items.UseItem(_scissorsItem); + Target.WaitForTarget(2000); + Target.TargetExecute(moved); + } + } Misc.Pause(100); } } From 0f6a27a812d7139118ea8726370f70de7d1d223a Mon Sep 17 00:00:00 2001 From: "R.D. di Giovanni" Date: Tue, 18 Aug 2026 18:20:39 +0200 Subject: [PATCH 2/2] Made scissors optional --- RazorScripts/Butcher.cs | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/RazorScripts/Butcher.cs b/RazorScripts/Butcher.cs index b79b0d2..629a7bb 100644 --- a/RazorScripts/Butcher.cs +++ b/RazorScripts/Butcher.cs @@ -86,8 +86,7 @@ public void Run() if (_scissorsItem == null) { - Misc.SendMessage("Unable to locate scissors", 201); - return; + Misc.SendMessage("Scissors not found, hides will not be cut.", 201); } var corpses = Items.ApplyFilter(new Items.Filter @@ -215,8 +214,8 @@ private void LootItems(Item corpse, int itemId, string name = null) foreach (var stackItem in stack) { Items.Move(stackItem, Player.Backpack.Serial, stackItem?.Amount ?? int.MaxValue); - - if (stackItem.ItemID == _hide) + + if (stackItem.ItemID == _hide && _scissorsItem != null) { Misc.SendMessage("Cutting hides", 201); Misc.Pause(300);