Lock Security 1.2.1

Details

  • Filename
    LockSecurity.jar
  • Uploaded by
  • Uploaded
    Oct 13, 2015
  • Size
    72.68 KB
  • Downloads
    274
  • MD5
    7a77abb1dd795b07c49e9ad2d0be4a78

Supported Bukkit Versions

  • 1.8.3

Changelog

Version 1.2.1

  • Moved the "playerHasUnsmithedKey()" method into the Keys class, and made it a public method
  • Fixed being able to place down Unsmithed Key's and Key's
  • Added a new configuration option under the Griefing section, "OwnerRequiresKey", default: true. Determines whether or not the owner of the locked block requires the key or not
  • Added a new /lockinspect command to gather information about a locked block (Permission: locks.lockinspect, default: op)
  • |-> This is a toggleable mode. When enabled, right click the block you're curious about
  • |-> Will gather the following information: LockID, Owner name (and UUID), Location

Version 1.2.0

  • Fixed the /forgekey command not working (like... at all... oops .-.)
  • Fixed the /forgekey command without any parameters displaying in DarkGray text rather than Gray
  • Fixed the /forgekey command generating a NullPointerException and not giving a forged key
  • Added a small smoke particle above a locked chest when attempting to open it without a key
  • Added a new configuration section "Aesthetics". This will contain configuration options revolved around aesthetic additions
  • Added a new configuration option under the Aesthetics category. "DisplayLockedSmokeParticle". Will toggle the smoke particle above the chest, default: true
  • Removed a check if a block was neither Locked or Unlocked (which is impossible ._.)
  • Added a new main administrative /locksecurity command with the following sub-commands. (Aliases: /ls)
  • |-> /locksecurity reload - Reloads ALL the configurations (config.yml, locked.yml, and messages.yml) - Permission: locks.reload - Default: op
  • |-> /locksecurity version - Gather version information / general information about the plugin

NOTE: In this version, I added the generation of a messages.yml file in the LockSecurity datafolder. This is currently unused, but will be used in the next version. I have no time to complete it at the moment because it is currently Thanksgiving weekend (I am Canadian, we have it in October here). Enjoy the changes and the fixes :) I apologize that the /forgekey command bug wasn't discovered sooner. I never tested the last version

Version 1.1.2

  • Added the ability for admins ignoring locks to destroy locked blocks as well
  • Added a new configuration option under the Griefing category: IgnorelocksCanBreakLocks. Default: true
  • |-> Toggles the ability to destroy locked blocks when ignoring locks
  • Added a /forgekey <id> command to give a locked key with the specified ID (Permission: locks.forgekey. Default: op)

Version 1.1.1

  • Changed the formatListing() method to return a direct variable rather than an indirect variable
  • Fixed the format of /locklist not displaying whole numbers for coordinates
  • Added a declaration of text at the beginning of /locklist determining the player you're looking up
  • Fixed /locklistother without any parameters returning false
  • Added a check when enabling the plugin. If the block id at the stored location doesn't match "BlockType", it will automatically remove the lock from the locked.yml. This saves unnecessary data usage on startup
  • |-> If a block is removed, it will display information in the console. The Lock ID, the location, and the owner

Version 1.1.0 (Mainly focused around commands)

  • Added the /locklist command to list every lock the sender owns. Permission: locks.locklist. Default: true
  • Added the /locklistother command to list every lock the specified player owns. Permission: locks.locklistother. Default: op
  • Added aliases the following aliases to the following commands:
  • |-> /givekey. Aliases: /givekeys
  • |-> /ignorelocks. Aliases: /ignorelock, /il
  • |-> /locklist. Aliases: /locklists
  • |-> /locklistother. Aliases: locklistsother, /otherlocklists, /otherlocklist
  • Added an extra parameter to the /givekey command. It now accepts amounts. /givekey [player] [count]
  • Added an extra parameter to the createUnsmithedKey() method to allow an amount of Unsmithed Keys (future use, and compensation for the /givekey modifications)
  • Changed the key recipe to be semi-shapless. As long as the iron bars and the wooden plank are on opposite ends of the crafting table, and the iron ingot is in the middle, the recipe will work (8 different ways to do it now)

Version 1.0.2

  • Added JavaDoc comments to the LockedBlockAccessor.class file (A bit better documentation of the methods)
  • Deprecated the createLockedKey(player) method (will be removed soon), and replaced it with a convertToLockedKey(key, id) method
  • |-> Added a suplimentary convertToLockedKey(key, id's) method to set multiple key ID's in preparation for future plans
  • Changed the getKeyID(player) method to getKeyIDs(key), and let it return List<Integer> rather than a String (preparation for future plans)
  • Fixed the unlock registry saying "Chest" every time instead of the block material id
  • Fixed the annoying "invisible key after lock" glitch. (Sorry about that. Lazy coding)
  • Removed unnecessary declarations of the configuration file (might load up ever so slightly faster now?)
  • Added more console messages on startup to inform the user what's going on whilst starting up
  • Allowed the RAM storage of locks to continue if a NumberFormatException occurs (This basically means, if something can't be loaded in to RAM, the rest of the locks and the entire plugin will still load. Only the lock that could not be loaded will not be locked anymore)
  • Fixed the error message above displaying multiple times when there were more than 1 errors
  • Added an extra error message displaying how many locks could not be loaded

Version 1.0.1

  • Added sounds to the following events
  • |-> Locking a chest with an Unsmithed Key
  • |-> Attempting to open a locked chest
  • |-> Attempting to open a locked chest with the wrong key (failing to picking a lock)
  • Fixed being able to explode a locked block with either TnT, Creepers, Ghasts, and EnderDragons (1.9 feature)
  • Added a new Configuration Section. "Griefing". Will add griefing related configs
  • Added a config option to enable or disable the ability to destroy locked items with explosions (Griefing.PreventLockedExplosions)
  • Changed the message when breaking a locked chest to display who owns the chest
  • Fixed not being able to shift click on a locked chest

Version 1.0.0

  • Crafting recipe for an *Unsmithed Key* (found on main page)
  • /givekey command for administrators to give an *Unsmithed Key* (permission: locks.givekey)
  • Right clicking on a chest or trapped chest with an *Unsmithed Key* (Tripwire Hook) will lock the object clicked
  • |-> Required permission: locks.lock. This is default to true, and all players have this permission
  • The *Unsmithed Key* will transform into a *Key*, with a unique ID on the lore
  • When right clicking on the chest with that binded key, the chest will open
  • Right clicking on the chest without that binded key, the chest will remain unopened
  • Breaking a chest that is locked will unlock it
  • |-> Only the Owner of the chest (player that locked it), may break the chest. Otherwise, the chest is not breakable
  • Administrators are able to use the /ignorelocks command to override all locks (permission: locks.ignorelocks)

There are TONS of future plans for this project, and they will be added as soon as time is available. Please leave suggestions for ideas to add in to this plugin, as I am widely open to them. Submit a ticket if you have found a bug (also leave your suggestions in the ticket section for organization purposes). Don't leave a bug alone and hope that it'll be fixed, because 9 times out of 10, most people don't come and report bugs. No bug reports, no bug fixes :(.