I'm making an item that when active and in the inventory, smelts dropped blocks.
Here's the snippet:
on block drop:
if player's tool is not enchanted with silk touch: # this segment is irrelevant
loop items in player's inventory:
if loop-item is a furnace minecart:
if custom model data of loop-item is 4008:
set {_s} to true
if {_s} is true:
if inventory of block is not set:
set {_drops::*} to block dropped itemtypes
loop {_drops::*}:
set {_d::%loop-index%} to smelted form of {_drops::%loop-index%}
send block dropped items to the player
set block dropped items to {_d::%loop-index%}
The issue with this handling is that it seems to loop the drops for each of the blocks (i.e. 4 entries for 2 blocks, 9 entries for 3 blocks, etc.
This causes breaking the block to convert all blocks depending on it (e.g. signs, amethyst clusters, pointed dripstone) to the source block.
Skript addons and versions are below
[15:43:24 INFO]: [Skript] Server Version: 1.21.5-92-113b18e (MC: 1.21.5)
[15:43:24 INFO]: [Skript] Skript Version: 2.11.1 (skriptlang-github)
[15:43:24 INFO]: [Skript] Installed Skript Addons:
[15:43:24 INFO]: [Skript] - SkJson v5.4 (https://skjson.coffeerequired.info)
[15:43:24 INFO]: [Skript] - Skonic v1.2.2
[15:43:24 INFO]: [Skript] - skript-particle v1.3.2 (https://github.com/sovdeeth/skript-particle)
[15:43:24 INFO]: [Skript] - Lusk v1.3.5 (https://github.com/JakeGBLP/Lusk)
[15:43:24 INFO]: [Skript] - skript-reflect v2.6 (https://github.com/SkriptLang/skript-reflect)
[15:43:24 INFO]: [Skript] - SkBee v3.11.2 (https://github.com/ShaneBeee/SkBee)
Video attached of behavior