mk7a-mc / ItemSoulBind

Spigot Plugin: Bind and protect items for exclusive use by a player or group.
GNU General Public License v3.0
8 stars 2 forks source link

items dupping in regions that have keep. inv flags enabled #41

Closed shawn695 closed 5 months ago

shawn695 commented 5 months ago

Plugin version version 1.6.1

Spigot Version Current: git-Purpur-2160 (MC: 1.20.4)

Plugin Configuration

When player interacts with an item with the register string in its lore, item will be soul bound to them

registerString: "%soulbind%"

Group bind string

Place permission after this string, terminated by a space or end of line

Example: %soulbindgroup%perm which will have permission itemsoulbind.group.perm

groupRegisterString: "%soulbindgroup%"

SPECIAL BINDS - items with relevant bind string will only be bound in the specified conditions

Color is ignored when checking for string. Case-sensitive.

Binds when tool is used: used to break block, sword used to hit entity

bindOnUse: false bouString: "&9Soul binds on use"

Binds when armor is equipped through in-hand right click

bindOnEquip: false boeString: "&9Soul binds on equip"

Binds when item is picked up

bindOnPickup: false bopString: "&9Soul binds on pickup"

Disable soul bind particle+sound effects

disableEffects: false

Display message in item lore of soul bound item

Use %username% for player name placeholder

displayLoreMsg: true loreMsg: "&9Soul bound to %username%"

Similarly for group binds, using placeholder %group%

displayLoreMsgGroup: true loreMsgGroup: "&9Soul bound to group %group%"

Log player detected with item soul bound to another player in console

consoleLogDetection: true

Prevents placing soul bound blocks

preventPlacing: false

Prevents crafting with soul bound items

preventCraft: false

Prevents enchanting with soul bound items

preventEnchant: false

Prevents anvil use with soul bound items

preventAnvil: false

Blocks commands when soul bound item is held in hand

Only provide the first part of the command, e.g. for "/auction sell" :

blockedCommands:

=======================

Messages | use '&' for color codes

msgPrefix: "&8[&bSoul&3Bind&8]&r " denyMsg: "&9This item is soul bound to another player" denyMsgGroup: "&9This item is soul bound" detectedItemMessage: "&cAn item soul bound to another player was removed from your inventory. Event has been logged." detectedItemMessageGroup: "&cA soul bound item that you do not have access to has been detected in your inventory. Event has been logged." detectedItemBroadcast: "was detected with an item soul bound to another player." detectedItemBroadcastGroup: "was detected with a soul bound item they do not have access to." noPermissionGeneric: "&cInsufficient permissions." noPermissionBindOthers: "&cInsufficient permissions to bind for other players." bindSuccess: "&aSoul bind complete." bindErrorHeldItem: "You must be holding an item in your main hand." bindErrorAlreadyBound: "This item is already soul bound." bindErrorNoSuchPlayer: "No such player found online." bindErrorRemoteNoItem: "Specific target player inventory slot is empty." unbindErrorNotBound: "Item is not soul bound." unbindSuccess: "&aSoul bind removed." inventoryProcessSuccess: "&aProcessed inventory of " craftDeny: "&cCannot craft with soul bound items." enchantDeny: "&cCannot enchant soul bound items." anvilDeny: "&cCannot use anvil on soul bound items." foundItems: "&7Soul bound items found with another player have been returned to you. Use &b/returnItems &7to get them." noItems: "You have no items to retrieve." specialBindDone: "&aSpecial bind applied to item." cmdBlocked: "&cCannot perform this command on a soul bound item."

======================

configVersionDoNotModify: 1.6

Plugins List 01.04 13:20:32 [Server] INFO Bukkit Plugins: (67): AdvancedRegionMarket, ajLeaderboards, ajParkour, AlwaysSpawn, Arcade, ArmShopBridge, BedWars, BetterRTP, BetterStructures, Chunky, ChunkyBorder, Citizens, CMI, CMILib, CommandPanels, CoreProtect, CrazyEnchantments, CrazyEnvoys, CrazyVouchers, DailyRewardsPlus, DeluxeMenus, DiscordEconomyBridge, DiscordSRV, DiscordSRVUtils, DualWield, dynmap, Dynmap-WorldGuard, EasyCommandBlocker, floodgate, Geyser-Spigot, GSit, ItemsAdder, ItemSoulBind, JetsMinions, Lands, LoneLibs, LuckPerms, mcMMO, MiniMOTD, MoneyFromMobs, Multiverse-Core, Multiverse-Inventories, Multiverse-NetherPortals, NightVision, Parkour, PlaceholderAPI, Plan, ProtocolLib, Quests, QuickShop, ReleaseCommand, SBA, sleep-most, SlotMachine, spark, TAB, TheLab, UltraCosmetics, UpgradeableHoppers, UpgradeableSpawners, Vault, VoidGen, Vulcan, WildRegeneration, WorldEdit, WorldGuard, WorldGuardExtraFlags

To Reproduce worldguard + world guard extra flags, create a region. enable the keep inv flag in that region. and die in that region with a item bind. when you respawn the item that is binded will dupe

Expected behavior items should not dupe

mk7a commented 5 months ago

Patch done, will be included in the next release. Thanks for reporting.