Rewrote EmptyOption and DFS Plugins as Listeners
What have you done in this MR?
Rewrote EmptyOptionPlugin.java -> EmptyOptionListener.kt :
- Resolved #1221
- Fixed empty sounds and messages (see enum below)
- Implemented the ability to empty plant cure
Testing:
- Test emptying items with empty options with names that contain potions, brews, poison, serum, cure
- Test emptying items defined in the enum below
Rewrote DragonfireShieldPlugin.java -> DragonfireShieldListener.kt 2009source
- Corrected max hit to be 25 instead of 26
- Corrected DFS attack cooldown to be 2 mintues instead of 30 secs
- Implemented the animation when emptying charges from the dfs
- Implemented a server config called better_dfs that when enabled(true by default) reduces the cooldown of the DFS attack to 30 secs which is was already before (Ceikry approved)
Testing:
- Verify you can operate id 11283 while equipped to attack with the dfs special while in combat every 30 seconds
- Verify charges are going down when using the dfs special
- Verify when using the empty option on id 11283 it plays the sound and animation and replaces it with id 11284
- Verify when dropping id 11283 it drops id 11284
- Verify when the player dies holding id 11283 it drops 11284 ::forcegravedeath
- Verify inspecting the DFS shows how many charges you have on the shield
Are there any tricky things testers should keep an eye out for?
-
No -
Yes, as follows: see testing notes above. -
I have tested these changes thoroughly. -
This requires extra testing due to changes to architecture or other similarly risky changes. -
I used the Thanos Tool for any JSON edits where possible, and have attached screenshots of any changes. -
I acknowledge that this contribution will be released under the AGPL license.
*** NOTE: If Gitlab complains about pipelines stating that you need to "Validate your Gitlab account" there is no need to worry. You do not have to do this and it is only occurring because OUR pipeline tried to run on your fork. While it's preferred that you do validate your account, you can safely ignore/dismiss this message from Gitlab. ***