Skip to content

feat: Add /powertoollist - #6096

Merged
JRoy merged 4 commits into
EssentialsX:2.xfrom
jstnf:jstnf/powertool-list
Aug 3, 2025
Merged

feat: Add /powertoollist#6096
JRoy merged 4 commits into
EssentialsX:2.xfrom
jstnf:jstnf/powertool-list

Conversation

@jstnf

Copy link
Copy Markdown
Contributor

Information

This PR closes#6095.

Details

Proposed feature:

This PR implements /powertoollist, which lists out all of a user's set powertools.

Since all of a user's powertools reside within UserData, I utilized this Map to query through all of a user's powertools.

Environments tested:

OS: MacOS Apple chip

Java version: 22.0.2

  • Most recent Paper version (1.XX.Y, git-Paper-BUILD)
  • CraftBukkit/Spigot/Paper 1.12.2
  • CraftBukkit 1.8.8
[20:36:06] [Server thread/INFO]: This server is running CraftBukkit version 4457-Spigot-73860e0-f0c8dd3 (MC: 1.21.4) (Implementing API version 1.21.4-R0.1-SNAPSHOT)
[20:36:06] [Server thread/INFO]: Checking version, please wait...
[20:36:06] [Thread-9/INFO]: You are running the latest version

Demonstration:

https://youtu.be/tgOr-fbHRAg

@jstnf
jstnf marked this pull request as ready for review March 20, 2025 01:38
@pop4959

Copy link
Copy Markdown
Member

Is there a reason you opted for a separate command rather than adding this functionality to the existing power tool command? The issue seems to imply that the command already handled it somewhat.

@jstnf

Copy link
Copy Markdown
ContributorAuthor

Yes, I opted for a separate command because /pt seems to handle individual items only (i.e. with l: argument). Adding a new command made sense to me since this is scoped to all powertools rather than just the held item.

@jstnf

Copy link
Copy Markdown
ContributorAuthor

Furthermore, future work can be done to query other players (i.e. /ptlist [player]), which may be more confusing if done with the already implemented /pt.

@mdcfemdcfe added this to the 2.22.0 milestone Apr 19, 2025
JRoy
JRoy previously approved these changes Jun 26, 2025

@JRoyJRoy left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks great! will merge after our next release!

@JRoy
JRoy enabled auto-merge August 3, 2025 21:41
@JRoy
JRoy added this pull request to the merge queueAug 3, 2025
Merged via the queue into EssentialsX:2.x with commit 03d8938Aug 3, 2025
Euphillya added a commit to Euphillya/Essentials-Folia that referenced this pull request Aug 6, 2025
EssentialsX@c01ba4e Bump adventure dependencies (EssentialsX#6243)
EssentialsX@16f643a New Crowdin updates (EssentialsX#6225)
EssentialsX@eb781a1 Release 2.21.2
EssentialsX@b36d433 Prepare for 2.22.0 Dev Builds (EssentialsX#6209)
EssentialsX@74337ff Add wind charge explosion protect config (EssentialsX#6183)
EssentialsX@636bb09 Add tipped arrow support to /potion (EssentialsX#6191)
EssentialsX@d402f17 Reset oxygen with /heal (EssentialsX#6201)
EssentialsX@334c5a4 New config.yml option: afk-timeout-command: (EssentialsX#6169)
EssentialsX@790644b Ignore cancelled PlayerDeathEvents (EssentialsX#6179)
EssentialsX@03d8938 feat: Add /powertoollist (EssentialsX#6096)
EssentialsX@689c35f Add bypass permission node for the whitelist. (EssentialsX#6232)
EssentialsX@8bcf03d Discord: Add PAPI support to avatar-url (EssentialsX#6189)
EssentialsX@025ca48 Discord: Respect game rule for advancement message type (EssentialsX#6195)
rewsdjad1 pushed a commit to rewsdjad1/EssentialsXPlus that referenced this pull request Aug 13, 2026
<!--
EssentialsX feature submission guide
====================================
NOTE: Failure to fill out this template properly may result in your PR
being
delayed or ignored without warning.
NOTE: Don't type between any arrows in the template, as this text will
be
hidden. This includes this header block and any other explanation text
blocks.
Want to discuss your PR before submitting it? Join the EssentialsX
Development
server: https://discord.gg/CUN7qVb
EssentialsX is GPL
------------------
By contributing to EssentialsX, you agree to license your code under the
GNU General Public License version 3, which can be found at the link
below:
https://github.com/EssentialsX/Essentials/blob/2.x/LICENSE
Instructions
------------
If you are submitting a new feature, please follow the following steps:
1. Fill out the template in full.
This includes providing screenshots and a link to the original feature
request. If there isn't an existing feature request, we strongly
recommend opening a new feature request BEFORE opening your PR to
implement it, as this allows us to review whether we're likely to accept
your feature in advance, and also allows us to discuss possible
implementations for the feature. If there is no associated feature
request, your PR may be delayed or rejected without warning.
You can open a new feature request by following this link:
https://github.com/EssentialsX/Essentials/issues/new/choose
2. If you are fixing a performance issue, please use the "Bug fix" PR
template
instead. The "bug fix" template is better suited to performance issues.
3. Include a demonstration.
If you are adding commands, please provide screenshots and/or a video
demonstration of the feature. Similarly, if you are adding a new API,
please include a link to example code that takes advantage of your
proposed API. This will aid us in reviewing PRs and speed up the process
significantly.
-->
### Information
<!--
Replace #nnnn with the number of the original issue. If this PR
implements
features from multiple issues, you should repeat the phrase "closes
#nnnn"
for each issue. -->
This PR closesEssentialsX#6095. ### Details
**Proposed feature:** <!-- Type a description of your proposed feature below this line. -->
This PR implements /powertoollist, which lists out all of a user's set
powertools.
Since all of a user's powertools reside within `UserData`, I utilized
this Map to query through all of a user's powertools.
**Environments tested:** <!-- Type the OS you have used below. -->
OS: MacOS Apple chip
<!-- Type the JDK version (from java -version) you have used below. -->
Java version: 22.0.2
<!--
Put an "x" inside the boxes for the server software you have tested this
bug fix on. If this feature does not apply to a server, strike through
the server software using ~~strikethrough~~. If you have tested on other
environments, add a new line with relevant details.
-->
- [ ] Most recent Paper version (1.XX.Y, git-Paper-BUILD)
- [ ] CraftBukkit/Spigot/Paper 1.12.2
- [ ] CraftBukkit 1.8.8
```
[20:36:06] [Server thread/INFO]: This server is running CraftBukkit version 4457-Spigot-73860e0-f0c8dd3 (MC: 1.21.4) (Implementing API version 1.21.4-R0.1-SNAPSHOT)
[20:36:06] [Server thread/INFO]: Checking version, please wait...
[20:36:06] [Thread-9/INFO]: You are running the latest version
```
**Demonstration:** <!--
Below this block, include screenshots/log snippets from before and after
as
necessary. If you have created or used a test case plugin, please link
to a
download of the plugin, source code and exact version used where
possible.
-->
https://youtu.be/tgOr-fbHRAg
---------
Co-authored-by: Josh Roy <10731363+JRoy@users.noreply.github.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Command to list all user powertools

4 participants

@jstnf@pop4959@JRoy@mdcfe