
Create a complete production-ready Minecraft Paper plugin named PotatoLand. Target: - Paper 1.21.11 - Java 21 - Maven - Package: me.potatocraft.potatoland Generate a complete Maven project with all Java files, plugin.yml and config.yml. Must compile with: mvn clean package Plugin purpose: Land rental/selling system. COMMAND: /zamin /zamin tool /zamin add <name> /zamin delete <name> confirm /zamin list /zamin reload Permission: potatoland.admin LAND TOOL: Create a special WOODEN_AXE selector using PersistentDataContainer. Name: &6&lPotato Land Selector Only admins can use it. Right click block = position 1 Left click block = position 2 LAND: Admins create lands with /zamin add. Store using SQLite: - name - world UUID - min/max XYZ - owner UUID/name - purchase time - expiration time - price - material - sign location Prevent duplicate names and overlapping regions. Database: Create automatically: plugins/PotatoLand/database.db MARKET SIGN: Format: [House1] 5 DIAMOND Support any Bukkit Material and any positive amount. Examples: 5 DIAMOND 32 EMERALD 10 GOLD_INGOT Case insensitive. BUY SYSTEM: Players right click signs. Check: - land exists - available - enough items Remove exact material amount. Set owner and rental time. Rental duration: 30 days using timestamps. After expiration: - remove owner - release land - update sign - allow repurchase PROTECTION: Protect owned lands from: - break/place blocks - containers - doors - trapdoors - gates - buttons - levers - furnaces - crafting tables - anvils - villagers - animals Owner allowed. Admins bypass. PLACEHOLDERAPI soft support: %potatoland_land% %potatoland_owner% %potatoland_days_left% %potatoland_expiration% %potatoland_has_land% Compatible with TAB and scoreboards. Do not create scoreboard or tablist. Use clean architecture: command database land listener sign placeholder util Include: PotatoLand.java ZaminCommand.java LandManager.java DatabaseManager.java SelectionManager.java ProtectionListener.java SignListener.java PurchaseManager.java ExpirationManager.java PlaceholderAPI expansion. Do not simplify. Do not remove features. Generate complete source code.