Added - New configuration setting under `settings.server`: - `all-item-frames-clear`: Determines if all item frames should be made invisible upon placement. Default is `false`
Improved - Enhanced configuration validation to ensure that all necessary settings are present in the `config.yml` file. If any settings are missing, they are now automatically filled with default values from the default config without resetting the user's current configurations.
Fixed - Corrected a syntax error in the `validateConfig` method by adding a missing logical operator.
Implemented `ensureConfigDefaults` method to check and set default values for individual configuration keys if they are not set, thus preserving existing configurations.
Added `checkDefault` method to facilitate the setting of default values for missing configuration keys.
Added - New configuration setting under `settings.server`: - `all-item-frames-clear`: Determines if all item frames should be made invisible upon placement. Default is `false`
Improved - Enhanced configuration validation to ensure that all necessary settings are present in the `config.yml` file. If any settings are missing, they are now automatically filled with default values from the default config without resetting the user's current configurations.
Fixed - Corrected a syntax error in the `validateConfig` method by adding a missing logical operator.
Implemented `ensureConfigDefaults` method to check and set default values for individual configuration keys if they are not set, thus preserving existing configurations.
Added `checkDefault` method to facilitate the setting of default values for missing configuration keys.
Improved Inventory Management: Refined the consumeItem method to ensure that the specified item is correctly consumed from the player's inventory when placing a clear frame. The method now accurately checks for the item, adjusts the quantity if more than one is present, or removes the stack if it's the last item.
Bug Fixes:
Fixed an issue where clear frames were placed but not deducted from the player's inventory.
Corrected a bug where normal items were placed as blocks instead of being replaced by invisible item frames when the specified material was not an ITEM_FRAME. Now, only the designated material triggers the creation of an invisible item frame, preventing unexpected block placement.
Directional Drop Implementation: Adjusted the break event to ensure that when a clear frame is broken, it drops a clear frame item with all its properties instead of a normal item frame. Additionally, the clear frame item is now dropped one block in front of the direction the frame was facing, improving the intuitiveness of retrieval after destruction.