Place Items On Ground [Rebuilt] [1.13 - 1.14] 1.0.0b

Place Items On The Ground Again!

  1. Allogeneous
    Native Minecraft Version:
    1.14
    Tested Minecraft Versions:
    • 1.13
    • 1.14
    Source Code:
    https://github.com/Allogeneous/PlaceItemsOnGroundRebuilt
    Contributors:
    Allogeneous
    Read This:
    Place Items On Ground is back and better than ever!

    This plugin is NOT compatible with the retired version of this plugin AT ALL.

    Please Note: I am considering the plugin to be in a beta state at this time. I have tested it as best I can for bugs and glitches. If you find a bug please let me know :)

    This plugin allows you to place any item you are holding in your hand on the ground.

    Performance Notice: This plugin, just like the original, uses invisible armor stands to accomplish what it does, so keep in mind that this plugin will let players create a lot of entities, but they can be capped!


    Screenshots:
    [​IMG]
    [​IMG]
    [​IMG]


    Improvements:
    This plugin improves upon many features of the original plugin!

    + MANY bug fixes
    + Much more detailed list of what blocks can be placed where
    + A much more robust config file
    + Better command structure
    + Better storage system
    + More flexible and efficient code
    + Clearer error and permissions messages

    Mechanics / Controls:

    Placing Items:

    To access the main features of this plugin do the command,
    /placeitems toggle. Once this command is issued, sneak and right click the top of any block with an item in you hand. When this is done one of the items or the item, depending on if the item is stacked, will be removed from your hand and placed on the ground.

    Picking Up Items:

    To pick up a placed item there are two ways to do this. One is to break the block underneath the placed item. This will cause the item to pop off and drop on the ground. Another way is to right click the item. For placed blocks this is easy to do, but for placed items you will need to click a little bit in front of where it was placed.

    Note: When I was testing this plugin it does play nicely with plugins like WorldGuard and GriefPrevention so you should not have any problems with placing or removing items in claimed areas.

    The Placement Cap:

    The amount of items a player can place with this plugin can be capped in two ways. One is the default cap, which is applied to everyone. The second way is to set the placement cap per player. Note that players who have custom caps will not be effected at all by changes to the default cap, unless their custom cap is removed.

    Other Modified Behaviors:

    Pistons cannot push blocks with placed items near them or on top of blocks that are going to be pushed.

    Commands:

    There is only one command: /placeitems
    All functionality is done through arguments for this command.

    Here is a list of command arguments with descriptions:

    /placeitems help - displays a list of commands
    /placeitems toggle - toggles the ability for a player to sneak and place items on the ground
    /placeitems set <name> <amount> - sets the amount of items a player can set on the ground (use a \"u\" in place of the amount for unlimited)
    /placeitems clear <radius> - removes all placed items within a specified block radius (1 - 250) safely
    /placeitems reload - reloads the plugin's config file
    /placeitems restorecap <name> - sets the players placement cap back to the default placement cap
    /placeitems configname - get the name of the item in your hand that will be accepted by lists in the config file

    Dangerous Command:
    /placeitems purge <radius> - this command is designed to fix bugs if a location is not allowing an item to be placed on it

    Warning: This command is similar to /placeitems clear <radius> (try using this command first), but if needed, this command will remove ALL ARMOR STANDS (even those not placed by this plugin) in the given radius. It will also purge the location data file of all place items data in the specified radius (1 - 250) blocks!

    Permissions (From plugin.yml):

    Code (YAML):
    commands:
        placeitems
    :
            description
    : Allows use of /placeitems
            usage
    : "/placeitems"
     
    permissions
    :
        placeitems.help
    :
            description
    : Allows usage of /placeitems help to see help list
            default
    : true
        placeitems.toggle
    :
            description
    : Allows usage of /placeitems toggle
            default
    : true
        placeitems.place
    :
            description
    : Allows user to place items on the ground
            default
    : true
        placeitems.take
    :
            description
    : Allows user to pick items up off the ground
            default
    : true
        placeitems.set
    :
            description
    : Allows user to set placement cap on other players with /placeitems set
            default
    : op
        placeitems.clear
    :
            description
    : Allows user to clear placed items up to 250 blocks away with /placeitems clear
            default
    : op
        placeitems.reload
    :
            description
    : Allows user to reload the config file using /placeitems reload
            default
    : op
        placeitems.configname
    :
            description
    : Allows user to get the name of the item in their hand to put into config file lists using /placeitems configname
            default
    : op
        placeitems.purge
    :
            description
    : Allows user to purge placed items up to 250 blocks away with /placeitems purge
            default
    : op
    Sample Config File:

    Code (YAML):
    #########
    #GENERAL#
    #########

    #Writes new placed item location data to a file every x minutes
    useLocationAutoSave
    : true
    #Time is in minutes
    locationAutoSaveTime
    : 1
    #Default amount of items a player can place on the ground
    defaultPlaceCap
    : 10


    #HOW TO CHANGE A LIST:
    #Add items to this list using ", TYPE" without quotes. Make sure all items on the list are on the same line. Here is a link to all item type names: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
    #Note that if there are any items on here that are not in the current version of the server you are running, they will just be ignored. This existing lists have all items from 1.13 to 1.14.

    ###################
    #BLACKLISTED ITEMS#
    ###################
    #This is a list of items that being placed on the groud has been disabled for with using this plugin.
    #The current items here are all items that have unconvential displays on armorstand heads and don't play nicely with the plugin so I would not recomend removing any of these.

    blacklistedItems
    : WHITE_BED, ORANGE_BED, MAGENTA_BED, LIGHT_BLUE_BED, YELLOW_BED,
      LIME_BED, PINK_BED, GRAY_BED, LIGHT_GRAY_BED, CYAN_BED, PURPLE_BED, BLUE_BED, BROWN_BED,
      GREEN_BED, RED_BED, BLACK_BED, WHITE_BANNER, ORANGE_BANNER, MAGENTA_BANNER, LIGHT_BLUE_BANNER,
      YELLOW_BANNER, LIME_BANNER, PINK_BANNER, GRAY_BANNER, LIGHT_GRAY_BANNER, CYAN_BANNER,
      PURPLE_BANNER, BLUE_BANNER, BROWN_BANNER, GREEN_BANNER, RED_BANNER, BLACK_BANNER,
      LEAD, TRIDENT, SHIELD, END_ROD

    #################
    #DO NOT PLACE ON#
    #################
    #This is a list of blocks that items cannot be placed on.
    #The current items here are all blocks that don't look right when an item is placed on them. I don't recomend removing any of these either.
    blacklistedPlaceItems
    : IRON_DOOR, OAK_DOOR, SPRUCE_DOOR, JUNGLE_DOOR, ACACIA_DOOR,
      DARK_OAK_DOOR, BIRCH_DOOR, OAK_TRAPDOOR, SPRUCE_TRAPDOOR, BIRCH_TRAPDOOR, JUNGLE_TRAPDOOR,
      ACACIA_TRAPDOOR, DARK_OAK_TRAPDOOR, IRON_TRAPDOOR, ACACIA_LEAVES, BIRCH_LEAVES,
      OAK_LEAVES, SPRUCE_LEAVES, DARK_OAK_LEAVES, JUNGLE_LEAVES, WHITE_BED, ORANGE_BED,
      MAGENTA_BED, LIGHT_BLUE_BED, YELLOW_BED, LIME_BED, PINK_BED, GRAY_BED, LIGHT_GRAY_BED,
      CYAN_BED, PURPLE_BED, BLUE_BED, BROWN_BED, GREEN_BED, RED_BED, BLACK_BED, WHITE_BANNER,
      ORANGE_BANNER, MAGENTA_BANNER, LIGHT_BLUE_BANNER, YELLOW_BANNER, LIME_BANNER, PINK_BANNER,
      GRAY_BANNER, LIGHT_GRAY_BANNER, CYAN_BANNER, PURPLE_BANNER, BLUE_BANNER, BROWN_BANNER,
      GREEN_BANNER, RED_BANNER, BLACK_BANNER, COBBLESTONE_WALL, MOSSY_COBBLESTONE_WALL,
      BRICK_WALL, PRISMARINE_WALL, RED_SANDSTONE_WALL, MOSSY_STONE_BRICK_WALL, GRANITE_WALL,
      STONE_BRICK_WALL, NETHER_BRICK_WALL, ANDESITE_WALL, RED_NETHER_BRICK_WALL, SANDSTONE_WALL,
      END_STONE_BRICK_WALL, DIORITE_WALL, STONE_PRESSURE_PLATE, OAK_PRESSURE_PLATE, SPRUCE_PRESSURE_PLATE,
      BIRCH_PRESSURE_PLATE, JUNGLE_PRESSURE_PLATE, ACACIA_PRESSURE_PLATE, DARK_OAK_PRESSURE_PLATE,
      LIGHT_WEIGHTED_PRESSURE_PLATE, HEAVY_WEIGHTED_PRESSURE_PLATE, GRAVEL, SAND, PISTON,
      STICKY_PISTON, END_PORTAL_FRAME, ENCHANTING_TABLE, CAKE, CAULDRON, HOPPER, BREWING_STAND,
      LECTERN, TURTLE_EGG, BELL, CAMPFIRE, STONECUTTER, DAYLIGHT_DETECTOR, RED_SAND, ICE, GRASS_PATH, FARMLAND, TNT, WHITE_CONCRETE_POWDER,
      ORANGE_CONCRETE_POWDER, MAGENTA_CONCRETE_POWDER, LIGHT_BLUE_CONCRETE_POWDER, YELLOW_CONCRETE_POWDER, LIME_CONCRETE_POWDER, PINK_CONCRETE_POWDER,
      GRAY_CONCRETE_POWDER, LIGHT_GRAY_CONCRETE_POWDER, CYAN_CONCRETE_POWDER, PURPLE_CONCRETE_POWDER, BLUE_CONCRETE_POWDER, BROWN_CONCRETE_POWDER,
      GREEN_CONCRETE_POWDER, RED_CONCRETE_POWDER

    #This a list of all slabs in the game, if you want to include them in the blacklist just set includeSlabs to true
    includeSlabs
    : false
    slabs
    : OAK_SLAB, SPRUCE_SLAB, BIRCH_SLAB, JUNGLE_SLAB,
      ACACIA_SLAB, DARK_OAK_SLAB, STONE_SLAB, SMOOTH_STONE_SLAB, SANDSTONE_SLAB, CUT_SANDSTONE_SLAB,
      PETRIFIED_OAK_SLAB, COBBLESTONE_SLAB, BRICK_SLAB, STONE_BRICK_SLAB, NETHER_BRICK_SLAB,
      QUARTZ_SLAB, RED_SANDSTONE_SLAB, CUT_RED_SANDSTONE_SLAB, PURPUR_SLAB, PRISMARINE_SLAB,
      PRISMARINE_BRICK_SLAB, DARK_PRISMARINE_SLAB, POLISHED_GRANITE_SLAB, SMOOTH_RED_SANDSTONE_SLAB,
      MOSSY_STONE_BRICK_SLAB, POLISHED_DIORITE_SLAB, MOSSY_COBBLESTONE_SLAB, END_STONE_BRICK_SLAB,
      SMOOTH_SANDSTONE_SLAB, SMOOTH_QUARTZ_SLAB, GRANITE_SLAB, ANDESITE_SLAB, RED_NETHER_BRICK_SLAB,
      POLISHED_ANDESITE_SLAB, DIORITE_SLAB

    #This a list of all slabs in the game, if you want to include them in the blacklist just set includeStairs to true
    includeStairs
    : false
    stairs
    : OAK_STAIRS, SPRUCE_STAIRS, BIRCH_STAIRS, JUNGLE_STAIRS,
      ACACIA_STAIRS, DARK_OAK_STAIRS, STONE_STAIRS, SANDSTONE_STAIRS, COBBLESTONE_STAIRS,
      BRICK_STAIRS, STONE_BRICK_STAIRS, NETHER_BRICK_STAIRS, QUARTZ_STAIRS, RED_SANDSTONE_STAIRS,
      PURPUR_STAIRS, PRISMARINE_STAIRS, PRISMARINE_BRICK_STAIRS, DARK_PRISMARINE_STAIRS,
      POLISHED_GRANITE_STAIRS, SMOOTH_RED_SANDSTONE_STAIRS, MOSSY_STONE_BRICK_STAIRS,
      POLISHED_DIORITE_STAIRS, MOSSY_COBBLESTONE_STAIRS, END_STONE_BRICK_STAIRS, SMOOTH_SANDSTONE_STAIRS,
      SMOOTH_QUARTZ_STAIRS, GRANITE_STAIRS, ANDESITE_STAIRS, RED_NETHER_BRICK_STAIRS,
      POLISHED_ANDESITE_STAIRS, DIORITE_STAIRS

    ###############
    #SPECIAL CASES#
    ###############
    #There are some items in the game that behave like blocks when put on an armorstand head and some blocks that behave like items when put on an armorstand head!

    #If an item is sticking straight up when it is placed, adding it to this list should fix that
    itemLikeBlocks
    : BARRIER, TRIPWIRE_HOOK, DEAD_BUSH, BROWN_MUSHROOM, RED_MUSHROOM, LADDER,
      TORCH, LEVER, RAILS, ACTIVATOR_RAIL, DETECTOR_RAIL, POWERED_RAIL, LADDER, VINE,
      HOPPER, SEA_PICKLE, IRON_DOOR, OAK_DOOR, SPRUCE_DOOR, BIRCH_DOOR, JUNGLE_DOOR, ACACIA_DOOR,
      DARK_OAK_DOOR, REDSTONE_TORCH, COMPARATOR, REPEATER, IRON_BARS, DEAD_HORN_CORAL,
      DEAD_FIRE_CORAL, DEAD_BUBBLE_CORAL, DEAD_BRAIN_CORAL, HORN_CORAL, FIRE_CORAL, BUBBLE_CORAL,
      BRAIN_CORAL, TUBE_CORAL, FIRE_CORAL_FAN, HORN_CORAL_FAN, DEAD_BRAIN_CORAL_FAN, DEAD_BUBBLE_CORAL_FAN,
      DEAD_FIRE_CORAL_FAN, DEAD_HORN_CORAL_FAN, DEAD_TUBE_CORAL_FAN, TUBE_CORAL_FAN, DEAD_TUBE_CORAL,
      BRAIN_CORAL_FAN, BUBBLE_CORAL_FAN, PEONY, PINK_TULIP, WHITE_TULIP, ORANGE_TULIP,
      RED_TULIP, SEAGRASS, OXEYE_DAISY, BLUE_ORCHID, GRASS, ROSE_BUSH, SUNFLOWER, AZURE_BLUET,
      POPPY, DANDELION, ALLIUM, LILAC, LARGE_FERN, TALL_GRASS, LILY_OF_THE_VALLEY, CORNFLOWER,
      FERN, OAK_SAPLING, DARK_OAK_SAPLING, BIRCH_SAPLING, SPRUCE_SAPLING, ACACIA_SAPLING,
      JUNGLE_SAPLING, BAMBOO, LILY_PAD, WITHER_ROSE, CAULDRON, BREWING_STAND, TURTLE_EGG,
      FLOWER_POT, BELL, CAMPFIRE, LANTERN, COBWEB, CAKE, OAK_SIGN, SPRUCE_SIGN, BIRCH_SIGN,
      JUNGLE_SIGN, ACACIA_SIGN, DARK_OAK_SIGN, GLASS_PANE, WHITE_STAINED_GLASS_PANE, ORANGE_STAINED_GLASS_PANE,
      MAGENTA_STAINED_GLASS_PANE, LIGHT_BLUE_STAINED_GLASS_PANE, YELLOW_STAINED_GLASS_PANE,
      LIME_STAINED_GLASS_PANE, PINK_STAINED_GLASS_PANE, GRAY_STAINED_GLASS_PANE, LIGHT_GRAY_STAINED_GLASS_PANE,
      CYAN_STAINED_GLASS_PANE, PURPLE_STAINED_GLASS_PANE, BLUE_STAINED_GLASS_PANE, BROWN_STAINED_GLASS_PANE,
      GREEN_STAINED_GLASS_PANE, RED_STAINED_GLASS_PANE, BLACK_STAINED_GLASS_PANE, SIGN

    #If an item is clipping into the groud funny adding it here might fix it, if not it might need to be blacklisted
    blockLikeItems
    : LEATHER_HELMET, CHAINMAIL_HELMET, GOLD_HELMET, IRON_HELMET, DIAMOND_HELMET,
      TURTLE_HELMET

    ############
    #ITEM LISTS#
    ############
    #These are just lists of items that the plugin uses for orientation checks

    #Blocks the user can place items in (blocks above the one clicked)
    placeIn
    : AIR, CAVE_AIR, WATER

    ##############
    #DO NOT TOUCH#
    ##############
    configVersion
    : 1
     
    Todo:
    -Make commands and config more flexible
    -Add MySQL support (I have been testing this feature a little bit and if I am satisfied with how it works, I will add it to a newer version)
    galacticwarrior and Govindas like this.

Recent Reviews

  1. Achaius
    Achaius
    5/5,
    Version: 1.0.0b
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Thank you, this is really awesome!
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  2. comne
    comne
    5/5,
    Version: 1.0.0b
    He can work at 1.12.2
    Thank you for your work
    Can I add mod items to config?:)......
  3. HexedHero
    HexedHero
    5/5,
    Version: 1.0.0b
    Actually, an amazing resource! Seems a little TOO complex. Could have just been a simple command to toggle then you place, done. But that being said I love the extra work and this is amazing for building!