Back to Coding

Minecraft 1.12.2 Spear Weapon Plugin

Prompt

Create a Minecraft Spigot plugin compatible with version 1.12.2 that introduces a new spear weapon resembling the original spear from version 1.21 but with additional features. Requirements: - The spear can be crafted using 2 sticks and 1 dragon egg. - The spear functionality mirrors the original 1.21 spear with enhancements: - Every 10 seconds, the player can perform a dash by right-clicking, propelling them forward 6 blocks, dealing 6 hearts (12 HP) of damage to any entity hit, regardless of the entity's armor. - Holding the spear in the player's main hand grants Strength I and Regeneration I effects; these effects are active only while the spear is held (not when in the inventory). - Right-clicking functionality: - Primary right-click action remains as usual (e.g., blocking with the spear). - Secondary right-click action triggers the dash (with 10-second cooldown). - The shield action is considered the third; ensure that it does not interfere with the spear's right-click abilities. Implementation Details: - Include crafting recipe registration for the spear with the specified materials. - Implement cooldown logic of 10 seconds between dashes. - Ensure damage dealt by the dash ignores armor reductions. - Apply and remove Strength I and Regeneration I potion effects dynamically based on whether the spear is held in the main hand. - Prioritize smooth integration with existing game mechanics and respect 1.12.2 Spigot API constraints. - Provide error-free, clean, and well-commented Java source code for the plugin. # Steps 1. Define the custom spear item resembling the 1.21 spear. 2. Register the crafting recipe: 2 sticks + 1 dragon egg. 3. Monitor player interactions to detect right-click with the spear in hand. 4. Implement a cooldown timer for the dash ability. 5. On dash, propel the player forward 6 blocks and deal fixed 6 hearts damage to any entity hit, ignoring armor. 6. Apply Strength I and Regeneration I potion effects when the spear is held in main hand; remove when not. 7. Manage right-click event so primary, secondary (dash), and shield actions do not conflict. 8. Test the plugin in a 1.12.2 Spigot server environment to ensure correct behavior. # Output Format Provide the complete Java source code for the plugin, including: - The main plugin class with proper event handlers. - Item and recipe registration code. - All necessary imports and package declarations. - Comments explaining key implementation parts. Ensure the code compiles cleanly under Spigot 1.12.2 and adheres to good coding practices.

Related Coding Prompts

Write Code

As a seasoned programmer, your task is to write code in [programming language] to [perform action]. The code should be efficient, well-structured, and optimized for performance. Make sure to follow best practices and industry standards while implementing the necessary algorithms and logic to achieve the desired functionality. Test the code thoroughly to ensure it functions as intended and meets all requirements. Additionally, document the code properly for future reference and maintenance.

Debug Code

Act as a seasoned programmer with over 20 years of commercial experience. Analyze the provided [piece of code] that is causing a specific [error]. Your task involves diagnosing the root cause of the error, understanding the context and functionality intended by the code, and proposing a solution to fix the issue. Your analysis should include a step-by-step walkthrough of the code, identification of any bugs or logical mistakes, and a detailed explanation of how to resolve them. Additionally, suggest any improvements or optimizations to enhance the performance, readability, or maintainability of the code based on your extensive experience. Ensure that your solution adheres to best practices in software development and is compatible with the current development environment where the code is being executed.

Do Code Review

As a seasoned programmer with over 20 years of commercial experience, your task is to perform a comprehensive code review on the provided [piece of code]. Your review should meticulously evaluate the code's efficiency, readability, and maintainability. You are expected to identify any potential bugs, security vulnerabilities, or performance issues and suggest specific improvements or optimizations. Additionally, assess the code's adherence to industry standards and best practices. Your feedback should be constructive and detailed, offering clear explanations and recommendations for changes. Where applicable, provide examples or references to support your suggestions. Your goal is to ensure that the code not only functions as intended but also meets high standards of quality and can be easily managed and scaled in the future. This review is an opportunity to mentor and guide less experienced developers, so your insights should be both educational and actionable.