From b028be0c914cf2393a7071c81658ca8691adfa40 Mon Sep 17 00:00:00 2001 From: Legends11 <235496468+tickwarden@users.noreply.github.com> Date: Fri, 31 Jul 2026 11:52:33 +0300 Subject: [PATCH 01/16] Change item check to use 'contents' instead of 'items' --- .../datalib/function/player/inv/player_unless_item.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/datapacks/dataLib/data/datalib/function/player/inv/player_unless_item.mcfunction b/datapacks/dataLib/data/datalib/function/player/inv/player_unless_item.mcfunction index f79286d8..9b5ad6f1 100644 --- a/datapacks/dataLib/data/datalib/function/player/inv/player_unless_item.mcfunction +++ b/datapacks/dataLib/data/datalib/function/player/inv/player_unless_item.mcfunction @@ -1,2 +1,2 @@ -$execute as @a[name=$(player),limit=1] at @s unless items entity @s *.* *[minecraft:custom_data=$(customData)] run $(invoke) +$execute as @a[name=$(player),limit=1] at @s unless items entity @s contents *[minecraft:custom_data=$(customData)] run $(invoke) $tellraw @a[tag=datalib.debug] ["",{"text":"[DL] ","color":"#00AAAA","bold":true},{"text":"inv/player_unless_item ","color":"aqua"},{"text":"$(player)","color":"white"}] From 84b4543f384ca0e03d0a5b7b72340dee756e725d Mon Sep 17 00:00:00 2001 From: Legends11 <235496468+tickwarden@users.noreply.github.com> Date: Fri, 31 Jul 2026 11:53:42 +0300 Subject: [PATCH 02/16] Update cursor item interaction logic --- .../datalib/function/player/inv/cursor_item.mcfunction | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/datapacks/dataLib/data/datalib/function/player/inv/cursor_item.mcfunction b/datapacks/dataLib/data/datalib/function/player/inv/cursor_item.mcfunction index cd85d733..1fa5d971 100644 --- a/datapacks/dataLib/data/datalib/function/player/inv/cursor_item.mcfunction +++ b/datapacks/dataLib/data/datalib/function/player/inv/cursor_item.mcfunction @@ -1,8 +1,2 @@ # Detect click (slot empty after interaction) -$execute as @a at @s if items entity @s player.cursor *[minecraft:custom_data=$(data)] run $(invoke) - -# Restore item -$item replace entity @e[type=chest_minecart,tag=$(id),limit=1,sort=nearest] container.$(slot) with $(item)[minecraft:custom_data=$(data)] $(count) - -# Clear cursor -$clear @s $(item)[minecraft:custom_data=$(data)] $(count) +$execute at @s if items entity @s player.cursor $(item)[minecraft:custom_data=$(data)] run $(invoke) From 6b6fbdc0d7ec9a8665282a09a9bacb763957b7c2 Mon Sep 17 00:00:00 2001 From: Legends11 <235496468+tickwarden@users.noreply.github.com> Date: Fri, 31 Jul 2026 11:54:05 +0300 Subject: [PATCH 03/16] Refactor chest_minecart_if_item function commands --- .../function/player/inv/chest_minecart_if_item.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/datapacks/dataLib/data/datalib/function/player/inv/chest_minecart_if_item.mcfunction b/datapacks/dataLib/data/datalib/function/player/inv/chest_minecart_if_item.mcfunction index 45e4e8ab..0819ca5e 100644 --- a/datapacks/dataLib/data/datalib/function/player/inv/chest_minecart_if_item.mcfunction +++ b/datapacks/dataLib/data/datalib/function/player/inv/chest_minecart_if_item.mcfunction @@ -1,2 +1,2 @@ -$execute as @a at @s if items entity @e[type=minecraft:chest_minecart,distance=..2,limit=1,tag=$(tag)] container.$(slot) *[minecraft:custom_data=$(customData)] run $(invoke) +$execute at @s if items entity @e[type=minecraft:chest_minecart,distance=..2,limit=1,tag=$(tag)] container.$(slot) *[minecraft:custom_data=$(customData)] run $(invoke) $tellraw @a[tag=datalib.debug] ["",{"text":"[DL] ","color":"#00AAAA","bold":true},{"text":"inv/chest_minecart_if_item ","color":"aqua"},{"text":" → ","color":"#555555"},{"text":"$(tag)","color":"aqua"}] From be0022f353e8b7fd06826c8ed5e541fd08fb04dc Mon Sep 17 00:00:00 2001 From: Legends11 <235496468+tickwarden@users.noreply.github.com> Date: Fri, 31 Jul 2026 11:54:32 +0300 Subject: [PATCH 04/16] Refactor chest_minecart_unless_item function calls --- .../function/player/inv/chest_minecart_unless_item.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/datapacks/dataLib/data/datalib/function/player/inv/chest_minecart_unless_item.mcfunction b/datapacks/dataLib/data/datalib/function/player/inv/chest_minecart_unless_item.mcfunction index 55665e0d..cd8cf074 100644 --- a/datapacks/dataLib/data/datalib/function/player/inv/chest_minecart_unless_item.mcfunction +++ b/datapacks/dataLib/data/datalib/function/player/inv/chest_minecart_unless_item.mcfunction @@ -1,2 +1,2 @@ -$execute as @a at @s unless items entity @e[type=minecraft:chest_minecart,distance=..2,limit=1,tag=$(tag)] container.$(slot) *[minecraft:custom_data=$(customData)] run $(invoke) +$execute at @s unless items entity @e[type=minecraft:chest_minecart,distance=..2,limit=1,tag=$(tag)] container.$(slot) *[minecraft:custom_data=$(customData)] run $(invoke) $tellraw @a[tag=datalib.debug] ["",{"text":"[DL] ","color":"#00AAAA","bold":true},{"text":"inv/chest_minecart_unless_item ","color":"aqua"},{"text":" → ","color":"#555555"},{"text":"$(tag)","color":"aqua"}] From e9ffc84a794ca12496bb02964ad2b9f9b92b7d25 Mon Sep 17 00:00:00 2001 From: Legends11 <235496468+tickwarden@users.noreply.github.com> Date: Fri, 31 Jul 2026 11:54:54 +0300 Subject: [PATCH 05/16] Fix clear command syntax in clear_custom.mcfunction --- .../data/datalib/function/player/inv/clear_custom.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/datapacks/dataLib/data/datalib/function/player/inv/clear_custom.mcfunction b/datapacks/dataLib/data/datalib/function/player/inv/clear_custom.mcfunction index ebf7681a..8b9932d5 100644 --- a/datapacks/dataLib/data/datalib/function/player/inv/clear_custom.mcfunction +++ b/datapacks/dataLib/data/datalib/function/player/inv/clear_custom.mcfunction @@ -1,2 +1,2 @@ -$execute as @a[name=$(player),limit=1] run clear @s *[minecraft:custom_data=$(customData)] $(count) +$execute as @a[name=$(player),limit=1] run clear @s $(item)[minecraft:custom_data=$(customData)] $(count) $tellraw @a[tag=datalib.debug] ["",{"text":"[DL] ","color":"#00AAAA","bold":true},{"text":"inv/clear_custom ","color":"aqua"},{"text":"$(player)","color":"white"}] From 71451864e235cb910f652a2753c5262efcaf18f7 Mon Sep 17 00:00:00 2001 From: Legends11 <235496468+tickwarden@users.noreply.github.com> Date: Fri, 31 Jul 2026 11:55:18 +0300 Subject: [PATCH 06/16] Fix execute command syntax for offhand item function --- .../data/datalib/function/player/inv/offhand_item.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/datapacks/dataLib/data/datalib/function/player/inv/offhand_item.mcfunction b/datapacks/dataLib/data/datalib/function/player/inv/offhand_item.mcfunction index 2b4847fb..dd709490 100644 --- a/datapacks/dataLib/data/datalib/function/player/inv/offhand_item.mcfunction +++ b/datapacks/dataLib/data/datalib/function/player/inv/offhand_item.mcfunction @@ -12,4 +12,4 @@ # function datalib:player/inv/offhand_item {item:"minecraft:shield",customData:"{my_tag:1b}",invoke:"function mypack:on_shield"} # ───────────────────────────────────────────────────────────────── -$execute as @a at @s if items entity @s weapon.offhand $(item)[minecraft:custom_data=$(customData)] run $(invoke) +$execute at @s if items entity @s weapon.offhand $(item)[minecraft:custom_data=$(customData)] run $(invoke) From fb7ff2240ea88e23102707ea2cd478448d598bd1 Mon Sep 17 00:00:00 2001 From: Legends11 <235496468+tickwarden@users.noreply.github.com> Date: Fri, 31 Jul 2026 11:55:57 +0300 Subject: [PATCH 07/16] Refactor execute and tellraw commands for player --- .../function/player/inv/chest_minecart_if_item.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/datapacks/dataLib/data/datalib/function/player/inv/chest_minecart_if_item.mcfunction b/datapacks/dataLib/data/datalib/function/player/inv/chest_minecart_if_item.mcfunction index 0819ca5e..4483eccf 100644 --- a/datapacks/dataLib/data/datalib/function/player/inv/chest_minecart_if_item.mcfunction +++ b/datapacks/dataLib/data/datalib/function/player/inv/chest_minecart_if_item.mcfunction @@ -1,2 +1,2 @@ -$execute at @s if items entity @e[type=minecraft:chest_minecart,distance=..2,limit=1,tag=$(tag)] container.$(slot) *[minecraft:custom_data=$(customData)] run $(invoke) +$execute as @a[name=$(player),limit=1] at @s if items entity @e[type=minecraft:chest_minecart,distance=..2,limit=1,tag=$(tag)] container.$(slot) *[minecraft:custom_data=$(customData)] run $(invoke) $tellraw @a[tag=datalib.debug] ["",{"text":"[DL] ","color":"#00AAAA","bold":true},{"text":"inv/chest_minecart_if_item ","color":"aqua"},{"text":" → ","color":"#555555"},{"text":"$(tag)","color":"aqua"}] From 31fb76e2b64f85c75776d2e4fa7532e449570b8a Mon Sep 17 00:00:00 2001 From: Legends11 <235496468+tickwarden@users.noreply.github.com> Date: Fri, 31 Jul 2026 11:56:24 +0300 Subject: [PATCH 08/16] Refactor chest_minecart_unless_item function logic --- .../function/player/inv/chest_minecart_unless_item.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/datapacks/dataLib/data/datalib/function/player/inv/chest_minecart_unless_item.mcfunction b/datapacks/dataLib/data/datalib/function/player/inv/chest_minecart_unless_item.mcfunction index cd8cf074..94c2340a 100644 --- a/datapacks/dataLib/data/datalib/function/player/inv/chest_minecart_unless_item.mcfunction +++ b/datapacks/dataLib/data/datalib/function/player/inv/chest_minecart_unless_item.mcfunction @@ -1,2 +1,2 @@ -$execute at @s unless items entity @e[type=minecraft:chest_minecart,distance=..2,limit=1,tag=$(tag)] container.$(slot) *[minecraft:custom_data=$(customData)] run $(invoke) +$execute as @a[name=$(player),limit=1] at @s unless items entity @e[type=minecraft:chest_minecart,distance=..2,limit=1,tag=$(tag)] container.$(slot) $(item)[minecraft:custom_data=$(customData)] run $(invoke) $tellraw @a[tag=datalib.debug] ["",{"text":"[DL] ","color":"#00AAAA","bold":true},{"text":"inv/chest_minecart_unless_item ","color":"aqua"},{"text":" → ","color":"#555555"},{"text":"$(tag)","color":"aqua"}] From b3a559e9b25d6fd8eb967337600897ebba78c571 Mon Sep 17 00:00:00 2001 From: Legends11 <235496468+tickwarden@users.noreply.github.com> Date: Fri, 31 Jul 2026 11:56:45 +0300 Subject: [PATCH 09/16] Fix item check command for chest minecart --- .../function/player/inv/chest_minecart_if_item.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/datapacks/dataLib/data/datalib/function/player/inv/chest_minecart_if_item.mcfunction b/datapacks/dataLib/data/datalib/function/player/inv/chest_minecart_if_item.mcfunction index 4483eccf..c037f174 100644 --- a/datapacks/dataLib/data/datalib/function/player/inv/chest_minecart_if_item.mcfunction +++ b/datapacks/dataLib/data/datalib/function/player/inv/chest_minecart_if_item.mcfunction @@ -1,2 +1,2 @@ -$execute as @a[name=$(player),limit=1] at @s if items entity @e[type=minecraft:chest_minecart,distance=..2,limit=1,tag=$(tag)] container.$(slot) *[minecraft:custom_data=$(customData)] run $(invoke) +$execute as @a[name=$(player),limit=1] at @s if items entity @e[type=minecraft:chest_minecart,distance=..2,limit=1,tag=$(tag)] container.$(slot) $(item)[minecraft:custom_data=$(customData)] run $(invoke) $tellraw @a[tag=datalib.debug] ["",{"text":"[DL] ","color":"#00AAAA","bold":true},{"text":"inv/chest_minecart_if_item ","color":"aqua"},{"text":" → ","color":"#555555"},{"text":"$(tag)","color":"aqua"}] From ae14f977665ac40062f6ec1537bbf3093b6748db Mon Sep 17 00:00:00 2001 From: Legends11 <235496468+tickwarden@users.noreply.github.com> Date: Fri, 31 Jul 2026 11:57:11 +0300 Subject: [PATCH 10/16] Refactor cursor item detection command --- .../data/datalib/function/player/inv/cursor_item.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/datapacks/dataLib/data/datalib/function/player/inv/cursor_item.mcfunction b/datapacks/dataLib/data/datalib/function/player/inv/cursor_item.mcfunction index 1fa5d971..88fc1fa5 100644 --- a/datapacks/dataLib/data/datalib/function/player/inv/cursor_item.mcfunction +++ b/datapacks/dataLib/data/datalib/function/player/inv/cursor_item.mcfunction @@ -1,2 +1,2 @@ # Detect click (slot empty after interaction) -$execute at @s if items entity @s player.cursor $(item)[minecraft:custom_data=$(data)] run $(invoke) +$execute as @a[name=$(player),limit=1] at @s if items entity @s player.cursor $(item)[minecraft:custom_data=$(data)] run $(invoke) From e5f9f69c5cc50f063d7a7694b98eb73bd22884ce Mon Sep 17 00:00:00 2001 From: Legends11 <235496468+tickwarden@users.noreply.github.com> Date: Fri, 31 Jul 2026 11:57:34 +0300 Subject: [PATCH 11/16] Update offhand_item.mcfunction to use player name --- .../data/datalib/function/player/inv/offhand_item.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/datapacks/dataLib/data/datalib/function/player/inv/offhand_item.mcfunction b/datapacks/dataLib/data/datalib/function/player/inv/offhand_item.mcfunction index dd709490..eaa1cd51 100644 --- a/datapacks/dataLib/data/datalib/function/player/inv/offhand_item.mcfunction +++ b/datapacks/dataLib/data/datalib/function/player/inv/offhand_item.mcfunction @@ -12,4 +12,4 @@ # function datalib:player/inv/offhand_item {item:"minecraft:shield",customData:"{my_tag:1b}",invoke:"function mypack:on_shield"} # ───────────────────────────────────────────────────────────────── -$execute at @s if items entity @s weapon.offhand $(item)[minecraft:custom_data=$(customData)] run $(invoke) +$execute as @a[name=$(player),limit=1] at @s if items entity @s weapon.offhand $(item)[minecraft:custom_data=$(customData)] run $(invoke) From e96618d69d509ea7fd01d2558c50ce9bbfa695f7 Mon Sep 17 00:00:00 2001 From: Legends11 <235496468+tickwarden@users.noreply.github.com> Date: Fri, 31 Jul 2026 11:58:20 +0300 Subject: [PATCH 12/16] Change item check to use 'contents' instead of 'items' --- .../data/datalib/function/player/inv/player_if_item.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/datapacks/dataLib/data/datalib/function/player/inv/player_if_item.mcfunction b/datapacks/dataLib/data/datalib/function/player/inv/player_if_item.mcfunction index a8963208..b472da2c 100644 --- a/datapacks/dataLib/data/datalib/function/player/inv/player_if_item.mcfunction +++ b/datapacks/dataLib/data/datalib/function/player/inv/player_if_item.mcfunction @@ -1,2 +1,2 @@ -$execute as @a[name=$(player),limit=1] at @s if items entity @s *.* *[minecraft:custom_data=$(customData)] run $(invoke) +$execute as @a[name=$(player),limit=1] at @s if items entity @s contents $(item)[minecraft:custom_data=$(customData)] run $(invoke) $tellraw @a[tag=datalib.debug] ["",{"text":"[DL] ","color":"#00AAAA","bold":true},{"text":"inv/player_if_item ","color":"aqua"},{"text":"$(player)","color":"white"}] From feea951f3237b9fc9d54db67a06944daa25acca2 Mon Sep 17 00:00:00 2001 From: Legends11 <235496468+tickwarden@users.noreply.github.com> Date: Fri, 31 Jul 2026 11:58:53 +0300 Subject: [PATCH 13/16] Update item check in player_slot_if_item function --- .../datalib/function/player/inv/player_slot_if_item.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/datapacks/dataLib/data/datalib/function/player/inv/player_slot_if_item.mcfunction b/datapacks/dataLib/data/datalib/function/player/inv/player_slot_if_item.mcfunction index 2a1cca6e..b3772cb5 100644 --- a/datapacks/dataLib/data/datalib/function/player/inv/player_slot_if_item.mcfunction +++ b/datapacks/dataLib/data/datalib/function/player/inv/player_slot_if_item.mcfunction @@ -1,2 +1,2 @@ -$execute as @a[name=$(player),limit=1] at @s if items entity @s $(slot) *[minecraft:custom_data=$(customData)] run $(invoke) +$execute as @a[name=$(player),limit=1] at @s if items entity @s $(slot) $(item)[minecraft:custom_data=$(customData)] run $(invoke) $tellraw @a[tag=datalib.debug] ["",{"text":"[DL] ","color":"#00AAAA","bold":true},{"text":"inv/player_slot_if_item ","color":"aqua"},{"text":"$(player)","color":"white"}] From 9d2163a84f5c1b8d5e423d8398eeb0f6b12b0bc4 Mon Sep 17 00:00:00 2001 From: Legends11 <235496468+tickwarden@users.noreply.github.com> Date: Fri, 31 Jul 2026 11:59:11 +0300 Subject: [PATCH 14/16] Update player_unless_item function to use item variable --- .../datalib/function/player/inv/player_unless_item.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/datapacks/dataLib/data/datalib/function/player/inv/player_unless_item.mcfunction b/datapacks/dataLib/data/datalib/function/player/inv/player_unless_item.mcfunction index 9b5ad6f1..b29e8674 100644 --- a/datapacks/dataLib/data/datalib/function/player/inv/player_unless_item.mcfunction +++ b/datapacks/dataLib/data/datalib/function/player/inv/player_unless_item.mcfunction @@ -1,2 +1,2 @@ -$execute as @a[name=$(player),limit=1] at @s unless items entity @s contents *[minecraft:custom_data=$(customData)] run $(invoke) +$execute as @a[name=$(player),limit=1] at @s unless items entity @s contents $(item)[minecraft:custom_data=$(customData)] run $(invoke) $tellraw @a[tag=datalib.debug] ["",{"text":"[DL] ","color":"#00AAAA","bold":true},{"text":"inv/player_unless_item ","color":"aqua"},{"text":"$(player)","color":"white"}] From f0f39f868184bf733ab1d909fe22f257f567827c Mon Sep 17 00:00:00 2001 From: Legends11 <235496468+tickwarden@users.noreply.github.com> Date: Fri, 31 Jul 2026 11:59:28 +0300 Subject: [PATCH 15/16] Refine selected_item function to target specific player --- .../data/datalib/function/player/inv/selected_item.mcfunction | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/datapacks/dataLib/data/datalib/function/player/inv/selected_item.mcfunction b/datapacks/dataLib/data/datalib/function/player/inv/selected_item.mcfunction index e977a436..574f39a7 100644 --- a/datapacks/dataLib/data/datalib/function/player/inv/selected_item.mcfunction +++ b/datapacks/dataLib/data/datalib/function/player/inv/selected_item.mcfunction @@ -1 +1 @@ -$execute as @a at @s if items entity @s weapon.mainhand $(item)[minecraft:custom_data=$(customData)] run $(invoke) +$execute as @a[name=$(player),limit=1] as @a at @s if items entity @s weapon.mainhand $(item)[minecraft:custom_data=$(customData)] run $(invoke) From e2f1c3d28c365286e0885f62bea5cf04fa41540b Mon Sep 17 00:00:00 2001 From: Legends11 <235496468+tickwarden@users.noreply.github.com> Date: Fri, 31 Jul 2026 11:59:59 +0300 Subject: [PATCH 16/16] Remove duplicate debug message in transfer_item function Removed duplicate tellraw command for debugging.