Compare commits

..
363 Commits
Author SHA1 Message Date
Ben dca689ec37 Merge pull request #212 from Ben12345rocks/5.9
5.9
2017-06-28 08:20:33 -04:00
Ben12345rocks ee4d52377f Update version number 2017-06-28 08:19:38 -04:00
Ben12345rocks ac41c9413c Update API 2017-06-28 08:13:48 -04:00
Ben12345rocks 596968f869 Add Jar, closes #208 2017-06-26 15:13:56 -04:00
Ben12345rocks 0d2221d195 Add VoteRoulette converter 2017-06-26 14:53:14 -04:00
Ben12345rocks 23fa59f98f Fix data storage conversion 2017-06-26 13:38:50 -04:00
Ben12345rocks cb81b61096 Add more messages on convert 2017-06-25 15:05:17 -04:00
Ben12345rocks 186917992c Add a basic converter for GAL, closes #206 2017-06-22 14:40:44 -04:00
Ben12345rocks 6b70e4fee4 Add ability to set points on vote, closes #207 2017-06-20 19:51:08 -04:00
Ben12345rocks 79c98c8b86 Allow reward files to run offline, closes #200 2017-06-20 19:45:13 -04:00
Ben12345rocks b8e0830b0b Fix typo in Config.yml 2017-06-20 19:38:27 -04:00
Ben12345rocks 1cd1a0ab75 Update build path 2017-06-18 20:26:48 -04:00
Ben 481510a1e8 Merge pull request #205 from Ben12345rocks/5.8.7
5.8.7
2017-06-18 20:16:10 -04:00
Ben12345rocks 3a95ef9b23 Slight improvement 2017-06-18 20:16:44 -04:00
Ben12345rocks f7af9210cb Minor changes to bstats 2017-06-18 19:57:31 -04:00
Ben12345rocks 9f5fe338f4 Update version number, closes #201, closes #203 2017-06-18 19:42:46 -04:00
Ben12345rocks 967be0aa19 Add broadcast for vote party 2017-06-18 18:01:32 -04:00
Ben12345rocks 6e0b62a1dd Add every site reward 2017-06-18 17:57:22 -04:00
Ben12345rocks a8ec557c9e Bug fix 2017-06-16 16:02:41 -04:00
Ben12345rocks 252263da74 Update version number 2017-06-14 15:28:14 -04:00
Ben12345rocks e7696bed25 Minor improvements 2017-06-11 16:51:36 -04:00
Ben12345rocks 064451d2b5 Update version number 2017-06-11 15:21:59 -04:00
Ben12345rocks daa25805fa Change the way converting data storages work 2017-06-08 16:03:16 -04:00
Ben12345rocks cc010d9738 Fix shop item not working 2017-06-03 19:46:46 -04:00
Ben12345rocks cbe58a1f18 Update build path 2017-06-03 19:27:05 -04:00
Ben c29247d2a0 Merge pull request #198 from Ben12345rocks/5.8.4
5.8.4
2017-06-03 19:21:02 -04:00
Ben12345rocks a28cdfc6bf Update version number 2017-06-03 19:21:39 -04:00
Ben12345rocks 7db5cd59da More improvements 2017-06-03 10:40:33 -04:00
Ben12345rocks 0ebb0c9a70 Changes to /vgui 2017-06-03 09:50:37 -04:00
Ben12345rocks 9ba20ddd02 Bug fixes, closes #197 2017-06-02 15:43:06 -04:00
Ben12345rocks 7fddc0af12 Improve support for /reload, closes #194 2017-06-02 15:25:10 -04:00
Ben12345rocks 475e6059eb Add 1.12 support, update version number 2017-05-15 15:57:33 -04:00
Ben b552928b8c Update README.md 2017-05-04 20:06:46 -04:00
Ben12345rocks 779c1728b4 Update dependency 2017-05-04 17:31:02 -04:00
Ben d91e9cd150 Merge pull request #192 from Ben12345rocks/5.8.2
5.8.2
2017-05-04 17:27:11 -04:00
Ben12345rocks 5f8bf52c08 Code cleanup 2017-05-04 17:14:02 -04:00
Ben12345rocks bbf401ac94 Update version number 2017-05-02 20:12:38 -04:00
Ben12345rocks fda1f134bf Fix a typo 2017-05-01 20:30:30 -04:00
Ben 2b6425242a Update README.md 2017-05-01 17:36:48 -04:00
Ben12345rocks 79f1f5ced4 Don't use old repo 2017-05-01 17:31:40 -04:00
Ben12345rocks 8f37dc6f34 Bug fixes 2017-05-01 17:03:13 -04:00
Ben12345rocks 16590a023c Update version number, closes #190 2017-04-26 16:48:21 -04:00
Ben 0e961f0b92 Merge pull request #188 from Ben12345rocks/5.8
5.8
2017-04-17 11:28:56 -04:00
Ben12345rocks 24af26ff50 Bug fixes 2017-04-17 11:05:53 -04:00
Ben12345rocks 45c6b0d65a Many improvements and bug fixes, update version number, closes #184 2017-04-17 09:37:31 -04:00
Ben12345rocks 3f4c787fc6 Remove /vote info, closes #185 2017-04-15 08:36:56 -04:00
Ben12345rocks 3d9610f1cc Implement javascript in placeholders 2017-04-13 22:03:43 -04:00
Ben12345rocks 47e7201cc2 Config improvements 2017-04-13 21:39:29 -04:00
Ben12345rocks 6a665d9645 Implement javascript API 2017-04-13 21:30:22 -04:00
Ben12345rocks a880c11941 Update version number 2017-04-09 19:59:45 -04:00
Ben12345rocks 1b4e8ed4d7 Update version number 2017-04-09 12:56:55 -04:00
Ben12345rocks 5fcfba567a Javadoc fix 2017-04-08 19:49:21 -04:00
Ben12345rocks da88aa17b1 More bug fixes 2017-04-08 10:15:13 -04:00
Ben12345rocks 61243589b1 Add more placeholders, bug fixes, closes #183, update version number 2017-04-08 09:19:55 -04:00
Ben12345rocks d0ea06921b Bug fixes, updater version number 2017-04-04 20:56:52 -04:00
Ben 9f2cfb7825 Merge pull request #182 from Ben12345rocks/5.7
5.7
2017-04-02 17:04:24 -04:00
Ben12345rocks 33d104cdfc Javadoc fixes 2017-04-02 16:56:29 -04:00
Ben12345rocks 3a483ed746 Clean up 2017-04-02 16:53:25 -04:00
Ben12345rocks b4c5e68833 Add aliases 2017-04-02 16:41:44 -04:00
Ben12345rocks 3ef524aefe Bug fixes, update version number 2017-04-02 16:26:49 -04:00
Ben12345rocks fedd6cf9ef Bug fixes 2017-04-02 14:05:11 -04:00
Ben12345rocks f1112d5694 Add more placeholders, bug fixes 2017-04-02 13:41:43 -04:00
Ben12345rocks 6ed58d8223 Fix minor typo 2017-04-01 21:18:49 -04:00
Ben12345rocks 5122e0391a First implementation of vote streak rewards, rewrites to other rewards 2017-04-01 20:58:05 -04:00
Ben12345rocks cb088a84f9 Fix placeholders not working when site name contains _ 2017-04-01 18:48:05 -04:00
Ben12345rocks 90a57fbe84 Bug fixes 2017-03-31 21:29:25 -04:00
Ben12345rocks edf636de35 Add more placeholders 2017-03-31 20:43:57 -04:00
Ben12345rocks 6601f13127 Bug fixes 2017-03-31 16:36:57 -04:00
Ben12345rocks 96f38bf13f Add placeholders 2017-03-31 15:27:38 -04:00
Ben12345rocks 014ba226f9 Add /vote streak, /vote best, closes #180 2017-03-31 15:02:16 -04:00
Ben12345rocks a46cd4ae2c Added placeholders, SQLite default, default reward, closes #181 2017-03-31 10:34:50 -04:00
Ben12345rocks 63c826007e Allow downloading 2017-03-31 10:17:30 -04:00
Ben12345rocks 165b80dca3 Don't load every player into storage 2017-03-31 09:49:24 -04:00
Ben12345rocks f84517741d Bug fix 2017-03-25 08:22:33 -04:00
Ben12345rocks ea4216244a Fix VoteShop not working 2017-03-21 15:39:56 -04:00
Ben 6982d8421c Merge pull request #179 from Ben12345rocks/5.6.4
5.6.4
2017-03-20 21:25:00 -04:00
Ben12345rocks afdbb57d66 Update version number 2017-03-20 21:12:00 -04:00
Ben12345rocks b10396176b Fix typo 2017-03-20 21:08:42 -04:00
Ben12345rocks bd865dd588 Add ability to customize more gui's 2017-03-19 19:43:55 -04:00
Ben12345rocks fec62bdb32 Bug fixes 2017-03-17 15:29:24 -04:00
Ben12345rocks 63fa9b77d3 Bug fixes 2017-03-17 14:59:19 -04:00
Ben12345rocks 6ecb703235 Bug fixes 2017-03-17 11:18:36 -04:00
Ben12345rocks 4193f0bd32 Bug fixes 2017-03-17 10:55:15 -04:00
Ben 7eb6e0c4f2 Merge pull request #176 from Ben12345rocks/5.6
5.6
2017-03-17 10:01:22 -04:00
Ben12345rocks 530ca13de4 Minor message change 2017-03-17 09:35:48 -04:00
Ben12345rocks 76d4666e58 Update version number 2017-03-17 09:24:50 -04:00
Ben12345rocks d3b980bb5e Add ability to customize gui name 2017-03-17 09:23:58 -04:00
Ben12345rocks 371961bcce Add command to force background update 2017-03-17 09:04:14 -04:00
Ben12345rocks 1df7869f3b Make top voter ignore permission do more 2017-03-16 15:51:37 -04:00
Ben12345rocks 6af60370bf Minor changes 2017-03-16 10:52:22 -04:00
Ben12345rocks 49d9ce7b36 A lot of bug fixes and improvements 2017-03-13 09:29:14 -04:00
Ben12345rocks 1d3ef77d78 Slight performance improvement 2017-03-07 16:36:37 -05:00
Ben12345rocks 2a80658981 Fix monthly total not properly being reset 2017-03-07 16:29:48 -05:00
Ben12345rocks 9bafe060a3 Bug fixes 2017-03-06 16:12:43 -05:00
Ben 8c67abbf6a Merge pull request #174 from Ben12345rocks/5.5.2
5.5.2
2017-03-05 20:39:42 -05:00
Ben12345rocks 1f1dd3fd07 Minor change 2017-03-05 17:44:57 -05:00
Ben12345rocks fcf0977042 Update version number 2017-03-05 14:50:47 -05:00
Ben12345rocks f4cb50e1cd Bug fixes 2017-03-05 14:47:42 -05:00
Ben12345rocks 13367c2f8e Bug fixes, closes #173 2017-03-05 13:25:53 -05:00
Ben12345rocks acc5736e82 No longer preload table, closes #173 2017-03-02 21:35:36 -05:00
Ben12345rocks e8fbbb7db4 Remove unused parts of file 2017-02-28 21:17:18 -05:00
Ben12345rocks 2f4f8a0da7 Bug fixes 2017-02-28 21:15:58 -05:00
Ben12345rocks f3fc1373c1 Fix placeholder not working properly 2017-02-27 16:45:54 -05:00
Ben12345rocks 71c3d6ac7c Fix generating vote sites not removing the dot? closes #170 2017-02-27 16:25:52 -05:00
Ben12345rocks 71bda92e46 Fix signs not properly being removed, closes #168 2017-02-27 16:21:40 -05:00
Ben12345rocks 33bff9e0c8 Add new placeholders, close #167 2017-02-27 16:12:26 -05:00
Ben12345rocks da1723bd41 Update version number 2017-02-26 13:54:35 -05:00
Ben12345rocks 4b478a4667 Changed how totals work, added new command 2017-02-19 17:10:58 -05:00
Ben12345rocks 8acfadbe25 Update version number 2017-02-11 16:31:19 -05:00
Ben12345rocks f2523b63c3 Bug fixes 2017-02-09 20:00:28 -05:00
Ben12345rocks ec59112740 Fixed a load of bugs 2017-02-08 21:46:47 -05:00
Ben12345rocks 1d39ea2c3d Update version number, closes #166 2017-02-03 20:58:25 -05:00
Ben12345rocks 49e69cba08 Bug fixes 2017-02-02 08:49:22 -05:00
Ben12345rocks 04081939b3 Bug fixes 2017-02-01 09:18:47 -05:00
Ben12345rocks 7c86774c01 A few minor bug fixes 2017-01-31 20:38:05 -05:00
Ben 7410299a35 Merge pull request #164 from Ben12345rocks/5.4
5.4
2017-01-31 09:55:30 -05:00
Ben12345rocks a4ec9e650a Bug fixes 2017-01-31 09:37:40 -05:00
Ben12345rocks 683f8d77f7 A lot of improvements 2017-01-31 08:53:21 -05:00
Ben12345rocks 68fdb5ca78 Update version number 2017-01-30 15:45:11 -05:00
Ben12345rocks 5a8d14806e Reload mysql on reload 2017-01-29 15:25:33 -05:00
Ben12345rocks eafb38f351 Fix sendscoreboards doing nothing 2017-01-29 14:47:15 -05:00
Ben12345rocks 685bb69f2a Bug fixes 2017-01-29 14:42:56 -05:00
Ben12345rocks 1b2f63a8ab Add a little message if no voting sites are detected 2017-01-26 21:42:46 -05:00
Ben12345rocks bb7b2bd303 Add site display name 2017-01-26 20:57:22 -05:00
Ben12345rocks aa699cdb50 Use new reward system 2017-01-26 15:42:23 -05:00
Ben12345rocks 1c19377d58 Add config option to change update interval 2017-01-24 20:51:18 -05:00
Ben12345rocks 085a9614a3 A lot of bug fixes 2017-01-09 20:56:39 -05:00
Ben12345rocks 4a84d657a8 Bug fix 2017-01-09 15:35:25 -05:00
Ben12345rocks eb79c6c37d Javadoc fix 2017-01-08 13:44:30 -05:00
Ben12345rocks e21c6d0ccb Bug fix 2017-01-08 13:26:32 -05:00
Ben12345rocks 2f273a0a2a Bug fix 2017-01-08 12:48:19 -05:00
Ben12345rocks f095fa1223 Many bug fixes & improvements 2017-01-08 12:40:00 -05:00
Ben12345rocks aa7ce443cc Bug fix 2017-01-06 09:05:52 -05:00
Ben12345rocks 145e9bada5 Fix signs not working 2017-01-05 19:20:27 -05:00
Ben12345rocks 8597e86b79 Perm fix 2017-01-04 09:51:55 -05:00
Ben12345rocks 834dfcc8bb Bug fix 2017-01-04 08:29:21 -05:00
Ben12345rocks 79ca900e5d Bug fixes 2017-01-02 08:40:17 -05:00
Ben12345rocks 5bbbaf056f Fix typo in Config.yml 2016-12-29 11:01:46 -05:00
Ben a922e5f082 Merge pull request #157 from Ben12345rocks/5.2
5.2
2016-12-29 08:59:04 -05:00
Ben12345rocks e1356e2375 Update version number 2016-12-29 08:30:45 -05:00
Ben12345rocks 1d3c25b7fc Changes to improve performance 2016-12-28 09:31:54 -05:00
Ben12345rocks 0dc8206f7d Bug fix 2016-12-25 20:44:31 -05:00
Ben12345rocks 801175f4fd Add command to update data files 2016-12-24 16:38:34 -05:00
Ben12345rocks 38ac0b5317 Add more stats 2016-12-24 16:19:56 -05:00
Ben12345rocks 534deb8fa7 more changes 2016-12-24 16:03:24 -05:00
Ben12345rocks 545ff24ec9 Changes to user data, add new placeholder 2016-12-24 15:55:38 -05:00
Ben12345rocks 41802f4d64 Merge remote-tracking branch 'origin/master' into 5.2
Conflicts:
	VotingPlugin/pom.xml
2016-12-23 18:47:13 -05:00
Ben12345rocks 3efb5f9ad3 Bug fixes 2016-12-22 19:33:18 -05:00
Ben12345rocks 842e341c7d Merge remote-tracking branch 'origin/master' into 5.2
Conflicts:
	VotingPlugin/pom.xml
	VotingPlugin/src/com/Ben12345rocks/VotingPlugin/Commands/Commands.java
	VotingPlugin/src/com/Ben12345rocks/VotingPlugin/Main.java
2016-12-21 16:28:29 -05:00
Ben12345rocks 7d771bc1b2 Bug fixes 2016-12-21 15:50:52 -05:00
Ben12345rocks e25d5329a2 Bug fixes 2016-12-19 20:41:58 -05:00
Ben12345rocks 7303cfcbfb Bug fixes, update version to beta 2016-12-19 20:25:36 -05:00
Ben12345rocks dc115ed789 Implement new data storage 2016-12-18 15:36:32 -05:00
Ben12345rocks 5937507818 Update maven-github-plugin 2016-12-17 19:03:38 -05:00
Ben12345rocks 163f9404c2 Bug fixes 2016-12-17 17:07:37 -05:00
Ben12345rocks 143468e48a Update version number 2016-12-14 15:44:40 -05:00
Ben12345rocks 2c29ed40f8 Bug fix, update version number 2016-12-13 15:37:17 -05:00
Ben ede5d6b3a6 Merge pull request #155 from Ben12345rocks/5.1
5.1
2016-12-11 19:26:37 -05:00
Ben12345rocks 8dd7f49b24 Javadoc fixes 2016-12-11 19:26:53 -05:00
Ben12345rocks 44393f60d9 Bug fixes 2016-12-11 18:46:30 -05:00
Ben12345rocks 5880de53eb Bug fix 2016-12-11 18:03:48 -05:00
Ben12345rocks 95da201ea5 Many bug fixes and improvements 2016-12-11 16:37:37 -05:00
Ben12345rocks 1179451738 Recode top voter 2016-12-09 15:30:22 -05:00
Ben12345rocks d1abad711d Recode TopVoter, remove per site signs, config improvements 2016-12-08 17:16:00 -05:00
Ben12345rocks 8bd7fe330d Fix maven repo not uploading 2016-12-08 15:42:41 -05:00
Ben12345rocks a281b37a56 Merge branch 'master' of https://github.com/Ben12345rocks/VotingPlugin 2016-12-07 16:52:00 -05:00
Ben12345rocks 01ee350eea Crash fix, update version number 2016-12-07 16:17:37 -05:00
Ben d342d2b43e Delete .travis.yml 2016-12-06 20:21:55 -05:00
Ben 14fe133482 Create .travis.yml 2016-12-06 20:19:59 -05:00
Ben12345rocks 2fa9f3ced1 Bug fix 2016-12-05 15:51:11 -05:00
Ben12345rocks 75b435dac7 Set AdvancedCore version number 2016-12-04 22:07:42 -05:00
Ben12345rocks 9471925696 Bug fix 2016-12-04 22:06:18 -05:00
Ben12345rocks eb5aa134e3 Bug fix 2016-12-04 20:30:27 -05:00
Ben 1771d15e83 Merge pull request #150 from Ben12345rocks/5.0
5.0
2016-12-04 15:10:12 -05:00
Ben12345rocks 1064e48a22 Javadoc fix 2016-12-04 14:52:25 -05:00
Ben12345rocks 42faa9fa81 Bug fixes & Improvements 2016-12-04 14:22:38 -05:00
Ben12345rocks 76de7d6e2f Improvements 2016-12-03 21:45:58 -05:00
Ben12345rocks e12e81aa0b Bug fixes 2016-12-03 09:53:27 -05:00
Ben12345rocks a4ef6acdec Update version number 2016-12-03 08:37:36 -05:00
Ben12345rocks ddf3ac5513 Combine more configs 2016-12-02 22:10:26 -05:00
Ben12345rocks 6b77d9a46b Add craftbukkit support 2016-11-30 21:52:03 -05:00
Ben12345rocks 198ebc7f6f Compile AdvancedCore directly into plugin 2016-11-29 16:33:03 -05:00
Ben12345rocks c5168d3f5d Bug fix 2016-11-23 20:41:08 -05:00
Ben12345rocks 665c009d8b Only update javadoc when needed 2016-11-23 20:07:07 -05:00
Ben12345rocks 07d9b23eef Minor change 2016-11-22 22:01:14 -05:00
Ben12345rocks 6c67b405c2 More changes 2016-11-22 20:36:00 -05:00
Ben12345rocks e9646ee5d6 Bug fix 2016-11-22 16:49:55 -05:00
Ben12345rocks a7e8561639 Update version number
Add maven repo
Better perms
2016-11-22 16:34:10 -05:00
Ben f80f7dc546 Merge pull request #147 from Ben12345rocks/4.7
4.7
2016-11-20 21:49:45 -05:00
Ben12345rocks 87becb7750 Convert to Maven 2016-11-20 14:34:32 -05:00
Ben12345rocks 1affff072d Change version number 2016-11-19 16:19:17 -05:00
Ben12345rocks ecdd02313b Update version number 2016-11-18 15:52:31 -05:00
Ben12345rocks 5483e414d5 Use updated methods in AdvancedCore 2016-11-18 10:11:50 -05:00
Ben12345rocks 93457617a4 Add BStats, add basic commands from AdvancedCore 2016-11-17 21:11:02 -05:00
Ben12345rocks a6ce18a520 Build with 1.11, update version number 2016-11-17 07:22:14 -05:00
Ben 882f7a6703 Merge pull request #146 from Ben12345rocks/4.6.2
4.6.2
2016-11-08 21:14:04 -05:00
Ben12345rocks 228b3cb41b Bug fixes 2016-11-08 21:08:34 -05:00
Ben12345rocks 34b1b43d07 Bug fix 2016-11-08 20:34:19 -05:00
Ben12345rocks f82a0cb88a Add milestone reset per month, closes #145, update version number 2016-11-08 15:50:40 -05:00
Ben12345rocks 5329dd5312 Minor fixes, update version number 2016-11-01 20:27:15 -04:00
Ben 580f35c8b0 Merge pull request #144 from Ben12345rocks/4.6
4.6
2016-10-30 16:09:01 -04:00
Ben12345rocks 10c5f7b173 Javadoc fixes 2016-10-30 16:02:49 -04:00
Ben12345rocks 7acf00b0ac Bug fix 2016-10-30 15:19:37 -04:00
Ben12345rocks f58d429173 Bug fix 2016-10-30 15:04:30 -04:00
Ben12345rocks 5ba393d040 Bug fixes 2016-10-30 14:58:26 -04:00
Ben12345rocks 537f2b34bc Update version number 2016-10-30 14:39:38 -04:00
Ben12345rocks 1e07f826e7 Bug fixes 2016-10-30 14:21:32 -04:00
Ben12345rocks 414a2f2139 Add many more GUI's with options to use or not 2016-10-30 13:36:05 -04:00
Ben12345rocks 494faa1fb8 Add a user vote requirement for vote party 2016-10-29 19:30:24 -04:00
Ben12345rocks b003a55979 Remove old code, use better file management system 2016-10-27 21:56:42 -04:00
Ben12345rocks 5aec36795a Upgrade to improved AdvancedCore reward system 2016-10-27 21:26:00 -04:00
Ben12345rocks 32581641b7 Add auto update for 4.5.4 from older versions 2016-10-27 15:38:17 -04:00
Ben12345rocks 054248594f Bug fix 2016-10-27 15:36:03 -04:00
Ben12345rocks e0e6b68fe8 Bug fix update version number 2016-10-27 15:31:52 -04:00
Ben 0f9398ab7e Merge pull request #142 from Ben12345rocks/4.5.3
4.5.3
2016-10-23 14:10:19 -04:00
Ben12345rocks 3ede586ba0 Bug fixes 2016-10-23 13:21:43 -04:00
Ben12345rocks e37c7d3122 Bug fix 2016-10-23 12:59:45 -04:00
Ben12345rocks b51b7f7205 Update version number 2016-10-23 12:50:59 -04:00
Ben12345rocks ab327d4cf2 Bug fix 2016-10-22 21:07:42 -04:00
Ben12345rocks bc2476c096 Bug fix 2016-10-22 21:03:24 -04:00
Ben12345rocks 7440a0ddec Improvements 2016-10-21 20:04:16 -04:00
Ben12345rocks d1929fea9d Use new API in AdvancedCore 2016-10-21 19:11:26 -04:00
Ben12345rocks f484aa63c6 Improvements 2016-10-21 16:32:26 -04:00
Ben12345rocks 05a03ca51b Add per day option for vote party, other improvements 2016-10-21 16:12:45 -04:00
Ben c39872ee19 Merge pull request #141 from Ben12345rocks/4.5.2
4.5.2
2016-10-18 21:05:40 -04:00
Ben12345rocks 848c9c5d49 Move bungee voting out to seperate plugin 2016-10-18 20:29:41 -04:00
Ben12345rocks 5c656ec5ff Config changes
Removed ServerData.yml, use one in AdvancedCore
Removed VoteReminding.yml, added in Config.yml
Auto update.
2016-10-18 16:19:52 -04:00
Ben12345rocks bf79b275f6 Convert files on update if updating to 4.5.1 past 4.5 2016-10-17 21:04:18 -04:00
Ben12345rocks 782a2a88dc Bug fixes, update version number 2016-10-17 20:59:00 -04:00
Ben 1cbbc15301 Merge pull request #139 from Ben12345rocks/4.5
4.5
2016-10-17 16:03:17 -04:00
Ben12345rocks 0297711e17 Reload sites on convert 2016-10-17 15:54:50 -04:00
Ben12345rocks bc71b96733 Move votesites all into 1 file, update version number 2016-10-17 15:52:01 -04:00
Ben be60f07de2 Merge pull request #137 from Ben12345rocks/4.4.1
4.4.1
2016-10-12 20:49:26 -04:00
Ben12345rocks 8ae15ccffe Update version number 2016-10-12 20:42:16 -04:00
Ben12345rocks 088081c3ec Implement voteshop add-on into plugin 2016-10-11 17:09:33 -04:00
Ben e8637da77b Merge pull request #135 from Ben12345rocks/4.4
4.4
2016-10-09 14:32:53 -04:00
Ben12345rocks 471453aadf Bug fix, update version number 2016-10-09 14:19:55 -04:00
Ben12345rocks 2d38b3dbca Move the rewards list in Config.yml to Rewards.yml 2016-10-09 12:39:16 -04:00
Ben 441726f233 Merge pull request #133 from Ben12345rocks/4.3.8
4.3.8
2016-10-02 17:04:58 -04:00
Ben12345rocks 37edb38723 Update version number 2016-10-02 16:45:38 -04:00
Ben12345rocks eb4b33aa60 Optimization & improvements 2016-10-02 16:27:02 -04:00
Ben12345rocks c291ff00a6 Add option for weekly votes for cumulative votes 2016-10-02 15:56:10 -04:00
Ben12345rocks 37399dd856 Use new ValueRequest api 2016-09-26 16:10:44 -04:00
Ben12345rocks 3ecd784e61 Disable unneeded plugin checks, sites are now enabled on generation 2016-09-25 21:34:00 -04:00
Ben12345rocks 412f6bab97 Improve some messages in config.yml 2016-09-25 17:28:04 -04:00
Ben12345rocks d1d9054562 Bug fix, update version number 2016-09-20 20:29:12 -04:00
Ben 98229d9d6a Merge pull request #132 from Ben12345rocks/4.3.6
4.3.6
2016-09-11 14:15:54 -04:00
Ben12345rocks 26d39ac7e2 Code cleanup, update javadoc 2016-09-11 14:04:06 -04:00
Ben12345rocks 066b7813a0 Update version number 2016-09-11 13:40:14 -04:00
Ben12345rocks e36befcbfb Add ability to set milestone complete 2016-09-11 13:33:25 -04:00
Ben12345rocks 34c84175f6 Add ability to log votes to file 2016-09-11 13:20:28 -04:00
Ben12345rocks 406a47e272 Disable firstvote/allsites rewards by default 2016-09-10 20:40:13 -04:00
Ben12345rocks bb6ae46dd8 Bug fixes 2016-09-10 20:37:43 -04:00
Ben12345rocks 47cbd05290 Update to new methods of gui's 2016-09-09 16:32:20 -04:00
Ben 87c91e67d7 Merge pull request #131 from Ben12345rocks/4.3.5
4.3.5
2016-09-04 17:13:17 -04:00
Ben12345rocks b44b97284e Code cleanup, update javadoc 2016-09-04 16:43:32 -04:00
Ben12345rocks a0f3264297 Update version number 2016-09-04 15:14:44 -04:00
Ben12345rocks 45cb09ef0e Add gui button to force player vote on site 2016-09-04 13:48:52 -04:00
Ben12345rocks 9cef05beb7 Improvements, add more commands 2016-09-04 13:19:01 -04:00
Ben12345rocks c008744559 Let AdvancedCore handle reward files 2016-09-02 16:19:02 -04:00
Ben 0bb990e535 Merge pull request #129 from Ben12345rocks/4.3.4
4.3.4
2016-09-01 10:13:13 -04:00
Ben12345rocks 3b977a3da0 Bug fix 2016-09-01 10:02:52 -04:00
Ben12345rocks 4d9a855b4f Bug fix 2016-09-01 08:44:11 -04:00
Ben12345rocks 023206bd14 Update version number 2016-09-01 08:33:13 -04:00
Ben12345rocks 9d30790373 Bug fix 2016-09-01 08:32:44 -04:00
Ben12345rocks c92746b6c6 Bug fixes 2016-08-31 16:43:21 -04:00
Ben12345rocks f4fa697f0f Upgrades to tab complete 2016-08-31 15:09:06 -04:00
Ben 761c2f0c77 Merge pull request #128 from Ben12345rocks/4.3.3
4.3.3
2016-08-29 15:34:36 -04:00
Ben12345rocks 67908b82fa Bug fix 2016-08-29 15:36:42 -04:00
Ben12345rocks 1fedd7063d Update JavaDoc 2016-08-29 14:55:19 -04:00
Ben12345rocks dbdc74e751 Update version number 2016-08-29 14:47:26 -04:00
Ben12345rocks 0c9bc0fb01 Send bungee votes when server is back online (until shutdown of server)
closes #109
2016-08-29 14:42:30 -04:00
Ben12345rocks 7fcdd3b545 Improvements to GUI's, closes #111 2016-08-29 14:21:29 -04:00
Ben12345rocks be6ef6f75e Improvements to GUI 2016-08-29 14:17:13 -04:00
Ben12345rocks 42d81ba361 improvements in AdminGUI 2016-08-29 10:57:15 -04:00
Ben12345rocks a17a889ffa Improvements to GUI 2016-08-29 09:02:02 -04:00
Ben12345rocks d04293b1b4 Merge remote-tracking branch 'origin/master' into 4.4 2016-08-28 21:25:44 -04:00
Ben12345rocks 8e5a37b969 Update version number, bug fix 2016-08-28 21:17:35 -04:00
Ben12345rocks 4439268472 Improvements to GUI's 2016-08-28 21:12:45 -04:00
Ben b33d256656 Merge pull request #127 from Ben12345rocks/4.3.1
4.3.1
2016-08-28 12:55:31 -04:00
Ben12345rocks 7c10ef066f Bug fixes, update javadoc 2016-08-28 12:36:12 -04:00
Ben12345rocks 5f02f76b9f Update version number 2016-08-28 12:25:22 -04:00
Ben12345rocks 4e6e88159e Add gui to edit reward file 2016-08-26 10:53:45 -04:00
Ben12345rocks 96b5e8fc3e Update to new runnable handler 2016-08-26 10:02:58 -04:00
Ben dd3bee2b77 Merge pull request #123 from Ben12345rocks/4.3
4.3
2016-08-24 08:21:21 -04:00
Ben12345rocks d2a4c6385d Bug fixes 2016-08-23 15:51:32 -04:00
Ben12345rocks 6707296b5a Bug fixes 2016-08-23 10:59:45 -04:00
Ben12345rocks 42c358fd70 Update version number 2016-08-23 10:40:52 -04:00
Ben12345rocks b14c0b79c1 Add link for where to download AdvancedCore 2016-08-23 10:39:18 -04:00
Ben12345rocks 81582fef1b Make sure default remind message is set if file doesn't exist 2016-08-22 21:50:58 -04:00
Ben12345rocks f4f05322a3 Update javadoc 2016-08-22 14:46:41 -04:00
Ben12345rocks 25b81a8c8e Code cleanup 2016-08-22 14:32:12 -04:00
Ben12345rocks 433cc9a914 Add milestones, untested 2016-08-21 21:46:15 -04:00
Ben12345rocks 27096eb67d Add converter to convert data files 2016-08-21 21:27:03 -04:00
Ben12345rocks 2c4074694c Add ability to give reward if player doesn't reach certain number of
votes, closes #117
2016-08-21 20:24:59 -04:00
Ben12345rocks 4666406f41 Add commands to set and add points 2016-08-21 19:28:47 -04:00
Ben12345rocks d5c710c060 Merge remote-tracking branch 'origin/master' into 4.3 2016-08-21 13:16:00 -04:00
Ben 740d8dd21f Merge pull request #122 from Ben12345rocks/4.2.4
Add new method to add points, update version number
2016-08-21 13:06:45 -04:00
Ben12345rocks f03264236b Add new method to add points, update version number 2016-08-21 13:04:11 -04:00
Ben12345rocks e2681edee9 Code cleanup 2016-08-21 12:57:09 -04:00
Ben12345rocks 5d49479da2 Add ability to view debug info ingame 2016-08-20 21:56:25 -04:00
Ben12345rocks 66410db7e5 List reward file when viewing site info ingame 2016-08-20 21:49:39 -04:00
Ben12345rocks f29cfd5434 Add %VotingPlugin_VotePartyVotesNeeded% placeholder 2016-08-20 21:17:21 -04:00
Ben12345rocks a30fdba2b9 Bug fixes 2016-08-19 20:54:57 -04:00
Ben12345rocks 122bd089d4 Use new core plugin for main api 2016-08-19 08:46:50 -04:00
Ben12345rocks d73ee79102 Fix one command alias not loading 2016-08-18 16:15:15 -04:00
Ben 2ece54f321 Merge pull request #120 from Ben12345rocks/4.2.3
4.2.3
2016-08-18 16:08:56 -04:00
Ben12345rocks 3b1c94d040 Update version number 2016-08-18 15:57:36 -04:00
Ben12345rocks ae4d2b7339 Bug fix 2016-08-18 15:56:20 -04:00
Ben c1e512d574 Merge pull request #114 from Ben12345rocks/4.2.2
4.2.2
2016-08-15 15:53:09 -04:00
Ben12345rocks b3a6e3e658 Update version to 4.2.2 2016-08-15 11:12:11 -04:00
Ben12345rocks 1d11bbb2b5 Add some basic reward edit commands 2016-08-13 21:42:39 -04:00
Ben12345rocks 8a92bfa89c Fix typo 2016-08-13 20:21:31 -04:00
Ben 91f2a32e32 Merge pull request #112 from Ben12345rocks/4.2.1
4.2.1
2016-08-06 08:35:07 -04:00
Ben12345rocks b4df38b83b Update version number, bug fixes 2016-08-06 08:25:09 -04:00
Ben12345rocks dc6c20bf02 Replace all player placeholders on conversion 2016-08-05 11:06:04 -04:00
Ben12345rocks 5d3c14cd88 Fully implement converter 2016-08-05 11:01:40 -04:00
Ben12345rocks 0ac214d1b7 Bug fixes, start work on GAL converter 2016-08-04 21:48:03 -04:00
Ben 97e136de75 Merge pull request #108 from Ben12345rocks/4.2
4.2
2016-07-26 10:25:09 -04:00
Ben12345rocks 48373e001a Bug fix 2016-07-26 10:22:24 -04:00
Ben12345rocks 9aa327053d Bug fix for all sites reward not be given, tab complete for reward names 2016-07-26 09:45:15 -04:00
Ben12345rocks 7a7185c392 Undo convert to maven 2016-07-25 15:16:30 -04:00
Ben12345rocks 1350ef9522 Fix JavaDoc typo 2016-07-25 15:12:18 -04:00
Ben12345rocks c00c18bbe0 Update JavaDoc 2016-07-25 15:10:12 -04:00
Ben12345rocks bce502999d Bug fixes 2016-07-25 15:08:12 -04:00
Ben12345rocks f832ee9882 Full rewrite of titles, bossbar, and actionbar, built right in 2016-07-25 14:28:32 -04:00
Ben12345rocks 1861a23efc Update version number 2016-07-24 13:12:29 -04:00
Ben12345rocks 1901383c20 Update JavaDoc 2016-07-24 13:12:06 -04:00
Ben12345rocks 6f59f7fdb5 Add PlayerRewardEvent 2016-07-24 13:08:19 -04:00
Ben12345rocks c7de86c096 No longer depend on external plugins for titles, etc, add bossbar 2016-07-24 13:04:26 -04:00
Ben12345rocks 18c8d75003 Rename some packages, may break plugins using my API 2016-07-22 15:41:21 -04:00
Ben12345rocks 4de41f07eb Bug fixes 2016-07-22 08:58:54 -04:00
Ben12345rocks 0ac771418f Add ability to give rewards based on if player was online when he voted,
bug fix
2016-07-22 08:47:23 -04:00
Ben12345rocks 476c807e34 Add ability to have more cumulative votes, untested, code cleanup 2016-07-22 07:58:00 -04:00
Ben12345rocks 44f9763f30 Merge fixes 2016-07-21 16:34:32 -04:00
Ben12345rocks e9ea9517d7 Merge remote-tracking branch 'origin/master' into 4.2 2016-07-21 16:28:25 -04:00
Ben bc77bdd610 Merge pull request #105 from Ben12345rocks/4.1.5
4.1.5
2016-07-21 15:58:54 -04:00
Ben12345rocks f0c0e01f27 Fix bug with invalid signs 2016-07-21 15:40:10 -04:00
Ben12345rocks 001d804d76 Fix typo 2016-07-21 15:23:33 -04:00
Ben12345rocks d572b410c6 Add ability to set min and max amounts for exp 2016-07-21 15:20:05 -04:00
Ben12345rocks 00613c9a4f VoteParty fixes 2016-07-21 15:09:33 -04:00
Ben12345rocks add03e9a0f Update version number, add comment that money is not per world 2016-07-21 14:43:01 -04:00
Ben12345rocks 21bb3cd957 Change settings 2016-07-21 14:24:16 -04:00
Ben12345rocks 6dfb6959e9 Improvements and bug fixes 2016-07-21 14:19:55 -04:00
Ben12345rocks 0b22d413cf Improvements 2016-07-21 14:13:10 -04:00
Ben12345rocks 83afa346d2 Colorize action bar, code cleanup 2016-07-20 11:07:54 -04:00
Ben12345rocks f4f46be906 Merge Fix 2016-07-20 10:55:04 -04:00
Ben12345rocks 6013862653 Merge 2016-07-20 10:54:46 -04:00
Ben12345rocks 1c152e5dfb Fix JavaDoc 2016-07-20 10:21:36 -04:00
Ben12345rocks e8d92c5317 AnotherJavaDoc fix 2016-07-20 10:17:19 -04:00
Ben12345rocks 0b2a7eda5f Fix JavaDoc 2016-07-20 10:16:11 -04:00
Ben12345rocks e19577015f Add JavaDoc 2016-07-20 10:14:43 -04:00
Ben12345rocks afdbe8b32c Bug fix 2016-07-20 10:11:53 -04:00
Ben12345rocks 2d3a57cc59 Improve JavaDoc 2016-07-19 22:14:31 -04:00
Ben12345rocks 5f41bb2bc8 Add actionbar 2016-07-19 22:10:32 -04:00
Ben12345rocks 06a9c2df95 Bug fixes 2016-07-19 16:22:21 -04:00
Ben12345rocks 3ac3e8df2f Convert to maven 2016-07-19 15:55:23 -04:00
Ben12345rocks ae13977b7d Add javadocs 2016-07-19 15:46:31 -04:00
Ben12345rocks 99cabd9bcd Run reward files on vote of any site (Configured in Config.yml) 2016-07-19 10:56:58 -04:00
Ben12345rocks 9674d80737 Add option to store top voters in files or not, improve configs 2016-07-19 10:50:13 -04:00
Ben12345rocks 2e2bf1233c Add ability to fully customize /vote message, add option to disable auto
adding sites to /vote
2016-07-19 10:30:18 -04:00
Ben12345rocks 7ffd919884 Add a default message for Remind if the reward files listed don't exist 2016-07-19 10:24:19 -04:00
Ben12345rocks 7a31d69e3a Fix typo, clarify VoteReminding.yml 2016-07-19 10:19:56 -04:00
704 changed files with 12524 additions and 128495 deletions

No files matched your search

-51
View File
@@ -1,51 +0,0 @@
# Sample workflow for building and deploying a Jekyll site to GitHub Pages
name: Deploy Jekyll with GitHub Pages dependencies preinstalled
on:
# Runs on pushes targeting the default branch
push:
branches: ["gh-pages"]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write
# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
concurrency:
group: "pages"
cancel-in-progress: false
jobs:
# Build job
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Pages
uses: actions/configure-pages@v5
- name: Build with Jekyll
uses: actions/jekyll-build-pages@v1
with:
source: ./apidocs
destination: ./_site
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
# Deployment job
deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: build
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
View File
Whitespace-only changes.
+27
View File
@@ -0,0 +1,27 @@
# VotingPlugin
Plugin on SpigotMC
https://www.spigotmc.org/resources/votingplugin.15358/
## License
### Creative Commons Arttribution 3.0 Unported
https://github.com/Ben12345rocks/VotingPlugin/blob/master/VotingPlugin/LICENSE.txt
### Maven:
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
<dependency>
<groupId>com.github.Ben12345rocks</groupId>
<artifactId>VotingPlugin</artifactId>
<version>LATEST</version>
<scope>provided</scope>
</dependency>
Versions:
LATEST - latest stable release
BRANCH-SNAPHSOT - unstable builds
+25
View File
@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" output="target/classes" path="src">
<attributes>
<attribute name="optional" value="true"/>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8">
<attributes>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
<attributes>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry excluding="**" kind="src" output="target/classes" path="Resources">
<attributes>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="output" path="target/classes"/>
</classpath>
+3
View File
@@ -0,0 +1,3 @@
/bin/
/target/
/doc/
+23
View File
@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>VotingPlugin</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.m2e.core.maven2Builder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.m2e.core.maven2Nature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>
@@ -0,0 +1,7 @@
add_todo=false
eclipse.preferences.version=1
include_subpackages=true
mode=mode_replace
project_specific_settings=true
replacements=<?xml version\="1.0" standalone\="yes"?>\n\n<replacements>\n<replacement key\="get" scope\="1" mode\="0">Gets the</replacement>\n<replacement key\="set" scope\="1" mode\="0">Sets the</replacement>\n<replacement key\="add" scope\="1" mode\="0">Adds the</replacement>\n<replacement key\="edit" scope\="1" mode\="0">Edits the</replacement>\n<replacement key\="remove" scope\="1" mode\="0">Removes the</replacement>\n<replacement key\="init" scope\="1" mode\="0">Inits the</replacement>\n<replacement key\="parse" scope\="1" mode\="0">Parses the</replacement>\n<replacement key\="create" scope\="1" mode\="0">Creates the</replacement>\n<replacement key\="build" scope\="1" mode\="0">Builds the</replacement>\n<replacement key\="is" scope\="1" mode\="0">Checks if is</replacement>\n<replacement key\="print" scope\="1" mode\="0">Prints the</replacement>\n<replacement key\="has" scope\="1" mode\="0">Checks for</replacement>\n</replacements>\n\n
use_internal_formatter=true
@@ -0,0 +1,114 @@
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled
org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull
org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault
org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable
org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
org.eclipse.jdt.core.compiler.compliance=1.8
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
org.eclipse.jdt.core.compiler.debug.localVariable=generate
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
org.eclipse.jdt.core.compiler.doc.comment.support=disabled
org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
org.eclipse.jdt.core.compiler.problem.deadCode=warning
org.eclipse.jdt.core.compiler.problem.deprecation=warning
org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=ignore
org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
org.eclipse.jdt.core.compiler.problem.invalidJavadoc=warning
org.eclipse.jdt.core.compiler.problem.invalidJavadocTags=enabled
org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=disabled
org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=disabled
org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=public
org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
org.eclipse.jdt.core.compiler.problem.missingDefaultCase=ignore
org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault=disabled
org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
org.eclipse.jdt.core.compiler.problem.missingJavadocComments=warning
org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=disabled
org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public
org.eclipse.jdt.core.compiler.problem.missingJavadocTagDescription=all_standard_tags
org.eclipse.jdt.core.compiler.problem.missingJavadocTags=warning
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsMethodTypeParameters=disabled
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=disabled
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=public
org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning
org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error
org.eclipse.jdt.core.compiler.problem.nullReference=warning
org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error
org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning
org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore
org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning
org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=ignore
org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore
org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=disabled
org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=enabled
org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore
org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
org.eclipse.jdt.core.compiler.problem.unusedImport=warning
org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore
org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
org.eclipse.jdt.core.compiler.source=1.8
@@ -0,0 +1,2 @@
eclipse.preferences.version=1
org.eclipse.ltk.core.refactoring.enable.project.refactoring.history=false
@@ -0,0 +1,4 @@
activeProfiles=
eclipse.preferences.version=1
resolveWorkspaceProjects=true
version=1
@@ -0,0 +1,3 @@
eclipse.preferences.version=1
project.repository.kind=github
project.repository.url=http\://github.com/Ben12345rocks/VotingPlugin
@@ -0,0 +1,2 @@
eclipse.preferences.version=1
org.jboss.ide.eclipse.as.core.singledeployable.deployableList=\n
Binary file not shown.
Binary file not shown.
Binary file not shown.
+755
View File
@@ -0,0 +1,755 @@
# VotingPlugin by Ben12345rocks
# Main Config
# See wiki for help:
# https://github.com/Ben12345rocks/VotingPlugin/wiki
# Valid Options:
# - SQLITE
# - FLAT
# - MYSQL
DataStorage: SQLITE
# Information for mysql
MySQL:
Host: ''
# Default port is 3306
Port: 3306
Database: ''
Username: ''
Password: ''
# Max number of connections
MaxConnections: 1
# Let players who never joined before vote
# Recommend: False (Will prevent creating random user data files)
AllowUnjoined: false
# If true, plugin will send scoreboards on some commands
SendScoreboards: true
# If true, plugin will automaticly generate votesites
# Disable this if you experience issues with sites being created randomly
AutoCreateVoteSites: true
# Automaticly download the latest version
# Will require a restart to actually update
# Note that updates take 30-40 minutes to load before they can be downloaded
AutoDownload: false
# ------------------------------------------------
# VoteReminding
# ------------------------------------------------
# Configuration for VoteReminding
# By default this should be all setup to work
# as long as vote delays are done properly
VoteReminding:
# Enable vote reminding
# This will remind player when he can vote on all sites
# Requires VoteDelay's to be setup properly
# Use /vote next to see when you can be reminded
# Players require the perm "VotingPlugin.Login.RemindVotes" or "VotingPlugin.Player"
Enabled: true
# Wether or t to remind only once when the player can vote
# Does not apply to login reminds.
RemindOnlyOnce: true
# Will remind player on login if he can vote
# Ignores value above
RemindOnLogin: true
# Delay to remind votes in minutes
# Only works if above is false
RemindDelay: 30
# Run reward files on remind
# By default, the reward file will be created for you
# and have the default message
# Edit the message at AdvancedCore/Rewards/Remind.yml (or any other reward listed)
# Can add titles and more in the reward file
Rewards:
Messages:
Player: '&aRemember to vote!'
Title:
Enabled: false
Title: '&cRemember to vote!'
SubTitle: '&aType /vote'
FadeIn: 10
ShowTime: 50
FadeOut: 10
Commands:
# Wether or not the following commands will open GUIs rather than display text
UseGUI:
Today: true
TopVoter: true
Last: true
Next: true
Total: true
Vote: true
Best: true
Streak: true
# ------------------------------------------------
# Format
# ------------------------------------------------
# Common PlacesHolders:
# Please Note: Not all are usable in all sections
# Special PlaceHolders will be commented where available
# %player% = player name
# %SiteName% = vote site name
#
# Set Message to '' (2 ') to disable message
Format:
# Message when player tries to run command without required permissions
NoPerms: '&cYou do not have enough permission!'
# Message when player types a command but does not input a number where needed
NotNumber: '&cError on &6%arg%&c, number expected!'
# CommandHandler help message
HelpLine: '&3&l%Command% - &3%HelpMessage%'
# Broadcast vote message
BroadcastMsg: '&6[&4Broadcast&6] &2Thanks &c%player% &2for voting on %SiteName%'
# Broadcast only when player is online
BroadcastWhenOnline: false
Commands:
# Format for /vote
# %num% = the number of the site, for a numbered list
# %url% = site URL
Vote:
Text:
- '&4&lVote for our server!'
# If you want to want to use the feature below where the plugin will
# automaticly list the sites then set the message in the text above
AutoInputSites: true
# For each VoteSite
# make sure to set VoteURL in your VoteSites
# Requires above to be true
# Text will be sent before this
Sites: '&4%num%: &c&l%SiteName% - &c%url%'
# Format for /vote next
Next:
# First line
Title: '&3&l%player% Next Votes:'
# How each line is setup for each vote site
# %info% = Info - See Below
# %SiteName% = site name from vote
Layout: '&3%SiteName%: &6%info%'
Info:
# Message when player can vote
CanVote: 'Go Vote!'
# Time until vote msg
# %hours% = hours until next vote
# %minutes% = minutes until next vote
TimeUntilVote: '%hours% Hours and %minutes% Minutes'
# If there is an error finding out time until next vote
Error: '&cCould not caculate time until next vote!'
# Format for /vote last
Last:
# First line
Title: '&3&l%player% Last Vote Times:'
# Lines for each vote site
# %time% = time, using timeformat below
Line: '&3%SiteName%: &6%time%'
# Format for /vote total
Total:
- '&3&l%player% Total Votes:'
- '&3&lDaily Total: &6&l%DailyTotal%'
- '&3&lWeekly Total: &6&l%WeeklyTotal%'
- '&3&lMonthly Total: &6&l%MonthlyTotal%'
- '&3&lAllTime Total: &6&l%AllTimeTotal%'
# Format for /vote total all
TotalAll:
- '&3&lServer Total Votes:'
- '&3&lDaily Total: &6&l%DailyTotal%'
- '&3&lWeekly Total: &6&l%WeeklyTotal%'
- '&3&lMonthly Total: &6&l%MonthlyTotal%'
- '&3&lAllTime Total: &6&l%AllTimeTotal%'
# Format for /vote top
Top:
# First line
# %page% = current page
# %maxpages% = max number of pages
# %Top% = Monthly/Weekly/Daily (depending on command)
Title: '&3Top %Top% Voters %page%/%maxpages%'
# Line for each player in that page
Line: '&c%num%: &6%player%, %votes%'
# Format for /vote help
Help:
# Title of /vote help
Title: '&3&lVoting Player Help'
# Format for help message in /v help
Line: '&3&l%Command% - &3%HelpMessage%'
# Require permission to see command in /v help or /av help
RequirePermission: true
Best:
Title: '&3&l%player% Best Votes'
Lines:
- '&3Highest Daily Total: &3&l%HighestDailyTotal%'
- '&3Highest Week Total: &3&l%HighestWeeklyTotal%'
- '&3Highest Month Total: &3&l%HighestMonthlyTotal%'
Streak:
Title: '&3&l%player% Vote Streak'
Lines:
- '&3Current Daily Streak: &3&l%DailyStreak%'
- '&3Current Week Streak: &3&l%WeeklyStreak%'
- '&3Current Month Streak: &3&l%MonthlyStreak%'
- '&3&lHighest Streaks:'
- '&3Highest Daily Streak: &3&l%BestDailyStreak%'
- '&3Highest Week Streak: &3&l%BestWeeklyStreak%'
- '&3Highest Month Streak: &3&l%BestMonthlyStreak%'
# PlaceHolders:
# %VotesRequired% = VotesRequired
# %NeededVotes% = Number of votes needed to reach VotesRequired
# %Votes% = Number of votes
Party:
- '&cCurrently at &6%Votes%&c, &6%NeededVotes% &cmore votes to go to reach &6%VotesRequired%'
# %Points% = player points
Points: '&a%Player% currently has &a&l%Points%&a Points!'
# Login message if player can vote on all sites
# Must be enabled in config.yml
LoginMsg: '&cRemember to vote!'
# Msg on top voter award, will only send message if that place has a reward set
# %place% = place - 1,2,3,etc
TopVoterAwardMsg: '&aYou came in %place% in top voters of the month! Here is an award!'
# Time Format
# See https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html
TimeFormat: 'EEE, d MMM yyyy HH:mm'
# Format for signs
# SiteName may be all, depending on sign
# %position% = position of player, set by sign
# %votes% = Number of votes
Signs:
TopVoterSign:
Line1: 'TopVoter: %SiteName%'
Line2: '#%position%'
Line3: '%player%'
Line4: '%votes% Votes'
# Message when right clicking sign, uses same placeholders as above
RightClickMessage: '&c&l%player% &cis &c&l%position% &cwith &c&l%votes% &cvotes in &c&l%SiteName%'
# Message when player tries to run command without required permissions
NoPerms: '&cYou do not have enough permission!'
# Message when player types a command but does not input a number where needed
NotNumber: '&cError on &6%arg%&c, number expected!'
# Shop messages when using the /vote shop
ShopPurchase: '&aYou bought the %Identifier% for %Points% Points!'
ShopFailed: '&cYou do not have %Points% points to purhcase this!'
# ------------------------------------------------
# GUI Options
# ------------------------------------------------
# Configure GUI's here
# Note: Slots start at 0 instead of 1, max slot is 53 (don't go over) (E.g: last slot in first row of inventory is 8)
# Item Material's can be found here: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
GUI:
# GUI for /vote gui, /vgui, votegui
VoteGUI:
# Items will be orders as it is below
URL:
# Standard item format, lore is automaticly applied
Item:
Material: 'BOW'
Data: 0
Amount: 1
Name: '&4URL'
# You can set skulls of the player using the following
# Remove the # to enable
#Skull: '%Player%'
Slot: 0
Next:
Item:
Material: 'COMPASS'
Data: 0
Amount: 1
Name: '&4Next'
Slot: 1
Last:
Item:
Material: 'WATCH'
Data: 0
Amount: 1
Name: '&4Last'
Slot: 2
Total:
Item:
Material: 'CHEST'
Data: 0
Amount: 1
Name: '&4Total'
Slot: 3
Top:
Item:
Material: 'SIGN'
Data: 0
Amount: 1
Name: '&4Top'
Slot: 4
Today:
Item:
Material: 'BOOK'
Data: 0
Amount: 1
Name: '&4Today'
Slot: 5
Shop:
Item:
Material: 'DIAMOND'
Data: 0
Amount: 1
Name: '&4Vote Shop'
Slot: 6
# /vote Reward gui item
# Uncomment to use, most likely will be unused
#Rewards:
# Item:
# Material: 'DIAMOND'
# Data: 0
# Amount: 1
# Name: '&4Voting Rewards'
# Slot: 7
# GUI for /vote url
# And /vote if enabled in Config.yml
VoteURL:
# GUI Name
Name: '&cVoteURL'
SiteName: '&c%Name%'
SeeURL: '&cClick to see URL'
NextVote: '&cCan Vote In: %Info%'
ViewAllUrlsButtonEnabled: true
AllUrlsButton:
AlreadyVotedItem:
Material: 'REDSTONE_BLOCK'
Data: 0
Amount: 1
CanVoteItem:
Material: 'EMERALD_BLOCK'
Data: 0
Amount: 1
AlreadyVotedItem:
Material: 'REDSTONE_BLOCK'
Data: 0
Amount: 1
CanVoteItem:
Material: 'EMERALD_BLOCK'
Data: 0
Amount: 1
# Customize /vote reward
# Show players what you get when you vote on each site
VoteReward:
# Name of votesite
ExampleVoteSite:
# items in /vote reward sitename
Items:
# Item
# This is not the item display name
# Do not have 2 of the same items
Diamond:
# Item ID
Material: 'DIAMOND'
# Item Data (Eg 1:4, data is 4)
Data: 0
# Amount of items
# Should be greater than 0
Amount: 1
# Item name
# Remove this line for no name
Name: '&4Example'
# Lore
# Remove this line for no lore
Lore:
- '&4Line 1'
Slot: 0
VoteLast:
Name: 'VoteLast: %player%'
VoteNext:
Name: 'VoteNext: %player%'
VoteToday:
Name: 'VoteToday'
VoteTop:
Name: 'VoteTop %topvoter%'
Item:
Name: '&3&l%position%: &3%player%'
Lore: '&3&lVotes: &3%votes%'
SwitchItem:
Name: 'Switch TopVoter'
Lore: 'Currently: %Top%'
Material: 'SIGN'
Amount: 1
# 8 Slots over from the bottom left
Slot: 7
# Number of topvoters to display on page +9
# 9 Slots on the botton are used for page buttons
Size: 27
VoteTotal:
Name: 'VoteTotal: %player%'
DayTotal:
Item:
Material: 'WATCH'
Name: '&cDaily Total'
Lore: '&c&lTotal: &c%Total%'
Amount: 1
WeekTotal:
Item:
Material: 'WATCH'
Name: '&cWeekly Total'
Lore: '&c&lTotal: &c%Total%'
Amount: 1
MonthTotal:
Item:
Material: 'WATCH'
Name: '&cMonthly Total'
Lore: '&c&lTotal: &c%Total%'
Amount: 1
AllTimeTotal:
Item:
Material: 'WATCH'
Name: '&cAllTime Total'
Lore: '&c&lTotal: &c%Total%'
Amount: 1
VoteBest:
Name: 'VoteBest: %player%'
DayBest:
Item:
Material: 'WATCH'
Name: '&cDaily Best'
Lore: '&c&lBest: &c%Best%'
Amount: 1
WeekBest:
Item:
Material: 'WATCH'
Name: '&cWeekly Best'
Lore: '&c&lBest: &c%Best%'
Amount: 1
MonthBest:
Item:
Material: 'WATCH'
Name: '&cMonthly Best'
Lore: '&c&lBest: &c%Best%'
Amount: 1
VoteStreak:
Name: 'VoteBest: %player%'
CurrentDayStreak:
Item:
Material: 'WATCH'
Name: '&cCurrent Daily Streak'
Lore: '&c&lStreak: &c%Streak%'
Amount: 1
CurrentWeekStreak:
Item:
Material: 'WATCH'
Name: '&cCurrent Weekly Streak'
Lore: '&c&lStreak: &c%Streak%'
Amount: 1
CurrentMonthStreak:
Item:
Material: 'WATCH'
Name: '&cCurrent Monthly Streak'
Lore: '&c&lStreak: &c%Streak%'
Amount: 1
HighestDayStreak:
Item:
Material: 'WATCH'
Name: '&cHighest Daily Streak'
Lore: '&c&lStreak: &c%Streak%'
Amount: 1
HighestWeekStreak:
Item:
Material: 'WATCH'
Name: '&cHighest Weekly Streak'
Lore: '&c&lStreak: &c%Streak%'
Amount: 1
HighestMonthStreak:
Item:
Material: 'WATCH'
Name: '&cHighest Monthly Streak'
Lore: '&c&lStreak: &c%Streak%'
Amount: 1
VoteURLSite:
Name: 'VoteSite: %site%'
VoteGUIName: '&cVoteGUI: &c&l%player%'
VoteRewardName: 'VoteReward'
VoteShopName: 'VoteShop'
Shop:
# Identifier
# Used in placeholders for formats
Diamond:
# Item
Material: 'DIAMOND'
Data: 0
Amount: 1
Name: '&4Buy A Diamond'
# You can set skulls of the player using the following
# Remove the # to enable
#Skull: '%Player%'
Lore:
- '&c&lCost: &c3 Voting Points'
# Number of voting points this cost
Cost: 3
# Rewards to run if player buys succesfully
Rewards:
Items:
Diamond:
Material: 'DIAMOND'
Amount: 1
# Slot
Slot: 0
# ------------------------------------------------
# Extra Rewards
# ------------------------------------------------
# To disable reward set value to []
# Eg:
# FirstVote: [] (All in one line)
# By default all rewards are disabled
# First vote rewards
FirstVote:
Messages:
Player: '&aYou voted for your first time!'
Money: 100
# All vote rewards
# Reward for voting on all sites in one day
AllSites:
Messages:
Player: '&aYou voted on all sites in 1 day!'
Cumulative:
# Number of votes required
# Allows multiple cumulative rewards
# Number be be around ' (E.g. '1')
# Can have multiple listed here
'20':
Enabled: false
# Wether or not votes must be made in same day/week
# Useful if you want to require a certain number of voting sites to be voted on
# for a daily/weekly reward instead of all of them
VotesInSameDay: false
VotesInSameWeek: false
Rewards:
Messages:
Player: '&aYou got %cumulative% cumulative votes!'
VoteParty:
# Wether or not vote party is enabled
Enabled: false
# Number of votes required to give rewards
VotesRequired: 20
# If true, players who did not vote to reach the votes required will
# recieve the reward
GiveAllPlayers: false
# If true, the vote count will reset each day
ResetEachDay: false
# Number of user votes that apply to vote party total the user needs to get rewards
UserVotesRequired: 0
# Broadcast when vote party reached
Broadcast: '&cReached the vote party amount!'
# Reward files to give
Rewards: []
# Reset milestons at end of the month
ResetMilestonesMonthly: false
MileStones:
# Number of votes required
# Allows multiple milestones
# Number be be around ' (E.g. '1')
# Can have multiple listed here
'20':
Enabled: false
Rewards:
Messages:
Player: '&aYou got %milestone% milestone votes!'
VoteStreak:
# Valid options: Day, Week, Month
Day:
# Number of days in a row
'2':
# Enabled or not
Enabled: false
# Rewards to give
Rewards:
Messages:
Player: "&aYou voted for %Streak% %Type%'s in a row!"
Week:
# Number of days in a row
'2':
# Enabled or not
Enabled: false
# Rewards to give
Rewards:
Messages:
Player: "&aYou voted for %Streak% %Type%'s in a row!"
Month:
# Number of days in a row
'2':
# Enabled or not
Enabled: false
# Rewards to give
Rewards:
Messages:
Player: "&aYou voted for %Streak% %Type%'s in a row!"
# ONLY USE THIS FOR TITLES/SOUNDS AND OTHER EFFECTS
# IT WILL ONLY RUN ONE TIME FOR ANY NUMBER OF OFFLINE VOTES
# Any reward files listed here are ran on vote of any site
# It is recommended to add rewards to each site instead of here
AnySiteRewards: []
# ------------------------------------------------
# Top Voter
# ------------------------------------------------
# Top voter blacklist
BlackList:
- 'Notch'
# If true players with the permission 'VotingPlugin.TopVoter.Ignore' will act
# as if there name was added on the the blacklist above
# This also applies for ops
TopVoterIgnorePermission: false
# /vote top default data displayed
# Valid Options: AllTime, Monthly, Weekly, Daily
VoteTopDefault: Monthly
# These are required to be enabled in order for top voter awards to work
LoadTopVoter:
AllTime: true
Monthly: true
Weekly: false
Daily: false
# When top voter awards are given (even if there are none listed) it will store top voters
# Files will created in TopVoters folder.
StoreTopVoters:
Monthly: true
Weekly: false
Daily: false
EnableMonthlyAwards: true
# Rewards to give
MonthlyAwards:
# Position. 1 is first in top voter, 2 is second, etc...
1:
Rewards:
Messages:
Player: '&aYou came in first place in %TopVoter%!'
2:
Rewards:
Messages:
Player: '&aYou came in second place in %TopVoter%!'
EnableWeeklyAwards: false
# Rewards to give on weekly top voter
WeeklyAwards:
# Position. 1 is first in top voter, 2 is second, etc...
1:
Rewards:
Messages:
Player: '&aYou came in first place in %TopVoter%!'
2:
Rewards:
Messages:
Player: '&aYou came in second place in %TopVoter%!'
EnableDailyRewards: false
# Rewards to give on daily top voter
DailyAwards:
# Position. 1 is first in top voter, 2 is second, etc...
1:
# Reward files to give
Rewards:
Messages:
Player: '&aYou came in first place in %TopVoter%!'
2:
Rewards:
Messages:
Player: '&aYou came in second place in %TopVoter%!'
# ------------------------------------------------
# Advanced
# Most of these values can be left untouched
# ------------------------------------------------
# Number of points to give on vote
# Set to 0 to give no points
PointsOnVote: 1
# Wether or not to check on world change
# Should only be used if you do per world rewards
CheckOnWorldChange: false
# Debug
Debug: false
# Extra Debug
# Only needed in extreme cases
ExtraDebug: false
# Debug info ingame
# Players with permission "VotingPlugin.Debug"
# will see debug info if debug is true
DebugInGame: false
# Will log debug messages to VotingPlugin/Log/log.txt
# Requires Debug to be on
LogDebugToFile: false
# Options for request api
# Current methods
# ANVIL
# BOOK
# CHAT
# This is mainly used for admin gui's to type in values
RequestAPI:
DefaultMethod: 'Anvil'
DisabledMethods: []
# Wether or not to log every vote to a file
# Use this if you wanna track player votes
# Not recommended though
LogVotesToFile: false
# Delay between background updates like signs and more
# Default: 3 Minutes
# Longer times result in longer wait in stuff updating after a vote, like topvoter
DelayBetweenUpdates: 3
# Set to true to disable no service site message on voting
# You should never have to touch this if everything is setup properly
DisableNoServiceSiteMessage: false
+319
View File
@@ -0,0 +1,319 @@
Creative Commons Legal Code
Attribution 3.0 Unported
CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
LEGAL SERVICES. DISTRIBUTION OF THIS LICENSE DOES NOT CREATE AN
ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
REGARDING THE INFORMATION PROVIDED, AND DISCLAIMS LIABILITY FOR
DAMAGES RESULTING FROM ITS USE.
License
THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE
COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY
COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS
AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED.
BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE
TO BE BOUND BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS LICENSE MAY
BE CONSIDERED TO BE A CONTRACT, THE LICENSOR GRANTS YOU THE RIGHTS
CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND
CONDITIONS.
1. Definitions
a. "Adaptation" means a work based upon the Work, or upon the Work and
other pre-existing works, such as a translation, adaptation,
derivative work, arrangement of music or other alterations of a
literary or artistic work, or phonogram or performance and includes
cinematographic adaptations or any other form in which the Work may be
recast, transformed, or adapted including in any form recognizably
derived from the original, except that a work that constitutes a
Collection will not be considered an Adaptation for the purpose of
this License. For the avoidance of doubt, where the Work is a musical
work, performance or phonogram, the synchronization of the Work in
timed-relation with a moving image ("synching") will be considered an
Adaptation for the purpose of this License.
b. "Collection" means a collection of literary or artistic works, such as
encyclopedias and anthologies, or performances, phonograms or
broadcasts, or other works or subject matter other than works listed
in Section 1(f) below, which, by reason of the selection and
arrangement of their contents, constitute intellectual creations, in
which the Work is included in its entirety in unmodified form along
with one or more other contributions, each constituting separate and
independent works in themselves, which together are assembled into a
collective whole. A work that constitutes a Collection will not be
considered an Adaptation (as defined above) for the purposes of this
License.
c. "Distribute" means to make available to the public the original and
copies of the Work or Adaptation, as appropriate, through sale or
other transfer of ownership.
d. "Licensor" means the individual, individuals, entity or entities that
offer(s) the Work under the terms of this License.
e. "Original Author" means, in the case of a literary or artistic work,
the individual, individuals, entity or entities who created the Work
or if no individual or entity can be identified, the publisher; and in
addition (i) in the case of a performance the actors, singers,
musicians, dancers, and other persons who act, sing, deliver, declaim,
play in, interpret or otherwise perform literary or artistic works or
expressions of folklore; (ii) in the case of a phonogram the producer
being the person or legal entity who first fixes the sounds of a
performance or other sounds; and, (iii) in the case of broadcasts, the
organization that transmits the broadcast.
f. "Work" means the literary and/or artistic work offered under the terms
of this License including without limitation any production in the
literary, scientific and artistic domain, whatever may be the mode or
form of its expression including digital form, such as a book,
pamphlet and other writing; a lecture, address, sermon or other work
of the same nature; a dramatic or dramatico-musical work; a
choreographic work or entertainment in dumb show; a musical
composition with or without words; a cinematographic work to which are
assimilated works expressed by a process analogous to cinematography;
a work of drawing, painting, architecture, sculpture, engraving or
lithography; a photographic work to which are assimilated works
expressed by a process analogous to photography; a work of applied
art; an illustration, map, plan, sketch or three-dimensional work
relative to geography, topography, architecture or science; a
performance; a broadcast; a phonogram; a compilation of data to the
extent it is protected as a copyrightable work; or a work performed by
a variety or circus performer to the extent it is not otherwise
considered a literary or artistic work.
g. "You" means an individual or entity exercising rights under this
License who has not previously violated the terms of this License with
respect to the Work, or who has received express permission from the
Licensor to exercise rights under this License despite a previous
violation.
h. "Publicly Perform" means to perform public recitations of the Work and
to communicate to the public those public recitations, by any means or
process, including by wire or wireless means or public digital
performances; to make available to the public Works in such a way that
members of the public may access these Works from a place and at a
place individually chosen by them; to perform the Work to the public
by any means or process and the communication to the public of the
performances of the Work, including by public digital performance; to
broadcast and rebroadcast the Work by any means including signs,
sounds or images.
i. "Reproduce" means to make copies of the Work by any means including
without limitation by sound or visual recordings and the right of
fixation and reproducing fixations of the Work, including storage of a
protected performance or phonogram in digital form or other electronic
medium.
2. Fair Dealing Rights. Nothing in this License is intended to reduce,
limit, or restrict any uses free from copyright or rights arising from
limitations or exceptions that are provided for in connection with the
copyright protection under copyright law or other applicable laws.
3. License Grant. Subject to the terms and conditions of this License,
Licensor hereby grants You a worldwide, royalty-free, non-exclusive,
perpetual (for the duration of the applicable copyright) license to
exercise the rights in the Work as stated below:
a. to Reproduce the Work, to incorporate the Work into one or more
Collections, and to Reproduce the Work as incorporated in the
Collections;
b. to create and Reproduce Adaptations provided that any such Adaptation,
including any translation in any medium, takes reasonable steps to
clearly label, demarcate or otherwise identify that changes were made
to the original Work. For example, a translation could be marked "The
original work was translated from English to Spanish," or a
modification could indicate "The original work has been modified.";
c. to Distribute and Publicly Perform the Work including as incorporated
in Collections; and,
d. to Distribute and Publicly Perform Adaptations.
e. For the avoidance of doubt:
i. Non-waivable Compulsory License Schemes. In those jurisdictions in
which the right to collect royalties through any statutory or
compulsory licensing scheme cannot be waived, the Licensor
reserves the exclusive right to collect such royalties for any
exercise by You of the rights granted under this License;
ii. Waivable Compulsory License Schemes. In those jurisdictions in
which the right to collect royalties through any statutory or
compulsory licensing scheme can be waived, the Licensor waives the
exclusive right to collect such royalties for any exercise by You
of the rights granted under this License; and,
iii. Voluntary License Schemes. The Licensor waives the right to
collect royalties, whether individually or, in the event that the
Licensor is a member of a collecting society that administers
voluntary licensing schemes, via that society, from any exercise
by You of the rights granted under this License.
The above rights may be exercised in all media and formats whether now
known or hereafter devised. The above rights include the right to make
such modifications as are technically necessary to exercise the rights in
other media and formats. Subject to Section 8(f), all rights not expressly
granted by Licensor are hereby reserved.
4. Restrictions. The license granted in Section 3 above is expressly made
subject to and limited by the following restrictions:
a. You may Distribute or Publicly Perform the Work only under the terms
of this License. You must include a copy of, or the Uniform Resource
Identifier (URI) for, this License with every copy of the Work You
Distribute or Publicly Perform. You may not offer or impose any terms
on the Work that restrict the terms of this License or the ability of
the recipient of the Work to exercise the rights granted to that
recipient under the terms of the License. You may not sublicense the
Work. You must keep intact all notices that refer to this License and
to the disclaimer of warranties with every copy of the Work You
Distribute or Publicly Perform. When You Distribute or Publicly
Perform the Work, You may not impose any effective technological
measures on the Work that restrict the ability of a recipient of the
Work from You to exercise the rights granted to that recipient under
the terms of the License. This Section 4(a) applies to the Work as
incorporated in a Collection, but this does not require the Collection
apart from the Work itself to be made subject to the terms of this
License. If You create a Collection, upon notice from any Licensor You
must, to the extent practicable, remove from the Collection any credit
as required by Section 4(b), as requested. If You create an
Adaptation, upon notice from any Licensor You must, to the extent
practicable, remove from the Adaptation any credit as required by
Section 4(b), as requested.
b. If You Distribute, or Publicly Perform the Work or any Adaptations or
Collections, You must, unless a request has been made pursuant to
Section 4(a), keep intact all copyright notices for the Work and
provide, reasonable to the medium or means You are utilizing: (i) the
name of the Original Author (or pseudonym, if applicable) if supplied,
and/or if the Original Author and/or Licensor designate another party
or parties (e.g., a sponsor institute, publishing entity, journal) for
attribution ("Attribution Parties") in Licensor's copyright notice,
terms of service or by other reasonable means, the name of such party
or parties; (ii) the title of the Work if supplied; (iii) to the
extent reasonably practicable, the URI, if any, that Licensor
specifies to be associated with the Work, unless such URI does not
refer to the copyright notice or licensing information for the Work;
and (iv) , consistent with Section 3(b), in the case of an Adaptation,
a credit identifying the use of the Work in the Adaptation (e.g.,
"French translation of the Work by Original Author," or "Screenplay
based on original Work by Original Author"). The credit required by
this Section 4 (b) may be implemented in any reasonable manner;
provided, however, that in the case of a Adaptation or Collection, at
a minimum such credit will appear, if a credit for all contributing
authors of the Adaptation or Collection appears, then as part of these
credits and in a manner at least as prominent as the credits for the
other contributing authors. For the avoidance of doubt, You may only
use the credit required by this Section for the purpose of attribution
in the manner set out above and, by exercising Your rights under this
License, You may not implicitly or explicitly assert or imply any
connection with, sponsorship or endorsement by the Original Author,
Licensor and/or Attribution Parties, as appropriate, of You or Your
use of the Work, without the separate, express prior written
permission of the Original Author, Licensor and/or Attribution
Parties.
c. Except as otherwise agreed in writing by the Licensor or as may be
otherwise permitted by applicable law, if You Reproduce, Distribute or
Publicly Perform the Work either by itself or as part of any
Adaptations or Collections, You must not distort, mutilate, modify or
take other derogatory action in relation to the Work which would be
prejudicial to the Original Author's honor or reputation. Licensor
agrees that in those jurisdictions (e.g. Japan), in which any exercise
of the right granted in Section 3(b) of this License (the right to
make Adaptations) would be deemed to be a distortion, mutilation,
modification or other derogatory action prejudicial to the Original
Author's honor and reputation, the Licensor will waive or not assert,
as appropriate, this Section, to the fullest extent permitted by the
applicable national law, to enable You to reasonably exercise Your
right under Section 3(b) of this License (right to make Adaptations)
but not otherwise.
5. Representations, Warranties and Disclaimer
UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING, LICENSOR
OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY
KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE,
INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY,
FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF
LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS,
WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION
OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU.
6. Limitation on Liability. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE
LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY FOR
ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES
ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF LICENSOR HAS
BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
7. Termination
a. This License and the rights granted hereunder will terminate
automatically upon any breach by You of the terms of this License.
Individuals or entities who have received Adaptations or Collections
from You under this License, however, will not have their licenses
terminated provided such individuals or entities remain in full
compliance with those licenses. Sections 1, 2, 5, 6, 7, and 8 will
survive any termination of this License.
b. Subject to the above terms and conditions, the license granted here is
perpetual (for the duration of the applicable copyright in the Work).
Notwithstanding the above, Licensor reserves the right to release the
Work under different license terms or to stop distributing the Work at
any time; provided, however that any such election will not serve to
withdraw this License (or any other license that has been, or is
required to be, granted under the terms of this License), and this
License will continue in full force and effect unless terminated as
stated above.
8. Miscellaneous
a. Each time You Distribute or Publicly Perform the Work or a Collection,
the Licensor offers to the recipient a license to the Work on the same
terms and conditions as the license granted to You under this License.
b. Each time You Distribute or Publicly Perform an Adaptation, Licensor
offers to the recipient a license to the original Work on the same
terms and conditions as the license granted to You under this License.
c. If any provision of this License is invalid or unenforceable under
applicable law, it shall not affect the validity or enforceability of
the remainder of the terms of this License, and without further action
by the parties to this agreement, such provision shall be reformed to
the minimum extent necessary to make such provision valid and
enforceable.
d. No term or provision of this License shall be deemed waived and no
breach consented to unless such waiver or consent shall be in writing
and signed by the party to be charged with such waiver or consent.
e. This License constitutes the entire agreement between the parties with
respect to the Work licensed here. There are no understandings,
agreements or representations with respect to the Work not specified
here. Licensor shall not be bound by any additional provisions that
may appear in any communication from You. This License may not be
modified without the mutual written agreement of the Licensor and You.
f. The rights granted under, and the subject matter referenced, in this
License were drafted utilizing the terminology of the Berne Convention
for the Protection of Literary and Artistic Works (as amended on
September 28, 1979), the Rome Convention of 1961, the WIPO Copyright
Treaty of 1996, the WIPO Performances and Phonograms Treaty of 1996
and the Universal Copyright Convention (as revised on July 24, 1971).
These rights and subject matter take effect in the relevant
jurisdiction in which the License terms are sought to be enforced
according to the corresponding provisions of the implementation of
those treaty provisions in the applicable national law. If the
standard suite of rights granted under applicable copyright law
includes additional rights not granted under this License, such
additional rights are deemed to be included in the License; this
License is not intended to restrict the license of any rights under
applicable law.
Creative Commons Notice
Creative Commons is not a party to this License, and makes no warranty
whatsoever in connection with the Work. Creative Commons will not be
liable to You or any party on any legal theory for any damages
whatsoever, including without limitation any general, special,
incidental or consequential damages arising in connection to this
license. Notwithstanding the foregoing two (2) sentences, if Creative
Commons has expressly identified itself as the Licensor hereunder, it
shall have all rights and obligations of Licensor.
Except for the limited purpose of indicating to the public that the
Work is licensed under the CCPL, Creative Commons does not authorize
the use by either party of the trademark "Creative Commons" or any
related trademark or logo of Creative Commons without the prior
written consent of Creative Commons. Any permitted use will be in
compliance with Creative Commons' then-current trademark usage
guidelines, as may be published on its website or otherwise made
available upon request from time to time. For the avoidance of doubt,
this trademark restriction does not form part of this License.
Creative Commons may be contacted at https://creativecommons.org/.
+42
View File
@@ -0,0 +1,42 @@
VoteSites:
# VoteSite name
ExampleVoteSite:
# Enable voteSite
# If false, votesite will not be loaded by plugin
# Default: false
Enabled: false
# Display name of voting site
Name: 'ExampleVoteSite'
# Priority of this site
# Used for sorted list
# High prority, higher on the list
Priority: 5
# The serviceName from the vote, has to be correct to work correctly
# Gotten from voting on the site (will be in console/log)
# Usually is the main part of the url(e.g. PlanetMinecraft.com)
ServiceSite: 'PlanetMinecraft.com'
# vote url for /vote
# Format for this can be set in Format.yml
# Do not include colors here
VoteURL: 'link to vote URL here, used in /vote'
# Time between votes in hours (used for /vote next)
# Most sites are 24 hours
VoteDelay: 24
# VoteSite Material for GUI's
Item:
Material: 'DIAMOND'
Amount: 1
# List of reward files to give to voter
Rewards:
- 'ExampleReward'
# Reward for any site
# Similar to AnySiteReward
EverySiteReward: []
+178
View File
@@ -0,0 +1,178 @@
name: ${project.name}
version: ${project.version}
main: com.Ben12345rocks.VotingPlugin.Main
description: Highly Customizable Voting Listener!
website: https://www.spigotmc.org/resources/votingplugin.15358/
author: Ben12345rocks
softdepend: [AdvancedCore]
commands:
vote:
description: Vote command
v:
description: Vote command
adminvote:
description: Admin commands for VotingPlugin
av:
description: Admin commands for VotingPlugin
votehelp:
description: See access to a list of commands, Formated in Format.yml
aliases: vhelp
votetotal:
description: See totals of votes
aliases: vtotal
votelast:
description: See the last time you voted
aliases: vlast
votenext:
description: See when you can vote next
aliases: vnext
votetop:
description: See top voters
aliases: vtop
voteinfo:
description: See player info
aliases: vinfo
votetoday:
description: See who voted today
aliases: vtoday
votegui:
description: Open VoteGUI
aliases: vgui
voteurl:
description: Open VoteURL
aliases: vurl
votereward:
description: Open VoteReward GUI
aliases: vreward
vote?:
description: View Help
aliases: v?
voteparty:
description: A command
aliases: vparty
voteshop:
description: A command
aliases: vshop
votebest:
description: A command
aliases: vbest
votestreak:
description: A command
aliases: vstreak
votepoints:
description: A command
aliases: vpoints
votegivereward:
description: A command
voteselectChoiceReward:
description: A command
adminvotehelp:
description: Open adminvote help
aliases: avhelp
adminvote?:
description: Open adminvote help
aliases: av?
adminvoteconvert:
description: A command
adminvotereport:
description: Command Alias
aliases: avreport
adminvoteperms:
description: Command Alias
aliases: avperms
adminvoteDownload:
description: Command Alias
aliases: avdownload
adminvotereload:
description: Command Alias
aliases: avreload
adminvoteversion:
description: Command Alias
aliases: avversion
adminvotesites:
description: Command Alias
aliases: avsites
adminvoterewards:
description: Command Alias
aliases: avrewards
adminvotereward:
description: Command Alias
aliases: avreward
adminvoteuuid:
description: Command Alias
aliases: avuuid
adminvotereset:
description: Command Alias
aliases: avreset
adminvotevotesite:
description: Command Alias
aliases: avvotesite
adminvoteconfig:
description: Command Alias
aliases: avconfig
adminvoteserverdata:
description: Command Alias
aliases: avserverdata
adminvotesettotal:
description: Command Alias
aliases: avsettotal
adminvoteupdatecheck:
description: Command Alias
aliases: avupdatecheck
adminvotevote:
description: Command Alias
aliases: [avvote, fakevote]
adminvoteTriggerPlayerVoteEvent:
description: Command Alias
aliases: avTriggerPlayerVoteEvent
adminvotesetpoints:
description: Command Alias
aliases: avsetpoints
adminvoteaddpoints:
description: Command Alias
aliases: avaddpoints
adminvotegui:
description: Command Alias
aliases: avgui
votesetrequestmethod:
description: Command Alias
aliases: [vsetrequestmethod, setrequesetmethod]
adminvotegivereward:
description: Command Alias
aliases: avgivereward
adminvoteusers:
description: Command Alias
aliases: avusers
adminvoteClearTotal:
description: Command Alias
aliases: avClearTotal
adminvoteConvertFromData:
description: Command Alias
aliases: avConvertFromData
adminvoteClearTotal:
description: Command Alias
aliases: avClearTotal
adminvoteBackgroundUpdate:
description: Command Alias
aliases: avBackgroundUpdate
adminvoteClearCache:
description: Command Alias
aliases: avClearCache
permissions:
VotingPlugin.Player:
description: Allows basic access player commands
default: true
VotingPlugin.Mod:
description: Allows mod access player commands
VotingPlugin.Admin:
description: Allows admin access player commands
VotingPlugin.Login.RemindVotes:
description: Allows players to get remined on login if they can vote
default: true
VotingPlugin.Admin.Debug:
description: Permission to view debug info ingame
VotingPlugin.Signs.Create:
description: Allows access to create signs
VotingPlugin.TopVoter.Ignore:
description: Allows you to be exempt from top voter
+190
View File
@@ -0,0 +1,190 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.Ben12345rocks</groupId>
<artifactId>VotingPlugin</artifactId>
<version>5.9</version>
<packaging>jar</packaging>
<name>VotingPlugin</name>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<github.global.server>github</github.global.server>
</properties>
<distributionManagement>
<repository>
<id>internal.repo</id>
<name>Temporary Staging Repository</name>
<url>file://${project.build.directory}/mvn-repo</url>
</repository>
</distributionManagement>
<build>
<resources>
<resource>
<directory>Resources</directory>
<filtering>true</filtering>
<includes>
<include>plugin.yml</include>
</includes>
</resource>
<resource>
<directory>Resources</directory>
<filtering>false</filtering>
</resource>
</resources>
<sourceDirectory>src</sourceDirectory>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.3.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<finalName>${project.name}</finalName>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>2.4.3</version>
<configuration>
<shadedArtifactAttached>false</shadedArtifactAttached>
<relocations>
<!-- Lets relocate the shaded API so we dont cause any conflicts with
other plugins -->
<relocation>
<pattern>com.Ben12345rocks.AdvancedCore</pattern>
<shadedPattern>${project.groupId}.${project.artifactId}.AdvancedCore</shadedPattern>
</relocation>
<!-- Lets relocate the shaded API so we dont cause any conflicts with
other plugins -->
<relocation>
<pattern>net.pl3x.bukkit.chatapi</pattern>
<shadedPattern>${project.groupId}.${project.artifactId}</shadedPattern>
</relocation>
<relocation>
<pattern>me.mrten.mysqlapi</pattern>
<shadedPattern>${project.groupId}.${project.artifactId}.mysqlapi</shadedPattern>
</relocation>
<relocation>
<pattern>com.zaxxer.HikariCP</pattern>
<shadedPattern>${project.groupId}.${project.artifactId}.HikariCP</shadedPattern>
</relocation>
<relocation>
<pattern>org.slf4j.slf4j-simple</pattern>
<shadedPattern>${project.groupId}.${project.artifactId}.slf4j-simple</shadedPattern>
</relocation>
</relocations>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<artifactSet>
<!-- Lets exclude google code, because the server already has this
code in it (guava, etc) -->
<excludes>
<exclude>com.google.*:*</exclude>
</excludes>
</artifactSet>
<createDependencyReducedPom>false</createDependencyReducedPom>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.10.4</version>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
<phase>deploy</phase>
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.github.github</groupId>
<artifactId>site-maven-plugin</artifactId>
<version>0.12</version>
<executions>
<execution>
<id>javadoc</id>
<goals>
<goal>site</goal>
</goals>
<phase>deploy</phase>
<configuration>
<message>Maven javadoc for ${project.version}</message>
<noJekyll>true</noJekyll>
<outputDirectory>${project.build.directory}/apidocs
</outputDirectory>
<branch>refs/heads/gh-pages</branch>
<includes>
<include>**/*</include>
</includes>
<repositoryName>VotingPlugin</repositoryName>
<repositoryOwner>Ben12345rocks</repositoryOwner>
<server>github</server>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
<repositories>
<repository>
<id>spigot-repo</id>
<url>https://hub.spigotmc.org/nexus/content/repositories/snapshots/</url>
</repository>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.github.Ben12345rocks</groupId>
<artifactId>AdvancedCore</artifactId>
<version>master-SNAPSHOT</version>
</dependency>
<!-- <dependency> <groupId>com.Ben12345rocks</groupId> <artifactId>AdvancedCore</artifactId>
<version>LATEST</version> <scope>compile</scope> </dependency> -->
<dependency>
<groupId>org.spigotmc</groupId>
<artifactId>spigot-api</artifactId>
<version>1.12-R0.1-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.vexsoftware</groupId>
<artifactId>votifier</artifactId>
<version>1.9</version>
<scope>system</scope>
<systemPath>${project.basedir}/Jars/Votifier.jar</systemPath>
</dependency>
<dependency>
<groupId>com.swifteh</groupId>
<artifactId>GAL</artifactId>
<version>1.3.2</version>
<scope>system</scope>
<systemPath>${project.basedir}/Jars/GAListener.jar</systemPath>
</dependency>
<dependency>
<groupId>com.mythicacraft</groupId>
<artifactId>voteroulette</artifactId>
<version>3.2.2</version>
<scope>system</scope>
<systemPath>${project.basedir}/Jars/VoteRoulette.jar</systemPath>
</dependency>
</dependencies>
</project>
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,772 @@
package com.Ben12345rocks.VotingPlugin.Commands;
import java.text.SimpleDateFormat;
import java.time.Duration;
import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import org.bukkit.Bukkit;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.permissions.Permission;
import com.Ben12345rocks.AdvancedCore.AdvancedCoreHook;
import com.Ben12345rocks.AdvancedCore.Objects.CommandHandler;
import com.Ben12345rocks.AdvancedCore.Objects.UUID;
import com.Ben12345rocks.AdvancedCore.Util.Misc.ArrayUtils;
import com.Ben12345rocks.AdvancedCore.Util.Misc.MiscUtils;
import com.Ben12345rocks.AdvancedCore.Util.Misc.StringUtils;
import com.Ben12345rocks.AdvancedCore.Util.Scoreboards.SimpleScoreboard;
import com.Ben12345rocks.VotingPlugin.Main;
import com.Ben12345rocks.VotingPlugin.Commands.Executers.CommandVote;
import com.Ben12345rocks.VotingPlugin.Config.Config;
import com.Ben12345rocks.VotingPlugin.Config.ConfigVoteSites;
import com.Ben12345rocks.VotingPlugin.Objects.User;
import com.Ben12345rocks.VotingPlugin.Objects.VoteSite;
import com.Ben12345rocks.VotingPlugin.UserManager.UserManager;
import net.md_5.bungee.api.chat.TextComponent;
// TODO: Auto-generated Javadoc
/**
* The Class Commands.
*/
public class Commands {
/** The config. */
static Config config = Config.getInstance();
/** The config vote sites. */
static ConfigVoteSites configVoteSites = ConfigVoteSites.getInstance();
/** The instance. */
static Commands instance = new Commands();
/** The plugin. */
static Main plugin = Main.plugin;
/**
* Gets the single instance of Commands.
*
* @return single instance of Commands
*/
public static Commands getInstance() {
return instance;
}
/**
* Instantiates a new commands.
*/
private Commands() {
}
/**
* Instantiates a new commands.
*
* @param plugin
* the plugin
*/
public Commands(Main plugin) {
Commands.plugin = plugin;
}
/**
* Admin help.
*
* @param sender
* the sender
* @param page
* the page
* @return the array list
*/
public ArrayList<TextComponent> adminHelp(CommandSender sender, int page) {
int pagesize = Config.getInstance().getFormatPageSize();
ArrayList<TextComponent> msg = new ArrayList<TextComponent>();
ArrayList<TextComponent> text = adminHelpText(sender);
int maxPage = text.size() / pagesize;
if ((text.size() % pagesize) != 0) {
maxPage++;
}
msg.add(StringUtils.getInstance().stringToComp("&3&lVotingPlugin Admin Help " + (page + 1) + "/" + maxPage));
msg.add(StringUtils.getInstance().stringToComp("&3&l() = Needed"));
msg.add(StringUtils.getInstance().stringToComp("&3&lAliases: adminvote, av"));
for (int i = pagesize * page; (i < text.size()) && (i < ((page + 1) * pagesize) - 1); i++) {
msg.add(text.get(i));
}
return msg;
}
/**
* Admin help text.
*
* @param sender
* the sender
* @return the array list
*/
public ArrayList<TextComponent> adminHelpText(CommandSender sender) {
ArrayList<TextComponent> msg = new ArrayList<TextComponent>();
HashMap<String, TextComponent> unsorted = new HashMap<String, TextComponent>();
boolean requirePerms = Config.getInstance().getFormatCommandsVoteHelpRequirePermission();
for (CommandHandler cmdHandle : plugin.adminVoteCommand) {
if (sender.hasPermission(cmdHandle.getPerm()) && requirePerms) {
unsorted.put(cmdHandle.getHelpLineCommand("/av"), cmdHandle.getHelpLine("/av"));
} else {
unsorted.put(cmdHandle.getHelpLineCommand("/av"), cmdHandle.getHelpLine("/av"));
}
}
ArrayList<String> unsortedList = new ArrayList<String>();
unsortedList.addAll(unsorted.keySet());
Collections.sort(unsortedList, String.CASE_INSENSITIVE_ORDER);
for (String cmd : unsortedList) {
msg.add(unsorted.get(cmd));
}
return msg;
}
public String[] best(CommandSender sender, String name) {
ArrayList<String> msg = new ArrayList<String>();
msg.add(config.getFormatCommandsVoteBestTitle());
msg.addAll(config.getFormatCommandsVoteBestLines());
User user = UserManager.getInstance().getVotingPluginUser(name);
HashMap<String, String> placeholders = new HashMap<String, String>();
placeholders.put("HighestDailyTotal", "" + user.getHighestDailyTotal());
placeholders.put("HighestWeeklyTotal", "" + user.getHighestWeeklyTotal());
placeholders.put("HighestMonthlyTotal", "" + user.getHighestMonthlyTotal());
placeholders.put("player", name);
msg = ArrayUtils.getInstance().replacePlaceHolder(msg, placeholders);
return ArrayUtils.getInstance().convert(ArrayUtils.getInstance().colorize(msg));
}
/**
* Command vote today.
*
* @param page
* the page
* @return the string[]
*/
public String[] commandVoteToday(int page) {
int pagesize = Config.getInstance().getFormatPageSize();
if (page < 1) {
page = 1;
}
ArrayList<String> msg = new ArrayList<String>();
String[] voteToday = voteToday();
int maxPage = voteToday.length / pagesize;
if ((voteToday.length % pagesize) != 0) {
maxPage++;
}
msg.add("&cToday's Votes " + page + "/" + maxPage);
msg.add("&cPlayerName : VoteSite : Time");
page--;
for (int i = pagesize * page; (i < voteToday.length) && (i < ((page + 1) * pagesize)); i++) {
msg.add(voteToday[i]);
}
msg = ArrayUtils.getInstance().colorize(msg);
return ArrayUtils.getInstance().convert(msg);
}
/**
* List perms.
*
* @return the string[]
*/
public String[] listPerms() {
ArrayList<String> msg = new ArrayList<String>();
for (CommandHandler handle : plugin.voteCommand) {
msg.add(handle.getHelpLineCommand("/v") + " : " + handle.getPerm());
}
for (CommandHandler handle : plugin.adminVoteCommand) {
msg.add(handle.getHelpLineCommand("/av") + " : " + handle.getPerm());
}
for (Permission perm : plugin.getDescription().getPermissions()) {
msg.add(perm.getName());
}
msg = ArrayUtils.getInstance().colorize(msg);
Collections.sort(msg, String.CASE_INSENSITIVE_ORDER);
return ArrayUtils.getInstance().convert(msg);
}
/**
* Player info.
*
* @param user
* the user
* @return the string[]
*/
public String[] playerInfo(User user) {
ArrayList<String> msg = new ArrayList<String>();
// title
msg.add("&cPlayer '" + user.getPlayerName() + "' Info");
// last vote
msg.addAll(ArrayUtils.getInstance().convert(voteCommandLast(user)));
// next vote
msg.addAll(ArrayUtils.getInstance().convert(voteCommandNext(user)));
// total
msg.addAll(ArrayUtils.getInstance().convert(voteCommandTotal(user)));
msg = ArrayUtils.getInstance().colorize(msg);
return ArrayUtils.getInstance().convert(msg);
}
/**
* Send top voter monthly score board.
*
* @param player
* the player
* @param page
* the page
*/
public void sendTopVoterAllTimeScoreBoard(Player player, int page) {
if (AdvancedCoreHook.getInstance().isSendScoreboards()) {
int pagesize = Config.getInstance().getFormatPageSize();
ArrayList<User> users = plugin.convertSet(plugin.topVoterAllTime.keySet());
int pageSize = (users.size() / pagesize);
if ((users.size() % pagesize) != 0) {
pageSize++;
}
String title = StringUtils.getInstance().colorize(config.getFormatCommandVoteTopTitle()
.replace("%page%", "" + page).replace("%maxpages%", "" + pageSize).replace("%Top%", "All"));
SimpleScoreboard scoreboard = new SimpleScoreboard(title);
for (int i = (page - 1) * pagesize; (i < users.size()) && (i < (((page - 1) * pagesize) + 10)); i++) {
scoreboard.add("" + (i + 1) + ": " + users.get(i).getPlayerName(),
plugin.topVoterAllTime.get(users.get(i)));
}
scoreboard.build();
scoreboard.send(player);
Bukkit.getScheduler().runTaskLater(plugin, new Runnable() {
@Override
public void run() {
SimpleScoreboard clear = new SimpleScoreboard("Empty");
clear.send(player);
}
}, 90);
}
}
/**
* Send top voter daily score board.
*
* @param player
* the player
* @param page
* the page
*/
public void sendTopVoterDailyScoreBoard(Player player, int page) {
if (AdvancedCoreHook.getInstance().isSendScoreboards()) {
int pagesize = Config.getInstance().getFormatPageSize();
ArrayList<User> users = plugin.convertSet(plugin.topVoterDaily.keySet());
int pageSize = (users.size() / pagesize);
if ((users.size() % pagesize) != 0) {
pageSize++;
}
String title = StringUtils.getInstance().colorize(config.getFormatCommandVoteTopTitle()
.replace("%page%", "" + page).replace("%maxpages%", "" + pageSize).replace("%Top%", "Daily"));
SimpleScoreboard scoreboard = new SimpleScoreboard(title);
for (int i = (page - 1) * pagesize; (i < users.size()) && (i < (((page - 1) * pagesize) + 10)); i++) {
scoreboard.add("" + (i + 1) + ": " + users.get(i).getPlayerName(),
plugin.topVoterDaily.get(users.get(i)));
}
scoreboard.build();
scoreboard.send(player);
Bukkit.getScheduler().runTaskLater(plugin, new Runnable() {
@Override
public void run() {
SimpleScoreboard clear = new SimpleScoreboard("Empty");
clear.send(player);
}
}, 90);
}
}
/**
* Send top voter monthly score board.
*
* @param player
* the player
* @param page
* the page
*/
public void sendTopVoterMonthlyScoreBoard(Player player, int page) {
if (AdvancedCoreHook.getInstance().isSendScoreboards()) {
int pagesize = Config.getInstance().getFormatPageSize();
ArrayList<User> users = plugin.convertSet(plugin.topVoterMonthly.keySet());
int pageSize = (users.size() / pagesize);
if ((users.size() % pagesize) != 0) {
pageSize++;
}
String title = StringUtils.getInstance().colorize(config.getFormatCommandVoteTopTitle()
.replace("%page%", "" + page).replace("%maxpages%", "" + pageSize).replace("%Top%", "Monthly"));
SimpleScoreboard scoreboard = new SimpleScoreboard(title);
for (int i = (page - 1) * pagesize; (i < users.size()) && (i < (((page - 1) * pagesize) + 10)); i++) {
scoreboard.add("" + (i + 1) + ": " + users.get(i).getPlayerName(),
plugin.topVoterMonthly.get(users.get(i)));
}
scoreboard.build();
scoreboard.send(player);
Bukkit.getScheduler().runTaskLater(plugin, new Runnable() {
@Override
public void run() {
SimpleScoreboard clear = new SimpleScoreboard("Empty");
clear.send(player);
}
}, 90);
}
}
/**
* Send top voter weekly score board.
*
* @param player
* the player
* @param page
* the page
*/
public void sendTopVoterWeeklyScoreBoard(Player player, int page) {
if (AdvancedCoreHook.getInstance().isSendScoreboards()) {
int pagesize = Config.getInstance().getFormatPageSize();
ArrayList<User> users = plugin.convertSet(plugin.topVoterWeekly.keySet());
int pageSize = (users.size() / pagesize);
if ((users.size() % pagesize) != 0) {
pageSize++;
}
String title = StringUtils.getInstance().colorize(config.getFormatCommandVoteTopTitle()
.replace("%page%", "" + page).replace("%maxpages%", "" + pageSize).replace("%Top%", "Weekly"));
SimpleScoreboard scoreboard = new SimpleScoreboard(title);
for (int i = (page - 1) * pagesize; (i < users.size()) && (i < (((page - 1) * pagesize) + 10)); i++) {
scoreboard.add("" + (i + 1) + ": " + users.get(i).getPlayerName(),
plugin.topVoterWeekly.get(users.get(i)));
}
scoreboard.build();
scoreboard.send(player);
Bukkit.getScheduler().runTaskLater(plugin, new Runnable() {
@Override
public void run() {
SimpleScoreboard clear = new SimpleScoreboard("Empty");
clear.send(player);
}
}, 90);
}
}
/**
* Send vote today score board.
*
* @param player
* the player
* @param page
* the page
*/
public void sendVoteTodayScoreBoard(Player player, int page) {
if (AdvancedCoreHook.getInstance().isSendScoreboards()) {
int pagesize = Config.getInstance().getFormatPageSize();
String[] voteToday = voteToday();
int maxPage = voteToday.length / pagesize;
if ((voteToday.length % pagesize) != 0) {
maxPage++;
}
SimpleScoreboard scoreboard = new SimpleScoreboard("&cToday's Votes " + page + "/" + maxPage);
for (int i = pagesize * page; (i < voteToday.length) && (i < ((page + 1) * pagesize)); i++) {
scoreboard.add(voteToday[i], i);
}
scoreboard.build();
scoreboard.send(player);
Bukkit.getScheduler().runTaskLater(plugin, new Runnable() {
@Override
public void run() {
SimpleScoreboard clear = new SimpleScoreboard("Empty");
clear.send(player);
}
}, 90);
}
}
public String[] streak(CommandSender sender, String name) {
ArrayList<String> msg = new ArrayList<String>();
msg.add(config.getFormatCommandsVoteStreakTitle());
msg.addAll(config.getFormatCommandsVoteStreakLines());
User user = UserManager.getInstance().getVotingPluginUser(name);
HashMap<String, String> placeholders = new HashMap<String, String>();
placeholders.put("DailyStreak", "" + user.getDayVoteStreak());
placeholders.put("WeeklyStreak", "" + user.getWeekVoteStreak());
placeholders.put("MonthlyStreak", "" + user.getMonthVoteStreak());
placeholders.put("BestDailyStreak", "" + user.getBestDayVoteStreak());
placeholders.put("BestWeeklyStreak", "" + user.getBestWeekVoteStreak());
placeholders.put("BestMonthlyStreak", "" + user.getBestMonthVoteStreak());
placeholders.put("player", name);
msg = ArrayUtils.getInstance().replacePlaceHolder(msg, placeholders);
return ArrayUtils.getInstance().convert(ArrayUtils.getInstance().colorize(msg));
}
/**
* Update vote today.
*/
public void updateVoteToday() {
ArrayList<String> uuids = UserManager.getInstance().getAllUUIDs();
plugin.voteToday.clear();
for (String uuid : uuids) {
User user = UserManager.getInstance().getVotingPluginUser(new UUID(uuid));
HashMap<VoteSite, LocalDateTime> times = new HashMap<VoteSite, LocalDateTime>();
for (VoteSite voteSite : plugin.getVoteSites()) {
long time = user.getTime(voteSite);
if ((LocalDateTime.now().getDayOfMonth() == MiscUtils.getInstance().getDayFromMili(time))
&& (LocalDateTime.now().getMonthValue() == MiscUtils.getInstance().getMonthFromMili(time))
&& (LocalDateTime.now().getYear() == MiscUtils.getInstance().getYearFromMili(time))) {
times.put(voteSite, LocalDateTime.ofInstant(Instant.ofEpochMilli(time), ZoneId.systemDefault()));
}
}
if (times.keySet().size() > 0) {
plugin.voteToday.put(user, times);
}
}
plugin.debug("Updated VoteToday");
}
/**
* Vote command last.
*
* @param user
* the user
* @return the string[]
*/
public String[] voteCommandLast(User user) {
ArrayList<String> msg = new ArrayList<String>();
String playerName = user.getPlayerName();
msg.add(StringUtils.getInstance().replaceIgnoreCase(config.getFormatCommandsVoteLastTitle(), "%player%",
playerName));
for (VoteSite voteSite : plugin.getVoteSites()) {
msg.add(voteCommandLastLine(user, voteSite));
}
msg = ArrayUtils.getInstance().colorize(msg);
return ArrayUtils.getInstance().convert(msg);
}
/**
* Vote command last date.
*
* @param user
* the user
* @param voteSite
* the vote site
* @return the string
*/
public String voteCommandLastDate(User user, VoteSite voteSite) {
Date date = new Date(user.getTime(voteSite));
String timeString = new SimpleDateFormat(config.getFormatTimeFormat()).format(date);
return timeString;
}
public String voteCommandLastLine(User user, VoteSite voteSite) {
String timeString = voteCommandLastDate(user, voteSite);
return config.getFormatCommandsVoteLastLine().replace("%Month% %Day%, %Year% %Hour%:%Minute% %ampm%", "%time%")
.replace("%time%", timeString).replace("%SiteName%", voteSite.getDisplayName());
}
/**
* Vote command next.
*
* @param user
* the user
* @return the string[]
*/
public String[] voteCommandNext(User user) {
ArrayList<String> msg = new ArrayList<String>();
String playerName = user.getPlayerName();
msg.add(StringUtils.getInstance().colorize(StringUtils.getInstance()
.replaceIgnoreCase(config.getFormatCommandsVoteNextTitle(), "%player%", playerName)));
for (VoteSite voteSite : plugin.getVoteSites()) {
String msgLine = config.getFormatCommandsVoteNextLayout();
msgLine = StringUtils.getInstance().replaceIgnoreCase(msgLine, "%info%",
voteCommandNextInfo(user, voteSite));
msgLine = StringUtils.getInstance().replaceIgnoreCase(msgLine, "%SiteName%", voteSite.getDisplayName());
msg.add(StringUtils.getInstance().colorize(msgLine));
}
return ArrayUtils.getInstance().convert(msg);
}
/**
* Vote command next info.
*
* @param user
* the user
* @param voteSite
* the vote site
* @return the string
*/
public String voteCommandNextInfo(User user, VoteSite voteSite) {
String info = new String();
long time = user.getTime(voteSite);
LocalDateTime now = LocalDateTime.now();
LocalDateTime lastVote = LocalDateTime.ofInstant(Instant.ofEpochMilli(time), ZoneId.systemDefault());
int votedelay = voteSite.getVoteDelay();
if (votedelay == 0) {
String errorMsg = config.getFormatCommandsVoteNextInfoError();
info = errorMsg;
} else {
LocalDateTime nextvote = lastVote.plusHours(votedelay);
if (time == 0 || now.isAfter(nextvote)) {
String canVoteMsg = config.getFormatCommandsVoteNextInfoCanVote();
info = canVoteMsg;
} else {
Duration dur = Duration.between(now, nextvote);
long diffHours = dur.getSeconds() / (60 * 60);
long diffMinutes = dur.getSeconds() / 60 - diffHours * 60;
String timeMsg = config.getFormatCommandsVoteNextInfoTime();
timeMsg = StringUtils.getInstance().replaceIgnoreCase(timeMsg, "%hours%", Long.toString(diffHours));
timeMsg = StringUtils.getInstance().replaceIgnoreCase(timeMsg, "%minutes%", Long.toString(diffMinutes));
info = timeMsg;
}
}
return info;
}
/**
* Vote command total.
*
* @param user
* the user
* @return the string[]
*/
public String[] voteCommandTotal(User user) {
ArrayList<String> msg = new ArrayList<String>();
int daily = user.getDailyTotal();
int weekly = user.getWeeklyTotal();
int month = user.getMonthTotal();
int all = user.getAllTimeTotal();
for (String s : config.getFormatCommandsVoteTotal()) {
String str = StringUtils.getInstance().replaceIgnoreCase(s, "%DailyTotal%", "" + daily);
str = StringUtils.getInstance().replaceIgnoreCase(str, "%WeeklyTotal%", "" + weekly);
str = StringUtils.getInstance().replaceIgnoreCase(str, "%MonthlyTotal%", "" + month);
str = StringUtils.getInstance().replaceIgnoreCase(str, "%AllTimeTotal%", "" + all);
str = StringUtils.getInstance().replaceIgnoreCase(str, "%player%", user.getPlayerName());
msg.add(str);
}
msg = ArrayUtils.getInstance().colorize(msg);
return ArrayUtils.getInstance().convert(msg);
}
/**
* Vote command total all.
*
* @return the string[]
*/
public String[] voteCommandTotalAll() {
ArrayList<String> msg = new ArrayList<String>();
ArrayList<String> uuids = UserManager.getInstance().getAllUUIDs();
int daily = 0;
int weekly = 0;
int month = 0;
int all = 0;
for (String uuid : uuids) {
User user = UserManager.getInstance().getVotingPluginUser(new UUID(uuid));
daily += user.getDailyTotal();
weekly += user.getWeeklyTotal();
month += user.getMonthTotal();
all += user.getAllTimeTotal();
}
for (String s : config.getFormatCommandsVoteTotalAll()) {
String str = StringUtils.getInstance().replaceIgnoreCase(s, "%DailyTotal%", "" + daily);
str = StringUtils.getInstance().replaceIgnoreCase(str, "%WeeklyTotal%", "" + weekly);
str = StringUtils.getInstance().replaceIgnoreCase(str, "%MonthlyTotal%", "" + month);
str = StringUtils.getInstance().replaceIgnoreCase(str, "%AllTimeTotal%", "" + all);
msg.add(str);
}
msg = ArrayUtils.getInstance().colorize(msg);
return ArrayUtils.getInstance().convert(msg);
}
/**
* Vote help text.
*
* @param sender
* the sender
* @return the array list
*/
public ArrayList<TextComponent> voteHelpText(CommandSender sender) {
ArrayList<TextComponent> texts = new ArrayList<TextComponent>();
HashMap<String, TextComponent> unsorted = new HashMap<String, TextComponent>();
texts.add(StringUtils.getInstance().stringToComp(config.getFormatCommandsVoteHelpTitle()));
boolean requirePerms = config.getFormatCommandsVoteHelpRequirePermission();
for (CommandHandler cmdHandle : plugin.voteCommand) {
if (sender.hasPermission(cmdHandle.getPerm()) && requirePerms) {
unsorted.put(cmdHandle.getHelpLineCommand("/v"), cmdHandle.getHelpLine("/v"));
} else {
unsorted.put(cmdHandle.getHelpLineCommand("/v"), cmdHandle.getHelpLine("/v"));
}
}
ArrayList<String> unsortedList = new ArrayList<String>();
unsortedList.addAll(unsorted.keySet());
Collections.sort(unsortedList, String.CASE_INSENSITIVE_ORDER);
for (String cmd : unsortedList) {
texts.add(unsorted.get(cmd));
}
return texts;
}
/**
* Vote today.
*
* @return the string[]
*/
public String[] voteToday() {
ArrayList<String> msg = new ArrayList<String>();
for (User user : plugin.voteToday.keySet()) {
for (VoteSite voteSite : plugin.voteToday.get(user).keySet()) {
DateTimeFormatter formatter = DateTimeFormatter.ofPattern(Config.getInstance().getFormatTimeFormat());
String timeString = plugin.voteToday.get(user).get(voteSite).format(formatter);
msg.add("&6" + user.getPlayerName() + " : " + voteSite.getKey() + " : " + timeString);
}
}
msg = ArrayUtils.getInstance().colorize(msg);
return ArrayUtils.getInstance().convert(msg);
}
public void voteTop(CommandSender sender, int page) {
String str = Config.getInstance().getVoteTopDefault();
if (str.equalsIgnoreCase("monthly")) {
CommandVote.getInstance().topVoterMonthly(sender, page);
} else if (str.equalsIgnoreCase("weekly")) {
CommandVote.getInstance().topVoterWeekly(sender, page);
} else if (str.equalsIgnoreCase("daily")) {
CommandVote.getInstance().topVoterDaily(sender, page);
} else {
}
}
/**
* Vote UR ls.
*
* @return the string[]
*/
public String[] voteURLs() {
ArrayList<String> sites = new ArrayList<String>();
List<String> title = config.getFormatCommandsVoteText();
if (title != null) {
sites.addAll(title);
}
if (config.getFormatCommandsVoteAutoInputSites()) {
int counter = 0;
for (VoteSite voteSite : plugin.getVoteSites()) {
counter++;
String voteURL = voteSite.getVoteURL();
String msg = config.getFormatCommandsVoteURLS();
msg = StringUtils.getInstance().colorize(msg);
msg = StringUtils.getInstance().replaceIgnoreCase(msg, "%num%", Integer.toString(counter));
msg = StringUtils.getInstance().replaceIgnoreCase(msg, "%url%", voteURL);
msg = StringUtils.getInstance().replaceIgnoreCase(msg, "%SiteName%", voteSite.getDisplayName());
sites.add(msg);
}
}
sites = ArrayUtils.getInstance().colorize(sites);
return ArrayUtils.getInstance().convert(sites);
}
}
@@ -0,0 +1,472 @@
package com.Ben12345rocks.VotingPlugin.Commands.Executers;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import com.Ben12345rocks.AdvancedCore.Objects.CommandHandler;
import com.Ben12345rocks.AdvancedCore.Util.Misc.ArrayUtils;
import com.Ben12345rocks.AdvancedCore.Util.Misc.PlayerUtils;
import com.Ben12345rocks.AdvancedCore.Util.Misc.StringUtils;
import com.Ben12345rocks.AdvancedCore.Util.Updater.Updater;
import com.Ben12345rocks.VotingPlugin.Main;
import com.Ben12345rocks.VotingPlugin.Commands.Commands;
import com.Ben12345rocks.VotingPlugin.Config.Config;
import com.Ben12345rocks.VotingPlugin.Config.ConfigVoteSites;
import com.Ben12345rocks.VotingPlugin.Events.VotiferEvent;
import com.Ben12345rocks.VotingPlugin.Objects.User;
import com.Ben12345rocks.VotingPlugin.TopVoter.TopVoterHandler;
import com.Ben12345rocks.VotingPlugin.UserManager.UserManager;
// TODO: Auto-generated Javadoc
/**
* The Class CommandAdminVote.
*/
public class CommandAdminVote implements CommandExecutor {
/** The instance. */
private static CommandAdminVote instance = new CommandAdminVote();
/**
* Gets the single instance of CommandAdminVote.
*
* @return single instance of CommandAdminVote
*/
public static CommandAdminVote getInstance() {
return instance;
}
/** The config. */
Config config = Config.getInstance();
/** The plugin. */
private Main plugin = Main.plugin;
/** The vote sites. */
ConfigVoteSites voteSites = ConfigVoteSites.getInstance();
/**
* Instantiates a new command admin vote.
*/
private CommandAdminVote() {
}
/**
* Instantiates a new command admin vote.
*
* @param plugin
* the plugin
*/
public CommandAdminVote(Main plugin) {
this.plugin = plugin;
}
/**
* Check update.
*
* @param sender
* the sender
*/
public void checkUpdate(CommandSender sender) {
plugin.updater = new Updater(plugin, 15358, false);
final Updater.UpdateResult result = plugin.updater.getResult();
switch (result) {
case FAIL_SPIGOT: {
sender.sendMessage(StringUtils.getInstance()
.colorize("&cFailed to check for update for &c&l" + plugin.getName() + "&c!"));
break;
}
case NO_UPDATE: {
sender.sendMessage(StringUtils.getInstance().colorize(
"&c&l" + plugin.getName() + " &cis up to date! Version: &c&l" + plugin.updater.getVersion()));
break;
}
case UPDATE_AVAILABLE: {
sender.sendMessage(StringUtils.getInstance()
.colorize("&c&l" + plugin.getName() + " &chas an update available! Your Version: &c&l"
+ plugin.getDescription().getVersion() + " &cNew Version: &c&l"
+ plugin.updater.getVersion()));
break;
}
default: {
break;
}
}
}
/**
* Check vote site.
*
* @param sender
* the sender
* @param siteName
* the site name
*/
public void checkVoteSite(CommandSender sender, String siteName) {
if (!ConfigVoteSites.getInstance().isServiceSiteGood(siteName)) {
sender.sendMessage(
StringUtils.getInstance().colorize("&cServiceSite is invalid, votes may not work properly"));
} else {
sender.sendMessage(StringUtils.getInstance().colorize("&aServiceSite is properly setup"));
}
if (!ConfigVoteSites.getInstance().isVoteURLGood(siteName)) {
sender.sendMessage(StringUtils.getInstance().colorize("&cVoteURL is invalid"));
} else {
sender.sendMessage(StringUtils.getInstance().colorize("&aVoteURL is properly setup"));
}
}
/**
* Creates the vote site.
*
* @param sender
* the sender
* @param voteSite
* the vote site
*/
public void createVoteSite(CommandSender sender, String voteSite) {
sender.sendMessage(StringUtils.getInstance().colorize("&cCreating VoteSite..."));
Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() {
@Override
public void run() {
ConfigVoteSites.getInstance().generateVoteSite(voteSite);
sender.sendMessage(StringUtils.getInstance().colorize("&cCreated VoteSite: &c&l" + voteSite));
}
});
}
/**
* Help.
*
* @param sender
* the sender
* @param page
* the page
*/
public void help(CommandSender sender, int page) {
if (sender instanceof Player) {
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
user.sendJson(Commands.getInstance().adminHelp(sender, page - 1));
} else {
sender.sendMessage(ArrayUtils.getInstance().convert(
ArrayUtils.getInstance().comptoString(Commands.getInstance().adminHelp(sender, page - 1))));
}
}
/*
* (non-Javadoc)
*
* @see org.bukkit.command.CommandExecutor#onCommand(org.bukkit.command.
* CommandSender , org.bukkit.command.Command, java.lang.String,
* java.lang.String[])
*/
@Override
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
for (CommandHandler commandHandler : plugin.adminVoteCommand) {
if (commandHandler.runCommand(sender, args)) {
return true;
}
}
// invalid command
sender.sendMessage(ChatColor.RED + "No valid arguments, see /adminvote help!");
return true;
}
/**
* Perm list.
*
* @param sender
* the sender
*/
public void permList(CommandSender sender) {
sender.sendMessage(Commands.getInstance().listPerms());
}
/**
* Reload.
*
* @param sender
* the sender
*/
public void reload(CommandSender sender) {
Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() {
@Override
public void run() {
sender.sendMessage(ChatColor.RED + "Reloading " + plugin.getName() + "...");
plugin.reload();
sender.sendMessage(
ChatColor.RED + plugin.getName() + " v" + plugin.getDescription().getVersion() + " reloaded!");
}
});
}
/**
* Reset player totals.
*
* @param sender
* the sender
* @param playerName
* the player name
*/
public void resetPlayerTotals(CommandSender sender, String playerName) {
sender.sendMessage(StringUtils.getInstance().colorize("&cResseting totals for player &c&l" + playerName));
Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() {
@Override
public void run() {
User user = UserManager.getInstance().getVotingPluginUser(playerName);
user.resetDailyTotalVotes();
user.resetMonthlyTotalVotes();
user.resetWeeklyTotalVotes();
sender.sendMessage(StringUtils.getInstance().colorize("&cDone resseting totals for &c&l" + playerName));
plugin.update();
}
});
}
/**
* Reset totals.
*
* @param sender
* the sender
*/
public void resetTotals(CommandSender sender) {
sender.sendMessage(StringUtils.getInstance().colorize("&cResseting totals for all players..."));
Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() {
@Override
public void run() {
TopVoterHandler.getInstance().resetDailyTotals();
TopVoterHandler.getInstance().resetMonthlyTotals();
TopVoterHandler.getInstance().resetWeeklyTotals();
sender.sendMessage(StringUtils.getInstance().colorize("&cDone resseting totals"));
plugin.update();
}
});
}
/**
* Sets the config allow unjoined.
*
* @param sender
* the sender
* @param value
* the value
*/
public void setConfigAllowUnjoined(CommandSender sender, boolean value) {
Config.getInstance().setAllowUnJoined(value);
sender.sendMessage(StringUtils.getInstance().colorize("&cSet AllowUnjoined to &c&l" + value));
}
/**
* Sets the config broadcast vote.
*
* @param sender
* the sender
* @param value
* the value
*/
public void setConfigBroadcastVote(CommandSender sender, boolean value) {
Config.getInstance().setDebugEnabled(value);
sender.sendMessage(StringUtils.getInstance().colorize("&cSet BroadcastVote to &c&l" + value));
}
/**
* Sets the config debug.
*
* @param sender
* the sender
* @param value
* the value
*/
public void setConfigDebug(CommandSender sender, boolean value) {
Config.getInstance().setDebugEnabled(value);
sender.sendMessage(StringUtils.getInstance().colorize("&cSet Debug to &c&l" + value));
}
/**
* Sets the config enable top voter awards.
*
* @param sender
* the sender
* @param value
* the value
*/
public void setConfigEnableTopVoterAwards(CommandSender sender, boolean value) {
Config.getInstance().setTopVoterAwardsEnabled(value);
sender.sendMessage(StringUtils.getInstance().colorize("&cSet DisableTopVoterAwards to &c&l" + value));
}
/**
* Sets the total.
*
* @param sender
* the sender
* @param playerName
* the player name
* @param amount
* the amount
*/
public void setTotal(CommandSender sender, String playerName, int amount) {
UserManager.getInstance().getVotingPluginUser(playerName).setMonthTotal(amount);
sender.sendMessage(ChatColor.GREEN + playerName + " total votes has been set to " + amount);
plugin.update();
}
/**
* Sets the vote site enabled.
*
* @param sender
* the sender
* @param voteSite
* the vote site
* @param value
* the value
*/
public void setVoteSiteEnabled(CommandSender sender, String voteSite, boolean value) {
ConfigVoteSites.getInstance().setEnabled(voteSite, value);
sender.sendMessage(StringUtils.getInstance().colorize("&cSet votesite " + voteSite + " enabled to " + value));
}
/**
* Sets the vote site priority.
*
* @param sender
* the sender
* @param voteSite
* the vote site
* @param value
* the value
*/
public void setVoteSitePriority(CommandSender sender, String voteSite, int value) {
ConfigVoteSites.getInstance().setPriority(voteSite, value);
sender.sendMessage(
StringUtils.getInstance().colorize("&cSet priortiy to &c&l" + value + "&c on &c&l" + voteSite));
}
/**
* Sets the vote site service site.
*
* @param sender
* the sender
* @param voteSite
* the vote site
* @param serviceSite
* the service site
*/
public void setVoteSiteServiceSite(CommandSender sender, String voteSite, String serviceSite) {
ConfigVoteSites.getInstance().setServiceSite(voteSite, serviceSite);
sender.sendMessage(StringUtils.getInstance()
.colorize("&cSet ServiceSite to &c&l" + serviceSite + "&c on &c&l" + voteSite));
}
/**
* Sets the vote site vote delay.
*
* @param sender
* the sender
* @param voteSite
* the vote site
* @param delay
* the delay
*/
public void setVoteSiteVoteDelay(CommandSender sender, String voteSite, int delay) {
ConfigVoteSites.getInstance().setVoteDelay(voteSite, delay);
sender.sendMessage(
StringUtils.getInstance().colorize("&cSet VoteDelay to &c&l" + delay + "&c on &c&l" + voteSite));
}
/**
* Sets the vote site vote URL.
*
* @param sender
* the sender
* @param voteSite
* the vote site
* @param url
* the url
*/
public void setVoteSiteVoteURL(CommandSender sender, String voteSite, String url) {
ConfigVoteSites.getInstance().setVoteURL(voteSite, url);
sender.sendMessage(StringUtils.getInstance().colorize("&cSet VoteURL to &c&l" + url + "&c on &c&l" + voteSite));
}
/**
* Uuid.
*
* @param sender
* the sender
* @param playerName
* the player name
*/
public void uuid(CommandSender sender, String playerName) {
sender.sendMessage(ChatColor.GREEN + "UUID of player " + ChatColor.DARK_GREEN + playerName + ChatColor.GREEN
+ " is: " + PlayerUtils.getInstance().getUUID(playerName));
}
/**
* Version.
*
* @param sender
* the sender
*/
public void version(CommandSender sender) {
if (sender instanceof Player) {
Player player = (Player) sender;
player.performCommand("bukkit:version " + plugin.getName());
} else {
Bukkit.getServer().dispatchCommand(Bukkit.getConsoleSender(), "bukkit:version " + plugin.getName());
}
}
/**
* Vote.
*
* @param sender
* the sender
* @param playerName
* the player name
* @param voteSite
* the vote site
*/
public void Vote(CommandSender sender, String playerName, String voteSite) {
VotiferEvent.playerVote(playerName, voteSite);
}
}
@@ -0,0 +1,96 @@
package com.Ben12345rocks.VotingPlugin.Commands.Executers;
import java.util.ArrayList;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import com.Ben12345rocks.AdvancedCore.Objects.CommandHandler;
import com.Ben12345rocks.AdvancedCore.Util.Misc.ArrayUtils;
import com.Ben12345rocks.VotingPlugin.Main;
// TODO: Auto-generated Javadoc
/**
* The Class CommandAliases.
*/
public class CommandAliases implements CommandExecutor {
/** The plugin. */
private Main plugin = Main.plugin;
/** The cmd handle. */
private CommandHandler cmdHandle;
/**
* Instantiates a new command aliases.
*
* @param cmdHandle
* the cmd handle
*/
public CommandAliases(CommandHandler cmdHandle) {
this.cmdHandle = cmdHandle;
}
/*
* (non-Javadoc)
*
* @see org.bukkit.command.CommandExecutor#onCommand(org.bukkit.command.
* CommandSender , org.bukkit.command.Command, java.lang.String,
* java.lang.String[])
*/
@Override
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
ArrayList<String> argsNew = new ArrayList<String>();
argsNew.add(cmdHandle.getArgs()[0]);
for (String arg : args) {
argsNew.add(arg);
}
plugin.debug("Attempting cmd...");
plugin.debug("Inputed args: " + ArrayUtils.getInstance().makeStringList(argsNew));
ArrayList<CommandHandler> cmdHandlers = new ArrayList<CommandHandler>();
cmdHandlers.addAll(plugin.voteCommand);
cmdHandlers.addAll(plugin.adminVoteCommand);
for (CommandHandler cmdHandle : cmdHandlers) {
if (cmdHandle.getArgs().length > args.length) {
for (String arg : cmdHandle.getArgs()[0].split("&")) {
if (cmd.getName().equalsIgnoreCase("vote" + arg)
|| cmd.getName().equalsIgnoreCase("adminvote" + arg)) {
argsNew.set(0, arg);
boolean argsMatch = true;
for (int i = 0; i < argsNew.size(); i++) {
if (i < cmdHandle.getArgs().length) {
if (!cmdHandle.argsMatch(argsNew.get(i), i)) {
argsMatch = false;
}
}
}
if (argsMatch) {
if (cmdHandle.runCommand(sender, ArrayUtils.getInstance().convert(argsNew))) {
plugin.debug("cmd found, ran cmd");
return true;
}
}
}
}
}
}
/*
* for (String arg : cmdHandle.getArgs()[0].split("&")) { argsNew.set(0,
* arg); if (cmdHandle.runCommand(sender,
* Utils.getInstance().convertArray(argsNew))) { plugin.debug(
* "cmd found, ran cmd"); return true; } }
*/
// invalid command
sender.sendMessage(ChatColor.RED + "No valid arguments, see /vote help!");
return true;
}
}
@@ -0,0 +1,449 @@
package com.Ben12345rocks.VotingPlugin.Commands.Executers;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import com.Ben12345rocks.AdvancedCore.Objects.CommandHandler;
import com.Ben12345rocks.AdvancedCore.Util.Misc.ArrayUtils;
import com.Ben12345rocks.AdvancedCore.Util.Misc.StringUtils;
import com.Ben12345rocks.VotingPlugin.Main;
import com.Ben12345rocks.VotingPlugin.Commands.Commands;
import com.Ben12345rocks.VotingPlugin.Config.Config;
import com.Ben12345rocks.VotingPlugin.Objects.User;
import com.Ben12345rocks.VotingPlugin.TopVoter.TopVoterHandler;
import com.Ben12345rocks.VotingPlugin.UserManager.UserManager;
// TODO: Auto-generated Javadoc
/**
* The Class CommandVote.
*/
public class CommandVote implements CommandExecutor {
/** The instance. */
private static CommandVote instance = new CommandVote();
/** The plugin. */
private static Main plugin;
/**
* Gets the single instance of CommandVote.
*
* @return single instance of CommandVote
*/
public static CommandVote getInstance() {
return instance;
}
/**
* Instantiates a new command vote.
*/
private CommandVote() {
}
/**
* Instantiates a new command vote.
*
* @param plugin
* the plugin
*/
public CommandVote(Main plugin) {
CommandVote.plugin = plugin;
}
/**
* Help.
*
* @param sender
* the sender
*/
public void help(CommandSender sender) {
if (sender instanceof Player) {
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
user.sendJson(Commands.getInstance().voteHelpText(sender));
} else {
sender.sendMessage(ArrayUtils.getInstance()
.convert(ArrayUtils.getInstance().comptoString(Commands.getInstance().voteHelpText(sender))));
}
}
/**
* Info other.
*
* @param sender
* the sender
* @param playerName
* the player name
*/
public void infoOther(CommandSender sender, String playerName) {
Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() {
@Override
public void run() {
if (sender instanceof Player) {
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
user.sendMessage(StringUtils.getInstance().colorize("&cGetting player info..."));
user.sendMessage(Commands.getInstance()
.playerInfo(UserManager.getInstance().getVotingPluginUser(playerName)));
} else {
sender.sendMessage(ArrayUtils.getInstance().colorize(Commands.getInstance()
.playerInfo(UserManager.getInstance().getVotingPluginUser(playerName))));
}
}
});
}
/**
* Info self.
*
* @param sender
* the sender
*/
public void infoSelf(CommandSender sender) {
if (sender instanceof Player) {
Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() {
@Override
public void run() {
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
user.sendMessage(StringUtils.getInstance().colorize("&cGetting info..."));
user.sendMessage(Commands.getInstance().playerInfo(user));
}
});
} else {
sender.sendMessage("You must be a player to do this!");
}
}
/**
* Last other.
*
* @param sender
* the sender
* @param playerName
* the player name
*/
public void lastOther(CommandSender sender, String playerName) {
if (sender instanceof Player) {
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
user.sendMessage(
Commands.getInstance().voteCommandLast(UserManager.getInstance().getVotingPluginUser(playerName)));
} else {
sender.sendMessage(ArrayUtils.getInstance().colorize(
Commands.getInstance().voteCommandLast(UserManager.getInstance().getVotingPluginUser(playerName))));
}
}
/**
* Last self.
*
* @param sender
* the sender
*/
public void lastSelf(CommandSender sender) {
if (sender instanceof Player) {
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
user.sendMessage(Commands.getInstance().voteCommandLast(user));
} else {
sender.sendMessage("You must be a player to do this!");
}
}
/**
* Next other.
*
* @param sender
* the sender
* @param playerName
* the player name
*/
public void nextOther(CommandSender sender, String playerName) {
if (sender instanceof Player) {
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
user.sendMessage(
Commands.getInstance().voteCommandNext(UserManager.getInstance().getVotingPluginUser(playerName)));
} else {
sender.sendMessage(ArrayUtils.getInstance().colorize(
Commands.getInstance().voteCommandNext(UserManager.getInstance().getVotingPluginUser(playerName))));
}
}
/**
* Next self.
*
* @param sender
* the sender
*/
public void nextSelf(CommandSender sender) {
if (sender instanceof Player) {
String playerName = sender.getName();
User user = UserManager.getInstance().getVotingPluginUser(playerName);
user.sendMessage(Commands.getInstance().voteCommandNext(user));
} else {
sender.sendMessage("You must be a player to do this!");
}
}
/*
* (non-Javadoc)
*
* @see org.bukkit.command.CommandExecutor#onCommand(org.bukkit.command.
* CommandSender , org.bukkit.command.Command, java.lang.String,
* java.lang.String[])
*/
@Override
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
for (CommandHandler commandHandler : plugin.voteCommand) {
if (commandHandler.runCommand(sender, args)) {
return true;
}
}
// invalid command
sender.sendMessage(ChatColor.RED + "No valid arguments, see /vote help!");
return true;
}
/**
* Points other.
*
* @param sender
* the sender
* @param user
* the user
*/
public void pointsOther(CommandSender sender, User user) {
String msg = Config.getInstance().getFormatCommandVotePoints().replace("%Player%", user.getPlayerName())
.replace("%Points%", "" + user.getPoints());
if (sender instanceof Player) {
UserManager.getInstance().getVotingPluginUser((Player) sender).sendMessage(msg);
} else {
sender.sendMessage(StringUtils.getInstance().colorize(msg));
}
}
/**
* Points self.
*
* @param user
* the user
*/
public void pointsSelf(User user) {
String msg = Config.getInstance().getFormatCommandVotePoints().replace("%Player%", user.getPlayerName())
.replace("%Points%", "" + user.getPoints());
user.sendMessage(msg);
}
/**
* Today.
*
* @param sender
* the sender
* @param page
* the page
*/
public void today(CommandSender sender, int page) {
if (sender instanceof Player) {
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
user.sendMessage(Commands.getInstance().commandVoteToday(page));
Bukkit.getScheduler().runTask(plugin, new Runnable() {
@Override
public void run() {
Commands.getInstance().sendVoteTodayScoreBoard((Player) sender, page);
}
});
} else {
sender.sendMessage(Commands.getInstance().commandVoteToday(page));
}
}
public void topVoterAll(CommandSender sender, int page) {
if (sender instanceof Player) {
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
user.sendMessage(TopVoterHandler.getInstance().topVoterAllTime(page));
Bukkit.getScheduler().runTask(plugin, new Runnable() {
@Override
public void run() {
Commands.getInstance().sendTopVoterAllTimeScoreBoard((Player) sender, page);
}
});
} else {
sender.sendMessage(TopVoterHandler.getInstance().topVoterAllTime(page));
}
}
/**
* Top voter daily.
*
* @param sender
* the sender
* @param page
* the page
*/
public void topVoterDaily(CommandSender sender, int page) {
if (sender instanceof Player) {
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
user.sendMessage(TopVoterHandler.getInstance().topVoterDaily(page));
Bukkit.getScheduler().runTask(plugin, new Runnable() {
@Override
public void run() {
Commands.getInstance().sendTopVoterDailyScoreBoard((Player) sender, page);
}
});
} else {
sender.sendMessage(TopVoterHandler.getInstance().topVoterDaily(page));
}
}
/**
* Top voter monthly.
*
* @param sender
* the sender
* @param page
* the page
*/
public void topVoterMonthly(CommandSender sender, int page) {
if (sender instanceof Player) {
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
user.sendMessage(TopVoterHandler.getInstance().topVoterMonthly(page));
Bukkit.getScheduler().runTask(plugin, new Runnable() {
@Override
public void run() {
Commands.getInstance().sendTopVoterMonthlyScoreBoard((Player) sender, page);
}
});
} else {
sender.sendMessage(TopVoterHandler.getInstance().topVoterMonthly(page));
}
}
/**
* Top voter weekly.
*
* @param sender
* the sender
* @param page
* the page
*/
public void topVoterWeekly(CommandSender sender, int page) {
Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() {
@Override
public void run() {
if (sender instanceof Player) {
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
user.sendMessage(TopVoterHandler.getInstance().topVoterWeekly(page));
Bukkit.getScheduler().runTask(plugin, new Runnable() {
@Override
public void run() {
Commands.getInstance().sendTopVoterWeeklyScoreBoard((Player) sender, page);
}
});
} else {
sender.sendMessage(TopVoterHandler.getInstance().topVoterWeekly(page));
}
}
});
}
/**
* Total all.
*
* @param sender
* the sender
*/
public void totalAll(CommandSender sender) {
Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() {
@Override
public void run() {
if (sender instanceof Player) {
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
user.sendMessage(Commands.getInstance().voteCommandTotalAll());
} else {
sender.sendMessage(Commands.getInstance().voteCommandTotalAll());
}
}
});
}
/**
* Total other.
*
* @param sender
* the sender
* @param playerName
* the player name
*/
public void totalOther(CommandSender sender, String playerName) {
if (sender instanceof Player) {
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
user.sendMessage(
Commands.getInstance().voteCommandTotal(UserManager.getInstance().getVotingPluginUser(playerName)));
} else {
sender.sendMessage(ArrayUtils.getInstance().colorize(Commands.getInstance()
.voteCommandTotal(UserManager.getInstance().getVotingPluginUser(playerName))));
}
}
/**
* Total self.
*
* @param sender
* the sender
*/
public void totalSelf(CommandSender sender) {
if (sender instanceof Player) {
String playerName = sender.getName();
User user = UserManager.getInstance().getVotingPluginUser(playerName);
user.sendMessage(Commands.getInstance().voteCommandTotal(user));
} else {
sender.sendMessage("You must be a player to do this!");
}
}
/**
* Vote UR ls.
*
* @param sender
* the sender
*/
public void voteURLs(CommandSender sender) {
if (sender instanceof Player) {
User user = UserManager.getInstance().getVotingPluginUser((Player) sender);
user.sendMessage(Commands.getInstance().voteURLs());
} else {
sender.sendMessage(Commands.getInstance().voteURLs());
}
}
}
@@ -0,0 +1,284 @@
package com.Ben12345rocks.VotingPlugin.Commands.GUI;
import java.util.ArrayList;
import org.bukkit.Material;
import org.bukkit.entity.Player;
import org.bukkit.event.inventory.ClickType;
import org.bukkit.inventory.ItemStack;
import com.Ben12345rocks.AdvancedCore.Util.Inventory.BInventory;
import com.Ben12345rocks.AdvancedCore.Util.Inventory.BInventory.ClickEvent;
import com.Ben12345rocks.AdvancedCore.Util.Inventory.BInventoryButton;
import com.Ben12345rocks.AdvancedCore.Util.Misc.ArrayUtils;
import com.Ben12345rocks.AdvancedCore.Util.ValueRequest.ValueRequest;
import com.Ben12345rocks.AdvancedCore.Util.ValueRequest.Listeners.BooleanListener;
import com.Ben12345rocks.AdvancedCore.Util.ValueRequest.Listeners.NumberListener;
import com.Ben12345rocks.AdvancedCore.Util.ValueRequest.Listeners.StringListener;
import com.Ben12345rocks.VotingPlugin.Main;
import com.Ben12345rocks.VotingPlugin.Config.ConfigVoteSites;
import com.Ben12345rocks.VotingPlugin.Objects.VoteSite;
public class AdminGUI {
static AdminGUI instance = new AdminGUI();
/**
* Gets the single instance of Commands.
*
* @return single instance of Commands
*/
public static AdminGUI getInstance() {
return instance;
}
/** The plugin. */
Main plugin = Main.plugin;
/**
* Instantiates a new commands.
*/
private AdminGUI() {
}
/**
* Open admin GUI.
*
* @return ArrayList of buttons
*/
public ArrayList<BInventoryButton> adminGUIButtons() {
ArrayList<BInventoryButton> buttons = new ArrayList<BInventoryButton>();
ArrayList<String> lore = new ArrayList<String>();
lore.add("&cOnly enabled sites are listed in this section");
lore.add("&cMiddle Click to create");
buttons.add(new BInventoryButton("&cVoteSites", ArrayUtils.getInstance().convert(lore),
new ItemStack(Material.STONE)) {
@Override
public void onClick(ClickEvent event) {
if (event.getWhoClicked() instanceof Player) {
Player player = event.getWhoClicked();
if (event.getClick().equals(ClickType.MIDDLE)) {
new ValueRequest().requestString(player, new StringListener() {
@Override
public void onInput(Player player, String value) {
ConfigVoteSites.getInstance().generateVoteSite(value);
player.sendMessage("Generated site");
plugin.reload();
}
});
} else {
openAdminGUIVoteSites(player);
}
}
}
});
lore = new ArrayList<String>();
buttons.add(new BInventoryButton("&cReload Plugin", ArrayUtils.getInstance().convert(lore),
new ItemStack(Material.STONE, 1, (short) 3)) {
@Override
public void onClick(ClickEvent event) {
event.getPlayer().performCommand("av reload");
}
});
return buttons;
}
public void loadHook() {
for (BInventoryButton b : adminGUIButtons()) {
com.Ben12345rocks.AdvancedCore.Commands.GUI.AdminGUI.getInstance().addButton(b);
}
}
/**
* Open admin GUI vote sites.
*
* @param player
* the player
*/
public void openAdminGUIVoteSites(Player player) {
BInventory inv = new BInventory("VoteSites");
int count = 0;
for (VoteSite voteSite : plugin.getVoteSites()) {
ArrayList<String> lore = new ArrayList<String>();
lore.add("Priority: " + voteSite.getPriority());
lore.add("Name: " + voteSite.getDisplayName());
lore.add("ServiceSite: " + voteSite.getServiceSite());
lore.add("VoteURL: " + voteSite.getVoteURL());
lore.add("VoteDelay: " + voteSite.getVoteDelay());
// lore.add("Rewards: " +
// ArrayUtils.getInstance().makeStringList(voteSite.getRewards()));
inv.addButton(count, new BInventoryButton(voteSite.getKey(), ArrayUtils.getInstance().convert(lore),
new ItemStack(Material.STONE)) {
@Override
public void onClick(ClickEvent event) {
Player player = event.getWhoClicked();
openAdminGUIVoteSiteSite(player, voteSite);
}
});
count++;
}
inv.openInventory(player);
}
/**
* Open admin GUI vote site site.
*
* @param player
* the player
* @param voteSite
* the vote site
*/
public void openAdminGUIVoteSiteSite(Player player, VoteSite voteSite) {
BInventory inv = new BInventory("VoteSite: " + voteSite.getDisplayName());
inv.setMeta(player, "VoteSite", voteSite);
inv.addButton(inv.getNextSlot(),
new BInventoryButton("SetPriority", new String[0], new ItemStack(Material.STONE)) {
@Override
public void onClick(ClickEvent event) {
Player player = event.getWhoClicked();
new ValueRequest().requestNumber(player, "" + voteSite.getPriority(), null,
new NumberListener() {
@Override
public void onInput(Player player, Number value) {
VoteSite voteSite = (VoteSite) event.getMeta("VoteSite");
ConfigVoteSites.getInstance().setPriority(voteSite.getKey(), value.intValue());
player.sendMessage("Set Priority");
plugin.reload();
}
});
}
});
inv.addButton(inv.getNextSlot(),
new BInventoryButton("SetServiceSite", new String[0], new ItemStack(Material.STONE)) {
@Override
public void onClick(ClickEvent event) {
if (event.getWhoClicked() instanceof Player) {
Player player = event.getWhoClicked();
new ValueRequest().requestString(player, voteSite.getServiceSite(), null,
new StringListener() {
@Override
public void onInput(Player player, String value) {
VoteSite voteSite = (VoteSite) event.getMeta("VoteSite");
String siteName = voteSite.getKey();
ConfigVoteSites.getInstance().setServiceSite(siteName, value);
player.sendMessage("Set ServiceSite");
plugin.reload();
}
});
}
}
});
inv.addButton(inv.getNextSlot(), new BInventoryButton("SetName", new String[0], new ItemStack(Material.STONE)) {
@Override
public void onClick(ClickEvent event) {
if (event.getWhoClicked() instanceof Player) {
Player player = event.getWhoClicked();
new ValueRequest().requestString(player, voteSite.getServiceSite(), null, new StringListener() {
@Override
public void onInput(Player player, String value) {
VoteSite voteSite = (VoteSite) event.getMeta("VoteSite");
ConfigVoteSites.getInstance().setDisplayName(voteSite.getKey(), value);
player.sendMessage("Set name");
plugin.reload();
}
});
}
}
});
inv.addButton(inv.getNextSlot(),
new BInventoryButton("SetVoteURL", new String[0], new ItemStack(Material.STONE)) {
@Override
public void onClick(ClickEvent event) {
if (event.getWhoClicked() instanceof Player) {
Player player = event.getWhoClicked();
new ValueRequest().requestString(player, voteSite.getVoteURL(), null, new StringListener() {
@Override
public void onInput(Player player, String value) {
VoteSite voteSite = (VoteSite) event.getMeta("VoteSite");
String siteName = voteSite.getKey();
ConfigVoteSites.getInstance().setVoteURL(siteName, value);
player.sendMessage("Set VoteURL");
plugin.reload();
}
});
}
}
});
inv.addButton(inv.getNextSlot(),
new BInventoryButton("SetVoteDelay", new String[0], new ItemStack(Material.STONE)) {
@Override
public void onClick(ClickEvent event) {
Player player = event.getWhoClicked();
new ValueRequest().requestNumber(player, "" + voteSite.getVoteDelay(), null,
new NumberListener() {
@Override
public void onInput(Player player, Number value) {
VoteSite voteSite = (VoteSite) event.getMeta("VoteSite");
String siteName = voteSite.getKey();
ConfigVoteSites.getInstance().setVoteDelay(siteName, value.intValue());
player.sendMessage("Set VoteDelay");
plugin.reload();
}
});
}
});
inv.addButton(inv.getNextSlot(),
new BInventoryButton("SetEnabled", new String[0], new ItemStack(Material.STONE)) {
@Override
public void onClick(ClickEvent event) {
Player player = event.getWhoClicked();
new ValueRequest().requestBoolean(player,
"" + ConfigVoteSites.getInstance().getVoteSiteEnabled(voteSite.getKey()),
new BooleanListener() {
@Override
public void onInput(Player player, boolean value) {
VoteSite voteSite = (VoteSite) event.getMeta("VoteSite");
String siteName = voteSite.getKey();
ConfigVoteSites.getInstance().setEnabled(siteName, value);
player.sendMessage("Set Enabled");
plugin.reload();
}
});
}
});
inv.openInventory(player);
}
}
@@ -0,0 +1,573 @@
package com.Ben12345rocks.VotingPlugin.Commands.GUI;
import java.time.format.DateTimeFormatter;
import java.util.Map.Entry;
import java.util.Set;
import org.bukkit.Material;
import org.bukkit.entity.Player;
import com.Ben12345rocks.AdvancedCore.AdvancedCoreHook;
import com.Ben12345rocks.AdvancedCore.Util.Inventory.BInventory;
import com.Ben12345rocks.AdvancedCore.Util.Inventory.BInventory.ClickEvent;
import com.Ben12345rocks.AdvancedCore.Util.Inventory.BInventoryButton;
import com.Ben12345rocks.AdvancedCore.Util.Item.ItemBuilder;
import com.Ben12345rocks.AdvancedCore.Util.Misc.ArrayUtils;
import com.Ben12345rocks.AdvancedCore.Util.Misc.MiscUtils;
import com.Ben12345rocks.AdvancedCore.Util.Misc.PlayerUtils;
import com.Ben12345rocks.AdvancedCore.Util.Misc.StringUtils;
import com.Ben12345rocks.VotingPlugin.Main;
import com.Ben12345rocks.VotingPlugin.Commands.Commands;
import com.Ben12345rocks.VotingPlugin.Config.Config;
import com.Ben12345rocks.VotingPlugin.Objects.TopVoter;
import com.Ben12345rocks.VotingPlugin.Objects.User;
import com.Ben12345rocks.VotingPlugin.Objects.VoteSite;
import com.Ben12345rocks.VotingPlugin.TopVoter.TopVoterHandler;
import com.Ben12345rocks.VotingPlugin.UserManager.UserManager;
import com.Ben12345rocks.VotingPlugin.VoteShop.VoteShop;
public class PlayerGUIs {
static PlayerGUIs instance = new PlayerGUIs();
/**
* Gets the single instance of Commands.
*
* @return single instance of Commands
*/
public static PlayerGUIs getInstance() {
return instance;
}
/** The plugin. */
Main plugin = Main.plugin;
/**
* Instantiates a new commands.
*/
private PlayerGUIs() {
}
public User getSelectedPlayer(Player player) {
User str = (User) PlayerUtils.getInstance().getPlayerMeta(player, "SelectedPlayerGUIs");
return str;
}
public void openVoteBest(Player player, User user) {
setSelectedPlayer(player, user);
BInventory inv = new BInventory(StringUtils.getInstance()
.replacePlaceHolder(Config.getInstance().getGUIVoteBestName(), "player", user.getPlayerName()));
inv.addButton(new BInventoryButton(new ItemBuilder(Config.getInstance().getGUIVoteBestDayBestItem())
.addPlaceholder("Best", "" + user.getBestDayVoteStreak())) {
@Override
public void onClick(ClickEvent clickEvent) {
Player player = clickEvent.getPlayer();
openVoteBest(player, getSelectedPlayer(player));
}
});
inv.addButton(new BInventoryButton(new ItemBuilder(Config.getInstance().getGUIVoteBestWeekBestItem())
.addPlaceholder("Best", "" + user.getBestWeekVoteStreak())) {
@Override
public void onClick(ClickEvent clickEvent) {
Player player = clickEvent.getPlayer();
openVoteBest(player, getSelectedPlayer(player));
}
});
inv.addButton(new BInventoryButton(new ItemBuilder(Config.getInstance().getGUIVoteBestMonthBestItem())
.addPlaceholder("Best", "" + user.getBestMonthVoteStreak())) {
@Override
public void onClick(ClickEvent clickEvent) {
Player player = clickEvent.getPlayer();
openVoteBest(player, getSelectedPlayer(player));
}
});
inv.openInventory(player);
}
public void openVoteGUI(Player player, User user) {
if (!player.getName().equals(user.getPlayerName())
&& !player.hasPermission("VotingPlugin.Commands.Vote.GUI.Other")
&& !player.hasPermission("VotingPlugin.Mod")) {
player.sendMessage(AdvancedCoreHook.getInstance().getFormatNoPerms());
return;
}
setSelectedPlayer(player, user);
BInventory inv = new BInventory(StringUtils.getInstance()
.replacePlaceHolder(Config.getInstance().getGUIVoteGUIName(), "player", user.getPlayerName()));
for (String slot : Config.getInstance().getVoteGUISlots()) {
ItemBuilder builder = new ItemBuilder(Config.getInstance().getVoteGUISlotSection(slot));
String[] lore = new String[1];
lore = ArrayUtils.getInstance().convert(Config.getInstance().getVoteGUISlotLore(slot));
if (lore.length == 0) {
if (slot.equalsIgnoreCase("url")) {
lore = Commands.getInstance().voteURLs();
} else if (slot.equalsIgnoreCase("next")) {
lore = Commands.getInstance().voteCommandNext(user);
} else if (slot.equalsIgnoreCase("last")) {
lore = Commands.getInstance().voteCommandLast(user);
} else if (slot.equalsIgnoreCase("total")) {
lore = Commands.getInstance().voteCommandTotal(user);
} else if (slot.equalsIgnoreCase("top")) {
String str = Config.getInstance().getVoteTopDefault();
if (str.equalsIgnoreCase("monthly")) {
lore = TopVoterHandler.getInstance().topVoterMonthly(1);
} else if (str.equalsIgnoreCase("weekly")) {
lore = TopVoterHandler.getInstance().topVoterWeekly(1);
} else if (str.equalsIgnoreCase("daily")) {
lore = TopVoterHandler.getInstance().topVoterDaily(1);
} else {
lore = TopVoterHandler.getInstance().topVoterAllTime(1);
}
} else if (slot.equalsIgnoreCase("today")) {
lore = Commands.getInstance().voteToday();
} else if (slot.equalsIgnoreCase("help")) {
lore = new String[] {"Click to view help"};
}
}
builder.setLore(lore);
inv.addButton(Config.getInstance().getVoteGUISlotSlot(slot), new BInventoryButton(builder) {
@Override
public void onClick(ClickEvent event) {
Player player = event.getWhoClicked();
String cmd = Config.getInstance().getVoteGUISlotCommand(slot);
User user = getSelectedPlayer(player);
if (!cmd.equals("")) {
player.performCommand(cmd);
} else {
if (slot.equalsIgnoreCase("url")) {
openVoteURL(player);
} else if (slot.equalsIgnoreCase("next")) {
openVoteNext(player, user);
} else if (slot.equalsIgnoreCase("last")) {
openVoteLast(player, user);
} else if (slot.equalsIgnoreCase("total")) {
openVoteTotal(player, user);
} else if (slot.equalsIgnoreCase("top")) {
openVoteTop(player, null);
} else if (slot.equalsIgnoreCase("today")) {
openVoteToday(player);
} else if (slot.equalsIgnoreCase("help")) {
player.performCommand("vote help");
} else if (slot.equalsIgnoreCase("shop")) {
VoteShop.getInstance().voteShop(player);
}
}
}
});
}
BInventory.openInventory(player, inv);
}
public void openVoteLast(Player player, User user) {
setSelectedPlayer(player, user);
BInventory inv = new BInventory(StringUtils.getInstance()
.replacePlaceHolder(Config.getInstance().getGUIVoteLastName(), "player", user.getPlayerName()));
for (VoteSite site : plugin.getVoteSites()) {
inv.addButton(inv.getNextSlot(),
new BInventoryButton(new ItemBuilder(site.getItem()).setName(site.getDisplayName())
.setLore(Commands.getInstance().voteCommandLastLine(user, site)).setAmountNone(1)) {
@Override
public void onClick(ClickEvent clickEvent) {
Player player = clickEvent.getPlayer();
openVoteLast(player, getSelectedPlayer(player));
}
});
}
inv.openInventory(player);
}
public void openVoteNext(Player player, User user) {
setSelectedPlayer(player, user);
BInventory inv = new BInventory(StringUtils.getInstance()
.replacePlaceHolder(Config.getInstance().getGUIVoteNextName(), "player", user.getPlayerName()));
for (VoteSite site : plugin.getVoteSites()) {
inv.addButton(inv.getNextSlot(),
new BInventoryButton(new ItemBuilder(site.getItem()).setName(site.getDisplayName())
.setLore(Commands.getInstance().voteCommandNextInfo(user, site)).setAmountNone(1)) {
@Override
public void onClick(ClickEvent clickEvent) {
Player player = clickEvent.getPlayer();
openVoteNext(player, getSelectedPlayer(player));
}
});
}
inv.openInventory(player);
}
public void openVoteStreak(Player player, User user) {
setSelectedPlayer(player, user);
BInventory inv = new BInventory(StringUtils.getInstance()
.replacePlaceHolder(Config.getInstance().getGUIVoteStreakName(), "player", user.getPlayerName()));
inv.addButton(new BInventoryButton(new ItemBuilder(Config.getInstance().getGUIVoteStreakCurrentDayStreakItem())
.addPlaceholder("Streak", "" + user.getDayVoteStreak())) {
@Override
public void onClick(ClickEvent clickEvent) {
Player player = clickEvent.getPlayer();
openVoteBest(player, getSelectedPlayer(player));
}
});
inv.addButton(new BInventoryButton(new ItemBuilder(Config.getInstance().getGUIVoteStreakCurrentWeekStreakItem())
.addPlaceholder("Streak", "" + user.getWeekVoteStreak())) {
@Override
public void onClick(ClickEvent clickEvent) {
Player player = clickEvent.getPlayer();
openVoteBest(player, getSelectedPlayer(player));
}
});
inv.addButton(
new BInventoryButton(new ItemBuilder(Config.getInstance().getGUIVoteStreakCurrentMonthStreakItem())
.addPlaceholder("Streak", "" + user.getMonthVoteStreak())) {
@Override
public void onClick(ClickEvent clickEvent) {
Player player = clickEvent.getPlayer();
openVoteBest(player, getSelectedPlayer(player));
}
});
inv.addButton(new BInventoryButton(new ItemBuilder(Config.getInstance().getGUIVoteStreakHighestDayStreakItem())
.addPlaceholder("Streak", "" + user.getBestDayVoteStreak())) {
@Override
public void onClick(ClickEvent clickEvent) {
Player player = clickEvent.getPlayer();
openVoteBest(player, getSelectedPlayer(player));
}
});
inv.addButton(new BInventoryButton(new ItemBuilder(Config.getInstance().getGUIVoteStreakHighestWeekStreakItem())
.addPlaceholder("Streak", "" + user.getBestWeekVoteStreak())) {
@Override
public void onClick(ClickEvent clickEvent) {
Player player = clickEvent.getPlayer();
openVoteBest(player, getSelectedPlayer(player));
}
});
inv.addButton(
new BInventoryButton(new ItemBuilder(Config.getInstance().getGUIVoteStreakHighestMonthStreakItem())
.addPlaceholder("Streak", "" + user.getBestMonthVoteStreak())) {
@Override
public void onClick(ClickEvent clickEvent) {
Player player = clickEvent.getPlayer();
openVoteBest(player, getSelectedPlayer(player));
}
});
inv.openInventory(player);
}
public void openVoteToday(Player player) {
BInventory inv = new BInventory(Config.getInstance().getGUIVoteTodayName());
for (User user : plugin.voteToday.keySet()) {
for (VoteSite voteSite : plugin.voteToday.get(user).keySet()) {
DateTimeFormatter formatter = DateTimeFormatter.ofPattern(Config.getInstance().getFormatTimeFormat());
String timeString = plugin.voteToday.get(user).get(voteSite).format(formatter);
String msg = "&6" + user.getPlayerName() + " : " + voteSite.getDisplayName() + " : " + timeString;
inv.addButton(inv.getNextSlot(), new BInventoryButton(user.getPlayerName(), new String[] { msg },
MiscUtils.getInstance().setSkullOwner(user.getPlayerName())) {
@Override
public void onClick(ClickEvent clickEvent) {
User user = UserManager.getInstance()
.getVotingPluginUser(clickEvent.getClickedItem().getItemMeta().getDisplayName());
openVoteGUI(player, user);
}
});
}
}
inv.openInventory(player);
}
public void openVoteTop(Player player, TopVoter top) {
if (top == null) {
top = TopVoter.getDefault();
}
BInventory inv = null;
Set<Entry<User, Integer>> users = null;
String topVoter = "";
if (top.equals(TopVoter.Monthly)) {
topVoter = "Monthly";
users = plugin.topVoterMonthly.entrySet();
} else if (top.equals(TopVoter.Weekly)) {
topVoter = "Weekly";
users = plugin.topVoterWeekly.entrySet();
} else if (top.equals(TopVoter.Daily)) {
topVoter = "Daily";
users = plugin.topVoterDaily.entrySet();
} else {
topVoter = "AllTime";
users = plugin.topVoterAllTime.entrySet();
}
inv = new BInventory(StringUtils.getInstance().replacePlaceHolder(Config.getInstance().getGUIVoteTopName(),
"topvoter", topVoter));
int pos = 1;
for (Entry<User, Integer> entry : users) {
inv.addButton(new BInventoryButton(
new ItemBuilder(MiscUtils.getInstance().setSkullOwner(entry.getKey().getPlayerName()))
.setName(Config.getInstance().getGUIVoteTopItemName())
.addLoreLine(Config.getInstance().getGUIVoteTopItemLore())
.addPlaceholder("position", "" + pos)
.addPlaceholder("player", entry.getKey().getPlayerName())
.addPlaceholder("votes", "" + entry.getValue())) {
@Override
public void onClick(ClickEvent clickEvent) {
User user = UserManager.getInstance()
.getVotingPluginUser(clickEvent.getClickedItem().getItemMeta().getDisplayName());
openVoteGUI(player, user);
}
});
pos++;
}
final TopVoter cur = top;
inv.getPageButtons().add(new BInventoryButton(
new ItemBuilder(Config.getInstance().getGUIVoteTopSwitchItem()).addPlaceholder("Top", cur.toString())) {
@Override
public void onClick(ClickEvent clickEvent) {
openVoteTop(player, cur.next());
}
});
inv.setPages(true);
inv.setMaxInvSize(Config.getInstance().getGUIVoteTopSize());
inv.openInventory(player);
}
public void openVoteTotal(Player player, User user) {
setSelectedPlayer(player, user);
BInventory inv = new BInventory(StringUtils.getInstance()
.replacePlaceHolder(Config.getInstance().getGUIVoteTotalName(), "player", user.getPlayerName()));
inv.addButton(new BInventoryButton(new ItemBuilder(Config.getInstance().getGUIVoteTotalDayTotalItem())
.addPlaceholder("Total", "" + user.getDailyTotal())) {
@Override
public void onClick(ClickEvent clickEvent) {
Player player = clickEvent.getPlayer();
openVoteTotal(player, getSelectedPlayer(player));
}
});
inv.addButton(new BInventoryButton(new ItemBuilder(Config.getInstance().getGUIVoteTotalWeekTotalItem())
.addPlaceholder("Total", "" + user.getWeeklyTotal())) {
@Override
public void onClick(ClickEvent clickEvent) {
Player player = clickEvent.getPlayer();
openVoteTotal(player, getSelectedPlayer(player));
}
});
inv.addButton(new BInventoryButton(new ItemBuilder(Config.getInstance().getGUIVoteTotalMonthTotalItem())
.addPlaceholder("Total", "" + user.getMonthTotal())) {
@Override
public void onClick(ClickEvent clickEvent) {
Player player = clickEvent.getPlayer();
openVoteTotal(player, getSelectedPlayer(player));
}
});
inv.addButton(new BInventoryButton(new ItemBuilder(Config.getInstance().getGUIVoteTotalAllTimeTotalItem())
.addPlaceholder("Total", "" + user.getAllTimeTotal())) {
@Override
public void onClick(ClickEvent clickEvent) {
Player player = clickEvent.getPlayer();
openVoteTotal(player, getSelectedPlayer(player));
}
});
inv.openInventory(player);
}
/**
* Vote URL.
*
* @param player
* the player
*/
public void openVoteURL(Player player) {
BInventory inv = new BInventory(Config.getInstance().getGUIVoteURLName());
User user = UserManager.getInstance().getVotingPluginUser(player);
int count = 0;
if (Config.getInstance().getVoteURLViewAllUrlsButtonEnabled()) {
ItemBuilder builderAll = new ItemBuilder(
Config.getInstance().getVoteURLAlreadyVotedAllUrlsButtonItemSection());
if (user.canVoteAll()) {
builderAll = new ItemBuilder(Config.getInstance().getVoteURLCanVoteAllUrlsButtonItemSection());
}
builderAll.setName("&4All Voting Sites");
builderAll.setLore("&cClick Me");
inv.addButton(count, new BInventoryButton(builderAll) {
@Override
public void onClick(ClickEvent event) {
User user = UserManager.getInstance().getVotingPluginUser(event.getPlayer());
Player player = event.getWhoClicked();
player.closeInventory();
user.sendMessage(Commands.getInstance().voteURLs());
}
});
count++;
}
for (VoteSite voteSite : plugin.getVoteSites()) {
ItemBuilder builder = new ItemBuilder(Config.getInstance().getVoteURLAlreadyVotedItemSection());
if (user.canVoteSite(voteSite)) {
builder = new ItemBuilder(Config.getInstance().getVoteURLCanVoteItemSection());
} else {
builder.addLoreLine(Config.getInstance().getVoteURLNextVote().replace("%Info%",
Commands.getInstance().voteCommandNextInfo(user, voteSite)));
}
builder.setName(Config.getInstance().getVoteURLSiteName().replace("%Name%", voteSite.getDisplayName()));
inv.addButton(count, new BInventoryButton(builder) {
@Override
public void onClick(ClickEvent event) {
Player player = event.getWhoClicked();
if (player != null) {
player.closeInventory();
User user = UserManager.getInstance().getVotingPluginUser(player);
user.sendMessage(voteSite.getVoteURL());
}
}
});
count++;
}
BInventory.openInventory(player, inv);
}
public void openVoteURL(Player player, String voteSite) {
User user = UserManager.getInstance().getVotingPluginUser(player);
VoteSite site = plugin.getVoteSite(voteSite);
BInventory inv = new BInventory(StringUtils.getInstance()
.replacePlaceHolder(Config.getInstance().getGUIVoteURLSiteName(), "site", site.getDisplayName()));
inv.setMeta(player, "VoteSite", site);
inv.addButton(
new BInventoryButton(new ItemBuilder(Material.BOW).setName("&4URL").addLoreLine("Click to see URL")) {
@Override
public void onClick(ClickEvent clickEvent) {
VoteSite site = (VoteSite) clickEvent.getMeta("VoteSite");
clickEvent.getWhoClicked().sendMessage(site.getVoteURL());
}
});
inv.addButton(new BInventoryButton(new ItemBuilder(Material.COMPASS).setName("&4Next Vote")
.addLoreLine(Commands.getInstance().voteCommandNextInfo(user, site))) {
@Override
public void onClick(ClickEvent clickEvent) {
openVoteURL(clickEvent.getPlayer());
}
});
inv.addButton(new BInventoryButton(new ItemBuilder(Material.WATCH).setName("&4Last Vote")
.addLoreLine(Commands.getInstance().voteCommandLastLine(user, site))) {
@Override
public void onClick(ClickEvent clickEvent) {
openVoteURL(clickEvent.getPlayer());
}
});
inv.openInventory(player);
}
public void setSelectedPlayer(Player player, User user) {
PlayerUtils.getInstance().setPlayerMeta(player, "SelectedPlayerGUIs", user);
}
/**
* Vote reward.
*
* @param player
* the player
* @param siteName
* the site name
*/
public void voteReward(Player player, String siteName) {
BInventory inv = new BInventory(Config.getInstance().getGUIVoteRewardName());
if ((siteName == null) || (siteName == "")) {
int count = 0;
for (VoteSite voteSite : plugin.getVoteSites()) {
try {
ItemBuilder builder = new ItemBuilder(voteSite.getItem());
final VoteSite site = voteSite;
inv.addButton(count, new BInventoryButton(builder) {
@Override
public void onClick(ClickEvent event) {
Player player = event.getWhoClicked();
if (player != null) {
player.closeInventory();
player.performCommand("vote reward " + site.getKey());
}
}
});
count++;
} catch (Exception ex) {
}
}
} else {
for (String itemName : Config.getInstance().getVoteSiteItems(siteName)) {
ItemBuilder builder = new ItemBuilder(Config.getInstance().getVoteSiteItemsSection(siteName, itemName));
inv.addButton(Config.getInstance().getVoteSiteItemsSlot(siteName, itemName),
new BInventoryButton(builder) {
@Override
public void onClick(ClickEvent event) {
Player player = event.getWhoClicked();
if (player != null) {
player.closeInventory();
}
}
});
}
}
BInventory.openInventory(player, inv);
}
}
@@ -0,0 +1,54 @@
package com.Ben12345rocks.VotingPlugin.Commands.TabCompleter;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.command.TabCompleter;
import com.Ben12345rocks.AdvancedCore.Objects.CommandHandler;
import com.Ben12345rocks.AdvancedCore.Util.Misc.StringUtils;
import com.Ben12345rocks.VotingPlugin.Main;
/**
* The Class AdminVoteTabCompleter.
*/
public class AdminVoteTabCompleter implements TabCompleter {
/** The plugin. */
Main plugin = Main.plugin;
/*
* (non-Javadoc)
*
* @see org.bukkit.command.TabCompleter#onTabComplete(org.bukkit.command.
* CommandSender, org.bukkit.command.Command, java.lang.String,
* java.lang.String[])
*/
@Override
public List<String> onTabComplete(CommandSender sender, Command cmd, String alias, String[] args) {
List<String> tab = new ArrayList<String>();
Set<String> cmds = new HashSet<String>();
for (CommandHandler cmdHandle : plugin.adminVoteCommand) {
cmds.addAll(cmdHandle.getTabCompleteOptions(sender, args, args.length - 1));
}
for (String str : cmds) {
if (StringUtils.getInstance().startsWithIgnoreCase(str, args[args.length - 1])) {
tab.add(str);
}
}
Collections.sort(tab, String.CASE_INSENSITIVE_ORDER);
return tab;
}
}
@@ -0,0 +1,103 @@
package com.Ben12345rocks.VotingPlugin.Commands.TabCompleter;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.command.TabCompleter;
import com.Ben12345rocks.AdvancedCore.Objects.CommandHandler;
import com.Ben12345rocks.AdvancedCore.Util.Misc.ArrayUtils;
import com.Ben12345rocks.AdvancedCore.Util.Misc.StringUtils;
import com.Ben12345rocks.VotingPlugin.Main;
/**
* The Class AliasesTabCompleter.
*/
public class AliasesTabCompleter implements TabCompleter {
/** The plugin. */
Main plugin = Main.plugin;
/** The cmd handle. */
public CommandHandler cmdHandle;
/*
* (non-Javadoc)
*
* @see org.bukkit.command.TabCompleter#onTabComplete(org.bukkit.command.
* CommandSender, org.bukkit.command.Command, java.lang.String,
* java.lang.String[])
*/
@Override
public List<String> onTabComplete(CommandSender sender, Command cmd, String alias, String[] argsIn) {
ArrayList<String> msgArray = new ArrayList<String>();
msgArray.add("");
for (String arg : argsIn) {
msgArray.add(arg);
}
String[] args = ArrayUtils.getInstance().convert(msgArray);
ArrayList<String> tab = new ArrayList<String>();
Set<String> cmds = new HashSet<String>();
ArrayList<CommandHandler> cmdHandlers = new ArrayList<CommandHandler>();
cmdHandlers.addAll(plugin.voteCommand);
cmdHandlers.addAll(plugin.adminVoteCommand);
for (CommandHandler cmdHandle : cmdHandlers) {
if (cmdHandle.getArgs().length >= argsIn.length) {
for (String arg : cmdHandle.getArgs()[0].split("&")) {
if (cmd.getName().equalsIgnoreCase("vote" + arg)
|| cmd.getName().equalsIgnoreCase("adminvote" + arg)) {
// plugin.debug("Found cmd... attempting to get tab
// complete");
args[0] = arg;
boolean argsMatch = true;
for (int i = 0; i < argsIn.length; i++) {
if (args.length >= i) {
if (!cmdHandle.argsMatch(args[i], i)) {
argsMatch = false;
}
}
}
if (argsMatch) {
cmds.addAll(cmdHandle.getTabCompleteOptions(sender, args, argsIn.length));
}
}
}
}
}
for (String str : cmds) {
if (StringUtils.getInstance().startsWithIgnoreCase(str, args[args.length - 1])) {
tab.add(str);
}
}
Collections.sort(tab, String.CASE_INSENSITIVE_ORDER);
return tab;
}
/**
* Sets the CMD handle.
*
* @param cmd
* the cmd
* @return the aliases tab completer
*/
public AliasesTabCompleter setCMDHandle(CommandHandler cmd) {
cmdHandle = cmd;
return this;
}
}
@@ -0,0 +1,61 @@
package com.Ben12345rocks.VotingPlugin.Commands.TabCompleter;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.command.TabCompleter;
import com.Ben12345rocks.AdvancedCore.Objects.CommandHandler;
import com.Ben12345rocks.AdvancedCore.Util.Misc.StringUtils;
import com.Ben12345rocks.VotingPlugin.Main;
// TODO: Auto-generated Javadoc
/**
* The Class VoteTabCompleter.
*/
public class VoteTabCompleter implements TabCompleter {
/** The plugin. */
Main plugin = Main.plugin;
/*
* (non-Javadoc)
*
* @see org.bukkit.command.TabCompleter#onTabComplete(org.bukkit.command.
* CommandSender, org.bukkit.command.Command, java.lang.String,
* java.lang.String[])
*/
@Override
public List<String> onTabComplete(CommandSender sender, Command cmd, String alias, String[] args) {
if (cmd.getName().equalsIgnoreCase("vote") || cmd.getName().equalsIgnoreCase("v")) {
ArrayList<String> tab = new ArrayList<String>();
Set<String> cmds = new HashSet<String>();
for (CommandHandler cmdHandle : plugin.voteCommand) {
cmds.addAll(cmdHandle.getTabCompleteOptions(sender, args, args.length - 1));
}
for (String str : cmds) {
if (StringUtils.getInstance().startsWithIgnoreCase(str, args[args.length - 1])) {
tab.add(str);
}
}
Collections.sort(tab, String.CASE_INSENSITIVE_ORDER);
return tab;
}
return null;
}
}
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,425 @@
package com.Ben12345rocks.VotingPlugin.Config;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import org.bukkit.ChatColor;
import org.bukkit.configuration.ConfigurationSection;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.configuration.file.YamlConfiguration;
import com.Ben12345rocks.AdvancedCore.Util.Misc.ArrayUtils;
import com.Ben12345rocks.AdvancedCore.YML.YMLFile;
import com.Ben12345rocks.VotingPlugin.Main;
import com.Ben12345rocks.VotingPlugin.Objects.VoteSite;
// TODO: Auto-generated Javadoc
/**
* The Class ConfigVoteSites.
*/
public class ConfigVoteSites extends YMLFile {
/** The instance. */
static ConfigVoteSites instance = new ConfigVoteSites();
/** The plugin. */
static Main plugin = Main.plugin;
/**
* Gets the single instance of ConfigVoteSites.
*
* @return single instance of ConfigVoteSites
*/
public static ConfigVoteSites getInstance() {
return instance;
}
/**
* Instantiates a new config vote sites.
*/
public ConfigVoteSites() {
super(new File(Main.plugin.getDataFolder(), "VoteSites.yml"));
}
/**
* Generate vote site.
*
* @param siteName
* the site name
*/
public void generateVoteSite(String siteName) {
if (Config.getInstance().getAutoCreateVoteSites()) {
String org = siteName;
siteName = siteName.replace(".", "_");
plugin.getLogger().warning("VoteSite " + siteName
+ " doe not exist, creating one, set AutoCreateVoteSites to false to prevent this");
setEnabled(siteName, true);
setServiceSite(siteName, org);
setVoteURL(siteName, "VoteURL");
setVoteDelay(siteName, 24);
set(siteName, "Rewards.Messages.Player", "&aThanks for voting on %ServiceSite%!");
plugin.loadVoteSites();
}
}
/**
* Gets the data.
*
* @param siteName
* the site name
* @return the data
*/
public ConfigurationSection getData(String siteName) {
return getData().getConfigurationSection("VoteSites." + siteName);
}
public String getDisplayName(String site) {
return getData(site).getString("Name");
}
public ConfigurationSection getItem(String site) {
return getData(site).getConfigurationSection("Item");
}
/**
* Gets the priority.
*
* @param siteName
* the site name
* @return the priority
*/
public int getPriority(String siteName) {
return getData(siteName).getInt("Priority");
}
/**
* Gets the rewards.
*
* @param siteName
* the site name
* @return the rewards
*/
public String getRewardsPath(String siteName) {
return "VoteSites." + siteName + ".Rewards";
}
public String getEverySiteRewardPath() {
return "EverySiteReward";
}
/**
* Gets the service site.
*
* @param siteName
* the site name
* @return the service site
*/
public String getServiceSite(String siteName) {
return getData(siteName).getString("ServiceSite");
}
/**
* Gets the vote delay.
*
* @param siteName
* the site name
* @return the vote delay
*/
public int getVoteDelay(String siteName) {
return getData(siteName).getInt("VoteDelay");
}
/**
* Gets the vote site enabled.
*
* @param siteName
* the site name
* @return the vote site enabled
*/
public boolean getVoteSiteEnabled(String siteName) {
return getData(siteName).getBoolean("Enabled");
}
/**
* Gets the vote site file.
*
* @param siteName
* the site name
* @return the vote site file
*/
public File getVoteSiteFile(String siteName) {
File dFile = new File(plugin.getDataFolder() + File.separator + "VoteSites", siteName + ".yml");
FileConfiguration data = YamlConfiguration.loadConfiguration(dFile);
if (!dFile.exists()) {
try {
data.save(dFile);
} catch (IOException e) {
plugin.getLogger().severe(ChatColor.RED + "Could not create VoteSites/" + siteName + ".yml!");
}
}
return dFile;
}
/**
* Gets the vote sites load.
*
* @return the vote sites load
*/
public ArrayList<VoteSite> getVoteSitesLoad() {
ArrayList<VoteSite> voteSites = new ArrayList<VoteSite>();
ArrayList<String> voteSiteNames = getVoteSitesNames();
if (voteSiteNames != null) {
for (String site : voteSiteNames) {
if (getVoteSiteEnabled(site) && !site.equalsIgnoreCase("null")) {
if (!siteCheck(site)) {
plugin.getLogger().warning("Failed to load site " + site + ", see above");
} else {
voteSites.add(new VoteSite(site));
}
}
}
}
Collections.sort(voteSites, new Comparator<VoteSite>() {
@Override
public int compare(VoteSite v1, VoteSite v2) {
int v1P = v1.getPriority();
int v2P = v2.getPriority();
if (v1P < v2P) {
return 1;
}
if (v1P > v2P) {
return -1;
}
return 0;
}
});
return voteSites;
}
/**
* Gets the vote sites names.
*
* @return the vote sites names
*/
public ArrayList<String> getVoteSitesNames() {
ArrayList<String> siteNames = new ArrayList<String>();
if (getData().isConfigurationSection("VoteSites")) {
siteNames = ArrayUtils.getInstance().convert(getData().getConfigurationSection("VoteSites").getKeys(false));
}
for (int i = siteNames.size() - 1; i >= 0; i--) {
// plugin.getLogger().info(siteNames.get(i));
if (!getVoteSiteEnabled(siteNames.get(i)) || siteNames.get(i).equalsIgnoreCase("null")
|| !siteCheck(siteNames.get(i))) {
// plugin.getLogger().info("Removed: " + siteNames.get(i));
siteNames.remove(i);
}
}
return siteNames;
}
/**
* Gets the vote URL.
*
* @param siteName
* the site name
* @return the vote URL
*/
public String getVoteURL(String siteName) {
return getData(siteName).getString("VoteURL");
}
/**
* Checks if is service site good.
*
* @param siteName
* the site name
* @return true, if is service site good
*/
public boolean isServiceSiteGood(String siteName) {
if (getServiceSite(siteName) == null || getServiceSite(siteName).equals("")) {
return false;
}
return true;
}
/**
* Checks if is vote URL good.
*
* @param siteName
* the site name
* @return true, if is vote URL good
*/
public boolean isVoteURLGood(String siteName) {
if (getVoteURL(siteName) == null || getVoteURL(siteName).equals("")) {
return false;
}
return true;
}
@Override
public void onFileCreation() {
plugin.saveResource("VoteSites.yml", true);
}
/**
* Rename vote site.
*
* @param siteName
* the site name
* @param newName
* the new name
* @return true, if successful
*/
public boolean renameVoteSite(String siteName, String newName) {
return getVoteSiteFile(siteName)
.renameTo(new File(plugin.getDataFolder() + File.separator + "VoteSites", newName + ".yml"));
}
/**
* Sets the.
*
* @param siteName
* the site name
* @param path
* the path
* @param value
* the value
*/
public void set(String siteName, String path, Object value) {
// String playerName = user.getPlayerName();
ConfigurationSection data = getData(siteName);
if (data == null) {
getData().createSection("VoteSites." + siteName);
data = getData(siteName);
}
data.set(path, value);
saveData();
}
/**
* Sets the cumulative rewards.
*
* @param siteName
* the site name
* @param value
* the value
*/
public void setCumulativeRewards(String siteName, ArrayList<String> value) {
set(siteName, "Cumulative.Rewards", value);
}
public void setCumulativeVotes(String siteName, int value) {
set(siteName, "Cumulative.Votes", value);
}
public void setDisplayName(String siteName, String value) {
set(siteName, "Name", value);
}
/**
* Sets the enabled.
*
* @param siteName
* the site name
* @param disabled
* the disabled
*/
public void setEnabled(String siteName, boolean disabled) {
set(siteName, "Enabled", disabled);
}
/**
* Sets the priority.
*
* @param siteName
* the site name
* @param value
* the value
*/
public void setPriority(String siteName, int value) {
set(siteName, "Priority", value);
}
/**
* Sets the rewards.
*
* @param siteName
* the site name
* @param value
* the value
*/
public void setRewards(String siteName, ArrayList<String> value) {
set(siteName, "Rewards", value);
}
/**
* Sets the service site.
*
* @param siteName
* the site name
* @param serviceSite
* the service site
*/
public void setServiceSite(String siteName, String serviceSite) {
set(siteName, "ServiceSite", serviceSite);
}
/**
* Sets the vote delay.
*
* @param siteName
* the site name
* @param voteDelay
* the vote delay
*/
public void setVoteDelay(String siteName, int voteDelay) {
set(siteName, "VoteDelay", voteDelay);
}
/**
* Sets the vote URL.
*
* @param siteName
* the site name
* @param url
* the url
*/
public void setVoteURL(String siteName, String url) {
set(siteName, "VoteURL", url);
}
/**
* Site check.
*
* @param siteName
* the site name
* @return true, if successful
*/
public boolean siteCheck(String siteName) {
boolean pass = true;
if (!isServiceSiteGood(siteName)) {
plugin.getLogger().warning("Issue with ServiceSite in site " + siteName + ", votes may not work properly");
pass = false;
}
if (!isVoteURLGood(siteName)) {
plugin.getLogger().warning("Issue with VoteURL in site " + siteName);
}
return pass;
}
}
@@ -0,0 +1,227 @@
package com.Ben12345rocks.VotingPlugin.Data;
import java.util.HashSet;
import java.util.Set;
import org.bukkit.Bukkit;
import org.bukkit.Location;
import org.bukkit.configuration.ConfigurationSection;
import com.Ben12345rocks.VotingPlugin.Main;
import com.Ben12345rocks.VotingPlugin.Objects.SignHandler;
// TODO: Auto-generated Javadoc
/**
* The Class ServerData.
*/
public class ServerData {
/** The instance. */
static ServerData instance = new ServerData();
/** The plugin. */
static Main plugin = Main.plugin;
/**
* Gets the single instance of ServerData.
*
* @return single instance of ServerData
*/
public static ServerData getInstance() {
return instance;
}
/**
* Instantiates a new server data.
*/
private ServerData() {
}
/**
* Instantiates a new server data.
*
* @param plugin
* the plugin
*/
public ServerData(Main plugin) {
ServerData.plugin = plugin;
}
/**
* Adds the sign.
*
* @param location
* the location
* @param data
* the data
* @param position
* the position
*/
public void addSign(Location location, String data, int position) {
int count = nextSignNumber();
getData().set("Signs." + count + ".World", location.getWorld().getName());
getData().set("Signs." + count + ".X", location.getBlockX());
getData().set("Signs." + count + ".Y", location.getBlockY());
getData().set("Signs." + count + ".Z", location.getBlockZ());
getData().set("Signs." + count + ".Data", data);
getData().set("Signs." + count + ".Position", position);
saveData();
plugin.signs.add(new SignHandler("" + count, getSignLocation("" + count), getSignData("" + count),
getSignPosition("" + count)));
}
/**
* Gets the data.
*
* @return the data
*/
public ConfigurationSection getData() {
ConfigurationSection data = com.Ben12345rocks.AdvancedCore.Data.ServerData.getInstance().getData()
.getConfigurationSection("VotingPlugin");
if (data == null) {
com.Ben12345rocks.AdvancedCore.Data.ServerData.getInstance().getData().createSection("VotingPlugin");
data = com.Ben12345rocks.AdvancedCore.Data.ServerData.getInstance().getData()
.getConfigurationSection("VotingPlugin");
}
return data;
}
/**
* Gets the sign data.
*
* @param sign
* the sign
* @return the sign data
*/
public String getSignData(String sign) {
return getData().getString("Signs." + sign + ".Data");
}
/**
* Gets the sign location.
*
* @param sign
* the sign
* @return the sign location
*/
public Location getSignLocation(String sign) {
return new Location(Bukkit.getWorld(getData().getString("Signs." + sign + ".World")),
getData().getDouble("Signs." + sign + ".X"), getData().getDouble("Signs." + sign + ".Y"),
getData().getDouble("Signs." + sign + ".Z"));
}
/**
* Gets the sign position.
*
* @param sign
* the sign
* @return the sign position
*/
public int getSignPosition(String sign) {
return getData().getInt("Signs." + sign + ".Position");
}
/**
* Gets the signs.
*
* @return the signs
*/
public Set<String> getSigns() {
try {
return getData().getConfigurationSection("Signs").getKeys(false);
} catch (Exception ex) {
return new HashSet<String>();
}
}
/**
* Next sign number.
*
* @return the int
*/
public int nextSignNumber() {
Set<String> signs = getSigns();
if (signs != null) {
for (int i = 0; i < 100000; i++) {
if (!signs.contains(Integer.toString(i))) {
return i;
}
}
}
return 0;
}
/**
* Reload data.
*/
public void reloadData() {
com.Ben12345rocks.AdvancedCore.Data.ServerData.getInstance().reloadData();
}
/**
* Removes the sign.
*
* @param sign
* the sign
*/
public void removeSign(String sign) {
getData().set("Signs." + sign + ".World", null);
getData().set("Signs." + sign + ".X", null);
getData().set("Signs." + sign + ".Y", null);
getData().set("Signs." + sign + ".Z", null);
getData().set("Signs." + sign + ".Data", null);
getData().set("Signs." + sign + ".Position", null);
getData().set("Signs." + sign, null);
saveData();
}
/**
* Save data.
*/
public synchronized void saveData() {
com.Ben12345rocks.AdvancedCore.Data.ServerData.getInstance().saveData();
}
/**
* Sets the sign.
*
* @param count
* the count
* @param location
* the location
* @param data
* the data
* @param position
* the position
*/
public void setSign(String count, Location location, String data, int position) {
getData().set("Signs." + count + ".World", location.getWorld().getName());
int x = (int) location.getX();
int z = (int) location.getZ();
getData().set("Signs." + count + ".X", x);
getData().set("Signs." + count + ".Y", location.getY());
getData().set("Signs." + count + ".Z", z);
getData().set("Signs." + count + ".Data", data);
getData().set("Signs." + count + ".Position", position);
saveData();
}
/**
* Sets the version.
*/
public void setVersion() {
getData().set("Version", Bukkit.getVersion());
saveData();
}
/**
* Update values.
*/
public void updateValues() {
setVersion();
}
}
@@ -0,0 +1,60 @@
package com.Ben12345rocks.VotingPlugin.Events;
import org.bukkit.Bukkit;
import org.bukkit.Location;
import org.bukkit.block.Sign;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.block.BlockBreakEvent;
import com.Ben12345rocks.VotingPlugin.Main;
import com.Ben12345rocks.VotingPlugin.Objects.SignHandler;
// TODO: Auto-generated Javadoc
/**
* The Class BlockBreak.
*/
public class BlockBreak implements Listener {
/** The plugin. */
private static Main plugin;
/**
* Instantiates a new block break.
*
* @param plugin
* the plugin
*/
public BlockBreak(Main plugin) {
BlockBreak.plugin = plugin;
}
/**
* On block break.
*
* @param event
* the event
*/
@EventHandler(priority = EventPriority.NORMAL, ignoreCancelled = true)
public void onBlockBreak(BlockBreakEvent event) {
if (event.getBlock().getState() instanceof Sign) {
Sign s = (Sign) event.getBlock().getState();
final Location loc = s.getLocation();
Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() {
@Override
public void run() {
for (SignHandler sign : plugin.signs) {
if (sign.getLocation().equals(loc)) {
sign.removeSign();
sign.setValid(false);
}
}
}
});
}
}
}
@@ -0,0 +1,58 @@
package com.Ben12345rocks.VotingPlugin.Events;
import org.bukkit.block.Sign;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.block.Action;
import org.bukkit.event.player.PlayerInteractEvent;
import com.Ben12345rocks.VotingPlugin.Main;
import com.Ben12345rocks.VotingPlugin.Objects.SignHandler;
import com.Ben12345rocks.VotingPlugin.UserManager.UserManager;
// TODO: Auto-generated Javadoc
/**
* The Class PlayerInteract.
*/
public class PlayerInteract implements Listener {
/** The plugin. */
private static Main plugin;
/**
* Instantiates a new player interact.
*
* @param plugin
* the plugin
*/
public PlayerInteract(Main plugin) {
PlayerInteract.plugin = plugin;
}
/**
* On player interact.
*
* @param event
* the event
*/
@EventHandler(priority = EventPriority.LOW, ignoreCancelled = true)
public void onPlayerInteract(PlayerInteractEvent event) {
Player player = event.getPlayer();
if (event.getAction() == Action.RIGHT_CLICK_BLOCK) {
// plugin.debug("Checking for sign click");
if (event.getClickedBlock().getState() instanceof Sign) {
// plugin.debug(player.getName() + " right clicked a sign");
for (SignHandler sign : plugin.signs) {
if (sign.isLocationSame(event.getClickedBlock().getLocation())) {
// plugin.debug(player.getName() +
// " right clicked a top voter sign, sending message");
UserManager.getInstance().getVotingPluginUser(player).sendMessage(sign.getRightClickMessage());
}
}
}
}
}
}
@@ -0,0 +1,70 @@
package com.Ben12345rocks.VotingPlugin.Events;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerLoginEvent;
import com.Ben12345rocks.AdvancedCore.AdvancedCoreHook;
import com.Ben12345rocks.AdvancedCore.Objects.UserStorage;
import com.Ben12345rocks.VotingPlugin.Main;
import com.Ben12345rocks.VotingPlugin.Objects.User;
import com.Ben12345rocks.VotingPlugin.UserManager.UserManager;
// TODO: Auto-generated Javadoc
/**
* The Class PlayerJoinEvent.
*/
public class PlayerJoinEvent implements Listener {
/** The plugin. */
private static Main plugin;
/**
* Instantiates a new player join event.
*
* @param plugin
* the plugin
*/
public PlayerJoinEvent(Main plugin) {
PlayerJoinEvent.plugin = plugin;
}
/**
* On player login.
*
* @param event
* the event
*/
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
public void onPlayerLogin(PlayerLoginEvent event) {
plugin.getServer().getScheduler().runTaskLaterAsynchronously(plugin, new Runnable() {
@Override
public void run() {
if (event.getPlayer() == null
|| (AdvancedCoreHook.getInstance().getStorageType().equals(UserStorage.MYSQL)
&& AdvancedCoreHook.getInstance().getMysql() == null)) {
return;
}
Player player = event.getPlayer();
if (player != null) {
User user = UserManager.getInstance().getVotingPluginUser(player);
if (UserManager.getInstance().getAllUUIDs().contains(player.getUniqueId().toString())) {
// give offline vote (if they voted
// offline)
user.offVote();
}
// run remind
user.loginMessage();
}
}
}, 20L);
}
}
@@ -0,0 +1,117 @@
package com.Ben12345rocks.VotingPlugin.Events;
import org.bukkit.event.Event;
import org.bukkit.event.HandlerList;
import com.Ben12345rocks.VotingPlugin.Objects.User;
import com.Ben12345rocks.VotingPlugin.Objects.VoteSite;
// TODO: Auto-generated Javadoc
/**
* The Class PlayerVoteEvent.
*/
public class PlayerVoteEvent extends Event {
/** The Constant handlers. */
private static final HandlerList handlers = new HandlerList();
/**
* Gets the handler list.
*
* @return the handler list
*/
public static HandlerList getHandlerList() {
return handlers;
}
/** The player. */
private User player;
/** The vote site. */
private VoteSite voteSite;
/** The cancelled. */
private boolean cancelled;
/**
* Instantiates a new player vote event.
*
* @param voteSite
* the vote site
* @param player
* the player
*/
public PlayerVoteEvent(VoteSite voteSite, User player) {
super();
setPlayer(player);
setVoteSite(voteSite);
}
/*
* (non-Javadoc)
*
* @see org.bukkit.event.Event#getHandlers()
*/
@Override
public HandlerList getHandlers() {
return handlers;
}
/**
* Gets the player.
*
* @return the player
*/
public User getPlayer() {
return player;
}
/**
* Gets the vote site.
*
* @return the vote site
*/
public VoteSite getVoteSite() {
return voteSite;
}
/**
* Checks if is cancelled.
*
* @return true, if is cancelled
*/
public boolean isCancelled() {
return cancelled;
}
/**
* Sets the cancelled.
*
* @param bln
* the new cancelled
*/
public void setCancelled(boolean bln) {
cancelled = bln;
}
/**
* Sets the player.
*
* @param player
* the new player
*/
public void setPlayer(User player) {
this.player = player;
}
/**
* Sets the vote site.
*
* @param voteSite
* the new vote site
*/
public void setVoteSite(VoteSite voteSite) {
this.voteSite = voteSite;
}
}
@@ -0,0 +1,74 @@
package com.Ben12345rocks.VotingPlugin.Events;
import org.bukkit.Bukkit;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.block.SignChangeEvent;
import com.Ben12345rocks.AdvancedCore.Util.Misc.PlayerUtils;
import com.Ben12345rocks.AdvancedCore.Util.Misc.StringUtils;
import com.Ben12345rocks.VotingPlugin.Main;
import com.Ben12345rocks.VotingPlugin.Config.Config;
import com.Ben12345rocks.VotingPlugin.Data.ServerData;
import com.Ben12345rocks.VotingPlugin.Signs.Signs;
// TODO: Auto-generated Javadoc
/**
* The Class SignChange.
*/
public class SignChange implements Listener {
/** The plugin. */
private static Main plugin;
/**
* Instantiates a new sign change.
*
* @param plugin
* the plugin
*/
public SignChange(Main plugin) {
SignChange.plugin = plugin;
}
/**
* On sign change.
*
* @param event
* the event
*/
@EventHandler(ignoreCancelled = true)
public void onSignChange(SignChangeEvent event) {
if (event.getLine(0).equalsIgnoreCase("[VotingPlugin]")) {
if (PlayerUtils.getInstance().hasServerPermission(event.getPlayer().getName(), "VotingPlugin.Sign.Create")
|| PlayerUtils.getInstance().hasServerPermission(event.getPlayer().getName(),
"VotingPlugin.Admin")) {
String data = event.getLine(2);
if (!data.equalsIgnoreCase("all") && !data.equalsIgnoreCase("monthly")
&& !data.equalsIgnoreCase("weekly") && !data.equalsIgnoreCase("daily")) {
return;
}
try {
ServerData.getInstance().addSign(event.getBlock().getLocation(), event.getLine(2),
Integer.parseInt(event.getLine(1)));
event.getPlayer().sendMessage(StringUtils.getInstance().colorize("&aAdded sign!"));
Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() {
@Override
public void run() {
Signs.getInstance().updateSigns();
}
});
} catch (Exception ex) {
event.getPlayer().sendMessage(StringUtils.getInstance().colorize("&cError on sign creation!"));
ex.printStackTrace();
}
} else {
event.getPlayer()
.sendMessage(StringUtils.getInstance().colorize(Config.getInstance().getFormatNoPerms()));
}
}
}
}
@@ -0,0 +1,179 @@
package com.Ben12345rocks.VotingPlugin.Events;
import java.util.ArrayList;
import org.bukkit.Bukkit;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import com.Ben12345rocks.VotingPlugin.Main;
import com.Ben12345rocks.VotingPlugin.Config.Config;
import com.Ben12345rocks.VotingPlugin.Config.ConfigVoteSites;
import com.Ben12345rocks.VotingPlugin.Objects.User;
import com.Ben12345rocks.VotingPlugin.Objects.VoteSite;
import com.Ben12345rocks.VotingPlugin.OtherRewards.OtherVoteReward;
import com.Ben12345rocks.VotingPlugin.UserManager.UserManager;
import com.Ben12345rocks.VotingPlugin.VoteParty.VoteParty;
import com.vexsoftware.votifier.model.Vote;
import com.vexsoftware.votifier.model.VotifierEvent;
// TODO: Auto-generated Javadoc
/**
* The Class VotiferEvent.
*/
public class VotiferEvent implements Listener {
/** The config. */
static Config config = Config.getInstance();
/** The config vote sites. */
static ConfigVoteSites configVoteSites = ConfigVoteSites.getInstance();
/** The plugin. */
static Main plugin = Main.plugin;
/**
* Player vote.
*
* @param playerName
* the player name
* @param voteSiteURL
* the vote site URL
*/
public static void playerVote(final String playerName, final String voteSiteURL) {
Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() {
@Override
public void run() {
synchronized (plugin) {
User user = UserManager.getInstance().getVotingPluginUser(playerName);
if (!user.hasLoggedOnBefore() && !config.allowUnJoined()) {
plugin.getLogger().warning("Player " + playerName
+ " has not joined before, disregarding vote, set AllowUnjoined to true to prevent this");
return;
}
VoteSite voteSite = plugin.getVoteSite(voteSiteURL);
if (voteSite == null) {
if (!Config.getInstance().getDisableNoServiceSiteMessage()) {
plugin.getLogger().warning("No voting site with the service site: '" + voteSiteURL + "'");
}
return;
}
// vote party
if (Config.getInstance().getVotePartyEnabled()) {
VoteParty.getInstance().addTotal(user);
VoteParty.getInstance().addVotePlayer(user);
VoteParty.getInstance().check();
}
// broadcast vote if enabled in config
if (config.getBroadCastVotesEnabled()) {
if (!Config.getInstance().getFormatBroadcastWhenOnline() || user.isOnline()) {
voteSite.broadcastVote(user);
}
}
// update last vote time
user.setTime(voteSite);
OtherVoteReward.getInstance().checkFirstVote(user);
// add to total votes
user.addTotal();
user.addTotalDaily();
user.addTotalWeekly();
user.addPoints();
user.setReminded(false);
// check if player has voted on all sites in one day
OtherVoteReward.getInstance().checkAllSites(user);
OtherVoteReward.getInstance().checkCumualativeVotes(user);
OtherVoteReward.getInstance().checkMilestone(user);
if (user.isOnline()) {
user.playerVote(voteSite, true, false);
} else {
user.addOfflineVote(voteSite.getKey());
plugin.debug("Offline vote set for " + playerName + " on " + voteSite.getKey());
}
plugin.setUpdate(true);
}
}
});
}
/**
* Instantiates a new votifer event.
*
* @param plugin
* the plugin
*/
public VotiferEvent(Main plugin) {
VotiferEvent.plugin = plugin;
}
/**
* On votifer event.
*
* @param event
* the event
*/
@EventHandler(priority = EventPriority.NORMAL, ignoreCancelled = true)
public void onVotiferEvent(VotifierEvent event) {
Vote vote = event.getVote();
String voteSite = vote.getServiceName();
String voteUsername = vote.getUsername();
if (voteUsername.length() == 0) {
plugin.getLogger().warning("No name from vote on " + voteSite);
return;
}
plugin.getLogger().info("Recieved a vote from '" + voteSite + "' by player '" + voteUsername + "'!");
plugin.debug("PlayerUsername: " + voteUsername);
plugin.debug("VoteSite: " + voteSite);
String voteSiteName = plugin.getVoteSiteName(voteSite);
Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() {
@Override
public void run() {
PlayerVoteEvent voteEvent = new PlayerVoteEvent(plugin.getVoteSite(voteSiteName),
UserManager.getInstance().getVotingPluginUser(voteUsername));
plugin.getServer().getPluginManager().callEvent(voteEvent);
if (voteEvent.isCancelled()) {
return;
}
ArrayList<String> sites = configVoteSites.getVoteSitesNames();
if (sites != null) {
if (!sites.contains(voteSiteName) && Config.getInstance().getAutoCreateVoteSites()) {
plugin.getLogger()
.warning("VoteSite " + voteSiteName + " doe not exist, generaterating one...");
ConfigVoteSites.getInstance().generateVoteSite(voteSiteName);
ConfigVoteSites.getInstance().setServiceSite(voteSiteName, voteSite);
}
} else if (Config.getInstance().getAutoCreateVoteSites()) {
plugin.getLogger().warning("VoteSite " + voteSiteName + " doe not exist, generaterating one...");
ConfigVoteSites.getInstance().generateVoteSite(voteSiteName);
ConfigVoteSites.getInstance().setServiceSite(voteSiteName, voteSite);
}
playerVote(voteUsername, voteSite);
}
});
}
}
@@ -0,0 +1,44 @@
package com.Ben12345rocks.VotingPlugin.Events;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import com.Ben12345rocks.AdvancedCore.Listeners.PluginUpdateVersionEvent;
import com.Ben12345rocks.VotingPlugin.Main;
// TODO: Auto-generated Javadoc
/**
* The Class AdvancedCoreUpdateEvent.
*/
public class VotingPluginUpdateEvent implements Listener {
/** The plugin. */
private static Main plugin;
/**
* Instantiates a new advanced core update event.
*
* @param plugin
* the plugin
*/
public VotingPluginUpdateEvent(Main plugin) {
VotingPluginUpdateEvent.plugin = plugin;
}
/**
* On plugin update.
*
* @param event
* the event
*/
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
public void onPluginUpdate(PluginUpdateVersionEvent event) {
if (event.getPlugin().getName().equals(plugin.getDescription().getName())) {
if (!event.getOldVersion().equals("")) {
plugin.getLogger().info("Updated VotingPlugin");
}
}
}
}
@@ -0,0 +1,840 @@
package com.Ben12345rocks.VotingPlugin;
import java.io.File;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map.Entry;
import java.util.Set;
import java.util.Timer;
import java.util.TimerTask;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.event.HandlerList;
import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin;
import com.Ben12345rocks.AdvancedCore.AdvancedCoreHook;
import com.Ben12345rocks.AdvancedCore.Objects.CommandHandler;
import com.Ben12345rocks.AdvancedCore.Objects.RewardHandler;
import com.Ben12345rocks.AdvancedCore.Objects.UUID;
import com.Ben12345rocks.AdvancedCore.Objects.UserStorage;
import com.Ben12345rocks.AdvancedCore.Thread.Thread;
import com.Ben12345rocks.AdvancedCore.Util.Javascript.JavascriptPlaceholderRequest;
import com.Ben12345rocks.AdvancedCore.Util.Logger.Logger;
import com.Ben12345rocks.AdvancedCore.Util.Metrics.BStatsMetrics;
import com.Ben12345rocks.AdvancedCore.Util.Metrics.MCStatsMetrics;
import com.Ben12345rocks.AdvancedCore.Util.Misc.StringUtils;
import com.Ben12345rocks.AdvancedCore.Util.Updater.Updater;
import com.Ben12345rocks.AdvancedCore.mysql.MySQL;
import com.Ben12345rocks.VotingPlugin.Commands.CommandLoader;
import com.Ben12345rocks.VotingPlugin.Commands.Commands;
import com.Ben12345rocks.VotingPlugin.Commands.Executers.CommandAdminVote;
import com.Ben12345rocks.VotingPlugin.Commands.Executers.CommandVote;
import com.Ben12345rocks.VotingPlugin.Commands.GUI.AdminGUI;
import com.Ben12345rocks.VotingPlugin.Commands.TabCompleter.AdminVoteTabCompleter;
import com.Ben12345rocks.VotingPlugin.Commands.TabCompleter.VoteTabCompleter;
import com.Ben12345rocks.VotingPlugin.Config.Config;
import com.Ben12345rocks.VotingPlugin.Config.ConfigVoteSites;
import com.Ben12345rocks.VotingPlugin.Data.ServerData;
import com.Ben12345rocks.VotingPlugin.Events.BlockBreak;
import com.Ben12345rocks.VotingPlugin.Events.PlayerInteract;
import com.Ben12345rocks.VotingPlugin.Events.PlayerJoinEvent;
import com.Ben12345rocks.VotingPlugin.Events.SignChange;
import com.Ben12345rocks.VotingPlugin.Events.VotiferEvent;
import com.Ben12345rocks.VotingPlugin.Events.VotingPluginUpdateEvent;
import com.Ben12345rocks.VotingPlugin.Objects.SignHandler;
import com.Ben12345rocks.VotingPlugin.Objects.User;
import com.Ben12345rocks.VotingPlugin.Objects.VoteSite;
import com.Ben12345rocks.VotingPlugin.OtherRewards.OtherVoteReward;
import com.Ben12345rocks.VotingPlugin.Signs.Signs;
import com.Ben12345rocks.VotingPlugin.TopVoter.TopVoterHandler;
import com.Ben12345rocks.VotingPlugin.UserManager.UserManager;
import com.Ben12345rocks.VotingPlugin.Util.Updater.CheckUpdate;
import com.Ben12345rocks.VotingPlugin.VoteParty.VoteParty;
import com.Ben12345rocks.VotingPlugin.VoteReminding.VoteReminding;
/**
* The Class Main.
*/
public class Main extends JavaPlugin {
/** The config. */
public static Config config;
/** The config vote sites. */
public static ConfigVoteSites configVoteSites;
/** The plugin. */
public static Main plugin;
/** The top voter monthly. */
public HashMap<User, Integer> topVoterAllTime;
/** The top voter monthly. */
public HashMap<User, Integer> topVoterMonthly;
/** The top voter weekly. */
public HashMap<User, Integer> topVoterWeekly;
/** The top voter daily. */
public HashMap<User, Integer> topVoterDaily;
/** The updater. */
public Updater updater;
/** The vote command. */
public ArrayList<CommandHandler> voteCommand;
/** The admin vote command. */
public ArrayList<CommandHandler> adminVoteCommand;
/** The vote sites. */
private List<VoteSite> voteSites;
/** The vote today. */
public HashMap<User, HashMap<VoteSite, LocalDateTime>> voteToday;
/** The signs. */
public ArrayList<SignHandler> signs;
/** The vote log. */
public Logger voteLog;
private boolean update = true;
/**
* Check votifier.
*/
public void checkVotifier() {
try {
Class.forName("com.vexsoftware.votifier.model.VotifierEvent");
} catch (ClassNotFoundException e) {
plugin.getLogger()
.warning("No VotifierEvent found, install Votifier, NuVotifier, or another Votifier plugin");
}
}
public void convertDataStorage(UserStorage from, UserStorage to) {
if (from == null || to == null) {
throw new RuntimeException("Invalid Storage Method");
}
UserStorage cur = AdvancedCoreHook.getInstance().getStorageType();
AdvancedCoreHook.getInstance().setStorageType(from);
loadMySQL();
HashMap<User, HashMap<String, String>> data = new HashMap<User, HashMap<String, String>>();
for (String uuid : UserManager.getInstance().getAllUUIDs()) {
try {
User user = UserManager.getInstance().getVotingPluginUser(new UUID(uuid));
HashMap<String, String> values = new HashMap<String, String>();
for (String key : user.getData().getKeys()) {
values.put(key, user.getData().getString(key));
}
data.put(user, values);
} catch (Exception e) {
AdvancedCoreHook.getInstance().debug(e);
plugin.getLogger().warning("Exception occoured for '" + uuid + "': " + e.getMessage()
+ ", turn debug on to see full stack traces");
}
}
AdvancedCoreHook.getInstance().setStorageType(to);
loadMySQL();
for (Entry<User, HashMap<String, String>> entry : data.entrySet()) {
try {
for (Entry<String, String> values : entry.getValue().entrySet()) {
entry.getKey().getData().setString(values.getKey(), values.getValue());
}
} catch (Exception e) {
e.printStackTrace();
plugin.getLogger().warning("Exception occoured for '" + entry.getKey().getUUID() + "': "
+ e.getMessage() + ", turn debug on to see full stack traces");
}
}
AdvancedCoreHook.getInstance().setStorageType(cur);
}
public ArrayList<User> convertSet(Set<User> set) {
return new ArrayList<User>(set);
}
/**
* Debug.
*
* @param message
* the message
*/
public void debug(String message) {
AdvancedCoreHook.getInstance().debug(plugin, message);
}
/**
* Gets the user.
*
* @param uuid
* the uuid
* @return the user
*/
public User getUser(UUID uuid) {
return UserManager.getInstance().getVotingPluginUser(uuid);
}
public UserManager getUserManager() {
return UserManager.getInstance();
}
/**
* Gets the vote site.
*
* @param site
* the site name
* @return the vote site
*/
public VoteSite getVoteSite(String site) {
String siteName = getVoteSiteName(site);
for (VoteSite voteSite : getVoteSites()) {
if (voteSite.getKey().equalsIgnoreCase(siteName) || voteSite.getDisplayName().equals(siteName)) {
return voteSite;
}
}
if (config.getAutoCreateVoteSites() && !configVoteSites.getVoteSitesNames().contains(siteName)) {
configVoteSites.generateVoteSite(siteName);
return new VoteSite(siteName.replace(".", "_"));
}
return null;
}
/**
* Gets the vote site name.
*
* @param url
* the url
* @return the vote site name
*/
public String getVoteSiteName(String url) {
ArrayList<String> sites = ConfigVoteSites.getInstance().getVoteSitesNames();
if (url == null) {
return null;
}
if (sites != null) {
for (String siteName : sites) {
String URL = ConfigVoteSites.getInstance().getServiceSite(siteName);
if (URL != null) {
if (URL.equals(url)) {
return siteName;
}
}
}
}
return url;
}
public List<VoteSite> getVoteSites() {
return voteSites;
}
public boolean hasVoteSite(String site) {
String siteName = getVoteSiteName(site);
for (VoteSite voteSite : getVoteSites()) {
if (voteSite.getKey().equalsIgnoreCase(siteName) || voteSite.getDisplayName().equals(siteName)) {
return true;
}
}
return false;
}
private void loadTimer() {
AdvancedCoreHook.getInstance().getTimer().schedule(new TimerTask() {
@Override
public void run() {
update();
}
}, 1000, 1000 * 60 * Config.getInstance().getDelayBetweenUpdates());
}
/**
* Load vote sites.
*/
public void loadVoteSites() {
configVoteSites.setup();
voteSites = Collections.synchronizedList(new ArrayList<VoteSite>());
voteSites.addAll(configVoteSites.getVoteSitesLoad());
if (voteSites.size() == 0) {
plugin.getLogger().warning("Detected no voting sites, this may mean something isn't properly setup");
}
plugin.debug("Loaded VoteSites");
}
/**
* Log vote.
*
* @param date
* the date
* @param playerName
* the player name
* @param voteSite
* the vote site
*/
public void logVote(Date date, String playerName, String voteSite) {
if (Config.getInstance().getLogVotesToFile()) {
String str = new SimpleDateFormat("EEE, d MMM yyyy HH:mm").format(date);
voteLog.logToFile(str + ": " + playerName + " voted on " + voteSite);
}
}
/**
* Metrics.
*/
private void metrics() {
try {
MCStatsMetrics metrics = new MCStatsMetrics(this);
metrics.start();
plugin.debug("Loaded Metrics");
} catch (IOException e) {
plugin.getLogger().info("Can't submit metrics stats");
}
BStatsMetrics metrics = new BStatsMetrics(this);
metrics.addCustomChart(new BStatsMetrics.SimplePie("extrarewards_firstvote") {
@Override
public String getValue() {
if (RewardHandler.getInstance().hasRewards(Config.getInstance().getData(),
Config.getInstance().getFirstVoteRewardsPath())) {
return "True";
} else {
return "False";
}
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("extrarewards_everysite") {
@Override
public String getValue() {
if (RewardHandler.getInstance().hasRewards(ConfigVoteSites.getInstance().getData(),
ConfigVoteSites.getInstance().getEverySiteRewardPath())) {
return "True";
} else {
return "False";
}
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("extrarewards_allsites") {
@Override
public String getValue() {
if (RewardHandler.getInstance().hasRewards(Config.getInstance().getData(),
Config.getInstance().getAllSitesRewardPath())) {
return "True";
} else {
return "False";
}
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("extrarewards_cumulative") {
@Override
public String getValue() {
if (Config.getInstance().getCumulativeVotes().size() == 0) {
return "False";
} else {
for (String cum : Config.getInstance().getCumulativeVotes()) {
if (Config.getInstance().getCumulativeRewardEnabled(Integer.parseInt(cum))) {
return "True";
}
}
return "False";
}
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("extrarewards_voteparty") {
@Override
public String getValue() {
if (!Config.getInstance().getVotePartyEnabled()) {
return "False";
} else {
return "True";
}
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("extrarewards_milestone") {
@Override
public String getValue() {
if (Config.getInstance().getMilestoneVotes().size() == 0) {
return "False";
} else {
for (String milestone : Config.getInstance().getMilestoneVotes()) {
if (Config.getInstance().getMilestoneRewardEnabled(Integer.parseInt(milestone))) {
return "True";
}
}
return "False";
}
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("extrarewards_anysitereward") {
@Override
public String getValue() {
if (RewardHandler.getInstance().hasRewards(Config.getInstance().getData(),
Config.getInstance().getAnySiteRewardsPath())) {
return "True";
} else {
return "False";
}
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("extrarewards_votestreakday") {
@Override
public String getValue() {
for (String s : Config.getInstance().getVoteStreakVotes("Day")) {
if (StringUtils.getInstance().isInt(s)) {
int streak = Integer.parseInt(s);
if (Config.getInstance().getVoteStreakRewardEnabled("Day", streak)
&& RewardHandler.getInstance().hasRewards(Config.getInstance().getData(),
Config.getInstance().getVoteStreakRewardsPath("Day", streak))) {
return "True";
}
}
}
return "False";
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("extrarewards_votestreakweek") {
@Override
public String getValue() {
for (String s : Config.getInstance().getVoteStreakVotes("Week")) {
if (StringUtils.getInstance().isInt(s)) {
int streak = Integer.parseInt(s);
if (Config.getInstance().getVoteStreakRewardEnabled("Week", streak)
&& RewardHandler.getInstance().hasRewards(Config.getInstance().getData(),
Config.getInstance().getVoteStreakRewardsPath("Week", streak))) {
return "True";
}
}
}
return "False";
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("extrarewards_votestreakmonth") {
@Override
public String getValue() {
for (String s : Config.getInstance().getVoteStreakVotes("Month")) {
if (StringUtils.getInstance().isInt(s)) {
int streak = Integer.parseInt(s);
if (Config.getInstance().getVoteStreakRewardEnabled("Month", streak)
&& RewardHandler.getInstance().hasRewards(Config.getInstance().getData(),
Config.getInstance().getVoteStreakRewardsPath("Month", streak))) {
return "True";
}
}
}
return "False";
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("numberofsites") {
@Override
public String getValue() {
return "" + plugin.voteSites.size();
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("numberofrewards") {
@Override
public String getValue() {
return "" + RewardHandler.getInstance().getRewards().size();
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("autocreatevotesites") {
@Override
public String getValue() {
return "" + Config.getInstance().getAutoCreateVoteSites();
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("sendscoreboards") {
@Override
public String getValue() {
return "" + Config.getInstance().getSendScoreboards();
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("numberofuser") {
@Override
public String getValue() {
int total = UserManager.getInstance().getAllUUIDs().size();
int num = total / 100;
num = num * 100;
int num2 = (total + 100) / 100;
num2 = num2 * 100;
return "" + num + "-" + num2;
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("data_storage") {
@Override
public String getValue() {
return Config.getInstance().getDataStorage();
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("CheckOnWorldChange") {
@Override
public String getValue() {
return "" + Config.getInstance().getCheckOnWorldChange();
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("votereminding_enabled") {
@Override
public String getValue() {
return "" + Config.getInstance().getVoteRemindingEnabled();
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("UseGUI_Today") {
@Override
public String getValue() {
return "" + Config.getInstance().getCommandsUseGUIToday();
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("UseGUI_TopVoter") {
@Override
public String getValue() {
return "" + Config.getInstance().getCommandsUseGUITopVoter();
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("UseGUI_Last") {
@Override
public String getValue() {
return "" + Config.getInstance().getCommandsUseGUILast();
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("UseGUI_Next") {
@Override
public String getValue() {
return "" + Config.getInstance().getCommandsUseGUINext();
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("UseGUI_Total") {
@Override
public String getValue() {
return "" + Config.getInstance().getCommandsUseGUITotal();
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("UseGUI_Vote") {
@Override
public String getValue() {
return "" + Config.getInstance().getCommandsUseGUIVote();
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("UseGUI_Best") {
@Override
public String getValue() {
return "" + Config.getInstance().getCommandsUseGUIBest();
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("UseGUI_Streak") {
@Override
public String getValue() {
return "" + Config.getInstance().getCommandsUseGUIStreak();
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("LoadTopVoter_Monthly") {
@Override
public String getValue() {
return "" + Config.getInstance().getLoadTopVoterMonthly();
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("LoadTopVoter_Weekly") {
@Override
public String getValue() {
return "" + Config.getInstance().getLoadTopVoterWeekly();
}
});
metrics.addCustomChart(new BStatsMetrics.SimplePie("LoadTopVoter_Daily") {
@Override
public String getValue() {
return "" + Config.getInstance().getLoadTopVoterDaily();
}
});
}
/*
* (non-Javadoc)
*
* @see org.bukkit.plugin.java.JavaPlugin#onDisable()
*/
@Override
public void onDisable() {
new Timer().schedule(new TimerTask() {
@Override
public void run() {
Signs.getInstance().storeSigns();
}
}, 0);
HandlerList.unregisterAll(plugin);
plugin = null;
}
/*
* (non-Javadoc)
*
* @see org.bukkit.plugin.java.JavaPlugin#onEnable()
*/
@Override
public void onEnable() {
plugin = this;
setupFiles();
loadVoteSites();
updateAdvancedCoreHook();
AdvancedCoreHook.getInstance().loadHook(this);
registerCommands();
registerEvents();
checkVotifier();
CheckUpdate.getInstance().startUp();
VoteReminding.getInstance().loadRemindChecking();
plugin.signs = new ArrayList<SignHandler>();
Bukkit.getScheduler().runTask(plugin, new Runnable() {
@Override
public void run() {
Signs.getInstance().loadSigns();
}
});
topVoterMonthly = new HashMap<User, Integer>();
topVoterWeekly = new HashMap<User, Integer>();
topVoterDaily = new HashMap<User, Integer>();
voteToday = new HashMap<User, HashMap<VoteSite, LocalDateTime>>();
topVoterAllTime = new HashMap<User, Integer>();
voteLog = new Logger(plugin, new File(plugin.getDataFolder() + File.separator + "Log", "votelog.txt"));
AdminGUI.getInstance().loadHook();
if (Config.getInstance().getVotePartyEnabled()) {
VoteParty.getInstance().check();
}
VoteParty.getInstance().register();
TopVoterHandler.getInstance().register();
metrics();
AdvancedCoreHook.getInstance().getJavascriptEngineRequests().add(new JavascriptPlaceholderRequest("User") {
@Override
public Object getObject(Player player) {
return getUserManager().getVotingPluginUser(player);
}
});
plugin.getLogger().info("Enabled VotingPlgin " + plugin.getDescription().getVersion());
loadTimer();
}
/**
* Register commands.
*/
private void registerCommands() {
CommandLoader.getInstance().loadCommands();
CommandLoader.getInstance().loadAliases();
// /vote, /v
getCommand("vote").setExecutor(new CommandVote(this));
getCommand("vote").setTabCompleter(new VoteTabCompleter());
getCommand("v").setExecutor(new CommandVote(this));
getCommand("v").setTabCompleter(new VoteTabCompleter());
// /adminvote, /av
getCommand("adminvote").setExecutor(new CommandAdminVote(this));
getCommand("adminvote").setTabCompleter(new AdminVoteTabCompleter());
getCommand("av").setExecutor(new CommandAdminVote(this));
getCommand("av").setTabCompleter(new AdminVoteTabCompleter());
plugin.debug("Loaded Commands");
}
/**
* Register events.
*/
private void registerEvents() {
PluginManager pm = getServer().getPluginManager();
pm.registerEvents(new PlayerJoinEvent(this), this);
pm.registerEvents(new VotiferEvent(this), this);
pm.registerEvents(new SignChange(this), this);
pm.registerEvents(new BlockBreak(this), this);
pm.registerEvents(new PlayerInteract(this), this);
pm.registerEvents(new VotingPluginUpdateEvent(this), this);
pm.registerEvents(OtherVoteReward.getInstance(), this);
plugin.debug("Loaded Events");
}
/**
* Reload.
*/
public void reload() {
setUpdate(true);
config.reloadData();
configVoteSites.reloadData();
updateAdvancedCoreHook();
plugin.loadVoteSites();
CommandLoader.getInstance().loadTabComplete();
AdvancedCoreHook.getInstance().reload();
Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() {
@Override
public void run() {
for (CommandHandler cmd : voteCommand) {
cmd.reloadTabComplete();
}
for (CommandHandler cmd : adminVoteCommand) {
cmd.reloadTabComplete();
}
}
});
loadTimer();
}
public void setUpdate(boolean update) {
this.update = update;
}
/**
* Setup files.
*/
public void setupFiles() {
config = Config.getInstance();
configVoteSites = ConfigVoteSites.getInstance();
config.setup();
configVoteSites.setup();
plugin.debug("Loaded Files");
}
/**
* Update.
*/
public void update() {
if (update && plugin != null) {
Bukkit.getScheduler().runTaskAsynchronously(plugin, new Runnable() {
@Override
public void run() {
synchronized (plugin) {
if (AdvancedCoreHook.getInstance().getStorageType().equals(UserStorage.MYSQL)) {
if (AdvancedCoreHook.getInstance().getMysql() == null) {
plugin.debug("MySQL not loaded yet");
return;
} else {
AdvancedCoreHook.getInstance().getMysql().clearCache();
}
}
update = false;
plugin.debug("Starting background task");
try {
TopVoterHandler.getInstance().updateTopVoters();
Commands.getInstance().updateVoteToday();
ServerData.getInstance().updateValues();
Signs.getInstance().updateSigns();
plugin.debug("Background task ran");
} catch (Exception ex) {
ex.printStackTrace();
plugin.getLogger().info("Looks like something went wrong.");
}
}
}
});
}
}
public void updateAdvancedCoreHook() {
AdvancedCoreHook.getInstance().setAutoDownload(Config.getInstance().getAutoDownload());
AdvancedCoreHook.getInstance().getJavascriptEngine().put("VotingPlugin", this);
AdvancedCoreHook.getInstance().allowDownloadingFromSpigot(15358);
AdvancedCoreHook.getInstance().setExtraDebug(Config.getInstance().getExtraDebug());
AdvancedCoreHook.getInstance().setStorageType(UserStorage.valueOf(Config.getInstance().getDataStorage()));
loadMySQL();
AdvancedCoreHook.getInstance().setCheckOnWorldChange(Config.getInstance().getCheckOnWorldChange());
AdvancedCoreHook.getInstance().setDebug(Config.getInstance().getDebugEnabled());
AdvancedCoreHook.getInstance().setDebugIngame(Config.getInstance().getDebugInfoIngame());
AdvancedCoreHook.getInstance().setDefaultRequestMethod(Config.getInstance().getRequestAPIDefaultMethod());
AdvancedCoreHook.getInstance().setDisabledRequestMethods(Config.getInstance().getRequestAPIDisabledMethods());
AdvancedCoreHook.getInstance().setFormatNoPerms(Config.getInstance().getFormatNoPerms());
AdvancedCoreHook.getInstance().setFormatNotNumber(Config.getInstance().getFormatNotNumber());
AdvancedCoreHook.getInstance().setHelpLine(Config.getInstance().getFormatHelpLine());
AdvancedCoreHook.getInstance().setLogDebugToFile(Config.getInstance().getLogDebugToFile());
AdvancedCoreHook.getInstance().setSendScoreboards(Config.getInstance().getSendScoreboards());
}
private void loadMySQL() {
if (AdvancedCoreHook.getInstance().getStorageType().equals(UserStorage.MYSQL)) {
Thread.getInstance().run(new Runnable() {
@Override
public void run() {
AdvancedCoreHook.getInstance()
.setMysql(new MySQL("VotingPlugin_Users", Config.getInstance().getMySqlHost(),
Config.getInstance().getMySqlPort(), Config.getInstance().getMySqlDatabase(),
Config.getInstance().getMySqlUsername(), Config.getInstance().getMySqlPassword(),
Config.getInstance().getMySqlMaxConnections()));
}
});
}
}
}
@@ -0,0 +1,324 @@
package com.Ben12345rocks.VotingPlugin.Objects;
import java.util.ArrayList;
import org.bukkit.Bukkit;
import org.bukkit.Location;
import org.bukkit.block.Block;
import org.bukkit.block.BlockState;
import org.bukkit.block.Sign;
import org.bukkit.block.Skull;
import com.Ben12345rocks.AdvancedCore.AdvancedCoreHook;
import com.Ben12345rocks.AdvancedCore.Util.Misc.ArrayUtils;
import com.Ben12345rocks.AdvancedCore.Util.Misc.MiscUtils;
import com.Ben12345rocks.VotingPlugin.Main;
import com.Ben12345rocks.VotingPlugin.Config.Config;
import com.Ben12345rocks.VotingPlugin.Data.ServerData;
// TODO: Auto-generated Javadoc
/**
* The Class SignHandler.
*/
public class SignHandler {
/** The sign. */
private String sign;
/** The location. */
private Location location;
/** The data. */
private String data;
/** The lines. */
private ArrayList<String> lines;
/** The position. */
private int position;
/** The plugin. */
public Main plugin = Main.plugin;
/** The player name. */
private String playerName;
/** The votes. */
private int votes;
/** The is valid. */
private boolean isValid;
/**
* Instantiates a new sign handler.
*
* @param sign
* the sign
* @param location
* the location
* @param data
* the data
* @param position
* the position
*/
public SignHandler(String sign, Location location, String data, int position) {
setSign(sign);
setLocation(location);
setData(data);
this.position = position;
setValid(true);
lines = new ArrayList<String>();
checkValidSign();
playerName = "";
}
/**
* Check skulls.
*/
public void checkSkulls() {
if (playerName.equalsIgnoreCase("No Player") || playerName.equals("")) {
return;
}
Location loc = location;
Location loc1 = new Location(loc.getWorld(), loc.getBlockX() - 1, loc.getBlockY() - 1, loc.getBlockZ() - 1);
Location loc2 = new Location(loc.getWorld(), loc.getBlockX() + 1, loc.getBlockY() + 1, loc.getBlockZ() + 1);
updateSkulls(loc1, loc2);
}
/**
* Check valid sign.
*/
public void checkValidSign() {
Bukkit.getScheduler().runTask(plugin, new Runnable() {
@Override
public void run() {
try {
setValid(getLocation().getBlock().getState() instanceof Sign);
} catch (Exception ex) {
setValid(false);
}
}
});
}
/**
* Gets the data.
*
* @return the data
*/
public String getData() {
return data;
}
/**
* Gets the location.
*
* @return the location
*/
public Location getLocation() {
return location;
}
/**
* Gets the right click message.
*
* @return the right click message
*/
public String getRightClickMessage() {
String msg = Config.getInstance().getFormatSignTopVoterSignRightClickMessage();
msg = msg.replace("%player%", playerName);
msg = msg.replace("%position%", "" + position);
msg = msg.replace("%votes%", "" + votes);
msg = msg.replace("%SiteName%", data);
return msg;
}
/**
* Gets the sign.
*
* @return the sign
*/
public String getSign() {
return sign;
}
/**
* Checks if is location same.
*
* @param loc
* the loc
* @return true, if is location same
*/
public boolean isLocationSame(Location loc) {
return loc.equals(getLocation());
}
/**
* Checks if is valid.
*
* @return true, if is valid
*/
public boolean isValid() {
return isValid;
}
/**
* Removes the sign.
*/
public void removeSign() {
ServerData.getInstance().removeSign(sign);
}
/**
* Sets the data.
*
* @param data
* the new data
*/
public void setData(String data) {
this.data = data;
}
/**
* Sets the location.
*
* @param location
* the new location
*/
public void setLocation(Location location) {
this.location = location;
}
/**
* Sets the sign.
*
* @param sign
* the new sign
*/
public void setSign(String sign) {
this.sign = sign;
}
/**
* Sets the valid.
*
* @param isValid
* the new valid
*/
public void setValid(boolean isValid) {
this.isValid = isValid;
}
/**
* Store sign.
*/
public void storeSign() {
ServerData.getInstance().setSign(sign, location, data, position);
}
/**
* Update lines.
*/
public void updateLines() {
lines = new ArrayList<String>();
checkValidSign();
if (position != 0) {
String line1 = Config.getInstance().getFormatSignTopVoterSignLine1();
String line2 = Config.getInstance().getFormatSignTopVoterSignLine2();
String line3 = Config.getInstance().getFormatSignTopVoterSignLine3();
String line4 = Config.getInstance().getFormatSignTopVoterSignLine4();
lines.add(line1);
lines.add(line2);
lines.add(line3);
lines.add(line4);
ArrayList<User> users = null;
if (data.equalsIgnoreCase("all")) {
users = plugin.convertSet(plugin.topVoterAllTime.keySet());
} else if (data.equalsIgnoreCase("monthly")) {
users = plugin.convertSet(plugin.topVoterMonthly.keySet());
} else if (data.equalsIgnoreCase("weekly")) {
users = plugin.convertSet(plugin.topVoterWeekly.keySet());
} else if (data.equalsIgnoreCase("daily")) {
users = plugin.convertSet(plugin.topVoterDaily.keySet());
}
if (users != null && users.size() >= position) {
User user = users.get(position - 1);
playerName = user.getPlayerName();
votes = 0;
if (data.equalsIgnoreCase("all")) {
votes = plugin.topVoterAllTime.get(user);
} else if (data.equalsIgnoreCase("monthly")) {
votes = plugin.topVoterMonthly.get(user);
} else if (data.equalsIgnoreCase("weekly")) {
votes = plugin.topVoterWeekly.get(user);
} else if (data.equalsIgnoreCase("daily")) {
votes = plugin.topVoterDaily.get(user);
}
for (int j = 0; j < lines.size(); j++) {
lines.set(j, lines.get(j).replace("%votes%", "" + votes).replace("%player%", playerName));
}
} else {
playerName = "No Player";
votes = 0;
for (int j = 0; j < lines.size(); j++) {
lines.set(j, lines.get(j).replace("%votes%", "" + votes).replace("%player%", playerName));
}
}
for (int j = 0; j < lines.size(); j++) {
lines.set(j, lines.get(j).replace("%SiteName%", data).replace("%position%", "" + position));
}
lines = ArrayUtils.getInstance().colorize(lines);
}
}
/**
* Update sign.
*
* @param delay
* the delay
*/
public void updateSign(int delay) {
Bukkit.getScheduler().runTaskLater(plugin, new Runnable() {
@Override
public void run() {
try {
BlockState state = getLocation().getBlock().getState();
if (state instanceof Sign) {
Sign s = (Sign) state;
for (int j = 0; j < lines.size() && j < 4; j++) {
s.setLine(j, lines.get(j));
}
s.update();
checkSkulls();
}
} catch (Exception ex) {
AdvancedCoreHook.getInstance().debug(ex);
}
}
}, delay);
}
@SuppressWarnings("deprecation")
public void updateSkulls(Location loc1, Location loc2) {
for (Block block : MiscUtils.getInstance().getRegionBlocks(location.getWorld(), loc1, loc2)) {
if (block.getState() instanceof Skull) {
Skull skull = (Skull) block.getState();
skull.setOwner(playerName);
skull.update();
}
}
}
}
@@ -0,0 +1,55 @@
package com.Ben12345rocks.VotingPlugin.Objects;
import java.util.ArrayList;
import com.Ben12345rocks.VotingPlugin.Config.Config;
public enum TopVoter {
AllTime,
Monthly,
Weekly,
Daily;
public static TopVoter getDefault() {
TopVoter top = getTopVoter(Config.getInstance().getVoteTopDefault());
if (top != null) {
return top;
}
return AllTime;
}
public static TopVoter getTopVoter(String str) {
for (TopVoter value : values()) {
if (value.toString().equalsIgnoreCase(str)) {
return value;
}
}
return null;
}
public TopVoter next() {
ArrayList<TopVoter> list = new ArrayList<TopVoter>();
if (Config.getInstance().getLoadTopVoterAllTime()) {
list.add(TopVoter.AllTime);
}
if (Config.getInstance().getLoadTopVoterMonthly()) {
list.add(TopVoter.Monthly);
}
if (Config.getInstance().getLoadTopVoterWeekly()) {
list.add(TopVoter.Weekly);
}
if (Config.getInstance().getLoadTopVoterDaily()) {
list.add(TopVoter.Daily);
}
for (int i = 0; i < list.size(); i++) {
if (list.get(i).equals(this)) {
int next = i + 1;
if (next > list.size() - 1) {
next = 0;
}
return TopVoter.values()[next];
}
}
return TopVoter.AllTime;
}
}
@@ -0,0 +1,813 @@
package com.Ben12345rocks.VotingPlugin.Objects;
import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Map.Entry;
import java.util.stream.Collectors;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import com.Ben12345rocks.AdvancedCore.Objects.RewardHandler;
import com.Ben12345rocks.AdvancedCore.Objects.UUID;
import com.Ben12345rocks.AdvancedCore.Util.Misc.MiscUtils;
import com.Ben12345rocks.AdvancedCore.Util.Misc.PlayerUtils;
import com.Ben12345rocks.AdvancedCore.Util.Misc.StringUtils;
import com.Ben12345rocks.VotingPlugin.Main;
import com.Ben12345rocks.VotingPlugin.Config.Config;
import com.Ben12345rocks.VotingPlugin.Config.ConfigVoteSites;
import com.Ben12345rocks.VotingPlugin.OtherRewards.OtherVoteReward;
import com.Ben12345rocks.VotingPlugin.VoteParty.VoteParty;
import com.Ben12345rocks.VotingPlugin.VoteReminding.VoteReminding;
// TODO: Auto-generated Javadoc
/**
* The Class User.
*/
public class User extends com.Ben12345rocks.AdvancedCore.Objects.User {
/** The plugin. */
static Main plugin = Main.plugin;
/**
* Instantiates a new user.
*
* @param player
* the player
*/
@Deprecated
public User(Player player) {
super(plugin, player);
}
/**
* Instantiates a new user.
*
* @param playerName
* the player name
*/
@Deprecated
public User(String playerName) {
super(plugin, playerName);
}
/**
* Instantiates a new user.
*
* @param uuid
* the uuid
*/
@Deprecated
public User(UUID uuid) {
super(plugin, uuid);
}
/**
* Instantiates a new user.
*
* @param uuid
* the uuid
* @param loadName
* the load name
*/
@Deprecated
public User(UUID uuid, boolean loadName) {
super(plugin, uuid, loadName);
}
public void addAllTimeTotal() {
setAllTimeTotal(getAllTimeTotal() + 1);
}
public void addDayVoteStreak() {
setDayVoteStreak(getDayVoteStreak() + 1);
}
public void addMonthTotal() {
setMonthTotal(getMonthTotal() + 1);
}
public void addMonthVoteStreak() {
setMonthVoteStreak(getMonthVoteStreak() + 1);
}
public void addOfflineOtherReward(String reward) {
ArrayList<String> offlineOtherRewards = getOfflineOtherRewards();
offlineOtherRewards.add(reward);
setOfflineOtherRewards(offlineOtherRewards);
}
public void addOfflineVote(String voteSiteName) {
ArrayList<String> offlineVotes = getOfflineVotes();
offlineVotes.add(voteSiteName);
setOfflineVotes(offlineVotes);
}
/**
* Adds the points.
*/
public void addPoints() {
addPoints(Config.getInstance().getPointsOnVote());
}
/**
* Adds the points.
*
* @param value
* the value
*/
public void addPoints(int value) {
setPoints(getPoints() + value);
}
/**
* Adds the total.
*
*/
public void addTotal() {
addMonthTotal();
addAllTimeTotal();
}
/**
* Adds the total daily.
*
*
*/
public void addTotalDaily() {
setDailyTotal(getDailyTotal() + 1);
}
/**
* Adds the total weekly.
*
*
*/
public void addTotalWeekly() {
setWeeklyTotal(getWeeklyTotal() + 1);
}
public void addWeekVoteStreak() {
setWeekVoteStreak(getWeekVoteStreak() + 1);
}
public int getMilestoneCount() {
return getData().getInt("MilestoneCount",getAllTimeTotal());
}
public void setMilestoneCount(int value) {
getData().setInt("MilestoneCount", value);
}
/**
* Can vote all.
*
* @return true, if successful
*/
public boolean canVoteAll() {
for (VoteSite voteSite : plugin.getVoteSites()) {
boolean canVote = canVoteSite(voteSite);
if (!canVote) {
return false;
}
}
return true;
}
/**
* Can vote site.
*
* @param voteSite
* the vote site
* @return true, if successful
*/
public boolean canVoteSite(VoteSite voteSite) {
String siteName = voteSite.getKey();
long time = getTime(voteSite);
if (time == 0) {
return true;
}
LocalDateTime now = LocalDateTime.now();
LocalDateTime lastVote = LocalDateTime.ofInstant(Instant.ofEpochMilli(time), ZoneId.systemDefault());
int votedelay = ConfigVoteSites.getInstance().getVoteDelay(siteName);
if (votedelay == 0) {
return false;
}
LocalDateTime nextvote = lastVote.plusHours(votedelay);
return now.isAfter(nextvote);
}
/**
* Check all votes.
*
* @return true, if successful
*/
public boolean checkAllVotes() {
User user = this;
ArrayList<Integer> months = new ArrayList<Integer>();
ArrayList<Integer> days = new ArrayList<Integer>();
for (VoteSite voteSite : plugin.getVoteSites()) {
long time = user.getTime(voteSite);
if (time != 0) {
months.add(MiscUtils.getInstance().getMonthFromMili(time));
days.add(MiscUtils.getInstance().getDayFromMili(time));
} else {
return false;
}
}
// check months
for (int i = 0; i < months.size(); i++) {
if (!months.get(0).equals(months.get(i))) {
return false;
}
}
// check days
for (int i = 0; i < days.size(); i++) {
if (!days.get(0).equals(days.get(i))) {
return false;
}
}
return true;
}
public void clearTotals() {
setAllTimeTotal(0);
resetDailyTotalVotes();
resetMonthlyTotalVotes();
setWeeklyTotal(0);
}
/**
* Daily top voter award.
*
* @param place
* the place
*/
public void dailyTopVoterAward(int place) {
if (PlayerUtils.getInstance().isPlayerOnline(getPlayerName())) {
// online
giveDailyTopVoterAward(place);
} else {
addOfflineOtherReward("DailyTopVoter" + place);
}
}
public int getAllTimeTotal() {
return getUserData().getInt("AllTimeTotal");
}
public int getBestDayVoteStreak() {
return getData().getInt("BestDayVoteStreak");
}
public int getBestMonthVoteStreak() {
return getData().getInt("BestMonthVoteStreak");
}
public int getBestWeekVoteStreak() {
return getData().getInt("BestWeekVoteStreak");
}
public int getDailyTotal() {
return getUserData().getInt("DailyTotal");
}
public int getDayVoteStreak() {
return getData().getInt("DayVoteStreak");
}
public HashMap<String, Boolean> getHasGottenMilestone() {
HashMap<String, Boolean> hasGottenMilestone = new HashMap<String, Boolean>();
ArrayList<String> milestoneList = getUserData().getStringList("GottenMileStones");
for (String str : milestoneList) {
String[] data = str.split("//");
if (data.length > 1) {
boolean gotten = Boolean.parseBoolean(data[1]);
hasGottenMilestone.put(data[0], gotten);
}
}
return hasGottenMilestone;
}
public int getHighestDailyTotal() {
return getData().getInt("HighestDailyTotal");
}
public int getHighestMonthlyTotal() {
return getData().getInt("HighestMonthlyTotal");
}
public int getHighestWeeklyTotal() {
return getData().getInt("HighestWeeklyTotal");
}
public HashMap<VoteSite, Long> getLastVotes() {
HashMap<VoteSite, Long> lastVotes = new HashMap<VoteSite, Long>();
ArrayList<String> LastVotesList = getUserData().getStringList("LastVotes");
for (String str : LastVotesList) {
String[] data = str.split("//");
if (data.length > 1 && plugin.hasVoteSite(data[0])) {
VoteSite site = plugin.getVoteSite(data[0]);
if (site != null) {
long time = 0;
try {
time = Long.parseLong(data[1]);
} catch (NumberFormatException e) {
time = 0;
plugin.debug("Not long: " + data[1]);
}
lastVotes.put(site, time);
}
}
}
return lastVotes;
}
/**
* Gets the last vote times sorted.
*
* @return the last vote times sorted
*/
public HashMap<VoteSite, Long> getLastVoteTimesSorted() {
HashMap<VoteSite, Long> times = new LinkedHashMap<VoteSite, Long>();
for (VoteSite voteSite : plugin.getVoteSites()) {
times.put(voteSite, getTime(voteSite));
}
HashMap<VoteSite, Long> sorted = (HashMap<VoteSite, Long>) times.entrySet().stream()
.sorted(Collections.reverseOrder(Map.Entry.comparingByValue()))
.collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue));
return sorted;
}
public int getMonthTotal() {
return getData().getInt("MonthTotal");
}
public int getMonthVoteStreak() {
return getData().getInt("MonthVoteStreak");
}
public ArrayList<String> getOfflineOtherRewards() {
return getUserData().getStringList("OfflineOtherRewards");
}
public ArrayList<String> getOfflineVotes() {
return getUserData().getStringList("OfflineVotes");
}
/**
* Gets the points.
*
* @return the points
*/
public int getPoints() {
return getUserData().getInt("Points");
}
/**
* Gets the time.
*
* @param voteSite
* the vote site
* @return the time
*/
public long getTime(VoteSite voteSite) {
HashMap<VoteSite, Long> lastVotes = getLastVotes();
if (lastVotes.containsKey(voteSite)) {
return lastVotes.get(voteSite);
}
return 0;
}
public int getVotePartyVotes() {
return getUserData().getInt("VotePartyVotes");
}
public int getWeeklyTotal() {
return getUserData().getInt("WeeklyTotal");
}
public int getWeekVoteStreak() {
return getData().getInt("WeekVoteStreak");
}
/**
* Give daily top voter award.
*
* @param place
* the place
*/
public void giveDailyTopVoterAward(int place) {
RewardHandler.getInstance().giveReward(this, Config.getInstance().getData(),
Config.getInstance().getDailyAwardRewardsPath(place));
Player player = Bukkit.getPlayer(java.util.UUID.fromString(getUUID()));
if (player != null) {
player.sendMessage(StringUtils.getInstance()
.colorize(Config.getInstance().getFormatTopVoterRewardMsg().replace("%place%", "" + place)));
}
}
/**
* Give monthly top voter award.
*
* @param place
* the place
*/
public void giveMonthlyTopVoterAward(int place) {
RewardHandler.getInstance().giveReward(this, Config.getInstance().getData(),
Config.getInstance().getMonthlyAwardRewardsPath(place));
Player player = Bukkit.getPlayer(java.util.UUID.fromString(getUUID()));
if (player != null) {
player.sendMessage(StringUtils.getInstance()
.colorize(Config.getInstance().getFormatTopVoterRewardMsg().replace("%place%", "" + place)));
}
}
public void giveOfflineOtherRewards() {
for (String str : getOfflineOtherRewards()) {
if (str.equalsIgnoreCase("FirstVote")) {
OtherVoteReward.getInstance().giveFirstVoteRewards(this, false);
} else if (str.equalsIgnoreCase("AllSites")) {
OtherVoteReward.getInstance().giveAllSitesRewards(this, false);
} else if (str.equalsIgnoreCase("VoteParty")) {
VoteParty.getInstance().giveReward(this);
} else if (str.contains("Cumulative")) {
String st = str.substring("Cumulative".length());
if (StringUtils.getInstance().isInt(st)) {
int votesRequired = Integer.parseInt(st);
if (votesRequired != 0) {
if (Config.getInstance().getCumulativeRewardEnabled(votesRequired)) {
OtherVoteReward.getInstance().giveCumulativeVoteReward(this, false, votesRequired);
}
}
}
} else if (str.contains("MileStone")) {
String st = str.substring("MileStone".length());
if (StringUtils.getInstance().isInt(st)) {
int votesRequired = Integer.parseInt(st);
if (votesRequired > 0) {
if (Config.getInstance().getMilestoneRewardEnabled(votesRequired)) {
OtherVoteReward.getInstance().giveMilestoneVoteReward(this, true, votesRequired);
}
}
}
} else if (str.contains("MonthlyTopVoter")) {
String st = str.substring("MontlyTopVoter".length());
if (StringUtils.getInstance().isInt(st)) {
int place = Integer.parseInt(st);
if (place > 0) {
if (Config.getInstance().getMonthlyAwardsEnabled()) {
giveMonthlyTopVoterAward(place);
}
}
}
} else if (str.contains("WeeklyTopVoter")) {
String st = str.substring("WeeklyTopVoter".length());
if (StringUtils.getInstance().isInt(st)) {
int place = Integer.parseInt(st);
if (place > 0) {
if (Config.getInstance().getWeeklyAwardsEnabled()) {
giveWeeklyTopVoterAward(place);
}
}
}
} else if (str.contains("DailyTopVoter")) {
String st = str.substring("DailyTopVoter".length());
if (StringUtils.getInstance().isInt(st)) {
int place = Integer.parseInt(st);
if (place > 0) {
if (Config.getInstance().getDailyAwardsEnabled()) {
giveDailyTopVoterAward(place);
}
}
}
} else if (str.contains("VoteStreak")) {
String[] args = str.split("_");
if (args.length > 2) {
String type = args[1];
String st = args[2];
if (StringUtils.getInstance().isInt(st)) {
int streakRequired = Integer.parseInt(st);
if (streakRequired != 0) {
if (Config.getInstance().getVoteStreakRewardEnabled(type, streakRequired)) {
OtherVoteReward.getInstance().giveVoteStreakReward(this, false, type, streakRequired);
}
}
}
}
} else {
plugin.debug("Reward handle for " + str + " does not exist!");
}
}
setOfflineOtherRewards(new ArrayList<String>());
}
/**
* Give weekly top voter award.
*
* @param place
* the place
*/
public void giveWeeklyTopVoterAward(int place) {
RewardHandler.getInstance().giveReward(this, Config.getInstance().getData(),
Config.getInstance().getWeeklyAwardRewardsPath(place));
Player player = Bukkit.getPlayer(java.util.UUID.fromString(getUUID()));
if (player != null) {
player.sendMessage(StringUtils.getInstance()
.colorize(Config.getInstance().getFormatTopVoterRewardMsg().replace("%place%", "" + place)));
}
}
/**
* Checks for gotten first vote.
*
* @return true if user got the first vote reward
*/
public boolean hasGottenFirstVote() {
return getAllTimeTotal() != 0;
}
/**
* Checks for gotten milestone.
*
* @param votesRequired
* the votes required
* @return true, if successful
*/
public boolean hasGottenMilestone(int votesRequired) {
HashMap<String, Boolean> hasGottenMilestone = getHasGottenMilestone();
if (hasGottenMilestone.containsKey("" + votesRequired)) {
return hasGottenMilestone.get("" + votesRequired);
}
return false;
}
public boolean isReminded() {
return Boolean.valueOf(getUserData().getString("Reminded"));
}
public boolean isTopVoterIgnore() {
return Boolean.valueOf(getUserData().getString("TopVoterIgnore"));
}
/**
* Login message.
*/
public void loginMessage() {
if (Config.getInstance().getVoteRemindingRemindOnLogin()) {
VoteReminding.getInstance().runRemindLogin(this);
}
}
/**
* Monthly top voter award.
*
* @param place
* the place
*/
public void monthlyTopVoterAward(int place) {
if (PlayerUtils.getInstance().isPlayerOnline(getPlayerName())) {
// online
giveMonthlyTopVoterAward(place);
} else {
addOfflineOtherReward("MonthlyTopVoter" + place);
}
}
/**
* Off vote.
*/
public void offVote() {
Player player = getPlayer();
if (player != null) {
setTopVoterIgnore(player.hasPermission("VotingPlugin.TopVoter.Ignore"));
ArrayList<String> offlineVotes = getOfflineVotes();
if (offlineVotes.size() > 0) {
sendVoteEffects(true);
}
for (int i = 0; i < offlineVotes.size(); i++) {
if (plugin.hasVoteSite(offlineVotes.get(i))) {
playerVote(plugin.getVoteSite(offlineVotes.get(i)), false, true);
}
}
setOfflineVotes(new ArrayList<String>());
giveOfflineOtherRewards();
}
}
/**
* Player vote.
*
* @param voteSite
* the vote site
* @param online
* the online
* @param broadcast
* the broadcast
*/
public void playerVote(VoteSite voteSite, boolean online, boolean broadcast) {
if (Config.getInstance().getBroadCastVotesEnabled() && Config.getInstance().getFormatBroadcastWhenOnline()
&& broadcast) {
voteSite.broadcastVote(this);
}
voteSite.giveSiteReward(this, online);
}
/**
* Removes the points.
*
* @param points
* the points
* @return true, if successful
*/
public boolean removePoints(int points) {
if (getPoints() >= points) {
setPoints(getPoints() - points);
return true;
}
return false;
}
public void resetDailyTotalVotes() {
setDailyTotal(0);
}
public void resetMonthlyTotalVotes() {
setMonthTotal(0);
}
public void resetWeeklyTotalVotes() {
setWeeklyTotal(0);
}
/**
* Send vote effects.
*
* @param online
* the online
*/
public void sendVoteEffects(boolean online) {
RewardHandler.getInstance().giveReward(this, Config.getInstance().getData(),
Config.getInstance().getAnySiteRewardsPath(), online);
}
public void setAllTimeTotal(int allTimeTotal) {
getUserData().setInt("AllTimeTotal", allTimeTotal);
}
public void setBestDayVoteStreak(int streak) {
getData().setInt("BestDayVoteStreak", streak);
}
public void setBestMonthVoteStreak(int streak) {
getData().setInt("BestMonthVoteStreak", streak);
}
public void setBestWeekVoteStreak(int streak) {
getData().setInt("BestWeekVoteStreak", streak);
}
public void setDailyTotal(int total) {
getUserData().setInt("DailyTotal", total);
}
public void setDayVoteStreak(int streak) {
getData().setInt("DayVoteStreak", streak);
if (getBestDayVoteStreak() < streak) {
setBestDayVoteStreak(streak);
}
}
public void setHasGotteMilestone(int votesRequired, boolean b) {
HashMap<String, Boolean> hasGottenMilestone = getHasGottenMilestone();
hasGottenMilestone.put("" + votesRequired, b);
setHasGottenMilestone(hasGottenMilestone);
}
public void setHasGottenMilestone(HashMap<String, Boolean> hasGottenMilestone) {
ArrayList<String> data = new ArrayList<String>();
for (Entry<String, Boolean> entry : hasGottenMilestone.entrySet()) {
String str = entry.getKey() + "//" + entry.getValue().booleanValue();
data.add(str);
}
getUserData().setStringList("GottenMileStones", data);
}
public void setHighestDailyTotal(int total) {
getData().setInt("HighestDailyTotal", total);
}
public void setHighestMonthlyTotal(int total) {
getData().setInt("HighestMonthlyTotal", total);
}
public void setHighestWeeklyTotal(int total) {
getData().setInt("HighestWeeklyTotal", total);
}
public void setLastVotes(HashMap<VoteSite, Long> lastVotes) {
ArrayList<String> data = new ArrayList<String>();
for (Entry<VoteSite, Long> entry : lastVotes.entrySet()) {
String str = entry.getKey().getKey() + "//" + entry.getValue().longValue();
data.add(str);
}
getUserData().setStringList("LastVotes", data);
}
public void setMonthTotal(int total) {
getData().setInt("MonthTotal", total);
}
public void setMonthVoteStreak(int streak) {
getData().setInt("MonthVoteStreak", streak);
if (getBestMonthVoteStreak() < streak) {
setBestMonthVoteStreak(streak);
}
}
public void setOfflineOtherRewards(ArrayList<String> offlineOtherRewards) {
getUserData().setStringList("OfflineOtherRewards", offlineOtherRewards);
}
public void setOfflineVotes(ArrayList<String> offlineVotes) {
getUserData().setStringList("OfflineVotes", offlineVotes);
}
/**
* Sets the points.
*
* @param value
* the new points
*/
public void setPoints(int value) {
getUserData().setInt("Points", value);
}
public void setReminded(boolean reminded) {
getUserData().setString("Reminded", "" + reminded);
}
public void setTime(VoteSite voteSite) {
setTime(voteSite, LocalDateTime.now().atZone(ZoneId.systemDefault()).toInstant().toEpochMilli());
}
public void setTime(VoteSite voteSite, Long time) {
HashMap<VoteSite, Long> lastVotes = getLastVotes();
lastVotes.put(voteSite, time);
setLastVotes(lastVotes);
}
public void setTopVoterIgnore(boolean topVoterIgnore) {
getUserData().setString("TopVoterIgnore", "" + topVoterIgnore);
}
public void setVotePartyVotes(int value) {
getUserData().setInt("VotePartyVotes", value);
}
public void setWeeklyTotal(int total) {
getUserData().setInt("WeeklyTotal", total);
}
public void setWeekVoteStreak(int streak) {
getData().setInt("WeekVoteStreak", streak);
if (getBestWeekVoteStreak() < streak) {
setBestWeekVoteStreak(streak);
}
}
/**
* Weekly top voter award.
*
* @param place
* the place
*/
public void weeklyTopVoterAward(int place) {
if (PlayerUtils.getInstance().isPlayerOnline(getPlayerName())) {
// online
giveWeeklyTopVoterAward(place);
} else {
addOfflineOtherReward("WeeklyTopVoter" + place);
}
}
}
@@ -0,0 +1,261 @@
package com.Ben12345rocks.VotingPlugin.Objects;
import org.bukkit.configuration.ConfigurationSection;
import com.Ben12345rocks.AdvancedCore.Objects.RewardBuilder;
import com.Ben12345rocks.AdvancedCore.Util.Misc.MiscUtils;
import com.Ben12345rocks.AdvancedCore.Util.Misc.StringUtils;
import com.Ben12345rocks.VotingPlugin.Main;
import com.Ben12345rocks.VotingPlugin.Config.Config;
import com.Ben12345rocks.VotingPlugin.Config.ConfigVoteSites;
// TODO: Auto-generated Javadoc
/**
* The Class VoteSite.
*/
public class VoteSite {
/** The config. */
static Config config = Config.getInstance();
/** The config vote sites. */
static ConfigVoteSites configVoteSites = ConfigVoteSites.getInstance();
/** The plugin. */
static Main plugin = Main.plugin;
/** The vote URL. */
private String voteURL;
/** The service site. */
private String serviceSite;
/** The site name. */
private String key;
private String displayName;
/** The vote delay. */
private int voteDelay;
/** The enabled. */
private boolean enabled;
/** The priority. */
private int priority;
private ConfigurationSection item;
/**
* Instantiates a new vote site.
*
* @param plugin
* the plugin
*/
public VoteSite(Main plugin) {
VoteSite.plugin = plugin;
}
/**
* Instantiates a new vote site.
*
* @param siteName
* the site name
*/
public VoteSite(String siteName) {
key = siteName.replace(".", "_");
init();
}
/**
* Broadcast vote.
*
* @param user
* the user
*/
public void broadcastVote(User user) {
String playerName = user.getPlayerName();
String bc = StringUtils.getInstance().colorize(config.getFormatBroadCastMsg());
bc = bc.replace("%player%", playerName).replace("%SiteName%", getDisplayName());
MiscUtils.getInstance().broadcast(bc);
}
/**
* @return the displayName
*/
public String getDisplayName() {
return displayName;
}
/**
* @return the item
*/
public ConfigurationSection getItem() {
return item;
}
/**
* @return the key
*/
public String getKey() {
return key;
}
/**
* Gets the priority.
*
* @return the priority
*/
public int getPriority() {
return priority;
}
/**
* Gets the service site.
*
* @return the service site
*/
public String getServiceSite() {
return serviceSite;
}
/**
* Gets the vote delay.
*
* @return the vote delay
*/
public int getVoteDelay() {
return voteDelay;
}
/**
* Gets the vote URL.
*
* @return the vote URL
*/
public String getVoteURL() {
return voteURL;
}
/**
* Give rewards.
*
* @param user
* the user
* @param online
* the online
*/
public void giveRewards(User user, boolean online) {
new RewardBuilder(configVoteSites.getData(), configVoteSites.getRewardsPath(key)).setOnline(online)
.withPlaceHolder("ServiceSite", getServiceSite()).withPlaceHolder("SiteName", getDisplayName())
.withPlaceHolder("VoteDelay", "" + getVoteDelay()).withPlaceHolder("VoteURL", getVoteURL()).send(user);
new RewardBuilder(configVoteSites.getData(), configVoteSites.getEverySiteRewardPath()).setOnline(online)
.withPlaceHolder("ServiceSite", getServiceSite()).withPlaceHolder("SiteName", getDisplayName())
.withPlaceHolder("VoteDelay", "" + getVoteDelay()).withPlaceHolder("VoteURL", getVoteURL()).send(user);
}
/**
* Give site reward.
*
* @param user
* the user
* @param online
* the online
*/
public void giveSiteReward(User user, boolean online) {
giveRewards(user, online);
}
/**
* Inits the.
*/
public void init() {
setVoteURL(configVoteSites.getVoteURL(key));
setServiceSite(configVoteSites.getServiceSite(key));
setVoteDelay(configVoteSites.getVoteDelay(key));
setEnabled(configVoteSites.getVoteSiteEnabled(key));
setPriority(configVoteSites.getPriority(key));
displayName = configVoteSites.getDisplayName(key);
if (displayName == null || displayName.equals("")) {
displayName = key;
}
item = configVoteSites.getItem(key);
}
/**
* Checks if is enabled.
*
* @return true, if is enabled
*/
public boolean isEnabled() {
return enabled;
}
/**
* @param displayName
* the displayName to set
*/
public void setDisplayName(String displayName) {
this.displayName = displayName;
}
/**
* Sets the enabled.
*
* @param enabled
* the new enabled
*/
public void setEnabled(boolean enabled) {
this.enabled = enabled;
}
/**
* @param key
* the key to set
*/
public void setKey(String key) {
this.key = key;
}
/**
* Sets the priority.
*
* @param priority
* the new priority
*/
public void setPriority(int priority) {
this.priority = priority;
}
/**
* Sets the service site.
*
* @param serviceSite
* the new service site
*/
public void setServiceSite(String serviceSite) {
this.serviceSite = serviceSite;
}
/**
* Sets the vote delay.
*
* @param voteDelay
* the new vote delay
*/
public void setVoteDelay(int voteDelay) {
this.voteDelay = voteDelay;
}
/**
* Sets the vote URL.
*
* @param voteURL
* the new vote URL
*/
public void setVoteURL(String voteURL) {
this.voteURL = voteURL;
}
}
@@ -0,0 +1,283 @@
package com.Ben12345rocks.VotingPlugin.OtherRewards;
import java.util.HashMap;
import java.util.Set;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import com.Ben12345rocks.AdvancedCore.Listeners.MonthChangeEvent;
import com.Ben12345rocks.AdvancedCore.Objects.RewardBuilder;
import com.Ben12345rocks.AdvancedCore.Objects.RewardHandler;
import com.Ben12345rocks.AdvancedCore.Objects.UUID;
import com.Ben12345rocks.AdvancedCore.Util.Misc.StringUtils;
import com.Ben12345rocks.VotingPlugin.Main;
import com.Ben12345rocks.VotingPlugin.Config.Config;
import com.Ben12345rocks.VotingPlugin.Config.ConfigVoteSites;
import com.Ben12345rocks.VotingPlugin.Objects.User;
import com.Ben12345rocks.VotingPlugin.UserManager.UserManager;
// TODO: Auto-generated Javadoc
/**
* The Class OtherVoteReward.
*/
public class OtherVoteReward implements Listener {
/** The config. */
static Config config = Config.getInstance();
/** The config vote sites. */
static ConfigVoteSites configVoteSites = ConfigVoteSites.getInstance();
/** The instance. */
static OtherVoteReward instance = new OtherVoteReward();
/** The plugin. */
static Main plugin = Main.plugin;
/**
* Gets the single instance of OtherVoteReward.
*
* @return single instance of OtherVoteReward
*/
public static OtherVoteReward getInstance() {
return instance;
}
/**
* Instantiates a new other vote reward.
*/
private OtherVoteReward() {
}
/**
* Instantiates a new other vote reward.
*
* @param plugin
* the plugin
*/
public OtherVoteReward(Main plugin) {
OtherVoteReward.plugin = plugin;
}
/**
* Check all sites.
*
* @param user
* the user
* @return true, if successful
*/
public boolean checkAllSites(User user) {
boolean checkAllVotes = user.checkAllVotes();
if (checkAllVotes) {
giveAllSitesRewards(user, user.isOnline());
}
return checkAllVotes;
}
/**
* Check cumualative votes.
*
* @param user
* the user
* @return true, if successful
*/
public boolean checkCumualativeVotes(User user) {
boolean gotCumulative = false;
Set<String> votes = Config.getInstance().getCumulativeVotes();
for (String vote : votes) {
if (StringUtils.getInstance().isInt(vote)) {
int votesRequired = Integer.parseInt(vote);
if (votesRequired != 0) {
if (Config.getInstance().getCumulativeRewardEnabled(votesRequired)
&& RewardHandler.getInstance().hasRewards(Config.getInstance().getData(),
Config.getInstance().getCumulativeRewardsPath(votesRequired))) {
int total = 0;
if (Config.getInstance().getCumulativeVotesInSameDay(votesRequired)) {
total = user.getDailyTotal();
} else if (Config.getInstance().getCumulativeVotesInSameWeek(votesRequired)) {
total = user.getWeeklyTotal();
} else {
total = user.getAllTimeTotal();
}
if ((total % votesRequired) == 0 && total != 0) {
giveCumulativeVoteReward(user, user.isOnline(), votesRequired);
gotCumulative = true;
}
if (gotCumulative) {
plugin.debug(user.getPlayerName() + " got cumulative " + votesRequired);
}
}
}
} else {
plugin.debug("Invalid cumulative number: " + vote);
}
}
return gotCumulative;
}
/**
* Check first vote.
*
* @param user
* the user
* @return true, if successful
*/
public boolean checkFirstVote(User user) {
if (RewardHandler.getInstance().hasRewards(Config.getInstance().getData(),
Config.getInstance().getFirstVoteRewardsPath())) {
if (!user.hasGottenFirstVote()) {
giveFirstVoteRewards(user, user.isOnline());
return true;
}
}
return false;
}
/**
* Check milestone.
*
* @param user
* the user
* @return true, if successful
*/
public boolean checkMilestone(User user) {
boolean gotMilestone = false;
Set<String> votes = Config.getInstance().getMilestoneVotes();
for (String vote : votes) {
if (StringUtils.getInstance().isInt(vote)) {
int votesRequired = Integer.parseInt(vote);
if (votesRequired != 0) {
if (Config.getInstance().getMilestoneRewardEnabled(votesRequired)
&& RewardHandler.getInstance().hasRewards(Config.getInstance().getData(),
Config.getInstance().getMilestoneRewardsPath(votesRequired))) {
int userVotesTotal = user.getMilestoneCount();
if (userVotesTotal >= votesRequired && !user.hasGottenMilestone(votesRequired)) {
giveMilestoneVoteReward(user, user.isOnline(), votesRequired);
user.setHasGotteMilestone(votesRequired, true);
plugin.debug(user.getPlayerName() + " got milestone " + votesRequired);
}
}
}
} else {
plugin.debug("Invalid milestone number: " + vote);
}
}
return gotMilestone;
}
public boolean checkVoteStreak(User user, String type) {
boolean gotReward = false;
Set<String> streaks = Config.getInstance().getVoteStreakVotes(type);
for (String streak : streaks) {
if (StringUtils.getInstance().isInt(streak)) {
int streakRequired = Integer.parseInt(streak);
if (streakRequired != 0) {
if (Config.getInstance().getVoteStreakRewardEnabled(type, streakRequired)
&& RewardHandler.getInstance().hasRewards(Config.getInstance().getData(),
Config.getInstance().getVoteStreakRewardsPath(type, streakRequired))) {
int curStreak = 0;
if (type.equalsIgnoreCase("day")) {
curStreak = user.getDayVoteStreak();
} else if (type.equalsIgnoreCase("week")) {
curStreak = user.getWeekVoteStreak();
} else if (type.equalsIgnoreCase("month")) {
curStreak = user.getMonthVoteStreak();
}
if (curStreak == streakRequired) {
giveVoteStreakReward(user, user.isOnline(), type, streakRequired);
gotReward = true;
}
if (gotReward) {
plugin.debug(user.getPlayerName() + " got VoteStreak " + streakRequired + " for " + type);
}
}
}
}
}
return gotReward;
}
/**
* Give all sites rewards.
*
* @param user
* the user
* @param online
* the online
*/
public void giveAllSitesRewards(User user, boolean online) {
RewardHandler.getInstance().giveReward(user, Config.getInstance().getData(),
Config.getInstance().getAllSitesRewardPath(), online);
}
/**
* Give cumulative vote reward.
*
* @param user
* the user
* @param online
* the online
* @param cumulative
* the cumulative
*/
public void giveCumulativeVoteReward(User user, boolean online, int cumulative) {
new RewardBuilder(Config.getInstance().getData(), Config.getInstance().getCumulativeRewardsPath(cumulative))
.setOnline(online).withPlaceHolder("Cumulative", "" + cumulative).send(user);
}
/**
* Give first vote rewards.
*
* @param user
* the user
* @param online
* the online
*/
public void giveFirstVoteRewards(User user, boolean online) {
RewardHandler.getInstance().giveReward(user, Config.getInstance().getData(),
Config.getInstance().getFirstVoteRewardsPath(), online);
}
/**
* Give milestone vote reward.
*
* @param user
* the user
* @param online
* the online
* @param milestone
* the milestone
*/
public void giveMilestoneVoteReward(User user, boolean online, int milestone) {
new RewardBuilder(Config.getInstance().getData(), Config.getInstance().getMilestoneRewardsPath(milestone))
.setOnline(online).withPlaceHolder("Milestone", "" + milestone).send(user);
}
public void giveVoteStreakReward(User user, boolean online, String type, int streak) {
new RewardBuilder(Config.getInstance().getData(), Config.getInstance().getVoteStreakRewardsPath(type, streak))
.setOnline(online).withPlaceHolder("Type", type).withPlaceHolder("Streak", "" + streak).send(user);
}
@EventHandler
public void onMonthChange(MonthChangeEvent event) {
if (Config.getInstance().getResetMilestonesMonthly()) {
for (String uuid : UserManager.getInstance().getAllUUIDs()) {
User user = UserManager.getInstance().getVotingPluginUser(new UUID(uuid));
user.setMilestoneCount(0);
user.setHasGottenMilestone(new HashMap<String, Boolean>());
}
}
}
}
@@ -0,0 +1,104 @@
package com.Ben12345rocks.VotingPlugin.Signs;
import java.util.ArrayList;
import org.bukkit.Location;
import com.Ben12345rocks.VotingPlugin.Main;
import com.Ben12345rocks.VotingPlugin.Data.ServerData;
import com.Ben12345rocks.VotingPlugin.Objects.SignHandler;
// TODO: Auto-generated Javadoc
/**
* The Class Signs.
*/
public class Signs {
/** The instance. */
static Signs instance = new Signs();
/** The plugin. */
static Main plugin = Main.plugin;
/**
* Gets the single instance of Signs.
*
* @return single instance of Signs
*/
public static Signs getInstance() {
return instance;
}
/**
* Instantiates a new signs.
*/
private Signs() {
}
/**
* Instantiates a new signs.
*
* @param plugin
* the plugin
*/
public Signs(Main plugin) {
Signs.plugin = plugin;
}
/**
* Gets the sign from location.
*
* @param loc
* the loc
* @return the sign from location
*/
public String getSignFromLocation(Location loc) {
for (String sign : ServerData.getInstance().getSigns()) {
if (ServerData.getInstance().getSignLocation(sign).equals(loc)) {
return sign;
}
}
return null;
}
/**
* Load signs.
*/
public void loadSigns() {
plugin.signs = new ArrayList<SignHandler>();
for (String sign : ServerData.getInstance().getSigns()) {
// plugin.getLogger().info("Loading sign " + sign);
plugin.signs.add(new SignHandler(sign, ServerData.getInstance().getSignLocation(sign),
ServerData.getInstance().getSignData(sign), ServerData.getInstance().getSignPosition(sign)));
}
}
/**
* Store signs.
*/
public void storeSigns() {
for (SignHandler sign : plugin.signs) {
sign.storeSign();
}
}
/**
* Update signs.
*/
public void updateSigns() {
for (int i = plugin.signs.size() - 1; i >= 0; i--) {
if (!plugin.signs.get(i).isValid()) {
plugin.debug("Sign " + i + " invalid, removing from data.");
plugin.signs.get(i).removeSign();
plugin.signs.remove(i);
} else {
plugin.signs.get(i).updateLines();
plugin.signs.get(i).updateSign(i * 3);
}
}
plugin.debug("Signs updated");
}
}
@@ -0,0 +1,613 @@
package com.Ben12345rocks.VotingPlugin.TopVoter;
import java.io.File;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map.Entry;
import java.util.Set;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import com.Ben12345rocks.AdvancedCore.AdvancedCoreHook;
import com.Ben12345rocks.AdvancedCore.Listeners.DateChangedEvent;
import com.Ben12345rocks.AdvancedCore.Listeners.DayChangeEvent;
import com.Ben12345rocks.AdvancedCore.Listeners.MonthChangeEvent;
import com.Ben12345rocks.AdvancedCore.Listeners.WeekChangeEvent;
import com.Ben12345rocks.AdvancedCore.Objects.UUID;
import com.Ben12345rocks.AdvancedCore.Util.Misc.ArrayUtils;
import com.Ben12345rocks.AdvancedCore.Util.Misc.StringUtils;
import com.Ben12345rocks.AdvancedCore.YML.YMLFileHandler;
import com.Ben12345rocks.VotingPlugin.Main;
import com.Ben12345rocks.VotingPlugin.Config.Config;
import com.Ben12345rocks.VotingPlugin.Objects.User;
import com.Ben12345rocks.VotingPlugin.OtherRewards.OtherVoteReward;
import com.Ben12345rocks.VotingPlugin.UserManager.UserManager;
public class TopVoterHandler implements Listener {
/** The instance. */
static TopVoterHandler instance = new TopVoterHandler();
/** The plugin. */
static Main plugin = Main.plugin;
/**
* Gets the single instance of TopVoter.
*
* @return single instance of TopVoter
*/
public static TopVoterHandler getInstance() {
return instance;
}
/**
* Instantiates a new top voter.
*/
private TopVoterHandler() {
}
public ArrayList<String> getTopVoterBlackList() {
return Config.getInstance().getBlackList();
}
/**
* Top voters weekly.
*
* @return the string[]
*/
public String[] getTopVotersWeekly() {
ArrayList<String> msg = new ArrayList<String>();
ArrayList<User> users = plugin.convertSet(plugin.topVoterWeekly.keySet());
for (int i = 0; i < users.size(); i++) {
String line = Config.getInstance().getFormatCommandVoteTopLine().replace("%num%", "" + (i + 1))
.replace("%player%", users.get(i).getPlayerName())
.replace("%votes%", "" + plugin.topVoterWeekly.get(users.get(i)));
msg.add(line);
}
msg = ArrayUtils.getInstance().colorize(msg);
return ArrayUtils.getInstance().convert(msg);
}
@EventHandler
public void onDateChanged(DateChangedEvent event) {
updateTopVoters();
}
@EventHandler
public void onDayChange(DayChangeEvent event) {
for (String uuid : UserManager.getInstance().getAllUUIDs()) {
User user = UserManager.getInstance().getVotingPluginUser(new UUID(uuid));
if (user.getDailyTotal() == 0 && user.getDayVoteStreak() != 0) {
user.setDayVoteStreak(0);
} else {
user.addDayVoteStreak();
}
OtherVoteReward.getInstance().checkVoteStreak(user, "Day");
if (user.getHighestDailyTotal() < user.getDailyTotal()) {
user.setHighestDailyTotal(user.getDailyTotal());
}
}
if (Config.getInstance().getStoreTopVotersDaily()) {
plugin.debug("Storing TopVoters Daily");
storeDailyTopVoters();
}
if (Config.getInstance().getDailyAwardsEnabled()) {
Set<String> places = Config.getInstance().getDailyPossibleRewardPlaces();
int i = 0;
for (User user : plugin.topVoterDaily.keySet()) {
if (!Config.getInstance().getTopVoterIgnorePermission() || !user.isTopVoterIgnore()) {
i++;
if (places.contains(Integer.toString(i))) {
user.dailyTopVoterAward(i);
}
}
}
}
resetDailyTotals();
}
@EventHandler
public void onMonthChange(MonthChangeEvent event) {
for (String uuid : UserManager.getInstance().getAllUUIDs()) {
User user = UserManager.getInstance().getVotingPluginUser(new UUID(uuid));
if (user.getMonthTotal() == 0 && user.getMonthVoteStreak() != 0) {
user.setMonthVoteStreak(0);
} else {
user.addMonthVoteStreak();
OtherVoteReward.getInstance().checkVoteStreak(user, "Month");
}
if (user.getHighestMonthlyTotal() < user.getMonthTotal()) {
user.setHighestMonthlyTotal(user.getMonthTotal());
}
}
if (Config.getInstance().getStoreTopVotersMonthly()) {
plugin.debug("Storing TopVoters Monthly");
storeMonthlyTopVoters();
}
if (Config.getInstance().getMonthlyAwardsEnabled()) {
Set<String> places = Config.getInstance().getMonthlyPossibleRewardPlaces();
int i = 0;
for (User user : plugin.topVoterMonthly.keySet()) {
if (!Config.getInstance().getTopVoterIgnorePermission() || !user.isTopVoterIgnore()) {
i++;
if (places.contains(Integer.toString(i))) {
user.monthlyTopVoterAward(i);
}
}
}
}
resetMonthlyTotals();
}
@EventHandler
public void onWeekChange(WeekChangeEvent event) {
for (String uuid : UserManager.getInstance().getAllUUIDs()) {
User user = UserManager.getInstance().getVotingPluginUser(new UUID(uuid));
if (user.getWeeklyTotal() == 0 && user.getWeekVoteStreak() != 0) {
user.setWeekVoteStreak(0);
} else {
user.addWeekVoteStreak();
OtherVoteReward.getInstance().checkVoteStreak(user, "Week");
}
if (user.getHighestWeeklyTotal() < user.getWeeklyTotal()) {
user.setHighestWeeklyTotal(user.getWeeklyTotal());
}
}
if (Config.getInstance().getStoreTopVotersWeekly()) {
plugin.debug("Storing TopVoters Weekly");
storeWeeklyTopVoters();
}
if (Config.getInstance().getWeeklyAwardsEnabled()) {
Set<String> places = Config.getInstance().getWeeklyPossibleRewardPlaces();
int i = 0;
for (User user : plugin.topVoterWeekly.keySet()) {
if (!Config.getInstance().getTopVoterIgnorePermission() || !user.isTopVoterIgnore()) {
i++;
if (places.contains(Integer.toString(i))) {
user.weeklyTopVoterAward(i);
}
}
}
}
resetWeeklyTotals();
}
public void register() {
plugin.getServer().getPluginManager().registerEvents(this, plugin);
}
public void resetDailyTotals() {
for (String uuid : UserManager.getInstance().getAllUUIDs()) {
User user = UserManager.getInstance().getVotingPluginUser(new UUID(uuid));
if (user.getDailyTotal() != 0) {
user.resetDailyTotalVotes();
}
}
}
public void resetMonthlyTotals() {
for (String uuid : UserManager.getInstance().getAllUUIDs()) {
User user = UserManager.getInstance().getVotingPluginUser(new UUID(uuid));
if (user.getMonthTotal() != 0) {
user.resetMonthlyTotalVotes();
}
}
}
public void resetWeeklyTotals() {
for (String uuid : UserManager.getInstance().getAllUUIDs()) {
User user = UserManager.getInstance().getVotingPluginUser(new UUID(uuid));
if (user.getWeeklyTotal() != 0) {
user.resetWeeklyTotalVotes();
}
}
}
/**
* Sort by values.
*
* @param unsortMap
* the unsort map
* @param order
* the order, false for high to low
* @return the hash map
*/
public HashMap<User, Integer> sortByValues(HashMap<User, Integer> unsortMap, final boolean order) {
List<Entry<User, Integer>> list = new LinkedList<Entry<User, Integer>>(unsortMap.entrySet());
// Sorting the list based on values
Collections.sort(list, new Comparator<Entry<User, Integer>>() {
@Override
public int compare(Entry<User, Integer> o1, Entry<User, Integer> o2) {
if (order) {
return o1.getValue().compareTo(o2.getValue());
} else {
return o2.getValue().compareTo(o1.getValue());
}
}
});
// Maintaining insertion order with the help of LinkedList
HashMap<User, Integer> sortedMap = new LinkedHashMap<User, Integer>();
for (Entry<User, Integer> entry : list) {
sortedMap.put(entry.getKey(), entry.getValue());
}
return sortedMap;
}
public void storeDailyTopVoters() {
String month = LocalDateTime.now().getMonth().toString();
int year = LocalDateTime.now().getYear();
int day = LocalDateTime.now().getDayOfMonth();
YMLFileHandler file = new YMLFileHandler(new File(plugin.getDataFolder(),
"TopVoter" + File.separator + "Daily" + File.separator + year + "_" + month + "_" + day + ".yml"));
file.setup();
ArrayList<String> topVoters = new ArrayList<String>();
int count = 1;
for (Entry<User, Integer> entry : plugin.topVoterDaily.entrySet()) {
topVoters.add(count + ": " + entry.getKey().getPlayerName() + ": " + entry.getValue());
count++;
}
file.getData().set("Day", topVoters);
file.saveData();
}
public void storeMonthlyTopVoters() {
String month = LocalDateTime.now().getMonth().toString();
int year = LocalDateTime.now().getYear();
YMLFileHandler file = new YMLFileHandler(new File(plugin.getDataFolder(),
"TopVoter" + File.separator + "Monthly" + File.separator + year + "_" + month + ".yml"));
file.setup();
ArrayList<String> topVoters = new ArrayList<String>();
int count = 1;
for (Entry<User, Integer> entry : plugin.topVoterMonthly.entrySet()) {
topVoters.add(count + ": " + entry.getKey().getPlayerName() + ": " + entry.getValue());
count++;
}
file.getData().set("Month", topVoters);
file.saveData();
}
public void storeWeeklyTopVoters() {
String month = LocalDateTime.now().getMonth().toString();
int year = LocalDateTime.now().getYear();
int week = LocalDateTime.now().getDayOfMonth();
YMLFileHandler file = new YMLFileHandler(new File(plugin.getDataFolder(),
"TopVoter" + File.separator + "Weekly" + File.separator + year + "_" + month + "_" + week + ".yml"));
file.setup();
ArrayList<String> topVoters = new ArrayList<String>();
int count = 1;
for (Entry<User, Integer> entry : plugin.topVoterWeekly.entrySet()) {
topVoters.add(count + ": " + entry.getKey().getPlayerName() + ": " + entry.getValue());
count++;
}
file.getData().set("Week", topVoters);
file.saveData();
}
/**
* Top voter all time
*
* @param page
* the page
* @return the string[]
*/
public String[] topVoterAllTime(int page) {
int pagesize = Config.getInstance().getFormatPageSize();
ArrayList<String> msg = new ArrayList<String>();
ArrayList<String> topVoters = new ArrayList<String>();
int count = 1;
for (Entry<User, Integer> entry : plugin.topVoterAllTime.entrySet()) {
String line = Config.getInstance().getFormatCommandVoteTopLine();
line = line.replace("%num%", "" + count);
line = line.replace("%player%", entry.getKey().getPlayerName());
line = line.replace("%votes%", "" + entry.getValue());
topVoters.add(line);
count++;
}
int pageSize = (topVoters.size() / pagesize);
if ((topVoters.size() % pagesize) != 0) {
pageSize++;
}
String title = Config.getInstance().getFormatCommandVoteTopTitle();
title = title.replace("%page%", "" + page);
title = title.replace("%maxpages%", "" + pageSize);
title = title.replace("%Top%", "All Time");
msg.add(StringUtils.getInstance().colorize(title));
for (int i = (page - 1) * pagesize; (i < topVoters.size()) && (i < (((page - 1) * pagesize) + 10)); i++) {
msg.add(topVoters.get(i));
}
msg = ArrayUtils.getInstance().colorize(msg);
return ArrayUtils.getInstance().convert(msg);
}
/**
* Top voter weekly.
*
* @param page
* the page
* @return the string[]
*/
public String[] topVoterDaily(int page) {
int pagesize = Config.getInstance().getFormatPageSize();
ArrayList<String> msg = new ArrayList<String>();
ArrayList<String> topVoters = new ArrayList<String>();
int count = 1;
for (Entry<User, Integer> entry : plugin.topVoterDaily.entrySet()) {
String line = Config.getInstance().getFormatCommandVoteTopLine();
line = line.replace("%num%", "" + count);
line = line.replace("%player%", entry.getKey().getPlayerName());
line = line.replace("%votes%", "" + entry.getValue());
topVoters.add(line);
count++;
}
int pageSize = (topVoters.size() / pagesize);
if ((topVoters.size() % pagesize) != 0) {
pageSize++;
}
String title = Config.getInstance().getFormatCommandVoteTopTitle();
title = title.replace("%page%", "" + page);
title = title.replace("%maxpages%", "" + pageSize);
title = title.replace("%Top%", "Daily");
msg.add(StringUtils.getInstance().colorize(title));
for (int i = (page - 1) * pagesize; (i < topVoters.size()) && (i < (((page - 1) * pagesize) + 10)); i++) {
msg.add(topVoters.get(i));
}
msg = ArrayUtils.getInstance().colorize(msg);
return ArrayUtils.getInstance().convert(msg);
}
/**
* Top voter monthly
*
* @param page
* the page
* @return the string[]
*/
public String[] topVoterMonthly(int page) {
int pagesize = Config.getInstance().getFormatPageSize();
ArrayList<String> msg = new ArrayList<String>();
ArrayList<String> topVoters = new ArrayList<String>();
int count = 1;
for (Entry<User, Integer> entry : plugin.topVoterMonthly.entrySet()) {
String line = Config.getInstance().getFormatCommandVoteTopLine();
line = line.replace("%num%", "" + count);
line = line.replace("%player%", entry.getKey().getPlayerName());
line = line.replace("%votes%", "" + entry.getValue());
topVoters.add(line);
count++;
}
int pageSize = (topVoters.size() / pagesize);
if ((topVoters.size() % pagesize) != 0) {
pageSize++;
}
String title = Config.getInstance().getFormatCommandVoteTopTitle();
title = title.replace("%page%", "" + page);
title = title.replace("%maxpages%", "" + pageSize);
title = title.replace("%Top%", "Monthly");
msg.add(StringUtils.getInstance().colorize(title));
for (int i = (page - 1) * pagesize; (i < topVoters.size()) && (i < (((page - 1) * pagesize) + 10)); i++) {
msg.add(topVoters.get(i));
}
msg = ArrayUtils.getInstance().colorize(msg);
return ArrayUtils.getInstance().convert(msg);
}
/**
* Top voters all time
*
* @return the string[]
*/
public String[] topVotersAllTime() {
ArrayList<String> msg = new ArrayList<String>();
List<Entry<User, Integer>> list = new LinkedList<Entry<User, Integer>>(plugin.topVoterAllTime.entrySet());
int i = 0;
for (Entry<User, Integer> entry : list) {
String line = "%num%: %player%, %votes%";
line = line.replace("%num%", "" + (i + 1));
try {
line = line.replace("%player%", entry.getKey().getPlayerName());
} catch (Exception ex) {
AdvancedCoreHook.getInstance().debug(ex);
}
line = line.replace("%votes%", "" + entry.getValue());
msg.add(line);
i++;
}
msg = ArrayUtils.getInstance().colorize(msg);
return ArrayUtils.getInstance().convert(msg);
}
/**
* Top voters daily.
*
* @return the string[]
*/
public String[] topVotersDaily() {
ArrayList<String> msg = new ArrayList<String>();
ArrayList<User> users = plugin.convertSet(plugin.topVoterDaily.keySet());
for (int i = 0; i < users.size(); i++) {
String line = "%num%: %player%, %votes%";
line = line.replace("%num%", "" + (i + 1));
try {
line = line.replace("%player%", users.get(i).getPlayerName());
} catch (Exception ex) {
AdvancedCoreHook.getInstance().debug(ex);
}
line = line.replace("%votes%", "" + plugin.topVoterMonthly.get(users.get(i)));
msg.add(line);
}
msg = ArrayUtils.getInstance().colorize(msg);
return ArrayUtils.getInstance().convert(msg);
}
/**
* Top voters.
*
* @return the string[]
*/
public String[] topVotersMonthly() {
ArrayList<String> msg = new ArrayList<String>();
List<Entry<User, Integer>> list = new LinkedList<Entry<User, Integer>>(plugin.topVoterMonthly.entrySet());
int i = 0;
for (Entry<User, Integer> entry : list) {
String line = "%num%: %player%, %votes%";
line = line.replace("%num%", "" + (i + 1));
try {
line = line.replace("%player%", entry.getKey().getPlayerName());
} catch (Exception ex) {
AdvancedCoreHook.getInstance().debug(ex);
}
line = line.replace("%votes%", "" + entry.getValue());
msg.add(line);
i++;
}
msg = ArrayUtils.getInstance().colorize(msg);
return ArrayUtils.getInstance().convert(msg);
}
/**
* Top voter weekly.
*
* @param page
* the page
* @return the string[]
*/
public String[] topVoterWeekly(int page) {
int pagesize = Config.getInstance().getFormatPageSize();
ArrayList<String> msg = new ArrayList<String>();
ArrayList<String> topVoters = new ArrayList<String>();
int count = 1;
for (Entry<User, Integer> entry : plugin.topVoterWeekly.entrySet()) {
String line = Config.getInstance().getFormatCommandVoteTopLine();
line = line.replace("%num%", "" + count);
line = line.replace("%player%", entry.getKey().getPlayerName());
line = line.replace("%votes%", "" + entry.getValue());
topVoters.add(line);
count++;
}
int pageSize = (topVoters.size() / pagesize);
if ((topVoters.size() % pagesize) != 0) {
pageSize++;
}
String title = Config.getInstance().getFormatCommandVoteTopTitle();
title = title.replace("%page%", "" + page);
title = title.replace("%maxpages%", "" + pageSize);
title = title.replace("%Top%", "Weekly");
msg.add(StringUtils.getInstance().colorize(title));
for (int i = (page - 1) * pagesize; (i < topVoters.size()) && (i < (((page - 1) * pagesize) + 10)); i++) {
msg.add(topVoters.get(i));
}
msg = ArrayUtils.getInstance().colorize(msg);
return ArrayUtils.getInstance().convert(msg);
}
public synchronized void updateTopVoters() {
ArrayList<String> uuids = UserManager.getInstance().getAllUUIDs();
ArrayList<User> users = new ArrayList<User>();
ArrayList<String> blackList = getTopVoterBlackList();
for (String uuid : uuids) {
User user = UserManager.getInstance().getVotingPluginUser(new UUID(uuid));
if (!blackList.contains(user.getPlayerName())) {
if (!Config.getInstance().getTopVoterIgnorePermission() || !user.isTopVoterIgnore()) {
users.add(user);
}
}
}
plugin.topVoterAllTime.clear();
if (Config.getInstance().getLoadTopVoterAllTime()) {
for (User user : users) {
int total = user.getAllTimeTotal();
if (total > 0) {
plugin.topVoterAllTime.put(user, total);
}
}
plugin.topVoterAllTime = sortByValues(plugin.topVoterAllTime, false);
plugin.debug("All Time TopVoter loaded");
}
plugin.topVoterMonthly.clear();
if (Config.getInstance().getLoadTopVoterMonthly()) {
for (User user : users) {
int total = user.getMonthTotal();
if (total > 0) {
plugin.topVoterMonthly.put(user, total);
}
}
plugin.topVoterMonthly = sortByValues(plugin.topVoterMonthly, false);
plugin.debug("Monthly TopVoter loaded");
}
plugin.topVoterWeekly.clear();
if (Config.getInstance().getLoadTopVoterWeekly()) {
for (User user : users) {
int total = user.getWeeklyTotal();
if (total > 0) {
plugin.topVoterWeekly.put(user, total);
}
}
plugin.topVoterWeekly = sortByValues(plugin.topVoterWeekly, false);
plugin.debug("Weekly TopVoter loaded");
}
plugin.topVoterDaily.clear();
if (Config.getInstance().getLoadTopVoterDaily()) {
for (User user : users) {
int total = user.getDailyTotal();
if (total > 0) {
plugin.topVoterDaily.put(user, total);
}
}
plugin.topVoterDaily = sortByValues(plugin.topVoterDaily, false);
plugin.debug("Daily TopVoter loaded");
}
plugin.debug("Updated TopVoter");
}
}
@@ -0,0 +1,52 @@
package com.Ben12345rocks.VotingPlugin.UserManager;
import java.util.ArrayList;
import org.bukkit.OfflinePlayer;
import org.bukkit.entity.Player;
import com.Ben12345rocks.AdvancedCore.Objects.UUID;
import com.Ben12345rocks.VotingPlugin.Main;
import com.Ben12345rocks.VotingPlugin.Objects.User;
public class UserManager {
/** The instance. */
static UserManager instance = new UserManager();
/** The plugin. */
static Main plugin = Main.plugin;
/**
* Gets the single instance of UserManager.
*
* @return single instance of UserManager
*/
public static UserManager getInstance() {
return instance;
}
public UserManager() {
super();
}
public ArrayList<String> getAllUUIDs() {
return com.Ben12345rocks.AdvancedCore.UserManager.UserManager.getInstance().getAllUUIDs();
}
public User getVotingPluginUser(OfflinePlayer player) {
return getVotingPluginUser(player.getName());
}
public User getVotingPluginUser(Player player) {
return getVotingPluginUser(player.getName());
}
@SuppressWarnings("deprecation")
public User getVotingPluginUser(String playerName) {
return new User(playerName);
}
@SuppressWarnings("deprecation")
public User getVotingPluginUser(UUID uuid) {
return new User(uuid);
}
}
@@ -0,0 +1,253 @@
package com.Ben12345rocks.VotingPlugin.Util.PlaceHolders;
import java.util.Map.Entry;
import org.bukkit.entity.Player;
import com.Ben12345rocks.AdvancedCore.Util.Misc.StringUtils;
import com.Ben12345rocks.VotingPlugin.Main;
import com.Ben12345rocks.VotingPlugin.Commands.Commands;
import com.Ben12345rocks.VotingPlugin.Config.Config;
import com.Ben12345rocks.VotingPlugin.Config.ConfigVoteSites;
import com.Ben12345rocks.VotingPlugin.Objects.User;
import com.Ben12345rocks.VotingPlugin.Objects.VoteSite;
import com.Ben12345rocks.VotingPlugin.UserManager.UserManager;
import com.Ben12345rocks.VotingPlugin.VoteParty.VoteParty;
// TODO: Auto-generated Javadoc
/**
* The Class PlaceHolders.
*/
public class PlaceHolders {
/** The instance. */
static PlaceHolders instance = new PlaceHolders();
/** The plugin. */
static Main plugin = Main.plugin;
/**
* Gets the single instance of PlaceHolders.
*
* @return single instance of PlaceHolders
*/
public static PlaceHolders getInstance() {
return instance;
}
/**
* Instantiates a new place holders.
*/
private PlaceHolders() {
}
/**
* Instantiates a new place holders.
*
* @param plugin
* the plugin
*/
public PlaceHolders(Main plugin) {
PlaceHolders.plugin = plugin;
}
public synchronized String getPlaceHolder(Player p, String identifier) {
identifier = StringUtils.getInstance().replaceJavascript(p, identifier);
User user = UserManager.getInstance().getVotingPluginUser(p);
// %VotingPlugin_total% - Total votes of all vote sites
if (identifier.equalsIgnoreCase("total")) {
return Integer.toString(user.getMonthTotal());
} else if (identifier.equalsIgnoreCase("alltimetotal")) {
return Integer.toString(user.getAllTimeTotal());
}
String[] args = identifier.split("_");
if (args.length > 1 && args[0].equalsIgnoreCase("total")) {
if (args[1].equalsIgnoreCase("all")) {
return Integer.toString(user.getAllTimeTotal());
} else if (args[1].equalsIgnoreCase("month")) {
return Integer.toString(user.getMonthTotal());
} else if (args[1].equalsIgnoreCase("week")) {
return Integer.toString(user.getWeeklyTotal());
} else if (args[1].equalsIgnoreCase("daily")) {
return Integer.toString(user.getDailyTotal());
}
}
if (identifier.equalsIgnoreCase("BestDailyTotal")) {
return "" + user.getHighestDailyTotal();
} else if (identifier.equalsIgnoreCase("BestWeeklyTotal")) {
return "" + user.getHighestWeeklyTotal();
} else if (identifier.equalsIgnoreCase("BestMonthlyTotal")) {
return "" + user.getHighestMonthlyTotal();
} else if (identifier.equalsIgnoreCase("DailyVoteStreak")) {
return "" + user.getDayVoteStreak();
} else if (identifier.equalsIgnoreCase("WeeklyVoteStreak")) {
return "" + user.getWeekVoteStreak();
} else if (identifier.equalsIgnoreCase("MonthlyVoteStreak")) {
return "" + user.getMonthVoteStreak();
} else if (identifier.equalsIgnoreCase("BestDailyVoteStreak")) {
return "" + user.getBestDayVoteStreak();
} else if (identifier.equalsIgnoreCase("BestWeeklyVoteStreak")) {
return "" + user.getBestWeekVoteStreak();
} else if (identifier.equalsIgnoreCase("BestMonthlyVoteStreak")) {
return "" + user.getBestMonthVoteStreak();
}
// %VotingPlugin_points% - Total votes of all vote sites
if (identifier.equalsIgnoreCase("points")) {
return Integer.toString(user.getPoints());
}
// %VotingPlugin_VotePartyVotesNeeded - Number of votes needed until
// vote party rewards
if (identifier.equalsIgnoreCase("VotePartyVotesNeeded")) {
return Integer.toString(VoteParty.getInstance().getNeededVotes());
} else if (identifier.equalsIgnoreCase("VotePartyVotesCurrent")) {
return Integer.toString(VoteParty.getInstance().getTotalVotes());
} else if (identifier.equalsIgnoreCase("VotePartyVotesRequired")) {
return Integer.toString(Config.getInstance().getVotePartyVotesRequired());
}
// %VotingPlugin_canvote% - Whether or not a player can vote on all
// sites
if (identifier.equalsIgnoreCase("canvote")) {
return Boolean.toString(user.canVoteAll());
}
// %VotingPlugin_next_SITENAME% - Next time you can vote for voteSite
if (startsWithIgnoreCase(identifier, "next")) {
if (args.length > 1) {
String str = args[1];
for (int i = 2; i < args.length; i++) {
str += "_" + args[i];
}
return playerNextVote(user, str);
} else {
return "";
}
}
// %VotingPlugin_last_SITENAME% - Next time you can vote for voteSite
if (startsWithIgnoreCase(identifier, "last")) {
if (args.length > 1) {
String str = args[1];
for (int i = 2; i < args.length; i++) {
str += "_" + args[i];
}
return playerLastVote(user, str);
}
}
if (args.length > 2) {
if (args[0].equalsIgnoreCase("top")) {
if (StringUtils.getInstance().isInt(args[2])) {
int number = Integer.parseInt(args[2]);
int num = 1;
if (args[1].equalsIgnoreCase("all")) {
for (Entry<User, Integer> entry : plugin.topVoterAllTime.entrySet()) {
if (num == number) {
if (args.length > 3 && args[3].equalsIgnoreCase("votes")) {
return "" + entry.getValue().intValue();
} else {
return entry.getKey().getPlayerName();
}
}
num++;
}
} else if (args[1].equalsIgnoreCase("month")) {
for (Entry<User, Integer> entry : plugin.topVoterMonthly.entrySet()) {
if (num == number) {
if (args.length > 3 && args[3].equalsIgnoreCase("votes")) {
return "" + entry.getValue().intValue();
} else {
return entry.getKey().getPlayerName();
}
}
num++;
}
} else if (args[1].equalsIgnoreCase("week")) {
for (Entry<User, Integer> entry : plugin.topVoterWeekly.entrySet()) {
if (num == number) {
if (args.length > 3 && args[3].equalsIgnoreCase("votes")) {
return "" + entry.getValue().intValue();
} else {
return entry.getKey().getPlayerName();
}
}
num++;
}
} else if (args[1].equalsIgnoreCase("daily")) {
for (Entry<User, Integer> entry : plugin.topVoterDaily.entrySet()) {
if (num == number) {
if (args.length > 3 && args[3].equalsIgnoreCase("votes")) {
return "" + entry.getValue().intValue();
} else {
return entry.getKey().getPlayerName();
}
}
num++;
}
}
} else if (args[2].equalsIgnoreCase("Position")) {
int num = 1;
if (args[1].equalsIgnoreCase("all")) {
for (Entry<User, Integer> entry : plugin.topVoterAllTime.entrySet()) {
if (entry.getKey().getUUID().equals(p.getUniqueId().toString())) {
return "" + num;
}
num++;
}
} else if (args[1].equalsIgnoreCase("month")) {
for (Entry<User, Integer> entry : plugin.topVoterMonthly.entrySet()) {
if (entry.getKey().getUUID().equals(p.getUniqueId().toString())) {
return "" + num;
}
num++;
}
} else if (args[1].equalsIgnoreCase("week")) {
for (Entry<User, Integer> entry : plugin.topVoterWeekly.entrySet()) {
if (entry.getKey().getUUID().equals(p.getUniqueId().toString())) {
return "" + num;
}
num++;
}
} else if (args[1].equalsIgnoreCase("daily")) {
for (Entry<User, Integer> entry : plugin.topVoterDaily.entrySet()) {
if (entry.getKey().getUUID().equals(p.getUniqueId().toString())) {
return "" + num;
}
num++;
}
}
}
}
}
return identifier;
}
public String playerLastVote(User user, String siteName) {
if (!ConfigVoteSites.getInstance().getVoteSitesNames().contains(siteName)) {
return "";
}
VoteSite voteSite = plugin.getVoteSite(siteName);
return Commands.getInstance().voteCommandLastDate(user, voteSite);
}
public String playerNextVote(User user, String siteName) {
if (!ConfigVoteSites.getInstance().getVoteSitesNames().contains(siteName)) {
return "";
}
VoteSite voteSite = plugin.getVoteSite(siteName);
return Commands.getInstance().voteCommandNextInfo(user, voteSite);
}
public boolean startsWithIgnoreCase(String str1, String str2) {
return str1.toLowerCase().startsWith(str2.toLowerCase());
}
}
@@ -0,0 +1,114 @@
package com.Ben12345rocks.VotingPlugin.Util.Updater;
import java.util.Timer;
import java.util.TimerTask;
import org.bukkit.Bukkit;
import com.Ben12345rocks.AdvancedCore.Util.Updater.Updater;
import com.Ben12345rocks.VotingPlugin.Main;
// TODO: Auto-generated Javadoc
/**
* The Class CheckUpdate.
*/
public class CheckUpdate {
/** The instance. */
static CheckUpdate instance = new CheckUpdate();
/** The plugin. */
static Main plugin = Main.plugin;
/**
* Gets the single instance of CheckUpdate.
*
* @return single instance of CheckUpdate
*/
public static CheckUpdate getInstance() {
return instance;
}
/**
* Instantiates a new check update.
*/
private CheckUpdate() {
}
/**
* Instantiates a new check update.
*
* @param plugin
* the plugin
*/
public CheckUpdate(Main plugin) {
CheckUpdate.plugin = plugin;
}
/**
* Check update.
*/
public void checkUpdate() {
plugin.updater = new Updater(plugin, 15358, false);
final Updater.UpdateResult result = plugin.updater.getResult();
switch (result) {
case FAIL_SPIGOT: {
plugin.getLogger().info("Failed to check for update for " + plugin.getName() + "!");
break;
}
case NO_UPDATE: {
plugin.getLogger().info(plugin.getName() + " is up to date! Version: " + plugin.updater.getVersion());
break;
}
case UPDATE_AVAILABLE: {
plugin.getLogger()
.info(plugin.getName() + " has an update available! Your Version: "
+ plugin.getDescription().getVersion() + " New Version: " + plugin.updater.getVersion()
+ " Use /av download to get the latest update!");
break;
}
default: {
break;
}
}
}
public void checkUpdateBasic() {
plugin.updater = new Updater(plugin, 15358, false);
final Updater.UpdateResult result = plugin.updater.getResult();
switch (result) {
case UPDATE_AVAILABLE: {
plugin.getLogger()
.info(plugin.getName() + " has an update available! Your Version: "
+ plugin.getDescription().getVersion() + " New Version: " + plugin.updater.getVersion()
+ " Use /av download to get the latest update!");
break;
}
default: {
break;
}
}
}
/**
* Start up.
*/
public void startUp() {
Bukkit.getScheduler().runTaskLaterAsynchronously(plugin, new Runnable() {
@Override
public void run() {
checkUpdate();
new Timer().schedule(new TimerTask() {
@Override
public void run() {
checkUpdateBasic();
}
}, 1000 * 60 * 1200, 1000 * 60 * 1200);
}
}, 10l);
}
}
@@ -0,0 +1,230 @@
package com.Ben12345rocks.VotingPlugin.VoteParty;
import java.util.ArrayList;
import java.util.HashMap;
import org.bukkit.command.CommandSender;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import com.Ben12345rocks.AdvancedCore.Listeners.DayChangeEvent;
import com.Ben12345rocks.AdvancedCore.Objects.RewardBuilder;
import com.Ben12345rocks.AdvancedCore.Objects.UUID;
import com.Ben12345rocks.AdvancedCore.Util.Misc.ArrayUtils;
import com.Ben12345rocks.AdvancedCore.Util.Misc.MiscUtils;
import com.Ben12345rocks.VotingPlugin.Main;
import com.Ben12345rocks.VotingPlugin.Config.Config;
import com.Ben12345rocks.VotingPlugin.Data.ServerData;
import com.Ben12345rocks.VotingPlugin.Objects.User;
import com.Ben12345rocks.VotingPlugin.UserManager.UserManager;
// TODO: Auto-generated Javadoc
/**
* The Class VoteParty.
*/
public class VoteParty implements Listener {
/** The instance. */
static VoteParty instance = new VoteParty();
/** The plugin. */
static Main plugin = Main.plugin;
/**
* Gets the single instance of VoteParty.
*
* @return single instance of VoteParty
*/
public static VoteParty getInstance() {
return instance;
}
/**
* Instantiates a new vote party.
*/
private VoteParty() {
}
/**
* Instantiates a new vote party.
*
* @param plugin
* the plugin
*/
public VoteParty(Main plugin) {
VoteParty.plugin = plugin;
}
public void addTotal(User user) {
setTotalVotes(getTotalVotes() + 1);
user.setVotePartyVotes(user.getVotePartyVotes() + 1);
}
/**
* Adds the vote player.
*
* @param user
* the user
*/
public void addVotePlayer(User user) {
String uuid = user.getUUID();
ArrayList<String> voted = getVotedUsers();
if (voted == null) {
voted = new ArrayList<String>();
}
if (!voted.contains(uuid)) {
voted.add(uuid);
setVotedUsers(voted);
}
}
/**
* Check.
*/
public void check() {
if (getTotalVotes() >= Config.getInstance().getVotePartyVotesRequired()) {
setTotalVotes(getTotalVotes() - Config.getInstance().getVotePartyVotesRequired());
giveRewards();
MiscUtils.getInstance().broadcast(Config.getInstance().getVotePartyBroadcast());
}
}
/**
* Command vote party.
*
* @param sender
* the sender
*/
public void commandVoteParty(CommandSender sender) {
ArrayList<String> msg = Config.getInstance().getFormatCommandsVoteParty();
int votesRequired = Config.getInstance().getVotePartyVotesRequired();
int votes = getTotalVotes();
int neededVotes = votesRequired - votes;
HashMap<String, String> placeholders = new HashMap<String, String>();
placeholders.put("votesrequired", "" + votesRequired);
placeholders.put("neededvotes", "" + neededVotes);
placeholders.put("votes", "" + votes);
msg = ArrayUtils.getInstance().colorize(ArrayUtils.getInstance().replacePlaceHolder(msg, placeholders));
sender.sendMessage(ArrayUtils.getInstance().convert(msg));
}
/**
* Gets the needed votes.
*
* @return the needed votes
*/
public int getNeededVotes() {
int votesRequired = Config.getInstance().getVotePartyVotesRequired();
int votes = getTotalVotes();
int neededVotes = votesRequired - votes;
return neededVotes;
}
/**
* Gets the total votes.
*
* @return the total votes
*/
public int getTotalVotes() {
return ServerData.getInstance().getData().getInt("VoteParty.Total");
}
/**
* Gets the voted users.
*
* @return the voted users
*/
@SuppressWarnings("unchecked")
public ArrayList<String> getVotedUsers() {
ArrayList<String> list = (ArrayList<String>) ServerData.getInstance().getData().getList("VoteParty.Voted");
if (list != null) {
return list;
}
return new ArrayList<String>();
}
/**
* Give reward.
*
* @param user
* the user
*/
public void giveReward(User user) {
/*
* if (PlayerUtils.getInstance().isPlayerOnline(user.getPlayerName())) {
* if (user.getVotePartyVotes() >=
* Config.getInstance().getUserVotesRequired()) {
* RewardHandler.getInstance().giveReward(user,
* Config.getInstance().getData(),
* Config.getInstance().getVotePartyRewardsPath()); } } else {
* user.addOfflineOtherReward("VoteParty"); }
*/
new RewardBuilder(Config.getInstance().getData(), Config.getInstance().getVotePartyRewardsPath())
.setOnline(user.isOnline())
.withPlaceHolder("VotesRequired", "" + Config.getInstance().getVotePartyVotesRequired()).send(user);
}
/**
* Give rewards.
*/
public void giveRewards() {
if (Config.getInstance().getVotePartyGiveAllPlayers()) {
for (String uuid : UserManager.getInstance().getAllUUIDs()) {
User user = UserManager.getInstance().getVotingPluginUser(new UUID(uuid));
giveReward(user);
}
} else {
for (String uuid : getVotedUsers()) {
User user = UserManager.getInstance().getVotingPluginUser(new UUID(uuid));
giveReward(user);
}
}
reset();
}
@EventHandler
public void onDayChange(DayChangeEvent event) {
if (Config.getInstance().getVotePartyResetEachDay()) {
setTotalVotes(0);
setVotedUsers(new ArrayList<String>());
}
}
public void register() {
plugin.getServer().getPluginManager().registerEvents(this, plugin);
}
public void reset() {
setVotedUsers(new ArrayList<String>());
for (String uuid : UserManager.getInstance().getAllUUIDs()) {
User user = UserManager.getInstance().getVotingPluginUser(new UUID(uuid));
if (user.getVotePartyVotes() != 0) {
user.setVotePartyVotes(0);
}
}
}
/**
* Sets the total votes.
*
* @param value
* the new total votes
*/
public void setTotalVotes(int value) {
ServerData.getInstance().getData().set("VoteParty.Total", value);
ServerData.getInstance().saveData();
}
/**
* Sets the voted users.
*
* @param value
* the new voted users
*/
public void setVotedUsers(ArrayList<String> value) {
ServerData.getInstance().getData().set("VoteParty.Voted", value);
ServerData.getInstance().saveData();
}
}
@@ -0,0 +1,124 @@
package com.Ben12345rocks.VotingPlugin.VoteReminding;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import com.Ben12345rocks.AdvancedCore.Objects.RewardBuilder;
import com.Ben12345rocks.AdvancedCore.Util.Misc.PlayerUtils;
import com.Ben12345rocks.VotingPlugin.Main;
import com.Ben12345rocks.VotingPlugin.Config.Config;
import com.Ben12345rocks.VotingPlugin.Objects.User;
import com.Ben12345rocks.VotingPlugin.UserManager.UserManager;
// TODO: Auto-generated Javadoc
/**
* The Class VoteReminding.
*/
public class VoteReminding {
/** The instance. */
static VoteReminding instance = new VoteReminding();
/** The plugin. */
static Main plugin = Main.plugin;
/**
* Gets the single instance of VoteReminding.
*
* @return single instance of VoteReminding
*/
public static VoteReminding getInstance() {
return instance;
}
/**
* Instantiates a new vote reminding.
*/
private VoteReminding() {
}
/**
* Instantiates a new vote reminding.
*
* @param plugin
* the plugin
*/
public VoteReminding(Main plugin) {
VoteReminding.plugin = plugin;
}
/**
* Check remind.
*
* @param user
* the user
*/
public void checkRemind(User user) {
String playerName = user.getPlayerName();
if (PlayerUtils.getInstance().hasServerPermission(playerName, "VotingPlugin.Login.RemindVotes")
|| PlayerUtils.getInstance().hasServerPermission(playerName, "VotingPlugin.Player")) {
if (user.canVoteAll()) {
Player player = Bukkit.getPlayer(playerName);
if (player != null) {
if (!Config.getInstance().getVoteRemindingRemindOnlyOnce()) {
runRemind(user);
user.setReminded(true);
} else if (!user.isReminded()) {
runRemind(user);
user.setReminded(true);
}
}
}
}
}
private void giveReward(User user) {
new RewardBuilder(Config.getInstance().getData(), Config.getInstance().getVoteRemindingRewardsPath())
.setGiveOffline(false).send(user);
}
/**
* Load remind checking.
*/
public void loadRemindChecking() {
Bukkit.getScheduler().runTaskTimerAsynchronously(plugin, new Runnable() {
@Override
public void run() {
for (Player player : Bukkit.getServer().getOnlinePlayers()) {
User user = UserManager.getInstance().getVotingPluginUser(player);
checkRemind(user);
}
}
}, 10, Config.getInstance().getVoteRemindingRemindDelay() * 20 * 60);
}
/**
* Run remind.
*
* @param user
* the user
*/
public void runRemind(User user) {
if (Config.getInstance().getVoteRemindingEnabled() && user.canVoteAll()) {
user.setReminded(true);
giveReward(user);
plugin.debug(user.getPlayerName() + " was reminded!");
}
}
public void runRemindLogin(User user) {
if (Config.getInstance().getVoteRemindingEnabled()
&& (!UserManager.getInstance().getAllUUIDs().contains(user.getUUID()) || user.canVoteAll())) {
giveReward(user);
plugin.debug(user.getPlayerName() + " was reminded!");
}
}
}
@@ -0,0 +1,66 @@
package com.Ben12345rocks.VotingPlugin.VoteShop;
import org.bukkit.entity.Player;
import com.Ben12345rocks.AdvancedCore.Objects.RewardHandler;
import com.Ben12345rocks.AdvancedCore.Util.Inventory.BInventory;
import com.Ben12345rocks.AdvancedCore.Util.Inventory.BInventory.ClickEvent;
import com.Ben12345rocks.AdvancedCore.Util.Inventory.BInventoryButton;
import com.Ben12345rocks.AdvancedCore.Util.Item.ItemBuilder;
import com.Ben12345rocks.VotingPlugin.Main;
import com.Ben12345rocks.VotingPlugin.Config.Config;
import com.Ben12345rocks.VotingPlugin.Objects.User;
import com.Ben12345rocks.VotingPlugin.UserManager.UserManager;
public class VoteShop {
static VoteShop instance = new VoteShop();
static Main plugin = Main.plugin;
public static VoteShop getInstance() {
return instance;
}
private VoteShop() {
}
public VoteShop(Main plugin) {
VoteShop.plugin = plugin;
}
public void voteShop(Player player) {
BInventory inv = new BInventory(Config.getInstance().getVoteShopName());
for (String identifier : Config.getInstance().getIdentifiers()) {
ItemBuilder builder = new ItemBuilder(Config.getInstance().getIdentifierSection(identifier));
inv.addButton(Config.getInstance().getIdentifierSlot(identifier),
new BInventoryButton(builder) {
@Override
public void onClick(ClickEvent event) {
Player player = event.getWhoClicked();
User user = UserManager.getInstance().getVotingPluginUser(player);
int points = Config.getInstance().getIdentifierCost(identifier);
String identifier = Config.getInstance().getIdentifierFromSlot(event.getSlot());
if (identifier != null) {
if (user.removePoints(points)) {
RewardHandler.getInstance().giveReward(user, Config.getInstance().getData(),
Config.getInstance().getIdentifierRewardsPath(identifier));
user.sendMessage(Config.getInstance().getFormatShopPurchaseMsg()
.replace("%Identifier%", identifier).replace("%Points%", "" + points));
} else {
user.sendMessage(Config.getInstance().getFormatShopFailedMsg()
.replace("%Identifier%", identifier).replace("%Points%", "" + points));
}
}
}
});
}
inv.openInventory(player);
}
}
-992
View File
@@ -1,992 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>All Classes and Interfaces (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="class index">
<meta name="generator" content="javadoc/AllClassesIndexWriter">
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="script.js"></script>
<script type="text/javascript" src="script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="script-dir/jquery-ui.min.js"></script>
</head>
<body class="all-classes-index-page">
<script type="text/javascript">var pathtoroot = "./";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="index.html">Overview</a></li>
<li>Package</li>
<li>Class</li>
<li>Use</li>
<li><a href="overview-tree.html">Tree</a></li>
<li><a href="deprecated-list.html">Deprecated</a></li>
<li><a href="index-all.html">Index</a></li>
<li><a href="help-doc.html#all-classes">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list"></div>
<div class="nav-list-search"><a href="search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<div class="header">
<h1 title="All Classes and Interfaces" class="title">All Classes and Interfaces</h1>
</div>
<div id="all-classes-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="all-classes-table-tab0" role="tab" aria-selected="true" aria-controls="all-classes-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('all-classes-table', 'all-classes-table', 2)" class="active-table-tab">All Classes and Interfaces</button><button id="all-classes-table-tab1" role="tab" aria-selected="false" aria-controls="all-classes-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('all-classes-table', 'all-classes-table-tab1', 2)" class="table-tab">Interfaces</button><button id="all-classes-table-tab2" role="tab" aria-selected="false" aria-controls="all-classes-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('all-classes-table', 'all-classes-table-tab2', 2)" class="table-tab">Classes</button><button id="all-classes-table-tab3" role="tab" aria-selected="false" aria-controls="all-classes-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('all-classes-table', 'all-classes-table-tab3', 2)" class="table-tab">Enum Classes</button></div>
<div id="all-classes-table.tabpanel" role="tabpanel" aria-labelledby="all-classes-table-tab0">
<div class="summary-table two-column-summary">
<div class="table-header col-first">Class</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/AdminGUI.html" title="class in com.bencodez.votingplugin.commands.gui">AdminGUI</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin GUI handler for the voting plugin.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/AdminVoteConfirmation.html" title="class in com.bencodez.votingplugin.commands.gui.admin">AdminVoteConfirmation</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Abstract class for admin vote confirmation dialogs.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/AdminVoteHelp.html" title="class in com.bencodez.votingplugin.commands.gui.admin">AdminVoteHelp</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin help GUI handler.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/votelog/AdminVoteLogEventSelect.html" title="class in com.bencodez.votingplugin.commands.gui.admin.votelog">AdminVoteLogEventSelect</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin GUI: Select an event filter, then open AdminVoteLogRecent (filtered).</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/votelog/AdminVoteLogHelpers.html" title="class in com.bencodez.votingplugin.commands.gui.admin.votelog">AdminVoteLogHelpers</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Helper class for admin vote log GUI operations.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/votelog/AdminVoteLogMenu.html" title="class in com.bencodez.votingplugin.commands.gui.admin.votelog">AdminVoteLogMenu</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin vote log menu GUI handler.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/votelog/AdminVoteLogPlayer.html" title="class in com.bencodez.votingplugin.commands.gui.admin.votelog">AdminVoteLogPlayer</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin GUI: VoteLog entries for a given player (paged).</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/votelog/AdminVoteLogPlayerSelect.html" title="class in com.bencodez.votingplugin.commands.gui.admin.votelog">AdminVoteLogPlayerSelect</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin GUI: Select an ONLINE player, then open AdminVoteLogPlayer.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/votelog/AdminVoteLogPlayerSelectOnline.html" title="class in com.bencodez.votingplugin.commands.gui.admin.votelog">AdminVoteLogPlayerSelectOnline</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin GUI: Select an ONLINE player, then open AdminVoteLogPlayer.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/votelog/AdminVoteLogRecent.html" title="class in com.bencodez.votingplugin.commands.gui.admin.votelog">AdminVoteLogRecent</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin GUI: Recent VoteLog entries (paged).</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/votelog/AdminVoteLogServer.html" title="class in com.bencodez.votingplugin.commands.gui.admin.votelog">AdminVoteLogServer</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin GUI: VoteLog entries for a given server (paged).</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/votelog/AdminVoteLogServerSelect.html" title="class in com.bencodez.votingplugin.commands.gui.admin.votelog">AdminVoteLogServerSelect</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin GUI: Select a server (distinct list), then open AdminVoteLogServer.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/votelog/AdminVoteLogService.html" title="class in com.bencodez.votingplugin.commands.gui.admin.votelog">AdminVoteLogService</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin GUI: VoteLog entries for a given service/site (paged).</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/votelog/AdminVoteLogServiceSelect.html" title="class in com.bencodez.votingplugin.commands.gui.admin.votelog">AdminVoteLogServiceSelect</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin GUI: Select a service (distinct list), then open AdminVoteLogService.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/votelog/AdminVoteLogServiceSelectAll.html" title="class in com.bencodez.votingplugin.commands.gui.admin.votelog">AdminVoteLogServiceSelectAll</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin GUI: Select a service from DB (distinct services), then open
AdminVoteLogService.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/votelog/AdminVoteLogStats.html" title="class in com.bencodez.votingplugin.commands.gui.admin.votelog">AdminVoteLogStats</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin GUI: VoteLog stats overview.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/votelog/AdminVoteLogVoteId.html" title="class in com.bencodez.votingplugin.commands.gui.admin.votelog">AdminVoteLogVoteId</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin GUI: VoteLog entries for a given voteId (paged).</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/AdminVotePerms.html" title="class in com.bencodez.votingplugin.commands.gui.admin">AdminVotePerms</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin permissions GUI handler.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/AdminVotePlaceholders.html" title="class in com.bencodez.votingplugin.commands.gui.admin">AdminVotePlaceholders</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin placeholders GUI handler.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/AdminVotePlaceholdersPlayer.html" title="class in com.bencodez.votingplugin.commands.gui.admin">AdminVotePlaceholdersPlayer</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin placeholders player GUI handler.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/tabcompleter/AdminVoteTabCompleter.html" title="class in com.bencodez.votingplugin.commands.tabcompleter">AdminVoteTabCompleter</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class AdminVoteTabCompleter.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/AdminVoteTopPoints.html" title="class in com.bencodez.votingplugin.commands.gui.admin">AdminVoteTopPoints</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin top points GUI handler.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/milestones/AdminVoteVoteMilestoneRemove.html" title="class in com.bencodez.votingplugin.commands.gui.admin.milestones">AdminVoteVoteMilestoneRemove</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin vote milestone remove GUI handler.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/milestones/AdminVoteVoteMilestones.html" title="class in com.bencodez.votingplugin.commands.gui.admin.milestones">AdminVoteVoteMilestones</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin vote milestones GUI handler.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/AdminVoteVoteParty.html" title="class in com.bencodez.votingplugin.commands.gui.admin">AdminVoteVoteParty</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin vote party GUI handler.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/AdminVoteVotePlayer.html" title="class in com.bencodez.votingplugin.commands.gui.admin">AdminVoteVotePlayer</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin vote player GUI handler.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/voteshop/AdminVoteVoteShop.html" title="class in com.bencodez.votingplugin.commands.gui.admin.voteshop">AdminVoteVoteShop</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin vote shop GUI handler.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/voteshop/AdminVoteVoteShopCategories.html" title="class in com.bencodez.votingplugin.commands.gui.admin.voteshop">AdminVoteVoteShopCategories</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin vote shop categories GUI handler.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/voteshop/AdminVoteVoteShopCategory.html" title="class in com.bencodez.votingplugin.commands.gui.admin.voteshop">AdminVoteVoteShopCategory</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin vote shop category GUI handler.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/voteshop/AdminVoteVoteShopCategoryRemove.html" title="class in com.bencodez.votingplugin.commands.gui.admin.voteshop">AdminVoteVoteShopCategoryRemove</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin vote shop category remove GUI handler.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/voteshop/AdminVoteVoteShopItem.html" title="class in com.bencodez.votingplugin.commands.gui.admin.voteshop">AdminVoteVoteShopItem</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin vote shop item GUI handler.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/voteshop/AdminVoteVoteShopItemRemove.html" title="class in com.bencodez.votingplugin.commands.gui.admin.voteshop">AdminVoteVoteShopItemRemove</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin vote shop item remove GUI handler.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/admin/voteshop/AdminVoteVoteShopItems.html" title="class in com.bencodez.votingplugin.commands.gui.admin.voteshop">AdminVoteVoteShopItems</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Admin vote shop items GUI handler.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/tabcompleter/AliasCommandFilterListener.html" title="class in com.bencodez.votingplugin.commands.tabcompleter">AliasCommandFilterListener</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Filters VotingPlugin command aliases from tab completion when aliases are
disabled.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/tabcompleter/AliasesTabCompleter.html" title="class in com.bencodez.votingplugin.commands.tabcompleter">AliasesTabCompleter</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class AliasesTabCompleter.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/specialrewards/votemilestones/AtMatcher.html" title="class in com.bencodez.votingplugin.specialrewards.votemilestones">AtMatcher</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Supports: - At: 0 - At: 50 - At: [20, 50, 100] - At: - 10..200 step 10 - 250
Stateless evaluation: matches based solely on newTotal.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/listeners/BlockBreak.html" title="class in com.bencodez.votingplugin.listeners">BlockBreak</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class BlockBreak.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/broadcast/BroadcastFormat.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastFormat</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Defines HOW vote broadcasts are rendered.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/broadcast/BroadcastHandler.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastHandler</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Core broadcast logic.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/broadcast/BroadcastSettings.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastSettings</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Immutable broadcast configuration.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/bungee/BStatsMetricsBungee.html" title="class in com.bencodez.votingplugin.proxy.bungee">BStatsMetricsBungee</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">bStats collects some data for plugin authors.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/bungee/BStatsMetricsBungee.AdvancedBarChart.html" title="class in com.bencodez.votingplugin.proxy.bungee">BStatsMetricsBungee.AdvancedBarChart</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents a custom advanced bar chart.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/bungee/BStatsMetricsBungee.AdvancedPie.html" title="class in com.bencodez.votingplugin.proxy.bungee">BStatsMetricsBungee.AdvancedPie</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents a custom advanced pie.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/bungee/BStatsMetricsBungee.CustomChart.html" title="class in com.bencodez.votingplugin.proxy.bungee">BStatsMetricsBungee.CustomChart</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents a custom chart.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/bungee/BStatsMetricsBungee.DrilldownPie.html" title="class in com.bencodez.votingplugin.proxy.bungee">BStatsMetricsBungee.DrilldownPie</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents a custom drilldown pie.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/bungee/BStatsMetricsBungee.MultiLineChart.html" title="class in com.bencodez.votingplugin.proxy.bungee">BStatsMetricsBungee.MultiLineChart</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents a custom multi line chart.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/bungee/BStatsMetricsBungee.SimpleBarChart.html" title="class in com.bencodez.votingplugin.proxy.bungee">BStatsMetricsBungee.SimpleBarChart</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents a custom simple bar chart.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/bungee/BStatsMetricsBungee.SimplePie.html" title="class in com.bencodez.votingplugin.proxy.bungee">BStatsMetricsBungee.SimplePie</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents a custom simple pie.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/bungee/BStatsMetricsBungee.SingleLineChart.html" title="class in com.bencodez.votingplugin.proxy.bungee">BStatsMetricsBungee.SingleLineChart</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents a custom single line chart.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/bungee/BungeeConfig.html" title="class in com.bencodez.votingplugin.proxy.bungee">BungeeConfig</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Configuration implementation for Bungee proxy server.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/BungeeHandler.html" title="class in com.bencodez.votingplugin">BungeeHandler</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Handler for Bungee/proxy server integration.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/bungee/BungeeJsonNonVotedPlayersCache.html" title="class in com.bencodez.votingplugin.proxy.bungee">BungeeJsonNonVotedPlayersCache</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">JSON file-based storage for non-voted players cache on Bungee.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/bungee/BungeeJsonVoteCache.html" title="class in com.bencodez.votingplugin.proxy.bungee">BungeeJsonVoteCache</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">JSON file-based vote cache for Bungee.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="com/bencodez/votingplugin/proxy/BungeeMethod.html" title="enum class in com.bencodez.votingplugin.proxy">BungeeMethod</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab3">
<div class="block">Enumeration of available Bungee connection methods.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/config/BungeeSettings.html" title="class in com.bencodez.votingplugin.config">BungeeSettings</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Configuration file for Bungee/proxy settings.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/updater/CheckUpdate.html" title="class in com.bencodez.votingplugin.updater">CheckUpdate</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class CheckUpdate.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/executers/CommandAdminVote.html" title="class in com.bencodez.votingplugin.commands.executers">CommandAdminVote</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class CommandAdminVote.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/executers/CommandAliases.html" title="class in com.bencodez.votingplugin.commands.executers">CommandAliases</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class CommandAliases.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/CommandLoader.html" title="class in com.bencodez.votingplugin.commands">CommandLoader</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class CommandLoader.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/executers/CommandVote.html" title="class in com.bencodez.votingplugin.commands.executers">CommandVote</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class CommandVote.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/config/Config.html" title="class in com.bencodez.votingplugin.config">Config</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class Config.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/cache/ConfigDataNode.html" title="class in com.bencodez.votingplugin.proxy.cache">ConfigDataNode</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">ConfigurationNode-based implementation of DataNode.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/config/ConfigVoteSites.html" title="class in com.bencodez.votingplugin.config">ConfigVoteSites</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class ConfigVoteSites.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/cooldown/CoolDownCheck.html" title="class in com.bencodez.votingplugin.cooldown">CoolDownCheck</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Manages cooldown checks for vote rewards.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab1"><a href="com/bencodez/votingplugin/proxy/cache/DataNode.html" title="interface in com.bencodez.votingplugin.proxy.cache">DataNode</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab1">
<div class="block">Interface for data node operations.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/discord/DiscordHandler.html" title="class in com.bencodez.votingplugin.discord">DiscordHandler</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Handler for Discord integration.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/webhook/DiscordRateLimitUtil.html" title="class in com.bencodez.votingplugin.webhook">DiscordRateLimitUtil</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Utility methods for handling Discord webhook rate-limit responses.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/webhook/DiscordWebhookPayloadBuilder.html" title="class in com.bencodez.votingplugin.webhook">DiscordWebhookPayloadBuilder</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Builds Discord-compatible webhook JSON payloads.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/presets/DisplayInfo.html" title="class in com.bencodez.votingplugin.presets">DisplayInfo</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents display information for a preset.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/presets/Fragment.html" title="class in com.bencodez.votingplugin.presets">Fragment</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents a fragment defined in a preset meta JSON file.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/presets/GitHubVoteSitePresetLoader.html" title="class in com.bencodez.votingplugin.presets">GitHubVoteSitePresetLoader</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Utility class for loading vote site presets from GitHub.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/cache/GsonDataNode.html" title="class in com.bencodez.votingplugin.proxy.cache">GsonDataNode</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Implementation of DataNode using Google Gson.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/config/GUI.html" title="class in com.bencodez.votingplugin.config">GUI</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">GUI configuration.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="com/bencodez/votingplugin/proxy/cache/nonvoted/INonVotedPlayersStorage.html" title="interface in com.bencodez.votingplugin.proxy.cache.nonvoted">INonVotedPlayersStorage</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">Interface for storing non-voted players data.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/cache/nonvoted/INonVotedPlayersStorage.NonVotedPlayerEntry.html" title="class in com.bencodez.votingplugin.proxy.cache.nonvoted">INonVotedPlayersStorage.NonVotedPlayerEntry</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Entry for a non-voted player.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="com/bencodez/votingplugin/proxy/cache/IVoteCache.html" title="interface in com.bencodez.votingplugin.proxy.cache">IVoteCache</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">Interface for vote caching operations.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/presets/MatchInfo.html" title="class in com.bencodez.votingplugin.presets">MatchInfo</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents matching information for a preset.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/multiproxy/MultiProxyHandler.html" title="class in com.bencodez.votingplugin.proxy.multiproxy">MultiProxyHandler</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Abstract handler for multi-proxy support.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="com/bencodez/votingplugin/proxy/multiproxy/MultiProxyMethod.html" title="enum class in com.bencodez.votingplugin.proxy.multiproxy">MultiProxyMethod</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab3">
<div class="block">Multi-proxy communication methods.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="com/bencodez/votingplugin/proxy/multiproxy/MultiProxyServerSocketConfiguration.html" title="interface in com.bencodez.votingplugin.proxy.multiproxy">MultiProxyServerSocketConfiguration</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">Configuration for a multi-proxy server socket.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/multiproxy/MultiProxyServerSocketConfigurationBungee.html" title="class in com.bencodez.votingplugin.proxy.multiproxy">MultiProxyServerSocketConfigurationBungee</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Multi-proxy server socket configuration for Bungee.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/multiproxy/MultiProxyServerSocketConfigurationVelocity.html" title="class in com.bencodez.votingplugin.proxy.multiproxy">MultiProxyServerSocketConfigurationVelocity</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Multi-proxy server socket configuration for Velocity.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/placeholders/MVdWPlaceholders.html" title="class in com.bencodez.votingplugin.placeholders">MVdWPlaceholders</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class PlaceHolders.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/cache/nonvoted/MySQLNonVotedPlayersStorage.html" title="class in com.bencodez.votingplugin.proxy.cache.nonvoted">MySQLNonVotedPlayersStorage</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">MySQL storage for non-voted players.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/specialrewards/NameMCLikeCheckerTask.html" title="class in com.bencodez.votingplugin.specialrewards">NameMCLikeCheckerTask</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Periodically checks NameMC likes for the configured server and gives a
one-time reward to players who have not claimed it yet.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/votesites/NextSite.html" title="class in com.bencodez.votingplugin.votesites">NextSite</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents the next available vote site.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/cache/nonvoted/NonVotedPlayersCache.html" title="class in com.bencodez.votingplugin.proxy.cache.nonvoted">NonVotedPlayersCache</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Cache for players who haven't voted yet.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/OfflineBungeeVote.html" title="class in com.bencodez.votingplugin.proxy">OfflineBungeeVote</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents an offline bungee vote.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="com/bencodez/votingplugin/proxy/broadcast/OfflineMode.html" title="enum class in com.bencodez.votingplugin.proxy.broadcast">OfflineMode</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab3">
<div class="block">Enum for offline broadcast modes.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="com/bencodez/votingplugin/placeholders/PlaceholderCacheLevel.html" title="enum class in com.bencodez.votingplugin.placeholders">PlaceholderCacheLevel</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab3">
<div class="block">Enum for placeholder cache levels.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/presets/PlaceholderDef.html" title="class in com.bencodez.votingplugin.presets">PlaceholderDef</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents a placeholder definition loaded from a preset meta JSON file.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="com/bencodez/votingplugin/webhook/PlaceholderExpander.html" title="interface in com.bencodez.votingplugin.webhook">PlaceholderExpander</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">Placeholder expansion abstraction.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/placeholders/PlaceHolders.html" title="class in com.bencodez.votingplugin.placeholders">PlaceHolders</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class PlaceHolders.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/listeners/PlayerInteract.html" title="class in com.bencodez.votingplugin.listeners">PlayerInteract</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class PlayerInteract.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/listeners/PlayerJoinEvent.html" title="class in com.bencodez.votingplugin.listeners">PlayerJoinEvent</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class PlayerJoinEvent.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/events/PlayerPostVoteEvent.html" title="class in com.bencodez.votingplugin.events">PlayerPostVoteEvent</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class PlayerVoteEvent.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/votelog/listeners/PlayerPostVoteLoggerListener.html" title="class in com.bencodez.votingplugin.votelog.listeners">PlayerPostVoteLoggerListener</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Listener for logging player post-vote events.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/events/PlayerReceivePointsEvent.html" title="class in com.bencodez.votingplugin.events">PlayerReceivePointsEvent</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class PlayerVoteEvent.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/events/PlayerSpecialRewardEvent.html" title="class in com.bencodez.votingplugin.events">PlayerSpecialRewardEvent</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class PlayerVoteEvent.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/votelog/listeners/PlayerSpecialRewardLoggerListener.html" title="class in com.bencodez.votingplugin.votelog.listeners">PlayerSpecialRewardLoggerListener</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Listener for logging player special reward events.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/events/PlayerVoteCoolDownEndEvent.html" title="class in com.bencodez.votingplugin.events">PlayerVoteCoolDownEndEvent</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class PlayerVoteEvent.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/events/PlayerVoteEvent.html" title="class in com.bencodez.votingplugin.events">PlayerVoteEvent</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class PlayerVoteEvent.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/listeners/PlayerVoteListener.html" title="class in com.bencodez.votingplugin.listeners">PlayerVoteListener</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class VotiferEvent.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/events/PlayerVoteSiteCoolDownEndEvent.html" title="class in com.bencodez.votingplugin.events">PlayerVoteSiteCoolDownEndEvent</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class PlayerVoteEvent.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/broadcast/ProxyBroadcastDecider.html" title="class in com.bencodez.votingplugin.proxy.broadcast">ProxyBroadcastDecider</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Decides where vote broadcasts should execute (proxy-side routing only).</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/ProxyMysqlUserTable.html" title="class in com.bencodez.votingplugin.proxy">ProxyMysqlUserTable</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Proxy MySQL user table for managing voting plugin user data.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/cache/nonvoted/ProxyNonVotedPlayersTable.html" title="class in com.bencodez.votingplugin.proxy.cache.nonvoted">ProxyNonVotedPlayersTable</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Table for tracking non-voted players in the proxy cache.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/cache/nonvoted/ProxyNonVotedPlayersTable.NonVotedPlayerRow.html" title="class in com.bencodez.votingplugin.proxy.cache.nonvoted">ProxyNonVotedPlayersTable.NonVotedPlayerRow</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents a row in the non-voted players table.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/cache/ProxyOnlineVoteCacheTable.html" title="class in com.bencodez.votingplugin.proxy.cache">ProxyOnlineVoteCacheTable</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Table for caching online votes in the proxy.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/cache/ProxyOnlineVoteCacheTable.VoteRow.html" title="class in com.bencodez.votingplugin.proxy.cache">ProxyOnlineVoteCacheTable.VoteRow</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents a row in the online vote cache table.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/cache/ProxyTimedVoteCacheTable.html" title="class in com.bencodez.votingplugin.proxy.cache">ProxyTimedVoteCacheTable</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Table for caching timed votes in the proxy.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/cache/ProxyTimedVoteCacheTable.TimedVoteRow.html" title="class in com.bencodez.votingplugin.proxy.cache">ProxyTimedVoteCacheTable.TimedVoteRow</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents a row in the timed vote cache table.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/cache/ProxyVoteCacheTable.html" title="class in com.bencodez.votingplugin.proxy.cache">ProxyVoteCacheTable</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Proxy vote cache (per-server cached votes).</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/cache/ProxyVoteCacheTable.VoteRow.html" title="class in com.bencodez.votingplugin.proxy.cache">ProxyVoteCacheTable.VoteRow</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents a row in the vote cache table.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/listeners/ProxyVoteDelayCheck.html" title="class in com.bencodez.votingplugin.listeners">ProxyVoteDelayCheck</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Handles the WaitUntilVoteDelay exception for votes queued by a proxy.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/listeners/ProxyVotifierEvent.html" title="class in com.bencodez.votingplugin.listeners">ProxyVotifierEvent</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Handler for triggering Bungee Votifier events.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/specialrewards/votemilestones/RangeSpec.html" title="class in com.bencodez.votingplugin.specialrewards.votemilestones">RangeSpec</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Parses: - "10..200 step 10" - "10..200"
Expands to discrete values (simple + predictable for server owners).</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="com/bencodez/votingplugin/proxy/broadcast/ScopeMode.html" title="enum class in com.bencodez.votingplugin.proxy.broadcast">ScopeMode</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab3">
<div class="block">Proxy-side routing scope for broadcast triggers.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/data/ServerData.html" title="class in com.bencodez.votingplugin.data">ServerData</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class ServerData.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/servicesites/ServiceSiteHandler.html" title="class in com.bencodez.votingplugin.servicesites">ServiceSiteHandler</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Handles service site name/value mappings.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/config/ShopFile.html" title="class in com.bencodez.votingplugin.config">ShopFile</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The ShopFile class manages the vote shop configuration.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/listeners/SignChange.html" title="class in com.bencodez.votingplugin.listeners">SignChange</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class SignChange.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/signs/SignHandler.html" title="class in com.bencodez.votingplugin.signs">SignHandler</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class SignHandler.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/signs/Signs.html" title="class in com.bencodez.votingplugin.signs">Signs</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class Signs.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/specialrewards/SpecialRewards.html" title="class in com.bencodez.votingplugin.specialrewards">SpecialRewards</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class OtherVoteReward.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/config/SpecialRewardsConfig.html" title="class in com.bencodez.votingplugin.config">SpecialRewardsConfig</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The SpecialRewardsConfig class manages special rewards configuration.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="com/bencodez/votingplugin/events/SpecialRewardType.html" title="enum class in com.bencodez.votingplugin.events">SpecialRewardType</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab3">
<div class="block">Enumeration for different special reward types.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/timequeue/TimeQueueHandler.html" title="class in com.bencodez.votingplugin.timequeue">TimeQueueHandler</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The TimeQueueHandler class manages time-based vote queue processing.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="com/bencodez/votingplugin/topvoter/TopVoter.html" title="enum class in com.bencodez.votingplugin.topvoter">TopVoter</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab3">
<div class="block">Enumeration for different top voter time periods.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/topvoter/TopVoterHandler.html" title="class in com.bencodez.votingplugin.topvoter">TopVoterHandler</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Handles top voter rankings and statistics.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/topvoter/TopVoterPlayer.html" title="class in com.bencodez.votingplugin.topvoter">TopVoterPlayer</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents a top voter player with ranking information.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/votereminding/store/UserDataVoteReminderCooldownStore.html" title="class in com.bencodez.votingplugin.votereminding.store">UserDataVoteReminderCooldownStore</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Uses VotingPluginUser.getUserData() cached columns:
- VoteRemindersLast (BIGINT)
- VoteRemindersMap (LONGTEXT) format: name=ms;name=ms
NOTE: tryClaimGlobal is best-effort and not proxy-atomic unless your storage layer
supports conditional updates.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/user/UserManager.html" title="class in com.bencodez.votingplugin.user">UserManager</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Manages VotingPlugin user operations and data.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/velocity/VelocityConfig.html" title="class in com.bencodez.votingplugin.proxy.velocity">VelocityConfig</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Configuration file handler for Velocity proxy.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/velocity/VelocityJsonNonVotedPlayersCache.html" title="class in com.bencodez.votingplugin.proxy.velocity">VelocityJsonNonVotedPlayersCache</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">JSON-based non-voted players cache for Velocity proxy.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/velocity/VelocityJsonVoteCache.html" title="class in com.bencodez.votingplugin.proxy.velocity">VelocityJsonVoteCache</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">JSON-based vote cache implementation for Velocity proxy.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/player/VoteBest.html" title="class in com.bencodez.votingplugin.commands.gui.player">VoteBest</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">GUI handler for vote best/streak display.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="com/bencodez/votingplugin/broadcast/VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab3">
<div class="block">Defines WHEN vote broadcasts occur.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/cache/VoteCacheHandler.html" title="class in com.bencodez.votingplugin.proxy.cache">VoteCacheHandler</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Handles caching of votes for proxy servers.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/bungee/VoteEventBungee.html" title="class in com.bencodez.votingplugin.proxy.bungee">VoteEventBungee</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Handles vote events from Bungee proxy.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/velocity/VoteEventVelocity.html" title="class in com.bencodez.votingplugin.proxy.velocity">VoteEventVelocity</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Handles vote events from Velocity proxy.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/player/VoteGUI.html" title="class in com.bencodez.votingplugin.commands.gui.player">VoteGUI</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">GUI handler for vote interface.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/player/VoteHelp.html" title="class in com.bencodez.votingplugin.commands.gui.player">VoteHelp</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">GUI handler for vote help display.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/player/VoteLast.html" title="class in com.bencodez.votingplugin.commands.gui.player">VoteLast</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">GUI handler for displaying last vote information.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/votelog/VoteLogMysqlTable.html" title="class in com.bencodez.votingplugin.votelog">VoteLogMysqlTable</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Vote log table usable from BOTH proxy and backend.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/votelog/VoteLogMysqlTable.ServerCount.html" title="class in com.bencodez.votingplugin.votelog">VoteLogMysqlTable.ServerCount</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Holds server name and vote count.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/votelog/VoteLogMysqlTable.ServiceCount.html" title="class in com.bencodez.votingplugin.votelog">VoteLogMysqlTable.ServiceCount</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Holds service name and vote count.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/votelog/VoteLogMysqlTable.VoteLogCounts.html" title="class in com.bencodez.votingplugin.votelog">VoteLogMysqlTable.VoteLogCounts</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Holds vote count statistics.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/votelog/VoteLogMysqlTable.VoteLogEntry.html" title="class in com.bencodez.votingplugin.votelog">VoteLogMysqlTable.VoteLogEntry</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents a single vote log entry from the database.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="com/bencodez/votingplugin/votelog/VoteLogMysqlTable.VoteLogEvent.html" title="enum class in com.bencodez.votingplugin.votelog">VoteLogMysqlTable.VoteLogEvent</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab3">
<div class="block">Event types that can be logged in the vote log.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="com/bencodez/votingplugin/votelog/VoteLogMysqlTable.VoteLogStatus.html" title="enum class in com.bencodez.votingplugin.votelog">VoteLogMysqlTable.VoteLogStatus</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab3">
<div class="block">Status types for vote processing.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/specialrewards/votemilestones/VoteMilestone.html" title="class in com.bencodez.votingplugin.specialrewards.votemilestones">VoteMilestone</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents a single VoteMilestone entry.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/specialrewards/votemilestones/VoteMilestoneGroupParser.html" title="class in com.bencodez.votingplugin.specialrewards.votemilestones">VoteMilestoneGroupParser</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Utility class for parsing vote milestone group configuration.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="com/bencodez/votingplugin/specialrewards/votemilestones/VoteMilestoneGroupSelect.html" title="enum class in com.bencodez.votingplugin.specialrewards.votemilestones">VoteMilestoneGroupSelect</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab3">
<div class="block">Enum for selecting which milestones to trigger when multiple match in a group.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/specialrewards/votemilestones/VoteMilestoneLimit.html" title="class in com.bencodez.votingplugin.specialrewards.votemilestones">VoteMilestoneLimit</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Per-milestone retrigger limiter.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="com/bencodez/votingplugin/specialrewards/votemilestones/VoteMilestoneLimit.Type.html" title="enum class in com.bencodez.votingplugin.specialrewards.votemilestones">VoteMilestoneLimit.Type</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab3">
<div class="block">Limit types for milestone retriggering.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/events/VoteMilestoneRewardEvent.html" title="class in com.bencodez.votingplugin.events">VoteMilestoneRewardEvent</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Fired after a VoteMilestone reward has been executed successfully.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/specialrewards/votemilestones/VoteMilestonesConfig.html" title="class in com.bencodez.votingplugin.specialrewards.votemilestones">VoteMilestonesConfig</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Configuration for vote milestones.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/specialrewards/votemilestones/VoteMilestonesManager.html" title="class in com.bencodez.votingplugin.specialrewards.votemilestones">VoteMilestonesManager</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Evaluates VoteMilestones on each vote.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/specialrewards/votemilestones/VoteMilestonesMigrator.html" title="class in com.bencodez.votingplugin.specialrewards.votemilestones">VoteMilestonesMigrator</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Legacy migration: - Uses SpecialRewards.yml root as the reward container so
reward paths can be absolute. - FirstVote / FirstVoteToday: rewards are on
the section itself (no "Rewards" child) - Cumulative / MileStones: rewards
are under "...Rewards" - Totals are mapped into VoteMilestoneTotal (votes +
points + legacy counter)
Adds per-milestone Limit support (default NONE).</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="com/bencodez/votingplugin/specialrewards/votemilestones/VoteMilestoneTotal.html" title="enum class in com.bencodez.votingplugin.specialrewards.votemilestones">VoteMilestoneTotal</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab3">
<div class="block">Defines what numeric value a VoteMilestone evaluates against.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/votelog/listeners/VoteMilestoneVoteLogListener.html" title="class in com.bencodez.votingplugin.votelog.listeners">VoteMilestoneVoteLogListener</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Logs VoteMilestone reward executions to the VoteLog table.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/player/VoteNext.html" title="class in com.bencodez.votingplugin.commands.gui.player">VoteNext</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">GUI handler for displaying next vote information.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/specialrewards/voteparty/VoteParty.html" title="class in com.bencodez.votingplugin.specialrewards.voteparty">VoteParty</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class VoteParty.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/events/VotePartyEvent.html" title="class in com.bencodez.votingplugin.events">VotePartyEvent</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class PlayerVoteEvent.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="com/bencodez/votingplugin/votereminding/store/VoteReminderCooldownStore.html" title="interface in com.bencodez.votingplugin.votereminding.store">VoteReminderCooldownStore</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">Interface for storing and managing vote reminder cooldowns.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/votereminding/VoteRemindersLegacyMigrator.html" title="class in com.bencodez.votingplugin.votereminding">VoteRemindersLegacyMigrator</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Utility class for migrating legacy vote reminding configuration to the new format.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/votereminding/VoteRemindersListener.html" title="class in com.bencodez.votingplugin.votereminding">VoteRemindersListener</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Listener for vote reminder events.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/votereminding/VoteRemindersManager.html" title="class in com.bencodez.votingplugin.votereminding">VoteRemindersManager</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">VoteReminders core manager (no Bukkit repeating tasks).</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/votereminding/VoteRemindersManager.VoteReminderConditions.html" title="class in com.bencodez.votingplugin.votereminding">VoteRemindersManager.VoteReminderConditions</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/votereminding/VoteRemindersManager.VoteReminderCooldowns.html" title="class in com.bencodez.votingplugin.votereminding">VoteRemindersManager.VoteReminderCooldowns</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/votereminding/VoteRemindersManager.VoteReminderDefinition.html" title="class in com.bencodez.votingplugin.votereminding">VoteRemindersManager.VoteReminderDefinition</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/votereminding/VoteRemindersManager.VoteReminderOptions.html" title="class in com.bencodez.votingplugin.votereminding">VoteRemindersManager.VoteReminderOptions</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="com/bencodez/votingplugin/votereminding/VoteRemindersManager.VoteReminderType.html" title="enum class in com.bencodez.votingplugin.votereminding">VoteRemindersManager.VoteReminderType</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab3">&nbsp;</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/player/VoteShop.html" title="class in com.bencodez.votingplugin.commands.gui.player">VoteShop</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Main vote shop GUI.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/voteshop/shop/VoteShopCategory.html" title="class in com.bencodez.votingplugin.voteshop.shop">VoteShopCategory</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Vote shop category.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/voteshop/shop/VoteShopCategoryButton.html" title="class in com.bencodez.votingplugin.voteshop.shop">VoteShopCategoryButton</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Vote shop entry that opens a category.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/player/VoteShopCategoryMenu.html" title="class in com.bencodez.votingplugin.commands.gui.player">VoteShopCategoryMenu</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Vote shop category GUI.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/player/VoteShopConfirm.html" title="class in com.bencodez.votingplugin.commands.gui.player">VoteShopConfirm</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Confirmation GUI for vote shop purchases.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/voteshop/shop/VoteShopDefinition.html" title="class in com.bencodez.votingplugin.voteshop.shop">VoteShopDefinition</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Full vote shop definition.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/voteshop/shop/VoteShopEntry.html" title="class in com.bencodez.votingplugin.voteshop.shop">VoteShopEntry</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Base vote shop entry.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/voteshop/shop/VoteShopExtraItem.html" title="class in com.bencodez.votingplugin.voteshop.shop">VoteShopExtraItem</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Extra vote shop item.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/voteshop/shop/VoteShopItem.html" title="class in com.bencodez.votingplugin.voteshop.shop">VoteShopItem</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Purchasable vote shop item.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/voteshop/shop/VoteShopLoader.html" title="class in com.bencodez.votingplugin.voteshop.shop">VoteShopLoader</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Loads vote shop data from ShopFile.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/voteshop/VoteShopManager.html" title="class in com.bencodez.votingplugin.voteshop">VoteShopManager</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Central vote shop manager.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/events/VoteShopPurchaseEvent.html" title="class in com.bencodez.votingplugin.events">VoteShopPurchaseEvent</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Fired when a player attempts to purchase an item from VotingPlugin's
VoteShop.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/votelog/listeners/VoteShopPurchaseLoggerListener.html" title="class in com.bencodez.votingplugin.votelog.listeners">VoteShopPurchaseLoggerListener</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="com/bencodez/votingplugin/voteshop/service/VoteShopPurchaseResult.html" title="enum class in com.bencodez.votingplugin.voteshop.service">VoteShopPurchaseResult</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab3">
<div class="block">Result of a vote shop purchase validation or execution.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/voteshop/service/VoteShopPurchaseService.html" title="class in com.bencodez.votingplugin.voteshop.service">VoteShopPurchaseService</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Handles vote shop validation and purchases.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/votesites/VoteSite.html" title="class in com.bencodez.votingplugin.votesites">VoteSite</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class VoteSite.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/presets/VoteSiteJsonPresetManager.html" title="class in com.bencodez.votingplugin.presets">VoteSiteJsonPresetManager</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Manager responsible for loading vote site presets defined in JSON and
applying them to the VotingPlugin configuration.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/votesites/VoteSiteManager.html" title="class in com.bencodez.votingplugin.votesites">VoteSiteManager</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/presets/VoteSitePreset.html" title="class in com.bencodez.votingplugin.presets">VoteSitePreset</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents a vote site preset as defined in a meta JSON file.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/presets/VoteSitePresetSetupHandler.html" title="class in com.bencodez.votingplugin.presets">VoteSitePresetSetupHandler</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Handler class that guides a player through selecting a vote site preset and
configuring its placeholder values using the SimpleAPI <code>ValueRequest</code>
system.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/player/VoteStreak.html" title="class in com.bencodez.votingplugin.commands.gui.player">VoteStreak</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/specialrewards/votestreak/VoteStreakDefinition.html" title="class in com.bencodez.votingplugin.specialrewards.votestreak">VoteStreakDefinition</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/specialrewards/votestreak/VoteStreakHandler.html" title="class in com.bencodez.votingplugin.specialrewards.votestreak">VoteStreakHandler</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab3"><a href="com/bencodez/votingplugin/specialrewards/votestreak/VoteStreakType.html" title="enum class in com.bencodez.votingplugin.specialrewards.votestreak">VoteStreakType</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab3">&nbsp;</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/tabcompleter/VoteTabCompleter.html" title="class in com.bencodez.votingplugin.commands.tabcompleter">VoteTabCompleter</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class VoteTabCompleter.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/test/VoteTester.html" title="class in com.bencodez.votingplugin.test">VoteTester</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/timequeue/VoteTimeQueue.html" title="class in com.bencodez.votingplugin.timequeue">VoteTimeQueue</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents a vote delayed while a proxy time change is active.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/player/VoteToday.html" title="class in com.bencodez.votingplugin.commands.gui.player">VoteToday</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/player/VoteTopVoter.html" title="class in com.bencodez.votingplugin.commands.gui.player">VoteTopVoter</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/player/VoteTopVoterLastMonth.html" title="class in com.bencodez.votingplugin.commands.gui.player">VoteTopVoterLastMonth</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/player/VoteTopVoterPreviousMonths.html" title="class in com.bencodez.votingplugin.commands.gui.player">VoteTopVoterPreviousMonths</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/player/VoteTotal.html" title="class in com.bencodez.votingplugin.commands.gui.player">VoteTotal</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/VoteTotalsSnapshot.html" title="class in com.bencodez.votingplugin.proxy">VoteTotalsSnapshot</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/player/VoteURL.html" title="class in com.bencodez.votingplugin.commands.gui.player">VoteURL</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/commands/gui/player/VoteURLVoteSite.html" title="class in com.bencodez.votingplugin.commands.gui.player">VoteURLVoteSite</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/listeners/VotiferEvent.html" title="class in com.bencodez.votingplugin.listeners">VotiferEvent</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class VotiferEvent.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/bungee/VotingPluginBungee.html" title="class in com.bencodez.votingplugin.proxy.bungee">VotingPluginBungee</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">VotingPlugin proxy implementation for BungeeCord.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/bungee/VotingPluginBungeeCommand.html" title="class in com.bencodez.votingplugin.proxy.bungee">VotingPluginBungeeCommand</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/velocity/VotingPluginChannelIdentifier.html" title="class in com.bencodez.votingplugin.proxy.velocity">VotingPluginChannelIdentifier</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/placeholders/VotingPluginExpansion.html" title="class in com.bencodez.votingplugin.placeholders">VotingPluginExpansion</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/VotingPluginHooks.html" title="class in com.bencodez.votingplugin">VotingPluginHooks</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class Main.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/VotingPluginMetrics.html" title="class in com.bencodez.votingplugin">VotingPluginMetrics</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Registers bStats charts for VotingPlugin.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/VotingPluginProxy.html" title="class in com.bencodez.votingplugin.proxy">VotingPluginProxy</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/VotingPluginProxyCommand.html" title="class in com.bencodez.votingplugin.proxy">VotingPluginProxyCommand</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="com/bencodez/votingplugin/proxy/VotingPluginProxyConfig.html" title="interface in com.bencodez.votingplugin.proxy">VotingPluginProxyConfig</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">Configuration interface for proxy server integration.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/listeners/VotingPluginUpdateEvent.html" title="class in com.bencodez.votingplugin.listeners">VotingPluginUpdateEvent</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class AdvancedCoreUpdateEvent.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/user/VotingPluginUser.html" title="class in com.bencodez.votingplugin.user">VotingPluginUser</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">The Class VotingPluginUser.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/velocity/VotingPluginVelocity.html" title="class in com.bencodez.votingplugin.proxy.velocity">VotingPluginVelocity</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">VotingPlugin proxy implementation for Velocity.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/velocity/VotingPluginVelocityCommand.html" title="class in com.bencodez.votingplugin.proxy.velocity">VotingPluginVelocityCommand</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/webhook/VotingPluginWebhooks.html" title="class in com.bencodez.votingplugin.webhook">VotingPluginWebhooks</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Convenience wrapper to manage webhook lifecycle within VotingPlugin.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/VotingPluginWire.html" title="class in com.bencodez.votingplugin.proxy">VotingPluginWire</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Canonical wire format for proxy - backend messages.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/VotingPluginWire.Vote.html" title="class in com.bencodez.votingplugin.proxy">VotingPluginWire.Vote</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/proxy/VotingPluginWire.VoteUpdate.html" title="class in com.bencodez.votingplugin.proxy">VotingPluginWire.VoteUpdate</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">&nbsp;</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/webhook/WebhookConfigLoader.html" title="class in com.bencodez.votingplugin.webhook">WebhookConfigLoader</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Loads webhook definitions from VotingPlugin's Config.yml section.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/webhook/WebhookDefinition.html" title="class in com.bencodez.votingplugin.webhook">WebhookDefinition</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Webhook endpoint definition.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab3"><a href="com/bencodez/votingplugin/webhook/WebhookHttpMethod.html" title="enum class in com.bencodez.votingplugin.webhook">WebhookHttpMethod</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab3">
<div class="block">Supported HTTP methods for webhook requests.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab1"><a href="com/bencodez/votingplugin/webhook/WebhookLogger.html" title="interface in com.bencodez.votingplugin.webhook">WebhookLogger</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab1">
<div class="block">Logging abstraction for the webhook subsystem.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/webhook/WebhookRequest.html" title="class in com.bencodez.votingplugin.webhook">WebhookRequest</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">A queued webhook request.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/webhook/WebhookRewardEntry.html" title="class in com.bencodez.votingplugin.webhook">WebhookRewardEntry</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Represents one webhook entry under a reward's "Webhooks:" list.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/webhook/WebhookRewardExecutor.html" title="class in com.bencodez.votingplugin.webhook">WebhookRewardExecutor</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Executes webhook rewards using configured definitions.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/webhook/WebhookRewardParser.html" title="class in com.bencodez.votingplugin.webhook">WebhookRewardParser</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Parses reward "Webhooks:" entries from a Bukkit <code>ConfigurationSection</code>.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/webhook/WebhookService.html" title="class in com.bencodez.votingplugin.webhook">WebhookService</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Asynchronous webhook dispatcher.</div>
</div>
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/webhook/WebhookSignatureConfig.html" title="class in com.bencodez.votingplugin.webhook">WebhookSignatureConfig</a></div>
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
<div class="block">Signature configuration used to sign webhook payloads for verification by the receiver.</div>
</div>
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/bencodez/votingplugin/webhook/WebhookSigner.html" title="class in com.bencodez.votingplugin.webhook">WebhookSigner</a></div>
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
<div class="block">Signs webhook payloads for receiver verification.</div>
</div>
</div>
</div>
</div>
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
-160
View File
@@ -1,160 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>All Packages (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="package index">
<meta name="generator" content="javadoc/AllPackagesIndexWriter">
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="script.js"></script>
<script type="text/javascript" src="script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="script-dir/jquery-ui.min.js"></script>
</head>
<body class="all-packages-index-page">
<script type="text/javascript">var pathtoroot = "./";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="index.html">Overview</a></li>
<li>Package</li>
<li>Class</li>
<li>Use</li>
<li><a href="overview-tree.html">Tree</a></li>
<li><a href="deprecated-list.html">Deprecated</a></li>
<li><a href="index-all.html">Index</a></li>
<li><a href="help-doc.html#all-packages">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list"></div>
<div class="nav-list-search"><a href="search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<div class="header">
<h1 title="All&amp;nbsp;Packages" class="title">All&nbsp;Packages</h1>
</div>
<div class="caption"><span>Package Summary</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Package</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><a href="com/bencodez/votingplugin/package-summary.html">com.bencodez.votingplugin</a></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><a href="com/bencodez/votingplugin/broadcast/package-summary.html">com.bencodez.votingplugin.broadcast</a></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><a href="com/bencodez/votingplugin/commands/package-summary.html">com.bencodez.votingplugin.commands</a></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><a href="com/bencodez/votingplugin/commands/executers/package-summary.html">com.bencodez.votingplugin.commands.executers</a></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><a href="com/bencodez/votingplugin/commands/gui/package-summary.html">com.bencodez.votingplugin.commands.gui</a></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><a href="com/bencodez/votingplugin/commands/gui/admin/package-summary.html">com.bencodez.votingplugin.commands.gui.admin</a></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><a href="com/bencodez/votingplugin/commands/gui/admin/milestones/package-summary.html">com.bencodez.votingplugin.commands.gui.admin.milestones</a></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><a href="com/bencodez/votingplugin/commands/gui/admin/votelog/package-summary.html">com.bencodez.votingplugin.commands.gui.admin.votelog</a></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><a href="com/bencodez/votingplugin/commands/gui/admin/voteshop/package-summary.html">com.bencodez.votingplugin.commands.gui.admin.voteshop</a></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><a href="com/bencodez/votingplugin/commands/gui/player/package-summary.html">com.bencodez.votingplugin.commands.gui.player</a></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><a href="com/bencodez/votingplugin/commands/tabcompleter/package-summary.html">com.bencodez.votingplugin.commands.tabcompleter</a></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><a href="com/bencodez/votingplugin/config/package-summary.html">com.bencodez.votingplugin.config</a></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><a href="com/bencodez/votingplugin/cooldown/package-summary.html">com.bencodez.votingplugin.cooldown</a></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><a href="com/bencodez/votingplugin/data/package-summary.html">com.bencodez.votingplugin.data</a></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><a href="com/bencodez/votingplugin/discord/package-summary.html">com.bencodez.votingplugin.discord</a></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><a href="com/bencodez/votingplugin/events/package-summary.html">com.bencodez.votingplugin.events</a></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><a href="com/bencodez/votingplugin/listeners/package-summary.html">com.bencodez.votingplugin.listeners</a></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><a href="com/bencodez/votingplugin/placeholders/package-summary.html">com.bencodez.votingplugin.placeholders</a></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><a href="com/bencodez/votingplugin/presets/package-summary.html">com.bencodez.votingplugin.presets</a></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><a href="com/bencodez/votingplugin/proxy/package-summary.html">com.bencodez.votingplugin.proxy</a></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><a href="com/bencodez/votingplugin/proxy/broadcast/package-summary.html">com.bencodez.votingplugin.proxy.broadcast</a></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><a href="com/bencodez/votingplugin/proxy/bungee/package-summary.html">com.bencodez.votingplugin.proxy.bungee</a></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><a href="com/bencodez/votingplugin/proxy/cache/package-summary.html">com.bencodez.votingplugin.proxy.cache</a></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><a href="com/bencodez/votingplugin/proxy/cache/nonvoted/package-summary.html">com.bencodez.votingplugin.proxy.cache.nonvoted</a></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><a href="com/bencodez/votingplugin/proxy/multiproxy/package-summary.html">com.bencodez.votingplugin.proxy.multiproxy</a></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><a href="com/bencodez/votingplugin/proxy/velocity/package-summary.html">com.bencodez.votingplugin.proxy.velocity</a></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><a href="com/bencodez/votingplugin/servicesites/package-summary.html">com.bencodez.votingplugin.servicesites</a></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><a href="com/bencodez/votingplugin/signs/package-summary.html">com.bencodez.votingplugin.signs</a></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><a href="com/bencodez/votingplugin/specialrewards/package-summary.html">com.bencodez.votingplugin.specialrewards</a></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><a href="com/bencodez/votingplugin/specialrewards/votemilestones/package-summary.html">com.bencodez.votingplugin.specialrewards.votemilestones</a></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><a href="com/bencodez/votingplugin/specialrewards/voteparty/package-summary.html">com.bencodez.votingplugin.specialrewards.voteparty</a></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><a href="com/bencodez/votingplugin/specialrewards/votestreak/package-summary.html">com.bencodez.votingplugin.specialrewards.votestreak</a></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><a href="com/bencodez/votingplugin/test/package-summary.html">com.bencodez.votingplugin.test</a></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><a href="com/bencodez/votingplugin/timequeue/package-summary.html">com.bencodez.votingplugin.timequeue</a></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><a href="com/bencodez/votingplugin/topvoter/package-summary.html">com.bencodez.votingplugin.topvoter</a></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><a href="com/bencodez/votingplugin/updater/package-summary.html">com.bencodez.votingplugin.updater</a></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><a href="com/bencodez/votingplugin/user/package-summary.html">com.bencodez.votingplugin.user</a></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><a href="com/bencodez/votingplugin/votelog/package-summary.html">com.bencodez.votingplugin.votelog</a></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><a href="com/bencodez/votingplugin/votelog/listeners/package-summary.html">com.bencodez.votingplugin.votelog.listeners</a></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><a href="com/bencodez/votingplugin/votereminding/package-summary.html">com.bencodez.votingplugin.votereminding</a></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><a href="com/bencodez/votingplugin/votereminding/store/package-summary.html">com.bencodez.votingplugin.votereminding.store</a></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><a href="com/bencodez/votingplugin/voteshop/package-summary.html">com.bencodez.votingplugin.voteshop</a></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><a href="com/bencodez/votingplugin/voteshop/service/package-summary.html">com.bencodez.votingplugin.voteshop.service</a></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><a href="com/bencodez/votingplugin/voteshop/shop/package-summary.html">com.bencodez.votingplugin.voteshop.shop</a></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><a href="com/bencodez/votingplugin/votesites/package-summary.html">com.bencodez.votingplugin.votesites</a></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><a href="com/bencodez/votingplugin/webhook/package-summary.html">com.bencodez.votingplugin.webhook</a></div>
<div class="col-last odd-row-color">&nbsp;</div>
</div>
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,269 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>BungeeHandler (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="declaration: package: com.bencodez.votingplugin, class: BungeeHandler">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../script.js"></script>
<script type="text/javascript" src="../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var pathtoroot = "../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/BungeeHandler.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../index-all.html">Index</a></li>
<li><a href="../../../help-doc.html#class">Help</a></li>
</ul>
<ul class="sub-nav-list-small">
<li>
<p>Summary:</p>
<ul>
<li>Nested</li>
<li>Field</li>
<li><a href="#constructor-summary">Constr</a></li>
<li><a href="#method-summary">Method</a></li>
</ul>
</li>
<li>
<p>Detail:</p>
<ul>
<li>Field</li>
<li><a href="#constructor-detail">Constr</a></li>
<li><a href="#method-detail">Method</a></li>
</ul>
</li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list">
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><a href="../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">com.bencodez.votingplugin</a></div>
<h1 title="Class BungeeHandler" class="title">Class BungeeHandler</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance">com.bencodez.votingplugin.BungeeHandler</div>
</div>
<section class="class-description" id="class-description">
<dl class="notes">
<dt>All Implemented Interfaces:</dt>
<dd><code>org.bukkit.event.Listener</code></dd>
</dl>
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">BungeeHandler</span>
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a>
implements org.bukkit.event.Listener</span></div>
<div class="block">Handler for Bungee/proxy server integration.</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.bencodez.votingplugin.VotingPluginMain)" class="member-name-link">BungeeHandler</a><wbr>(<a href="VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin)</code></div>
<div class="col-last even-row-color">
<div class="block">Constructs a new BungeeHandler.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#checkGlobalData()" class="member-name-link">checkGlobalData</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Checks and processes global data from the global data handler.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#checkGlobalDataTime(com.bencodez.advancedcore.api.time.TimeType,java.util.HashMap)" class="member-name-link">checkGlobalDataTime</a><wbr>(com.bencodez.advancedcore.api.time.TimeType&nbsp;type,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/HashMap.html" title="class or interface in java.util" class="external-link">HashMap</a>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>,<wbr>com.bencodez.simpleapi.sql.data.DataValue&gt;&nbsp;data)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Checks global data for a time type change.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#checkGlobalDataTimeValue(com.bencodez.simpleapi.sql.data.DataValue)" class="member-name-link">checkGlobalDataTimeValue</a><wbr>(com.bencodez.simpleapi.sql.data.DataValue&nbsp;data)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Checks and extracts the boolean value from a DataValue.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#close()" class="member-name-link">close</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Closes and cleans up all handlers and connections.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#load()" class="member-name-link">load</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Loads and initializes the bungee handler with the configured method.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#loadGlobalMysql()" class="member-name-link">loadGlobalMysql</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Loads the global MySQL handler for cross-server data synchronization.</div>
</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;(com.bencodez.votingplugin.VotingPluginMain)">
<h3>BungeeHandler</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">BungeeHandler</span><wbr><span class="parameters">(<a href="VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin)</span></div>
<div class="block">Constructs a new BungeeHandler.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>plugin</code> - the main plugin instance</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="checkGlobalData()">
<h3>checkGlobalData</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">checkGlobalData</span>()</div>
<div class="block">Checks and processes global data from the global data handler.</div>
</section>
</li>
<li>
<section class="detail" id="checkGlobalDataTime(com.bencodez.advancedcore.api.time.TimeType,java.util.HashMap)">
<h3>checkGlobalDataTime</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">checkGlobalDataTime</span><wbr><span class="parameters">(com.bencodez.advancedcore.api.time.TimeType&nbsp;type,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/HashMap.html" title="class or interface in java.util" class="external-link">HashMap</a>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>,<wbr>com.bencodez.simpleapi.sql.data.DataValue&gt;&nbsp;data)</span></div>
<div class="block">Checks global data for a time type change.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>type</code> - the time type to check</dd>
<dd><code>data</code> - the global data map</dd>
<dt>Returns:</dt>
<dd>true if currently processing a time change</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="checkGlobalDataTimeValue(com.bencodez.simpleapi.sql.data.DataValue)">
<h3>checkGlobalDataTimeValue</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">checkGlobalDataTimeValue</span><wbr><span class="parameters">(com.bencodez.simpleapi.sql.data.DataValue&nbsp;data)</span></div>
<div class="block">Checks and extracts the boolean value from a DataValue.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>data</code> - the data value</dd>
<dt>Returns:</dt>
<dd>the boolean value</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="close()">
<h3>close</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">close</span>()</div>
<div class="block">Closes and cleans up all handlers and connections.</div>
</section>
</li>
<li>
<section class="detail" id="load()">
<h3>load</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">load</span>()</div>
<div class="block">Loads and initializes the bungee handler with the configured method.</div>
</section>
</li>
<li>
<section class="detail" id="loadGlobalMysql()">
<h3>loadGlobalMysql</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">loadGlobalMysql</span>()</div>
<div class="block">Loads the global MySQL handler for cross-server data synchronization.</div>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,223 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>VotingPluginHooks (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="declaration: package: com.bencodez.votingplugin, class: VotingPluginHooks">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../script.js"></script>
<script type="text/javascript" src="../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var pathtoroot = "../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/VotingPluginHooks.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../index-all.html">Index</a></li>
<li><a href="../../../help-doc.html#class">Help</a></li>
</ul>
<ul class="sub-nav-list-small">
<li>
<p>Summary:</p>
<ul>
<li>Nested</li>
<li>Field</li>
<li><a href="#constructor-summary">Constr</a></li>
<li><a href="#method-summary">Method</a></li>
</ul>
</li>
<li>
<p>Detail:</p>
<ul>
<li>Field</li>
<li><a href="#constructor-detail">Constr</a></li>
<li><a href="#method-detail">Method</a></li>
</ul>
</li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list">
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><a href="../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">com.bencodez.votingplugin</a></div>
<h1 title="Class VotingPluginHooks" class="title">Class VotingPluginHooks</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance">com.bencodez.votingplugin.VotingPluginHooks</div>
</div>
<section class="class-description" id="class-description">
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">VotingPluginHooks</span>
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></span></div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E()" class="member-name-link">VotingPluginHooks</a>()</code></div>
<div class="col-last even-row-color">&nbsp;</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab1" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab1', 3)" class="table-tab">Static Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#addCustomRequirement(com.bencodez.advancedcore.api.rewards.injectedrequirement.RequirementInject)" class="member-name-link">addCustomRequirement</a><wbr>(com.bencodez.advancedcore.api.rewards.injectedrequirement.RequirementInject&nbsp;inject)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#addCustomReward(com.bencodez.advancedcore.api.rewards.injected.RewardInject)" class="member-name-link">addCustomReward</a><wbr>(com.bencodez.advancedcore.api.rewards.injected.RewardInject&nbsp;inject)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#backgroundUpdate(org.bukkit.entity.Player)" class="member-name-link">backgroundUpdate</a><wbr>(org.bukkit.entity.Player&nbsp;player)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="VotingPluginHooks.html" title="class in com.bencodez.votingplugin">VotingPluginHooks</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#getInstance()" class="member-name-link">getInstance</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMainClass()" class="member-name-link">getMainClass</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="user/UserManager.html" title="class in com.bencodez.votingplugin.user">UserManager</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getUserManager()" class="member-name-link">getUserManager</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;()">
<h3>VotingPluginHooks</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">VotingPluginHooks</span>()</div>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="getInstance()">
<h3>getInstance</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="VotingPluginHooks.html" title="class in com.bencodez.votingplugin">VotingPluginHooks</a></span>&nbsp;<span class="element-name">getInstance</span>()</div>
</section>
</li>
<li>
<section class="detail" id="addCustomRequirement(com.bencodez.advancedcore.api.rewards.injectedrequirement.RequirementInject)">
<h3>addCustomRequirement</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">addCustomRequirement</span><wbr><span class="parameters">(com.bencodez.advancedcore.api.rewards.injectedrequirement.RequirementInject&nbsp;inject)</span></div>
</section>
</li>
<li>
<section class="detail" id="addCustomReward(com.bencodez.advancedcore.api.rewards.injected.RewardInject)">
<h3>addCustomReward</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">addCustomReward</span><wbr><span class="parameters">(com.bencodez.advancedcore.api.rewards.injected.RewardInject&nbsp;inject)</span></div>
</section>
</li>
<li>
<section class="detail" id="backgroundUpdate(org.bukkit.entity.Player)">
<h3>backgroundUpdate</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">backgroundUpdate</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player)</span></div>
</section>
</li>
<li>
<section class="detail" id="getMainClass()">
<h3>getMainClass</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a></span>&nbsp;<span class="element-name">getMainClass</span>()</div>
</section>
</li>
<li>
<section class="detail" id="getUserManager()">
<h3>getUserManager</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="user/UserManager.html" title="class in com.bencodez.votingplugin.user">UserManager</a></span>&nbsp;<span class="element-name">getUserManager</span>()</div>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,514 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>VotingPluginMain (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="declaration: package: com.bencodez.votingplugin, class: VotingPluginMain">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../script.js"></script>
<script type="text/javascript" src="../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var pathtoroot = "../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/VotingPluginMain.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../index-all.html">Index</a></li>
<li><a href="../../../help-doc.html#class">Help</a></li>
</ul>
<ul class="sub-nav-list-small">
<li>
<p>Summary:</p>
<ul>
<li>Nested</li>
<li><a href="#field-summary">Field</a></li>
<li><a href="#constructor-summary">Constr</a></li>
<li><a href="#method-summary">Method</a></li>
</ul>
</li>
<li>
<p>Detail:</p>
<ul>
<li><a href="#field-detail">Field</a></li>
<li><a href="#constructor-detail">Constr</a></li>
<li><a href="#method-detail">Method</a></li>
</ul>
</li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list">
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field-summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li><a href="#field-detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><a href="../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">com.bencodez.votingplugin</a></div>
<h1 title="Class VotingPluginMain" class="title">Class VotingPluginMain</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance">org.bukkit.plugin.PluginBase
<div class="inheritance">org.bukkit.plugin.java.JavaPlugin
<div class="inheritance">com.bencodez.advancedcore.AdvancedCorePlugin
<div class="inheritance">com.bencodez.votingplugin.VotingPluginMain</div>
</div>
</div>
</div>
</div>
<section class="class-description" id="class-description">
<dl class="notes">
<dt>All Implemented Interfaces:</dt>
<dd><code>org.bukkit.command.CommandExecutor</code>, <code>org.bukkit.command.TabCompleter</code>, <code>org.bukkit.command.TabExecutor</code>, <code>org.bukkit.plugin.Plugin</code></dd>
</dl>
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">VotingPluginMain</span>
<span class="extends-implements">extends com.bencodez.advancedcore.AdvancedCorePlugin</span></div>
<div class="block">The Class Main.</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- =========== FIELD SUMMARY =========== -->
<li>
<section class="field-summary" id="field-summary">
<h2>Field Summary</h2>
<div class="caption"><span>Fields</span></div>
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Field</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><code>static <a href="VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a></code></div>
<div class="col-second even-row-color"><code><a href="#plugin" class="member-name-link">plugin</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
</div>
<div class="inherited-list">
<h3 id="fields-inherited-from-class-com.bencodez.advancedcore.AdvancedCorePlugin">Fields inherited from class&nbsp;com.bencodez.advancedcore.AdvancedCorePlugin</h3>
<code>vaultHandler</code></div>
</section>
</li>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E()" class="member-name-link">VotingPluginMain</a>()</code></div>
<div class="col-last even-row-color">&nbsp;</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button><button id="method-summary-table-tab6" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab6', 3)" class="table-tab">Deprecated Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#addDirectlyDefinedRewards(com.bencodez.advancedcore.api.rewards.DirectlyDefinedReward)" class="member-name-link">addDirectlyDefinedRewards</a><wbr>(com.bencodez.advancedcore.api.rewards.DirectlyDefinedReward&nbsp;directlyDefinedReward)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#basicBungeeUpdate()" class="member-name-link">basicBungeeUpdate</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#checkFirstTimeLoaded()" class="member-name-link">checkFirstTimeLoaded</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><wbr>&lt;<a href="topvoter/TopVoterPlayer.html" title="class in com.bencodez.votingplugin.topvoter">TopVoterPlayer</a>&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#convertSet(java.util.Set)" class="member-name-link">convertSet</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/Set.html" title="class or interface in java.util" class="external-link">Set</a>&lt;<a href="topvoter/TopVoterPlayer.html" title="class in com.bencodez.votingplugin.topvoter">TopVoterPlayer</a>&gt;&nbsp;set)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>org.bukkit.configuration.file.FileConfiguration</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getConfig()" class="member-name-link">getConfig</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/LinkedHashMap.html" title="class or interface in java.util" class="external-link">LinkedHashMap</a><wbr>&lt;<a href="topvoter/TopVoterPlayer.html" title="class in com.bencodez.votingplugin.topvoter">TopVoterPlayer</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Integer.html" title="class or interface in java.lang" class="external-link">Integer</a>&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getTopVoter(com.bencodez.votingplugin.topvoter.TopVoter)" class="member-name-link">getTopVoter</a><wbr>(<a href="topvoter/TopVoter.html" title="enum class in com.bencodez.votingplugin.topvoter">TopVoter</a>&nbsp;top)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6"><code><a href="user/VotingPluginUser.html" title="class in com.bencodez.votingplugin.user">VotingPluginUser</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6"><code><a href="#getUser(java.util.UUID)" class="member-name-link">getUser</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="class or interface in java.util" class="external-link">UUID</a>&nbsp;uuid)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6">
<div class="block"><span class="deprecated-label">Deprecated.</span></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6"><code><a href="votesites/VoteSite.html" title="class in com.bencodez.votingplugin.votesites">VoteSite</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6"><code><a href="#getVoteSite(java.lang.String,boolean)" class="member-name-link">getVoteSite</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;site,
boolean&nbsp;checkEnabled)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6">
<div class="block"><span class="deprecated-label">Deprecated.</span></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6"><code><a href="#getVoteSiteName(boolean,java.lang.String...)" class="member-name-link">getVoteSiteName</a><wbr>(boolean&nbsp;checkEnabled,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>...&nbsp;urls)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6">
<div class="block"><span class="deprecated-label">Deprecated.</span></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><wbr>&lt;<a href="votesites/VoteSite.html" title="class in com.bencodez.votingplugin.votesites">VoteSite</a>&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6"><code><a href="#getVoteSites()" class="member-name-link">getVoteSites</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6">
<div class="block"><span class="deprecated-label">Deprecated.</span></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><wbr>&lt;<a href="votesites/VoteSite.html" title="class in com.bencodez.votingplugin.votesites">VoteSite</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6"><code><a href="#getVoteSitesEnabled()" class="member-name-link">getVoteSitesEnabled</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6">
<div class="block"><span class="deprecated-label">Deprecated.</span></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6"><code><a href="#getVoteSiteServiceSite(java.lang.String)" class="member-name-link">getVoteSiteServiceSite</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;name)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6">
<div class="block"><span class="deprecated-label">Deprecated.</span></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6"><code><a href="#hasVoteSite(java.lang.String)" class="member-name-link">hasVoteSite</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;site)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6">
<div class="block"><span class="deprecated-label">Deprecated.</span></div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6"><code><a href="#isVoteSite(java.lang.String)" class="member-name-link">isVoteSite</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;voteSite)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6">
<div class="block"><span class="deprecated-label">Deprecated.</span></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#loadDirectlyDefined()" class="member-name-link">loadDirectlyDefined</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#loadVoteLoggingMySQL()" class="member-name-link">loadVoteLoggingMySQL</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#loadVoteShopManager()" class="member-name-link">loadVoteShopManager</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#loadVoteSites()" class="member-name-link">loadVoteSites</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onPostLoad()" class="member-name-link">onPostLoad</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onPreLoad()" class="member-name-link">onPreLoad</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onUnLoad()" class="member-name-link">onUnLoad</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#reload()" class="member-name-link">reload</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Reload.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#reloadAll()" class="member-name-link">reloadAll</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#update()" class="member-name-link">update</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#updateAdvancedCoreHook()" class="member-name-link">updateAdvancedCoreHook</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-com.bencodez.advancedcore.AdvancedCorePlugin">Methods inherited from class&nbsp;com.bencodez.advancedcore.AdvancedCorePlugin</h3>
<code>addUserStartup, allowDownloadingFromSpigot, checkPluginUpdate, convertDataStorage, debug, debug, debug, devDebug, extraDebug, getAdvancedCoreBuildNumber, getAdvancedCoreCommandLoader, getAdvancedCoreVersion, getBannedPlayers, getBedrockHandle, getBuildTime, getBukkitScheduler, getBungeeChannel, getCmiHandle, getDialogService, getFullInventoryHandler, getHologramHandler, getInstance, getInventoryTimer, getJavascriptEngine, getJavascriptEngineRequests, getLoginTimer, getLuckPermsHandle, getMysql, getOptions, getPermissionHandler, getPluginMessaging, getRewardHandler, getServerDataFile, getSkullCacheHandler, getSQLiteUserTable, getStorageType, getTimeChecker, getTimer, getUserManager, getVaultHandler, isAuthMeLoaded, isLoadBedrockAPI, isLoadLuckPerms, isLoadRewards, isLoadServerData, isLoadSkullHandler, isLoadUserData, isLoadVault, isLoginSecurityLoaded, isMySQLOkay, isNLoginLoaded, isPlaceHolderAPIEnabled, loadAdvancedCoreEvents, loadHook, loadTabComplete, loadUserAPI, loadVault, onDisable, onEnable, registerBungeeChannels, registerEvents, reloadAdvancedCore, reloadAdvancedCore, setBungeeChannel, setConfigData, setConfigData, setDialogService, setInstance, setJavascriptEngine, setJavascriptEngineRequests, setLoadBedrockAPI, setLoadLuckPerms, setLoadRewards, setLoadServerData, setLoadSkullHandler, setLoadUserData, setLoadVault, setMysql, setUserManager, userStartup</code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-org.bukkit.plugin.java.JavaPlugin">Methods inherited from class&nbsp;org.bukkit.plugin.java.JavaPlugin</h3>
<code>getClassLoader, getCommand, getDataFolder, getDefaultBiomeProvider, getDefaultWorldGenerator, getDescription, getFile, getLogger, getPlugin, getPluginLoader, getProvidingPlugin, getResource, getServer, getTextResource, isEnabled, isNaggable, onCommand, onLoad, onTabComplete, reloadConfig, saveConfig, saveDefaultConfig, saveResource, setEnabled, setNaggable, toString</code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-org.bukkit.plugin.PluginBase">Methods inherited from class&nbsp;org.bukkit.plugin.PluginBase</h3>
<code>equals, getName, hashCode</code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ============ FIELD DETAIL =========== -->
<li>
<section class="field-details" id="field-detail">
<h2>Field Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="plugin">
<h3>plugin</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a></span>&nbsp;<span class="element-name">plugin</span></div>
</section>
</li>
</ul>
</section>
</li>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;()">
<h3>VotingPluginMain</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">VotingPluginMain</span>()</div>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="addDirectlyDefinedRewards(com.bencodez.advancedcore.api.rewards.DirectlyDefinedReward)">
<h3>addDirectlyDefinedRewards</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">addDirectlyDefinedRewards</span><wbr><span class="parameters">(com.bencodez.advancedcore.api.rewards.DirectlyDefinedReward&nbsp;directlyDefinedReward)</span></div>
</section>
</li>
<li>
<section class="detail" id="basicBungeeUpdate()">
<h3>basicBungeeUpdate</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">basicBungeeUpdate</span>()</div>
</section>
</li>
<li>
<section class="detail" id="checkFirstTimeLoaded()">
<h3>checkFirstTimeLoaded</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">checkFirstTimeLoaded</span>()</div>
</section>
</li>
<li>
<section class="detail" id="loadVoteShopManager()">
<h3>loadVoteShopManager</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">loadVoteShopManager</span>()</div>
</section>
</li>
<li>
<section class="detail" id="convertSet(java.util.Set)">
<h3>convertSet</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a>&lt;<a href="topvoter/TopVoterPlayer.html" title="class in com.bencodez.votingplugin.topvoter">TopVoterPlayer</a>&gt;</span>&nbsp;<span class="element-name">convertSet</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/Set.html" title="class or interface in java.util" class="external-link">Set</a>&lt;<a href="topvoter/TopVoterPlayer.html" title="class in com.bencodez.votingplugin.topvoter">TopVoterPlayer</a>&gt;&nbsp;set)</span></div>
</section>
</li>
<li>
<section class="detail" id="getConfig()">
<h3>getConfig</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">org.bukkit.configuration.file.FileConfiguration</span>&nbsp;<span class="element-name">getConfig</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>getConfig</code>&nbsp;in interface&nbsp;<code>org.bukkit.plugin.Plugin</code></dd>
<dt>Overrides:</dt>
<dd><code>getConfig</code>&nbsp;in class&nbsp;<code>org.bukkit.plugin.java.JavaPlugin</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getTopVoter(com.bencodez.votingplugin.topvoter.TopVoter)">
<h3>getTopVoter</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/LinkedHashMap.html" title="class or interface in java.util" class="external-link">LinkedHashMap</a>&lt;<a href="topvoter/TopVoterPlayer.html" title="class in com.bencodez.votingplugin.topvoter">TopVoterPlayer</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Integer.html" title="class or interface in java.lang" class="external-link">Integer</a>&gt;</span>&nbsp;<span class="element-name">getTopVoter</span><wbr><span class="parameters">(<a href="topvoter/TopVoter.html" title="enum class in com.bencodez.votingplugin.topvoter">TopVoter</a>&nbsp;top)</span></div>
</section>
</li>
<li>
<section class="detail" id="getUser(java.util.UUID)">
<h3>getUser</h3>
<div class="member-signature"><span class="annotations"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Deprecated.html" title="class or interface in java.lang" class="external-link">@Deprecated</a>
</span><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="user/VotingPluginUser.html" title="class in com.bencodez.votingplugin.user">VotingPluginUser</a></span>&nbsp;<span class="element-name">getUser</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="class or interface in java.util" class="external-link">UUID</a>&nbsp;uuid)</span></div>
<div class="deprecation-block"><span class="deprecated-label">Deprecated.</span></div>
<div class="block">Gets the user.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>uuid</code> - the uuid</dd>
<dt>Returns:</dt>
<dd>the user</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getVoteSite(java.lang.String,boolean)">
<h3>getVoteSite</h3>
<div class="member-signature"><span class="annotations"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Deprecated.html" title="class or interface in java.lang" class="external-link">@Deprecated</a>
</span><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="votesites/VoteSite.html" title="class in com.bencodez.votingplugin.votesites">VoteSite</a></span>&nbsp;<span class="element-name">getVoteSite</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;site,
boolean&nbsp;checkEnabled)</span></div>
<div class="deprecation-block"><span class="deprecated-label">Deprecated.</span></div>
</section>
</li>
<li>
<section class="detail" id="getVoteSiteName(boolean,java.lang.String...)">
<h3>getVoteSiteName</h3>
<div class="member-signature"><span class="annotations"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Deprecated.html" title="class or interface in java.lang" class="external-link">@Deprecated</a>
</span><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span>&nbsp;<span class="element-name">getVoteSiteName</span><wbr><span class="parameters">(boolean&nbsp;checkEnabled,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>...&nbsp;urls)</span></div>
<div class="deprecation-block"><span class="deprecated-label">Deprecated.</span></div>
</section>
</li>
<li>
<section class="detail" id="getVoteSitesEnabled()">
<h3>getVoteSitesEnabled</h3>
<div class="member-signature"><span class="annotations"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Deprecated.html" title="class or interface in java.lang" class="external-link">@Deprecated</a>
</span><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a>&lt;<a href="votesites/VoteSite.html" title="class in com.bencodez.votingplugin.votesites">VoteSite</a>&gt;</span>&nbsp;<span class="element-name">getVoteSitesEnabled</span>()</div>
<div class="deprecation-block"><span class="deprecated-label">Deprecated.</span></div>
</section>
</li>
<li>
<section class="detail" id="getVoteSiteServiceSite(java.lang.String)">
<h3>getVoteSiteServiceSite</h3>
<div class="member-signature"><span class="annotations"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Deprecated.html" title="class or interface in java.lang" class="external-link">@Deprecated</a>
</span><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span>&nbsp;<span class="element-name">getVoteSiteServiceSite</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;name)</span></div>
<div class="deprecation-block"><span class="deprecated-label">Deprecated.</span></div>
</section>
</li>
<li>
<section class="detail" id="hasVoteSite(java.lang.String)">
<h3>hasVoteSite</h3>
<div class="member-signature"><span class="annotations"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Deprecated.html" title="class or interface in java.lang" class="external-link">@Deprecated</a>
</span><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasVoteSite</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;site)</span></div>
<div class="deprecation-block"><span class="deprecated-label">Deprecated.</span></div>
</section>
</li>
<li>
<section class="detail" id="isVoteSite(java.lang.String)">
<h3>isVoteSite</h3>
<div class="member-signature"><span class="annotations"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Deprecated.html" title="class or interface in java.lang" class="external-link">@Deprecated</a>
</span><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">isVoteSite</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;voteSite)</span></div>
<div class="deprecation-block"><span class="deprecated-label">Deprecated.</span></div>
</section>
</li>
<li>
<section class="detail" id="loadDirectlyDefined()">
<h3>loadDirectlyDefined</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">loadDirectlyDefined</span>()</div>
</section>
</li>
<li>
<section class="detail" id="loadVoteSites()">
<h3>loadVoteSites</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">loadVoteSites</span>()</div>
</section>
</li>
<li>
<section class="detail" id="getVoteSites()">
<h3>getVoteSites</h3>
<div class="member-signature"><span class="annotations"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Deprecated.html" title="class or interface in java.lang" class="external-link">@Deprecated</a>
</span><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;<a href="votesites/VoteSite.html" title="class in com.bencodez.votingplugin.votesites">VoteSite</a>&gt;</span>&nbsp;<span class="element-name">getVoteSites</span>()</div>
<div class="deprecation-block"><span class="deprecated-label">Deprecated.</span></div>
</section>
</li>
<li>
<section class="detail" id="onPostLoad()">
<h3>onPostLoad</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onPostLoad</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onPostLoad</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.AdvancedCorePlugin</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onPreLoad()">
<h3>onPreLoad</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onPreLoad</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onPreLoad</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.AdvancedCorePlugin</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onUnLoad()">
<h3>onUnLoad</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onUnLoad</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onUnLoad</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.AdvancedCorePlugin</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="reload()">
<h3>reload</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">reload</span>()</div>
<div class="block">Reload.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>reload</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.AdvancedCorePlugin</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="reloadAll()">
<h3>reloadAll</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">reloadAll</span>()</div>
</section>
</li>
<li>
<section class="detail" id="update()">
<h3>update</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">update</span>()</div>
</section>
</li>
<li>
<section class="detail" id="loadVoteLoggingMySQL()">
<h3>loadVoteLoggingMySQL</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">loadVoteLoggingMySQL</span>()</div>
</section>
</li>
<li>
<section class="detail" id="updateAdvancedCoreHook()">
<h3>updateAdvancedCoreHook</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">updateAdvancedCoreHook</span>()</div>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,195 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>VotingPluginMetrics (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="declaration: package: com.bencodez.votingplugin, class: VotingPluginMetrics">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../script.js"></script>
<script type="text/javascript" src="../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var pathtoroot = "../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/VotingPluginMetrics.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../index-all.html">Index</a></li>
<li><a href="../../../help-doc.html#class">Help</a></li>
</ul>
<ul class="sub-nav-list-small">
<li>
<p>Summary:</p>
<ul>
<li>Nested</li>
<li>Field</li>
<li><a href="#constructor-summary">Constr</a></li>
<li><a href="#method-summary">Method</a></li>
</ul>
</li>
<li>
<p>Detail:</p>
<ul>
<li>Field</li>
<li><a href="#constructor-detail">Constr</a></li>
<li><a href="#method-detail">Method</a></li>
</ul>
</li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list">
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><a href="../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">com.bencodez.votingplugin</a></div>
<h1 title="Class VotingPluginMetrics" class="title">Class VotingPluginMetrics</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance">com.bencodez.votingplugin.VotingPluginMetrics</div>
</div>
<section class="class-description" id="class-description">
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">VotingPluginMetrics</span>
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></span></div>
<div class="block">Registers bStats charts for VotingPlugin.
<p>
Updated for VotingPlugin 7.0:
<ul>
<li>Broadcast: Always logs broadcast_type if VoteBroadcast.Type exists. If Type == NONE, ignores other broadcast
settings.</li>
<li>VoteLogging: Only logs VoteLogging charts when VoteLogging.Enabled is true.</li>
<li>No "Unknown" values are emitted; charts are only registered when their data exists.</li>
<li>VoteMilestones chart is bucketed to reduce cardinality.</li>
</ul></div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E()" class="member-name-link">VotingPluginMetrics</a>()</code></div>
<div class="col-last even-row-color">&nbsp;</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#load(com.bencodez.votingplugin.VotingPluginMain)" class="member-name-link">load</a><wbr>(<a href="VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Register bStats metrics.</div>
</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;()">
<h3>VotingPluginMetrics</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">VotingPluginMetrics</span>()</div>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="load(com.bencodez.votingplugin.VotingPluginMain)">
<h3>load</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">load</span><wbr><span class="parameters">(<a href="VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin)</span></div>
<div class="block">Register bStats metrics.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>plugin</code> - VotingPlugin main instance</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,250 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>BroadcastFormat (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="declaration: package: com.bencodez.votingplugin.broadcast, class: BroadcastFormat">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var pathtoroot = "../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/BroadcastFormat.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html#class">Help</a></li>
</ul>
<ul class="sub-nav-list-small">
<li>
<p>Summary:</p>
<ul>
<li>Nested</li>
<li>Field</li>
<li><a href="#constructor-summary">Constr</a></li>
<li><a href="#method-summary">Method</a></li>
</ul>
</li>
<li>
<p>Detail:</p>
<ul>
<li>Field</li>
<li><a href="#constructor-detail">Constr</a></li>
<li><a href="#method-detail">Method</a></li>
</ul>
</li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list">
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><a href="../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">com.bencodez.votingplugin.broadcast</a></div>
<h1 title="Class BroadcastFormat" class="title">Class BroadcastFormat</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance">com.bencodez.votingplugin.broadcast.BroadcastFormat</div>
</div>
<section class="class-description" id="class-description">
<hr>
<div class="type-signature"><span class="modifiers">public final class </span><span class="element-name type-name-label">BroadcastFormat</span>
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></span></div>
<div class="block">Defines HOW vote broadcasts are rendered.
Terminology:
- BroadcastMsg : used when EXACTLY ONE item exists (single-site vote)
- Header : used ONCE when MULTIPLE items exist (batch/interval)
- ListLine : used ONCE PER ITEM when MULTIPLE items exist
Placeholders (always available):
- %player% : player name (or "Server" for interval summaries)
- %site% : the current site/item for this line
- %sites_count% : number of items in the list
- %sites% : csv of items in the list
- %reason% : internal reason string ("vote", "batch", "interval", etc)
Extra context placeholders (INTERVAL_SUMMARY_GLOBAL):
- %players% / %numberofplayers%
- %sites% / %numberofsites% (note: %sites% is csv; %numberofsites% is count)</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(java.lang.String,java.lang.String,java.lang.String)" class="member-name-link">BroadcastFormat</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;broadcastMsg,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;header,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;listLine)</code></div>
<div class="col-last even-row-color">
<div class="block">Constructor for BroadcastFormat.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><wbr>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#render(java.lang.String,java.util.List,java.lang.String)" class="member-name-link">render</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;playerName,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;&nbsp;items,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;reason)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Render the broadcast with player name, items, and reason.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><wbr>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#render(java.lang.String,java.util.List,java.lang.String,java.util.Map)" class="member-name-link">render</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;playerName,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;&nbsp;items,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;reason,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;&nbsp;context)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Render the broadcast with player name, items, reason, and context.</div>
</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;(java.lang.String,java.lang.String,java.lang.String)">
<h3>BroadcastFormat</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">BroadcastFormat</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;broadcastMsg,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;header,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;listLine)</span></div>
<div class="block">Constructor for BroadcastFormat.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>broadcastMsg</code> - the broadcast message template</dd>
<dd><code>header</code> - the header template</dd>
<dd><code>listLine</code> - the list line template</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="render(java.lang.String,java.util.List,java.lang.String)">
<h3>render</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</span>&nbsp;<span class="element-name">render</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;playerName,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;&nbsp;items,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;reason)</span></div>
<div class="block">Render the broadcast with player name, items, and reason.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>playerName</code> - the player name</dd>
<dd><code>items</code> - the list of items</dd>
<dd><code>reason</code> - the reason string</dd>
<dt>Returns:</dt>
<dd>the rendered list of strings</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="render(java.lang.String,java.util.List,java.lang.String,java.util.Map)">
<h3>render</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</span>&nbsp;<span class="element-name">render</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;playerName,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;&nbsp;items,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;reason,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;&nbsp;context)</span></div>
<div class="block">Render the broadcast with player name, items, reason, and context.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>playerName</code> - the player name</dd>
<dd><code>items</code> - the list of items</dd>
<dd><code>reason</code> - the reason string</dd>
<dd><code>context</code> - additional context placeholders</dd>
<dt>Returns:</dt>
<dd>the rendered list of strings</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,231 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>BroadcastHandler (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="declaration: package: com.bencodez.votingplugin.broadcast, class: BroadcastHandler">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var pathtoroot = "../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/BroadcastHandler.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html#class">Help</a></li>
</ul>
<ul class="sub-nav-list-small">
<li>
<p>Summary:</p>
<ul>
<li>Nested</li>
<li>Field</li>
<li><a href="#constructor-summary">Constr</a></li>
<li><a href="#method-summary">Method</a></li>
</ul>
</li>
<li>
<p>Detail:</p>
<ul>
<li>Field</li>
<li><a href="#constructor-detail">Constr</a></li>
<li><a href="#method-detail">Method</a></li>
</ul>
</li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list">
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><a href="../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">com.bencodez.votingplugin.broadcast</a></div>
<h1 title="Class BroadcastHandler" class="title">Class BroadcastHandler</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance">com.bencodez.votingplugin.broadcast.BroadcastHandler</div>
</div>
<section class="class-description" id="class-description">
<hr>
<div class="type-signature"><span class="modifiers">public final class </span><span class="element-name type-name-label">BroadcastHandler</span>
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></span></div>
<div class="block">Core broadcast logic.
Decides when to broadcast and builds lines and messages. Uses the existing
eligible online players behavior and respects disabled broadcasts.
Backend servers only.</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.bencodez.votingplugin.VotingPluginMain,com.bencodez.votingplugin.broadcast.BroadcastSettings,java.time.ZoneId)" class="member-name-link">BroadcastHandler</a><wbr>(<a href="../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin,
<a href="BroadcastSettings.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastSettings</a>&nbsp;settings,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/time/ZoneId.html" title="class or interface in java.time" class="external-link">ZoneId</a>&nbsp;zoneId)</code></div>
<div class="col-last even-row-color">
<div class="block">Constructs a new broadcast handler.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#broadcastVote(java.util.UUID,java.lang.String,java.lang.String,boolean)" class="member-name-link">broadcastVote</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="class or interface in java.util" class="external-link">UUID</a>&nbsp;uuid,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;playerName,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;siteName,
boolean&nbsp;wasOnline)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Handles a received vote.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#setSettings(com.bencodez.votingplugin.broadcast.BroadcastSettings)" class="member-name-link">setSettings</a><wbr>(<a href="BroadcastSettings.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastSettings</a>&nbsp;settings)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Updates the broadcast settings and reschedules the interval task when
required.</div>
</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;(com.bencodez.votingplugin.VotingPluginMain,com.bencodez.votingplugin.broadcast.BroadcastSettings,java.time.ZoneId)">
<h3>BroadcastHandler</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">BroadcastHandler</span><wbr><span class="parameters">(<a href="../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin,
<a href="BroadcastSettings.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastSettings</a>&nbsp;settings,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/time/ZoneId.html" title="class or interface in java.time" class="external-link">ZoneId</a>&nbsp;zoneId)</span></div>
<div class="block">Constructs a new broadcast handler.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>plugin</code> - the main plugin instance</dd>
<dd><code>settings</code> - the broadcast settings</dd>
<dd><code>zoneId</code> - the time zone ID, or null to use the system default</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="setSettings(com.bencodez.votingplugin.broadcast.BroadcastSettings)">
<h3>setSettings</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">setSettings</span><wbr><span class="parameters">(<a href="BroadcastSettings.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastSettings</a>&nbsp;settings)</span></div>
<div class="block">Updates the broadcast settings and reschedules the interval task when
required.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>settings</code> - the new broadcast settings</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="broadcastVote(java.util.UUID,java.lang.String,java.lang.String,boolean)">
<h3>broadcastVote</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">broadcastVote</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="class or interface in java.util" class="external-link">UUID</a>&nbsp;uuid,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;playerName,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;siteName,
boolean&nbsp;wasOnline)</span></div>
<div class="block">Handles a received vote.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>uuid</code> - the voted player's UUID</dd>
<dd><code>playerName</code> - the player name, or null to resolve it from Bukkit</dd>
<dd><code>siteName</code> - the vote site display name</dd>
<dd><code>wasOnline</code> - whether the voted player was online when the vote was received</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,289 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>BroadcastSettings (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="declaration: package: com.bencodez.votingplugin.broadcast, class: BroadcastSettings">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var pathtoroot = "../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/BroadcastSettings.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html#class">Help</a></li>
</ul>
<ul class="sub-nav-list-small">
<li>
<p>Summary:</p>
<ul>
<li>Nested</li>
<li>Field</li>
<li><a href="#constructor-summary">Constr</a></li>
<li><a href="#method-summary">Method</a></li>
</ul>
</li>
<li>
<p>Detail:</p>
<ul>
<li>Field</li>
<li><a href="#constructor-detail">Constr</a></li>
<li><a href="#method-detail">Method</a></li>
</ul>
</li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list">
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><a href="../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">com.bencodez.votingplugin.broadcast</a></div>
<h1 title="Class BroadcastSettings" class="title">Class BroadcastSettings</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance">com.bencodez.votingplugin.broadcast.BroadcastSettings</div>
</div>
<section class="class-description" id="class-description">
<hr>
<div class="type-signature"><span class="modifiers">public final class </span><span class="element-name type-name-label">BroadcastSettings</span>
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></span></div>
<div class="block">Immutable broadcast configuration.
Type: NONE disables broadcasting.</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.bencodez.votingplugin.broadcast.VoteBroadcastType,com.bencodez.simpleapi.time.ParsedDuration,int,com.bencodez.votingplugin.broadcast.BroadcastFormat)" class="member-name-link">BroadcastSettings</a><wbr>(<a href="VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a>&nbsp;type,
com.bencodez.simpleapi.time.ParsedDuration&nbsp;duration,
int&nbsp;maxSitesListed,
<a href="BroadcastFormat.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastFormat</a>&nbsp;format)</code></div>
<div class="col-last even-row-color">
<div class="block">Constructs a BroadcastSettings with the specified parameters.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab1" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab1', 3)" class="table-tab">Static Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>com.bencodez.simpleapi.time.ParsedDuration</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getDuration()" class="member-name-link">getDuration</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns the broadcast duration.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="BroadcastFormat.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastFormat</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getFormat()" class="member-name-link">getFormat</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns the broadcast format.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMaxSitesListed()" class="member-name-link">getMaxSitesListed</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns the maximum number of sites to list.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getType()" class="member-name-link">getType</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns the broadcast type.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isDisabled()" class="member-name-link">isDisabled</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns whether broadcasting is disabled.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="BroadcastSettings.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastSettings</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#load(org.bukkit.configuration.ConfigurationSection)" class="member-name-link">load</a><wbr>(org.bukkit.configuration.ConfigurationSection&nbsp;sec)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Loads VoteBroadcast settings from config.yml.</div>
</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;(com.bencodez.votingplugin.broadcast.VoteBroadcastType,com.bencodez.simpleapi.time.ParsedDuration,int,com.bencodez.votingplugin.broadcast.BroadcastFormat)">
<h3>BroadcastSettings</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">BroadcastSettings</span><wbr><span class="parameters">(<a href="VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a>&nbsp;type,
com.bencodez.simpleapi.time.ParsedDuration&nbsp;duration,
int&nbsp;maxSitesListed,
<a href="BroadcastFormat.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastFormat</a>&nbsp;format)</span></div>
<div class="block">Constructs a BroadcastSettings with the specified parameters.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>type</code> - the broadcast type</dd>
<dd><code>duration</code> - the broadcast duration</dd>
<dd><code>maxSitesListed</code> - the maximum number of sites to list</dd>
<dd><code>format</code> - the broadcast format</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="getType()">
<h3>getType</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a></span>&nbsp;<span class="element-name">getType</span>()</div>
<div class="block">Returns the broadcast type.</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>the broadcast type</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getDuration()">
<h3>getDuration</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">com.bencodez.simpleapi.time.ParsedDuration</span>&nbsp;<span class="element-name">getDuration</span>()</div>
<div class="block">Returns the broadcast duration.</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>the broadcast duration</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMaxSitesListed()">
<h3>getMaxSitesListed</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getMaxSitesListed</span>()</div>
<div class="block">Returns the maximum number of sites to list.</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>the maximum number of sites to list</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getFormat()">
<h3>getFormat</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="BroadcastFormat.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastFormat</a></span>&nbsp;<span class="element-name">getFormat</span>()</div>
<div class="block">Returns the broadcast format.</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>the broadcast format</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="isDisabled()">
<h3>isDisabled</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">isDisabled</span>()</div>
<div class="block">Returns whether broadcasting is disabled.</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>true if broadcasting is disabled</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="load(org.bukkit.configuration.ConfigurationSection)">
<h3>load</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="BroadcastSettings.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastSettings</a></span>&nbsp;<span class="element-name">load</span><wbr><span class="parameters">(org.bukkit.configuration.ConfigurationSection&nbsp;sec)</span></div>
<div class="block">Loads VoteBroadcast settings from config.yml.
Expected structure: VoteBroadcast: Type: EVERY_VOTE Duration: 2m
MaxSitesListed: 0 Format: BroadcastMsg: '...' Header: '...' ListLine: '...'</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>sec</code> - the configuration section to load from</dd>
<dt>Returns:</dt>
<dd>the loaded broadcast settings</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,329 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>VoteBroadcastType (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="declaration: package: com.bencodez.votingplugin.broadcast, enum: VoteBroadcastType">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var pathtoroot = "../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/VoteBroadcastType.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html#class">Help</a></li>
</ul>
<ul class="sub-nav-list-small">
<li>
<p>Summary:</p>
<ul>
<li><a href="#nested-class-summary">Nested</a></li>
<li><a href="#enum-constant-summary">Enum Constants</a></li>
<li>Field</li>
<li><a href="#method-summary">Method</a></li>
</ul>
</li>
<li>
<p>Detail:</p>
<ul>
<li><a href="#enum-constant-detail">Enum Constants</a></li>
<li>Field</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list">
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li><a href="#nested-class-summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#enum-constant-summary">Enum Constants</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li><a href="#enum-constant-detail">Enum Constants</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><a href="../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">com.bencodez.votingplugin.broadcast</a></div>
<h1 title="Enum Class VoteBroadcastType" class="title">Enum Class VoteBroadcastType</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Enum.html" title="class or interface in java.lang" class="external-link">java.lang.Enum</a>&lt;<a href="VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a>&gt;
<div class="inheritance">com.bencodez.votingplugin.broadcast.VoteBroadcastType</div>
</div>
</div>
<section class="class-description" id="class-description">
<dl class="notes">
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/io/Serializable.html" title="class or interface in java.io" class="external-link">Serializable</a></code>, <code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Comparable.html" title="class or interface in java.lang" class="external-link">Comparable</a>&lt;<a href="VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a>&gt;</code>, <code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/constant/Constable.html" title="class or interface in java.lang.constant" class="external-link">Constable</a></code></dd>
</dl>
<hr>
<div class="type-signature"><span class="modifiers">public enum </span><span class="element-name type-name-label">VoteBroadcastType</span>
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Enum.html" title="class or interface in java.lang" class="external-link">Enum</a>&lt;<a href="VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a>&gt;</span></div>
<div class="block">Defines WHEN vote broadcasts occur.
Set Type: NONE to disable broadcasting entirely.</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<li>
<section class="nested-class-summary" id="nested-class-summary">
<h2>Nested Class Summary</h2>
<div class="inherited-list">
<h2 id="nested-classes-inherited-from-class-java.lang.Enum">Nested classes/interfaces inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Enum.html" title="class or interface in java.lang" class="external-link">Enum</a></h2>
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Enum.EnumDesc.html" title="class or interface in java.lang" class="external-link">Enum.EnumDesc</a>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Enum.EnumDesc.html" title="class or interface in java.lang" class="external-link">E</a> extends <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Enum.html" title="class or interface in java.lang" class="external-link">Enum</a>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Enum.EnumDesc.html" title="class or interface in java.lang" class="external-link">E</a>&gt;&gt;</code></div>
</section>
</li>
<!-- =========== ENUM CONSTANT SUMMARY =========== -->
<li>
<section class="constants-summary" id="enum-constant-summary">
<h2>Enum Constant Summary</h2>
<div class="caption"><span>Enum Constants</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Enum Constant</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><code><a href="#BATCH_WINDOW_PER_PLAYER" class="member-name-link">BATCH_WINDOW_PER_PLAYER</a></code></div>
<div class="col-last even-row-color">
<div class="block">Batch sites per player for Duration, then broadcast one message listing
sites.</div>
</div>
<div class="col-first odd-row-color"><code><a href="#COOLDOWN_PER_PLAYER" class="member-name-link">COOLDOWN_PER_PLAYER</a></code></div>
<div class="col-last odd-row-color">
<div class="block">Broadcast at most once per Duration per player.</div>
</div>
<div class="col-first even-row-color"><code><a href="#EVERY_VOTE" class="member-name-link">EVERY_VOTE</a></code></div>
<div class="col-last even-row-color">
<div class="block">Broadcast on every vote (even if the player is offline).</div>
</div>
<div class="col-first odd-row-color"><code><a href="#EVERY_VOTE_ONLINE_ONLY" class="member-name-link">EVERY_VOTE_ONLINE_ONLY</a></code></div>
<div class="col-last odd-row-color">
<div class="block">Broadcast on every vote ONLY if the voting player is online.</div>
</div>
<div class="col-first even-row-color"><code><a href="#FIRST_VOTE_OF_DAY" class="member-name-link">FIRST_VOTE_OF_DAY</a></code></div>
<div class="col-last even-row-color">
<div class="block">Broadcast only the first vote of the day per player (calendar day).</div>
</div>
<div class="col-first odd-row-color"><code><a href="#INTERVAL_SUMMARY_GLOBAL" class="member-name-link">INTERVAL_SUMMARY_GLOBAL</a></code></div>
<div class="col-last odd-row-color">
<div class="block">Every Duration, broadcast a global summary of who voted and how many sites.</div>
</div>
<div class="col-first even-row-color"><code><a href="#NONE" class="member-name-link">NONE</a></code></div>
<div class="col-last even-row-color">
<div class="block">No vote broadcasting.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab1" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab1', 3)" class="table-tab">Static Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#parse(java.lang.String,com.bencodez.votingplugin.broadcast.VoteBroadcastType)" class="member-name-link">parse</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;s,
<a href="VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a>&nbsp;def)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Parses a vote broadcast type from a string.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#valueOf(java.lang.String)" class="member-name-link">valueOf</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;name)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Returns the enum constant of this class with the specified name.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a>[]</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#values()" class="member-name-link">values</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Returns an array containing the constants of this enum class, in
the order they are declared.</div>
</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Enum">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Enum.html" title="class or interface in java.lang" class="external-link">Enum</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Enum.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Enum.html#compareTo(E)" title="class or interface in java.lang" class="external-link">compareTo</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Enum.html#describeConstable()" title="class or interface in java.lang" class="external-link">describeConstable</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Enum.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Enum.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Enum.html#getDeclaringClass()" title="class or interface in java.lang" class="external-link">getDeclaringClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Enum.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Enum.html#name()" title="class or interface in java.lang" class="external-link">name</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Enum.html#ordinal()" title="class or interface in java.lang" class="external-link">ordinal</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Enum.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Enum.html#valueOf(java.lang.Class,java.lang.String)" title="class or interface in java.lang" class="external-link">valueOf</a></code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ============ ENUM CONSTANT DETAIL =========== -->
<li>
<section class="constant-details" id="enum-constant-detail">
<h2>Enum Constant Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="NONE">
<h3>NONE</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a></span>&nbsp;<span class="element-name">NONE</span></div>
<div class="block">No vote broadcasting.</div>
</section>
</li>
<li>
<section class="detail" id="EVERY_VOTE">
<h3>EVERY_VOTE</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a></span>&nbsp;<span class="element-name">EVERY_VOTE</span></div>
<div class="block">Broadcast on every vote (even if the player is offline). Uses
Format.BroadcastMsg (+ optional header/list if you choose).</div>
</section>
</li>
<li>
<section class="detail" id="EVERY_VOTE_ONLINE_ONLY">
<h3>EVERY_VOTE_ONLINE_ONLY</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a></span>&nbsp;<span class="element-name">EVERY_VOTE_ONLINE_ONLY</span></div>
<div class="block">Broadcast on every vote ONLY if the voting player is online. Useful when
processing offline votes but you don't want global spam for them.</div>
</section>
</li>
<li>
<section class="detail" id="COOLDOWN_PER_PLAYER">
<h3>COOLDOWN_PER_PLAYER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a></span>&nbsp;<span class="element-name">COOLDOWN_PER_PLAYER</span></div>
<div class="block">Broadcast at most once per Duration per player. (Even if they vote multiple
sites inside the cooldown.)</div>
</section>
</li>
<li>
<section class="detail" id="BATCH_WINDOW_PER_PLAYER">
<h3>BATCH_WINDOW_PER_PLAYER</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a></span>&nbsp;<span class="element-name">BATCH_WINDOW_PER_PLAYER</span></div>
<div class="block">Batch sites per player for Duration, then broadcast one message listing
sites.</div>
</section>
</li>
<li>
<section class="detail" id="FIRST_VOTE_OF_DAY">
<h3>FIRST_VOTE_OF_DAY</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a></span>&nbsp;<span class="element-name">FIRST_VOTE_OF_DAY</span></div>
<div class="block">Broadcast only the first vote of the day per player (calendar day).</div>
</section>
</li>
<li>
<section class="detail" id="INTERVAL_SUMMARY_GLOBAL">
<h3>INTERVAL_SUMMARY_GLOBAL</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type"><a href="VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a></span>&nbsp;<span class="element-name">INTERVAL_SUMMARY_GLOBAL</span></div>
<div class="block">Every Duration, broadcast a global summary of who voted and how many sites.
Uses context placeholders: %players%, %numberofplayers%, %sites%,
%numberofsites%.</div>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="values()">
<h3>values</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a>[]</span>&nbsp;<span class="element-name">values</span>()</div>
<div class="block">Returns an array containing the constants of this enum class, in
the order they are declared.</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>an array containing the constants of this enum class, in the order they are declared</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="valueOf(java.lang.String)">
<h3>valueOf</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a></span>&nbsp;<span class="element-name">valueOf</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;name)</span></div>
<div class="block">Returns the enum constant of this class with the specified name.
The string must match <i>exactly</i> an identifier used to declare an
enum constant in this class. (Extraneous whitespace characters are
not permitted.)</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>name</code> - the name of the enum constant to be returned.</dd>
<dt>Returns:</dt>
<dd>the enum constant with the specified name</dd>
<dt>Throws:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></code> - if this enum class has no constant with the specified name</dd>
<dd><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/NullPointerException.html" title="class or interface in java.lang" class="external-link">NullPointerException</a></code> - if the argument is null</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="parse(java.lang.String,com.bencodez.votingplugin.broadcast.VoteBroadcastType)">
<h3>parse</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a></span>&nbsp;<span class="element-name">parse</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;s,
<a href="VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a>&nbsp;def)</span></div>
<div class="block">Parses a vote broadcast type from a string.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>s</code> - the string to parse</dd>
<dd><code>def</code> - the default value if parsing fails</dd>
<dt>Returns:</dt>
<dd>the parsed broadcast type or default</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,104 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>Uses of Class com.bencodez.votingplugin.broadcast.BroadcastFormat (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="use: package: com.bencodez.votingplugin.broadcast, class: BroadcastFormat">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-use-page">
<script type="text/javascript">var pathtoroot = "../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="../package-summary.html">Package</a></li>
<li><a href="../BroadcastFormat.html" title="class in com.bencodez.votingplugin.broadcast">Class</a></li>
<li class="nav-bar-cell1-rev">Use</li>
<li><a href="../package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html#use">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list"></div>
<div class="nav-list-search"><a href="../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<div class="header">
<h1 title="Uses of Class com.bencodez.votingplugin.broadcast.BroadcastFormat" class="title">Uses of Class<br>com.bencodez.votingplugin.broadcast.BroadcastFormat</h1>
</div>
<div class="caption"><span>Packages that use <a href="../BroadcastFormat.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastFormat</a></span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Package</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><a href="#com.bencodez.votingplugin.broadcast">com.bencodez.votingplugin.broadcast</a></div>
<div class="col-last even-row-color">&nbsp;</div>
</div>
<section class="class-uses">
<ul class="block-list">
<li>
<section class="detail" id="com.bencodez.votingplugin.broadcast">
<h2>Uses of <a href="../BroadcastFormat.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastFormat</a> in <a href="../package-summary.html">com.bencodez.votingplugin.broadcast</a></h2>
<div class="caption"><span>Methods in <a href="../package-summary.html">com.bencodez.votingplugin.broadcast</a> that return <a href="../BroadcastFormat.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastFormat</a></span></div>
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><code><a href="../BroadcastFormat.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastFormat</a></code></div>
<div class="col-second even-row-color"><span class="type-name-label">BroadcastSettings.</span><code><a href="../BroadcastSettings.html#getFormat()" class="member-name-link">getFormat</a>()</code></div>
<div class="col-last even-row-color">
<div class="block">Returns the broadcast format.</div>
</div>
</div>
<div class="caption"><span>Constructors in <a href="../package-summary.html">com.bencodez.votingplugin.broadcast</a> with parameters of type <a href="../BroadcastFormat.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastFormat</a></span></div>
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier</div>
<div class="table-header col-second">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><code>&nbsp;</code></div>
<div class="col-second even-row-color"><code><a href="../BroadcastSettings.html#%3Cinit%3E(com.bencodez.votingplugin.broadcast.VoteBroadcastType,com.bencodez.simpleapi.time.ParsedDuration,int,com.bencodez.votingplugin.broadcast.BroadcastFormat)" class="member-name-link">BroadcastSettings</a><wbr>(<a href="../VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a>&nbsp;type,
com.bencodez.simpleapi.time.ParsedDuration&nbsp;duration,
int&nbsp;maxSitesListed,
<a href="../BroadcastFormat.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastFormat</a>&nbsp;format)</code></div>
<div class="col-last even-row-color">
<div class="block">Constructs a BroadcastSettings with the specified parameters.</div>
</div>
</div>
</section>
</li>
</ul>
</section>
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,63 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>Uses of Class com.bencodez.votingplugin.broadcast.BroadcastHandler (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="use: package: com.bencodez.votingplugin.broadcast, class: BroadcastHandler">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-use-page">
<script type="text/javascript">var pathtoroot = "../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="../package-summary.html">Package</a></li>
<li><a href="../BroadcastHandler.html" title="class in com.bencodez.votingplugin.broadcast">Class</a></li>
<li class="nav-bar-cell1-rev">Use</li>
<li><a href="../package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html#use">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list"></div>
<div class="nav-list-search"><a href="../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<div class="header">
<h1 title="Uses of Class com.bencodez.votingplugin.broadcast.BroadcastHandler" class="title">Uses of Class<br>com.bencodez.votingplugin.broadcast.BroadcastHandler</h1>
</div>
No usage of com.bencodez.votingplugin.broadcast.BroadcastHandler</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,115 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>Uses of Class com.bencodez.votingplugin.broadcast.BroadcastSettings (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="use: package: com.bencodez.votingplugin.broadcast, class: BroadcastSettings">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-use-page">
<script type="text/javascript">var pathtoroot = "../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="../package-summary.html">Package</a></li>
<li><a href="../BroadcastSettings.html" title="class in com.bencodez.votingplugin.broadcast">Class</a></li>
<li class="nav-bar-cell1-rev">Use</li>
<li><a href="../package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html#use">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list"></div>
<div class="nav-list-search"><a href="../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<div class="header">
<h1 title="Uses of Class com.bencodez.votingplugin.broadcast.BroadcastSettings" class="title">Uses of Class<br>com.bencodez.votingplugin.broadcast.BroadcastSettings</h1>
</div>
<div class="caption"><span>Packages that use <a href="../BroadcastSettings.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastSettings</a></span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Package</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><a href="#com.bencodez.votingplugin.broadcast">com.bencodez.votingplugin.broadcast</a></div>
<div class="col-last even-row-color">&nbsp;</div>
</div>
<section class="class-uses">
<ul class="block-list">
<li>
<section class="detail" id="com.bencodez.votingplugin.broadcast">
<h2>Uses of <a href="../BroadcastSettings.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastSettings</a> in <a href="../package-summary.html">com.bencodez.votingplugin.broadcast</a></h2>
<div class="caption"><span>Methods in <a href="../package-summary.html">com.bencodez.votingplugin.broadcast</a> that return <a href="../BroadcastSettings.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastSettings</a></span></div>
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><code>static <a href="../BroadcastSettings.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastSettings</a></code></div>
<div class="col-second even-row-color"><span class="type-name-label">BroadcastSettings.</span><code><a href="../BroadcastSettings.html#load(org.bukkit.configuration.ConfigurationSection)" class="member-name-link">load</a><wbr>(org.bukkit.configuration.ConfigurationSection&nbsp;sec)</code></div>
<div class="col-last even-row-color">
<div class="block">Loads VoteBroadcast settings from config.yml.</div>
</div>
</div>
<div class="caption"><span>Methods in <a href="../package-summary.html">com.bencodez.votingplugin.broadcast</a> with parameters of type <a href="../BroadcastSettings.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastSettings</a></span></div>
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><code>void</code></div>
<div class="col-second even-row-color"><span class="type-name-label">BroadcastHandler.</span><code><a href="../BroadcastHandler.html#setSettings(com.bencodez.votingplugin.broadcast.BroadcastSettings)" class="member-name-link">setSettings</a><wbr>(<a href="../BroadcastSettings.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastSettings</a>&nbsp;settings)</code></div>
<div class="col-last even-row-color">
<div class="block">Updates the broadcast settings and reschedules the interval task when
required.</div>
</div>
</div>
<div class="caption"><span>Constructors in <a href="../package-summary.html">com.bencodez.votingplugin.broadcast</a> with parameters of type <a href="../BroadcastSettings.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastSettings</a></span></div>
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier</div>
<div class="table-header col-second">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><code>&nbsp;</code></div>
<div class="col-second even-row-color"><code><a href="../BroadcastHandler.html#%3Cinit%3E(com.bencodez.votingplugin.VotingPluginMain,com.bencodez.votingplugin.broadcast.BroadcastSettings,java.time.ZoneId)" class="member-name-link">BroadcastHandler</a><wbr>(<a href="../../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin,
<a href="../BroadcastSettings.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastSettings</a>&nbsp;settings,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/time/ZoneId.html" title="class or interface in java.time" class="external-link">ZoneId</a>&nbsp;zoneId)</code></div>
<div class="col-last even-row-color">
<div class="block">Constructs a new broadcast handler.</div>
</div>
</div>
</section>
</li>
</ul>
</section>
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,133 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>Uses of Enum Class com.bencodez.votingplugin.broadcast.VoteBroadcastType (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="use: package: com.bencodez.votingplugin.broadcast, enum: VoteBroadcastType">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-use-page">
<script type="text/javascript">var pathtoroot = "../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="../package-summary.html">Package</a></li>
<li><a href="../VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">Class</a></li>
<li class="nav-bar-cell1-rev">Use</li>
<li><a href="../package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html#use">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list"></div>
<div class="nav-list-search"><a href="../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<div class="header">
<h1 title="Uses of Enum Class com.bencodez.votingplugin.broadcast.VoteBroadcastType" class="title">Uses of Enum Class<br>com.bencodez.votingplugin.broadcast.VoteBroadcastType</h1>
</div>
<div class="caption"><span>Packages that use <a href="../VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a></span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Package</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><a href="#com.bencodez.votingplugin.broadcast">com.bencodez.votingplugin.broadcast</a></div>
<div class="col-last even-row-color">&nbsp;</div>
</div>
<section class="class-uses">
<ul class="block-list">
<li>
<section class="detail" id="com.bencodez.votingplugin.broadcast">
<h2>Uses of <a href="../VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a> in <a href="../package-summary.html">com.bencodez.votingplugin.broadcast</a></h2>
<div class="caption"><span>Methods in <a href="../package-summary.html">com.bencodez.votingplugin.broadcast</a> that return <a href="../VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a></span></div>
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><code><a href="../VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a></code></div>
<div class="col-second even-row-color"><span class="type-name-label">BroadcastSettings.</span><code><a href="../BroadcastSettings.html#getType()" class="member-name-link">getType</a>()</code></div>
<div class="col-last even-row-color">
<div class="block">Returns the broadcast type.</div>
</div>
<div class="col-first odd-row-color"><code>static <a href="../VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a></code></div>
<div class="col-second odd-row-color"><span class="type-name-label">VoteBroadcastType.</span><code><a href="../VoteBroadcastType.html#parse(java.lang.String,com.bencodez.votingplugin.broadcast.VoteBroadcastType)" class="member-name-link">parse</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;s,
<a href="../VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a>&nbsp;def)</code></div>
<div class="col-last odd-row-color">
<div class="block">Parses a vote broadcast type from a string.</div>
</div>
<div class="col-first even-row-color"><code>static <a href="../VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a></code></div>
<div class="col-second even-row-color"><span class="type-name-label">VoteBroadcastType.</span><code><a href="../VoteBroadcastType.html#valueOf(java.lang.String)" class="member-name-link">valueOf</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;name)</code></div>
<div class="col-last even-row-color">
<div class="block">Returns the enum constant of this class with the specified name.</div>
</div>
<div class="col-first odd-row-color"><code>static <a href="../VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a>[]</code></div>
<div class="col-second odd-row-color"><span class="type-name-label">VoteBroadcastType.</span><code><a href="../VoteBroadcastType.html#values()" class="member-name-link">values</a>()</code></div>
<div class="col-last odd-row-color">
<div class="block">Returns an array containing the constants of this enum class, in
the order they are declared.</div>
</div>
</div>
<div class="caption"><span>Methods in <a href="../package-summary.html">com.bencodez.votingplugin.broadcast</a> with parameters of type <a href="../VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a></span></div>
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><code>static <a href="../VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a></code></div>
<div class="col-second even-row-color"><span class="type-name-label">VoteBroadcastType.</span><code><a href="../VoteBroadcastType.html#parse(java.lang.String,com.bencodez.votingplugin.broadcast.VoteBroadcastType)" class="member-name-link">parse</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;s,
<a href="../VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a>&nbsp;def)</code></div>
<div class="col-last even-row-color">
<div class="block">Parses a vote broadcast type from a string.</div>
</div>
</div>
<div class="caption"><span>Constructors in <a href="../package-summary.html">com.bencodez.votingplugin.broadcast</a> with parameters of type <a href="../VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a></span></div>
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier</div>
<div class="table-header col-second">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><code>&nbsp;</code></div>
<div class="col-second even-row-color"><code><a href="../BroadcastSettings.html#%3Cinit%3E(com.bencodez.votingplugin.broadcast.VoteBroadcastType,com.bencodez.simpleapi.time.ParsedDuration,int,com.bencodez.votingplugin.broadcast.BroadcastFormat)" class="member-name-link">BroadcastSettings</a><wbr>(<a href="../VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a>&nbsp;type,
com.bencodez.simpleapi.time.ParsedDuration&nbsp;duration,
int&nbsp;maxSitesListed,
<a href="../BroadcastFormat.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastFormat</a>&nbsp;format)</code></div>
<div class="col-last even-row-color">
<div class="block">Constructs a BroadcastSettings with the specified parameters.</div>
</div>
</div>
</section>
</li>
</ul>
</section>
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,124 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>com.bencodez.votingplugin.broadcast (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="declaration: package: com.bencodez.votingplugin.broadcast">
<meta name="generator" content="javadoc/PackageWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="package-declaration-page">
<script type="text/javascript">var pathtoroot = "../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li class="nav-bar-cell1-rev">Package</li>
<li>Class</li>
<li><a href="package-use.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html#package">Help</a></li>
</ul>
<ul class="sub-nav-list-small">
<li>
<p>Package:</p>
<ul>
<li>Description</li>
<li><a href="#related-package-summary">Related Packages</a></li>
<li><a href="#class-summary">Classes and Interfaces</a></li>
</ul>
</li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list">
<ul class="sub-nav-list">
<li>Package:&nbsp;</li>
<li>Description&nbsp;|&nbsp;</li>
<li><a href="#related-package-summary">Related Packages</a>&nbsp;|&nbsp;</li>
<li><a href="#class-summary">Classes and Interfaces</a></li>
</ul>
</div>
<div class="nav-list-search"><a href="../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<div class="header">
<h1 title="Package com.bencodez.votingplugin.broadcast" class="title">Package com.bencodez.votingplugin.broadcast</h1>
</div>
<hr>
<div class="package-signature">package <span class="element-name">com.bencodez.votingplugin.broadcast</span></div>
<section class="summary">
<ul class="summary-list">
<li>
<div id="related-package-summary">
<div class="caption"><span>Related Packages</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Package</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><a href="../package-summary.html">com.bencodez.votingplugin</a></div>
<div class="col-last even-row-color">&nbsp;</div>
</div>
</div>
</li>
<li>
<div id="class-summary">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="class-summary-tab0" role="tab" aria-selected="true" aria-controls="class-summary.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('class-summary', 'class-summary', 2)" class="active-table-tab">All Classes and Interfaces</button><button id="class-summary-tab2" role="tab" aria-selected="false" aria-controls="class-summary.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('class-summary', 'class-summary-tab2', 2)" class="table-tab">Classes</button><button id="class-summary-tab3" role="tab" aria-selected="false" aria-controls="class-summary.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('class-summary', 'class-summary-tab3', 2)" class="table-tab">Enum Classes</button></div>
<div id="class-summary.tabpanel" role="tabpanel" aria-labelledby="class-summary-tab0">
<div class="summary-table two-column-summary">
<div class="table-header col-first">Class</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color class-summary class-summary-tab2"><a href="BroadcastFormat.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastFormat</a></div>
<div class="col-last even-row-color class-summary class-summary-tab2">
<div class="block">Defines HOW vote broadcasts are rendered.</div>
</div>
<div class="col-first odd-row-color class-summary class-summary-tab2"><a href="BroadcastHandler.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastHandler</a></div>
<div class="col-last odd-row-color class-summary class-summary-tab2">
<div class="block">Core broadcast logic.</div>
</div>
<div class="col-first even-row-color class-summary class-summary-tab2"><a href="BroadcastSettings.html" title="class in com.bencodez.votingplugin.broadcast">BroadcastSettings</a></div>
<div class="col-last even-row-color class-summary class-summary-tab2">
<div class="block">Immutable broadcast configuration.</div>
</div>
<div class="col-first odd-row-color class-summary class-summary-tab3"><a href="VoteBroadcastType.html" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a></div>
<div class="col-last odd-row-color class-summary class-summary-tab3">
<div class="block">Defines WHEN vote broadcasts occur.</div>
</div>
</div>
</div>
</div>
</li>
</ul>
</section>
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,93 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>com.bencodez.votingplugin.broadcast Class Hierarchy (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="tree: package: com.bencodez.votingplugin.broadcast">
<meta name="generator" content="javadoc/PackageTreeWriter">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="package-tree-page">
<script type="text/javascript">var pathtoroot = "../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li>Class</li>
<li>Use</li>
<li class="nav-bar-cell1-rev">Tree</li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html#tree">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list"></div>
<div class="nav-list-search"><a href="../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<div class="header">
<h1 class="title">Hierarchy For Package com.bencodez.votingplugin.broadcast</h1>
</div>
<span class="package-hierarchy-label">Package Hierarchies:</span>
<ul class="horizontal contents-list">
<li><a href="../../../../overview-tree.html">All Packages</a></li>
</ul>
<section class="hierarchy">
<h2 title="Class Hierarchy">Class Hierarchy</h2>
<ul>
<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" class="type-name-link external-link" title="class or interface in java.lang">Object</a>
<ul>
<li class="circle">com.bencodez.votingplugin.broadcast.<a href="BroadcastFormat.html" class="type-name-link" title="class in com.bencodez.votingplugin.broadcast">BroadcastFormat</a></li>
<li class="circle">com.bencodez.votingplugin.broadcast.<a href="BroadcastHandler.html" class="type-name-link" title="class in com.bencodez.votingplugin.broadcast">BroadcastHandler</a></li>
<li class="circle">com.bencodez.votingplugin.broadcast.<a href="BroadcastSettings.html" class="type-name-link" title="class in com.bencodez.votingplugin.broadcast">BroadcastSettings</a></li>
</ul>
</li>
</ul>
</section>
<section class="hierarchy">
<h2 title="Enum Class Hierarchy">Enum Class Hierarchy</h2>
<ul>
<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" class="type-name-link external-link" title="class or interface in java.lang">Object</a>
<ul>
<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Enum.html" class="type-name-link external-link" title="class or interface in java.lang">Enum</a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Comparable.html" title="class or interface in java.lang" class="external-link">Comparable</a>&lt;T&gt;, java.lang.constant.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/constant/Constable.html" title="class or interface in java.lang.constant" class="external-link">Constable</a>, java.io.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/io/Serializable.html" title="class or interface in java.io" class="external-link">Serializable</a>)
<ul>
<li class="circle">com.bencodez.votingplugin.broadcast.<a href="VoteBroadcastType.html" class="type-name-link" title="enum class in com.bencodez.votingplugin.broadcast">VoteBroadcastType</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</section>
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,95 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>Uses of Package com.bencodez.votingplugin.broadcast (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="use: package: com.bencodez.votingplugin.broadcast">
<meta name="generator" content="javadoc/PackageUseWriter">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="package-use-page">
<script type="text/javascript">var pathtoroot = "../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li>Class</li>
<li class="nav-bar-cell1-rev">Use</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html#use">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list"></div>
<div class="nav-list-search"><a href="../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<div class="header">
<h1 title="Uses of Package com.bencodez.votingplugin.broadcast" class="title">Uses of Package<br>com.bencodez.votingplugin.broadcast</h1>
</div>
<div class="caption"><span>Packages that use <a href="package-summary.html">com.bencodez.votingplugin.broadcast</a></span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Package</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><a href="#com.bencodez.votingplugin.broadcast">com.bencodez.votingplugin.broadcast</a></div>
<div class="col-last even-row-color">&nbsp;</div>
</div>
<section class="package-uses">
<ul class="block-list">
<li>
<section class="detail" id="com.bencodez.votingplugin.broadcast">
<div class="caption"><span>Classes in <a href="package-summary.html">com.bencodez.votingplugin.broadcast</a> used by <a href="package-summary.html">com.bencodez.votingplugin.broadcast</a></span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Class</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><a href="class-use/BroadcastFormat.html#com.bencodez.votingplugin.broadcast">BroadcastFormat</a></div>
<div class="col-last even-row-color">
<div class="block">Defines HOW vote broadcasts are rendered.</div>
</div>
<div class="col-first odd-row-color"><a href="class-use/BroadcastSettings.html#com.bencodez.votingplugin.broadcast">BroadcastSettings</a></div>
<div class="col-last odd-row-color">
<div class="block">Immutable broadcast configuration.</div>
</div>
<div class="col-first even-row-color"><a href="class-use/VoteBroadcastType.html#com.bencodez.votingplugin.broadcast">VoteBroadcastType</a></div>
<div class="col-last even-row-color">
<div class="block">Defines WHEN vote broadcasts occur.</div>
</div>
</div>
</section>
</li>
</ul>
</section>
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,63 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>Uses of Class com.bencodez.votingplugin.BungeeHandler (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="use: package: com.bencodez.votingplugin, class: BungeeHandler">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-use-page">
<script type="text/javascript">var pathtoroot = "../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="../package-summary.html">Package</a></li>
<li><a href="../BungeeHandler.html" title="class in com.bencodez.votingplugin">Class</a></li>
<li class="nav-bar-cell1-rev">Use</li>
<li><a href="../package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html#use">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list"></div>
<div class="nav-list-search"><a href="../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<div class="header">
<h1 title="Uses of Class com.bencodez.votingplugin.BungeeHandler" class="title">Uses of Class<br>com.bencodez.votingplugin.BungeeHandler</h1>
</div>
No usage of com.bencodez.votingplugin.BungeeHandler</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,88 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>Uses of Class com.bencodez.votingplugin.VotingPluginHooks (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="use: package: com.bencodez.votingplugin, class: VotingPluginHooks">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-use-page">
<script type="text/javascript">var pathtoroot = "../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="../package-summary.html">Package</a></li>
<li><a href="../VotingPluginHooks.html" title="class in com.bencodez.votingplugin">Class</a></li>
<li class="nav-bar-cell1-rev">Use</li>
<li><a href="../package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html#use">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list"></div>
<div class="nav-list-search"><a href="../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<div class="header">
<h1 title="Uses of Class com.bencodez.votingplugin.VotingPluginHooks" class="title">Uses of Class<br>com.bencodez.votingplugin.VotingPluginHooks</h1>
</div>
<div class="caption"><span>Packages that use <a href="../VotingPluginHooks.html" title="class in com.bencodez.votingplugin">VotingPluginHooks</a></span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Package</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><a href="#com.bencodez.votingplugin">com.bencodez.votingplugin</a></div>
<div class="col-last even-row-color">&nbsp;</div>
</div>
<section class="class-uses">
<ul class="block-list">
<li>
<section class="detail" id="com.bencodez.votingplugin">
<h2>Uses of <a href="../VotingPluginHooks.html" title="class in com.bencodez.votingplugin">VotingPluginHooks</a> in <a href="../package-summary.html">com.bencodez.votingplugin</a></h2>
<div class="caption"><span>Methods in <a href="../package-summary.html">com.bencodez.votingplugin</a> that return <a href="../VotingPluginHooks.html" title="class in com.bencodez.votingplugin">VotingPluginHooks</a></span></div>
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><code>static <a href="../VotingPluginHooks.html" title="class in com.bencodez.votingplugin">VotingPluginHooks</a></code></div>
<div class="col-second even-row-color"><span class="type-name-label">VotingPluginHooks.</span><code><a href="../VotingPluginHooks.html#getInstance()" class="member-name-link">getInstance</a>()</code></div>
<div class="col-last even-row-color">&nbsp;</div>
</div>
</section>
</li>
</ul>
</section>
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
File diff suppressed because it is too large. Load diff
@@ -1,63 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>Uses of Class com.bencodez.votingplugin.VotingPluginMetrics (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="use: package: com.bencodez.votingplugin, class: VotingPluginMetrics">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-use-page">
<script type="text/javascript">var pathtoroot = "../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="../package-summary.html">Package</a></li>
<li><a href="../VotingPluginMetrics.html" title="class in com.bencodez.votingplugin">Class</a></li>
<li class="nav-bar-cell1-rev">Use</li>
<li><a href="../package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html#use">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list"></div>
<div class="nav-list-search"><a href="../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<div class="header">
<h1 title="Uses of Class com.bencodez.votingplugin.VotingPluginMetrics" class="title">Uses of Class<br>com.bencodez.votingplugin.VotingPluginMetrics</h1>
</div>
No usage of com.bencodez.votingplugin.VotingPluginMetrics</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,382 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>CommandLoader (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="declaration: package: com.bencodez.votingplugin.commands, class: CommandLoader">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var pathtoroot = "../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/CommandLoader.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html#class">Help</a></li>
</ul>
<ul class="sub-nav-list-small">
<li>
<p>Summary:</p>
<ul>
<li>Nested</li>
<li>Field</li>
<li><a href="#constructor-summary">Constr</a></li>
<li><a href="#method-summary">Method</a></li>
</ul>
</li>
<li>
<p>Detail:</p>
<ul>
<li>Field</li>
<li><a href="#constructor-detail">Constr</a></li>
<li><a href="#method-detail">Method</a></li>
</ul>
</li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list">
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><a href="../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">com.bencodez.votingplugin.commands</a></div>
<h1 title="Class CommandLoader" class="title">Class CommandLoader</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance">com.bencodez.votingplugin.commands.CommandLoader</div>
</div>
<section class="class-description" id="class-description">
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">CommandLoader</span>
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></span></div>
<div class="block">The Class CommandLoader.</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.bencodez.votingplugin.VotingPluginMain)" class="member-name-link">CommandLoader</a><wbr>(<a href="../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin)</code></div>
<div class="col-last even-row-color">
<div class="block">Constructs a new CommandLoader.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAdminPerm()" class="member-name-link">getAdminPerm</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/Set.html" title="class or interface in java.util" class="external-link">Set</a><wbr>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAliasCommandNames()" class="member-name-link">getAliasCommandNames</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Gets the set of alias command names.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>com.bencodez.advancedcore.api.inventory.BInventoryButton</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getBackButton(com.bencodez.votingplugin.user.VotingPluginUser)" class="member-name-link">getBackButton</a><wbr>(<a href="../user/VotingPluginUser.html" title="class in com.bencodez.votingplugin.user">VotingPluginUser</a>&nbsp;user)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Gets the back button for inventory navigation.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/HashMap.html" title="class or interface in java.util" class="external-link">HashMap</a><wbr>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>,<wbr>com.bencodez.advancedcore.api.command.CommandHandler&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getCommands()" class="member-name-link">getCommands</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Gets the commands.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getModPerm()" class="member-name-link">getModPerm</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getPlayerPerm()" class="member-name-link">getPlayerPerm</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasPermission(org.bukkit.entity.Player,java.lang.String)" class="member-name-link">hasPermission</a><wbr>(org.bukkit.entity.Player&nbsp;player,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;cmd)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Checks if a player has permission for a command.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isVotingPluginCommand(org.bukkit.entity.Player,java.lang.String)" class="member-name-link">isVotingPluginCommand</a><wbr>(org.bukkit.entity.Player&nbsp;player,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;cmd)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Checks if a command belongs to the VotingPlugin.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#loadAliases()" class="member-name-link">loadAliases</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Load aliases.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#loadCommands()" class="member-name-link">loadCommands</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Load commands.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#loadTabComplete()" class="member-name-link">loadTabComplete</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Load tab complete.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#processSlotClick(org.bukkit.entity.Player,com.bencodez.votingplugin.user.VotingPluginUser,java.lang.String)" class="member-name-link">processSlotClick</a><wbr>(org.bukkit.entity.Player&nbsp;player,
<a href="../user/VotingPluginUser.html" title="class in com.bencodez.votingplugin.user">VotingPluginUser</a>&nbsp;user,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;slot)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Processes a slot click action from a GUI.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#setCommands(java.util.HashMap)" class="member-name-link">setCommands</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/HashMap.html" title="class or interface in java.util" class="external-link">HashMap</a>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>,<wbr>com.bencodez.advancedcore.api.command.CommandHandler&gt;&nbsp;commands)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Sets the commands.</div>
</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;(com.bencodez.votingplugin.VotingPluginMain)">
<h3>CommandLoader</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">CommandLoader</span><wbr><span class="parameters">(<a href="../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin)</span></div>
<div class="block">Constructs a new CommandLoader.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>plugin</code> - the main plugin instance</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="getAdminPerm()">
<h3>getAdminPerm</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span>&nbsp;<span class="element-name">getAdminPerm</span>()</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>the adminPerm</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getBackButton(com.bencodez.votingplugin.user.VotingPluginUser)">
<h3>getBackButton</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">com.bencodez.advancedcore.api.inventory.BInventoryButton</span>&nbsp;<span class="element-name">getBackButton</span><wbr><span class="parameters">(<a href="../user/VotingPluginUser.html" title="class in com.bencodez.votingplugin.user">VotingPluginUser</a>&nbsp;user)</span></div>
<div class="block">Gets the back button for inventory navigation.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>user</code> - the voting plugin user</dd>
<dt>Returns:</dt>
<dd>the back button</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getCommands()">
<h3>getCommands</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/HashMap.html" title="class or interface in java.util" class="external-link">HashMap</a>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>,<wbr>com.bencodez.advancedcore.api.command.CommandHandler&gt;</span>&nbsp;<span class="element-name">getCommands</span>()</div>
<div class="block">Gets the commands.</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>the commands</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getModPerm()">
<h3>getModPerm</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span>&nbsp;<span class="element-name">getModPerm</span>()</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>the modPerm</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getPlayerPerm()">
<h3>getPlayerPerm</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span>&nbsp;<span class="element-name">getPlayerPerm</span>()</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>the playerPerm</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasPermission(org.bukkit.entity.Player,java.lang.String)">
<h3>hasPermission</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">hasPermission</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;cmd)</span></div>
<div class="block">Checks if a player has permission for a command.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>player</code> - the player</dd>
<dd><code>cmd</code> - the command</dd>
<dt>Returns:</dt>
<dd>true if player has permission</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="isVotingPluginCommand(org.bukkit.entity.Player,java.lang.String)">
<h3>isVotingPluginCommand</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">isVotingPluginCommand</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;cmd)</span></div>
<div class="block">Checks if a command belongs to the VotingPlugin.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>player</code> - the player</dd>
<dd><code>cmd</code> - the command</dd>
<dt>Returns:</dt>
<dd>true if it's a VotingPlugin command</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getAliasCommandNames()">
<h3>getAliasCommandNames</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/Set.html" title="class or interface in java.util" class="external-link">Set</a>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</span>&nbsp;<span class="element-name">getAliasCommandNames</span>()</div>
<div class="block">Gets the set of alias command names.</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>set of alias command names</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="loadAliases()">
<h3>loadAliases</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">loadAliases</span>()</div>
<div class="block">Load aliases.</div>
</section>
</li>
<li>
<section class="detail" id="loadCommands()">
<h3>loadCommands</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">loadCommands</span>()</div>
<div class="block">Load commands.</div>
</section>
</li>
<li>
<section class="detail" id="loadTabComplete()">
<h3>loadTabComplete</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">loadTabComplete</span>()</div>
<div class="block">Load tab complete.</div>
</section>
</li>
<li>
<section class="detail" id="processSlotClick(org.bukkit.entity.Player,com.bencodez.votingplugin.user.VotingPluginUser,java.lang.String)">
<h3>processSlotClick</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">processSlotClick</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player,
<a href="../user/VotingPluginUser.html" title="class in com.bencodez.votingplugin.user">VotingPluginUser</a>&nbsp;user,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;slot)</span></div>
<div class="block">Processes a slot click action from a GUI.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>player</code> - the player</dd>
<dd><code>user</code> - the voting plugin user</dd>
<dd><code>slot</code> - the slot identifier</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setCommands(java.util.HashMap)">
<h3>setCommands</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">setCommands</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/HashMap.html" title="class or interface in java.util" class="external-link">HashMap</a>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>,<wbr>com.bencodez.advancedcore.api.command.CommandHandler&gt;&nbsp;commands)</span></div>
<div class="block">Sets the commands.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>commands</code> - the commands</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,63 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>Uses of Class com.bencodez.votingplugin.commands.CommandLoader (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="use: package: com.bencodez.votingplugin.commands, class: CommandLoader">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-use-page">
<script type="text/javascript">var pathtoroot = "../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="../package-summary.html">Package</a></li>
<li><a href="../CommandLoader.html" title="class in com.bencodez.votingplugin.commands">Class</a></li>
<li class="nav-bar-cell1-rev">Use</li>
<li><a href="../package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html#use">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list"></div>
<div class="nav-list-search"><a href="../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<div class="header">
<h1 title="Uses of Class com.bencodez.votingplugin.commands.CommandLoader" class="title">Uses of Class<br>com.bencodez.votingplugin.commands.CommandLoader</h1>
</div>
No usage of com.bencodez.votingplugin.commands.CommandLoader</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,201 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>CommandAdminVote (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="declaration: package: com.bencodez.votingplugin.commands.executers, class: CommandAdminVote">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var pathtoroot = "../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/CommandAdminVote.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html#class">Help</a></li>
</ul>
<ul class="sub-nav-list-small">
<li>
<p>Summary:</p>
<ul>
<li>Nested</li>
<li>Field</li>
<li><a href="#constructor-summary">Constr</a></li>
<li><a href="#method-summary">Method</a></li>
</ul>
</li>
<li>
<p>Detail:</p>
<ul>
<li>Field</li>
<li><a href="#constructor-detail">Constr</a></li>
<li><a href="#method-detail">Method</a></li>
</ul>
</li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list">
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><a href="../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">com.bencodez.votingplugin.commands.executers</a></div>
<h1 title="Class CommandAdminVote" class="title">Class CommandAdminVote</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance">com.bencodez.votingplugin.commands.executers.CommandAdminVote</div>
</div>
<section class="class-description" id="class-description">
<dl class="notes">
<dt>All Implemented Interfaces:</dt>
<dd><code>org.bukkit.command.CommandExecutor</code></dd>
</dl>
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">CommandAdminVote</span>
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a>
implements org.bukkit.command.CommandExecutor</span></div>
<div class="block">The Class CommandAdminVote.</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.bencodez.votingplugin.VotingPluginMain)" class="member-name-link">CommandAdminVote</a><wbr>(<a href="../../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin)</code></div>
<div class="col-last even-row-color">
<div class="block">Constructs a new CommandAdminVote instance.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onCommand(org.bukkit.command.CommandSender,org.bukkit.command.Command,java.lang.String,java.lang.String%5B%5D)" class="member-name-link">onCommand</a><wbr>(org.bukkit.command.CommandSender&nbsp;sender,
org.bukkit.command.Command&nbsp;cmd,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;label,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>[]&nbsp;args)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;(com.bencodez.votingplugin.VotingPluginMain)">
<h3>CommandAdminVote</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">CommandAdminVote</span><wbr><span class="parameters">(<a href="../../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin)</span></div>
<div class="block">Constructs a new CommandAdminVote instance.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>plugin</code> - the main plugin instance</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="onCommand(org.bukkit.command.CommandSender,org.bukkit.command.Command,java.lang.String,java.lang.String[])">
<h3>onCommand</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">onCommand</span><wbr><span class="parameters">(org.bukkit.command.CommandSender&nbsp;sender,
org.bukkit.command.Command&nbsp;cmd,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;label,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>[]&nbsp;args)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onCommand</code>&nbsp;in interface&nbsp;<code>org.bukkit.command.CommandExecutor</code></dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,204 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>CommandAliases (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="declaration: package: com.bencodez.votingplugin.commands.executers, class: CommandAliases">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var pathtoroot = "../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/CommandAliases.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html#class">Help</a></li>
</ul>
<ul class="sub-nav-list-small">
<li>
<p>Summary:</p>
<ul>
<li>Nested</li>
<li>Field</li>
<li><a href="#constructor-summary">Constr</a></li>
<li><a href="#method-summary">Method</a></li>
</ul>
</li>
<li>
<p>Detail:</p>
<ul>
<li>Field</li>
<li><a href="#constructor-detail">Constr</a></li>
<li><a href="#method-detail">Method</a></li>
</ul>
</li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list">
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><a href="../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">com.bencodez.votingplugin.commands.executers</a></div>
<h1 title="Class CommandAliases" class="title">Class CommandAliases</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance">com.bencodez.votingplugin.commands.executers.CommandAliases</div>
</div>
<section class="class-description" id="class-description">
<dl class="notes">
<dt>All Implemented Interfaces:</dt>
<dd><code>org.bukkit.command.CommandExecutor</code></dd>
</dl>
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">CommandAliases</span>
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a>
implements org.bukkit.command.CommandExecutor</span></div>
<div class="block">The Class CommandAliases.</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.bencodez.advancedcore.api.command.CommandHandler,boolean)" class="member-name-link">CommandAliases</a><wbr>(com.bencodez.advancedcore.api.command.CommandHandler&nbsp;cmdHandle,
boolean&nbsp;adminCommand)</code></div>
<div class="col-last even-row-color">
<div class="block">Constructs a new CommandAliases instance.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onCommand(org.bukkit.command.CommandSender,org.bukkit.command.Command,java.lang.String,java.lang.String%5B%5D)" class="member-name-link">onCommand</a><wbr>(org.bukkit.command.CommandSender&nbsp;sender,
org.bukkit.command.Command&nbsp;cmd,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;label,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>[]&nbsp;args)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;(com.bencodez.advancedcore.api.command.CommandHandler,boolean)">
<h3>CommandAliases</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">CommandAliases</span><wbr><span class="parameters">(com.bencodez.advancedcore.api.command.CommandHandler&nbsp;cmdHandle,
boolean&nbsp;adminCommand)</span></div>
<div class="block">Constructs a new CommandAliases instance.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>cmdHandle</code> - the command handler</dd>
<dd><code>adminCommand</code> - whether this is an admin command</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="onCommand(org.bukkit.command.CommandSender,org.bukkit.command.Command,java.lang.String,java.lang.String[])">
<h3>onCommand</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">onCommand</span><wbr><span class="parameters">(org.bukkit.command.CommandSender&nbsp;sender,
org.bukkit.command.Command&nbsp;cmd,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;label,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>[]&nbsp;args)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onCommand</code>&nbsp;in interface&nbsp;<code>org.bukkit.command.CommandExecutor</code></dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,217 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>CommandVote (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="declaration: package: com.bencodez.votingplugin.commands.executers, class: CommandVote">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var pathtoroot = "../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/CommandVote.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html#class">Help</a></li>
</ul>
<ul class="sub-nav-list-small">
<li>
<p>Summary:</p>
<ul>
<li>Nested</li>
<li>Field</li>
<li><a href="#constructor-summary">Constr</a></li>
<li><a href="#method-summary">Method</a></li>
</ul>
</li>
<li>
<p>Detail:</p>
<ul>
<li>Field</li>
<li><a href="#constructor-detail">Constr</a></li>
<li><a href="#method-detail">Method</a></li>
</ul>
</li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list">
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><a href="../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">com.bencodez.votingplugin.commands.executers</a></div>
<h1 title="Class CommandVote" class="title">Class CommandVote</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance">com.bencodez.votingplugin.commands.executers.CommandVote</div>
</div>
<section class="class-description" id="class-description">
<dl class="notes">
<dt>All Implemented Interfaces:</dt>
<dd><code>org.bukkit.command.CommandExecutor</code></dd>
</dl>
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">CommandVote</span>
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a>
implements org.bukkit.command.CommandExecutor</span></div>
<div class="block">The Class CommandVote.</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.bencodez.votingplugin.VotingPluginMain)" class="member-name-link">CommandVote</a><wbr>(<a href="../../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin)</code></div>
<div class="col-last even-row-color">
<div class="block">Instantiates a new command vote.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab1" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab1', 3)" class="table-tab">Static Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="CommandVote.html" title="class in com.bencodez.votingplugin.commands.executers">CommandVote</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#getInstance()" class="member-name-link">getInstance</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Gets the single instance of CommandVote.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onCommand(org.bukkit.command.CommandSender,org.bukkit.command.Command,java.lang.String,java.lang.String%5B%5D)" class="member-name-link">onCommand</a><wbr>(org.bukkit.command.CommandSender&nbsp;sender,
org.bukkit.command.Command&nbsp;cmd,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;label,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>[]&nbsp;args)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;(com.bencodez.votingplugin.VotingPluginMain)">
<h3>CommandVote</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">CommandVote</span><wbr><span class="parameters">(<a href="../../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin)</span></div>
<div class="block">Instantiates a new command vote.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>plugin</code> - the plugin</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="getInstance()">
<h3>getInstance</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="CommandVote.html" title="class in com.bencodez.votingplugin.commands.executers">CommandVote</a></span>&nbsp;<span class="element-name">getInstance</span>()</div>
<div class="block">Gets the single instance of CommandVote.</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>single instance of CommandVote</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onCommand(org.bukkit.command.CommandSender,org.bukkit.command.Command,java.lang.String,java.lang.String[])">
<h3>onCommand</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">onCommand</span><wbr><span class="parameters">(org.bukkit.command.CommandSender&nbsp;sender,
org.bukkit.command.Command&nbsp;cmd,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;label,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>[]&nbsp;args)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onCommand</code>&nbsp;in interface&nbsp;<code>org.bukkit.command.CommandExecutor</code></dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,63 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>Uses of Class com.bencodez.votingplugin.commands.executers.CommandAdminVote (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="use: package: com.bencodez.votingplugin.commands.executers, class: CommandAdminVote">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-use-page">
<script type="text/javascript">var pathtoroot = "../../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../../index.html">Overview</a></li>
<li><a href="../package-summary.html">Package</a></li>
<li><a href="../CommandAdminVote.html" title="class in com.bencodez.votingplugin.commands.executers">Class</a></li>
<li class="nav-bar-cell1-rev">Use</li>
<li><a href="../package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html#use">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list"></div>
<div class="nav-list-search"><a href="../../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<div class="header">
<h1 title="Uses of Class com.bencodez.votingplugin.commands.executers.CommandAdminVote" class="title">Uses of Class<br>com.bencodez.votingplugin.commands.executers.CommandAdminVote</h1>
</div>
No usage of com.bencodez.votingplugin.commands.executers.CommandAdminVote</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,63 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>Uses of Class com.bencodez.votingplugin.commands.executers.CommandAliases (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="use: package: com.bencodez.votingplugin.commands.executers, class: CommandAliases">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-use-page">
<script type="text/javascript">var pathtoroot = "../../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../../index.html">Overview</a></li>
<li><a href="../package-summary.html">Package</a></li>
<li><a href="../CommandAliases.html" title="class in com.bencodez.votingplugin.commands.executers">Class</a></li>
<li class="nav-bar-cell1-rev">Use</li>
<li><a href="../package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html#use">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list"></div>
<div class="nav-list-search"><a href="../../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<div class="header">
<h1 title="Uses of Class com.bencodez.votingplugin.commands.executers.CommandAliases" class="title">Uses of Class<br>com.bencodez.votingplugin.commands.executers.CommandAliases</h1>
</div>
No usage of com.bencodez.votingplugin.commands.executers.CommandAliases</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,90 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>Uses of Class com.bencodez.votingplugin.commands.executers.CommandVote (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="use: package: com.bencodez.votingplugin.commands.executers, class: CommandVote">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-use-page">
<script type="text/javascript">var pathtoroot = "../../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../../index.html">Overview</a></li>
<li><a href="../package-summary.html">Package</a></li>
<li><a href="../CommandVote.html" title="class in com.bencodez.votingplugin.commands.executers">Class</a></li>
<li class="nav-bar-cell1-rev">Use</li>
<li><a href="../package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html#use">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list"></div>
<div class="nav-list-search"><a href="../../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<div class="header">
<h1 title="Uses of Class com.bencodez.votingplugin.commands.executers.CommandVote" class="title">Uses of Class<br>com.bencodez.votingplugin.commands.executers.CommandVote</h1>
</div>
<div class="caption"><span>Packages that use <a href="../CommandVote.html" title="class in com.bencodez.votingplugin.commands.executers">CommandVote</a></span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Package</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><a href="#com.bencodez.votingplugin.commands.executers">com.bencodez.votingplugin.commands.executers</a></div>
<div class="col-last even-row-color">&nbsp;</div>
</div>
<section class="class-uses">
<ul class="block-list">
<li>
<section class="detail" id="com.bencodez.votingplugin.commands.executers">
<h2>Uses of <a href="../CommandVote.html" title="class in com.bencodez.votingplugin.commands.executers">CommandVote</a> in <a href="../package-summary.html">com.bencodez.votingplugin.commands.executers</a></h2>
<div class="caption"><span>Methods in <a href="../package-summary.html">com.bencodez.votingplugin.commands.executers</a> that return <a href="../CommandVote.html" title="class in com.bencodez.votingplugin.commands.executers">CommandVote</a></span></div>
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><code>static <a href="../CommandVote.html" title="class in com.bencodez.votingplugin.commands.executers">CommandVote</a></code></div>
<div class="col-second even-row-color"><span class="type-name-label">CommandVote.</span><code><a href="../CommandVote.html#getInstance()" class="member-name-link">getInstance</a>()</code></div>
<div class="col-last even-row-color">
<div class="block">Gets the single instance of CommandVote.</div>
</div>
</div>
</section>
</li>
</ul>
</section>
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,122 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>com.bencodez.votingplugin.commands.executers (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="declaration: package: com.bencodez.votingplugin.commands.executers">
<meta name="generator" content="javadoc/PackageWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="package-declaration-page">
<script type="text/javascript">var pathtoroot = "../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li class="nav-bar-cell1-rev">Package</li>
<li>Class</li>
<li><a href="package-use.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html#package">Help</a></li>
</ul>
<ul class="sub-nav-list-small">
<li>
<p>Package:</p>
<ul>
<li>Description</li>
<li><a href="#related-package-summary">Related Packages</a></li>
<li><a href="#class-summary">Classes and Interfaces</a></li>
</ul>
</li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list">
<ul class="sub-nav-list">
<li>Package:&nbsp;</li>
<li>Description&nbsp;|&nbsp;</li>
<li><a href="#related-package-summary">Related Packages</a>&nbsp;|&nbsp;</li>
<li><a href="#class-summary">Classes and Interfaces</a></li>
</ul>
</div>
<div class="nav-list-search"><a href="../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<div class="header">
<h1 title="Package com.bencodez.votingplugin.commands.executers" class="title">Package com.bencodez.votingplugin.commands.executers</h1>
</div>
<hr>
<div class="package-signature">package <span class="element-name">com.bencodez.votingplugin.commands.executers</span></div>
<section class="summary">
<ul class="summary-list">
<li>
<div id="related-package-summary">
<div class="caption"><span>Related Packages</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Package</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><a href="../package-summary.html">com.bencodez.votingplugin.commands</a></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><a href="../gui/package-summary.html">com.bencodez.votingplugin.commands.gui</a></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><a href="../tabcompleter/package-summary.html">com.bencodez.votingplugin.commands.tabcompleter</a></div>
<div class="col-last even-row-color">&nbsp;</div>
</div>
</div>
</li>
<li>
<div id="class-summary">
<div class="caption"><span>Classes</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Class</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color class-summary class-summary-tab2"><a href="CommandAdminVote.html" title="class in com.bencodez.votingplugin.commands.executers">CommandAdminVote</a></div>
<div class="col-last even-row-color class-summary class-summary-tab2">
<div class="block">The Class CommandAdminVote.</div>
</div>
<div class="col-first odd-row-color class-summary class-summary-tab2"><a href="CommandAliases.html" title="class in com.bencodez.votingplugin.commands.executers">CommandAliases</a></div>
<div class="col-last odd-row-color class-summary class-summary-tab2">
<div class="block">The Class CommandAliases.</div>
</div>
<div class="col-first even-row-color class-summary class-summary-tab2"><a href="CommandVote.html" title="class in com.bencodez.votingplugin.commands.executers">CommandVote</a></div>
<div class="col-last even-row-color class-summary class-summary-tab2">
<div class="block">The Class CommandVote.</div>
</div>
</div>
</div>
</li>
</ul>
</section>
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,79 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>com.bencodez.votingplugin.commands.executers Class Hierarchy (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="tree: package: com.bencodez.votingplugin.commands.executers">
<meta name="generator" content="javadoc/PackageTreeWriter">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="package-tree-page">
<script type="text/javascript">var pathtoroot = "../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li>Class</li>
<li>Use</li>
<li class="nav-bar-cell1-rev">Tree</li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html#tree">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list"></div>
<div class="nav-list-search"><a href="../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<div class="header">
<h1 class="title">Hierarchy For Package com.bencodez.votingplugin.commands.executers</h1>
</div>
<span class="package-hierarchy-label">Package Hierarchies:</span>
<ul class="horizontal contents-list">
<li><a href="../../../../../overview-tree.html">All Packages</a></li>
</ul>
<section class="hierarchy">
<h2 title="Class Hierarchy">Class Hierarchy</h2>
<ul>
<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" class="type-name-link external-link" title="class or interface in java.lang">Object</a>
<ul>
<li class="circle">com.bencodez.votingplugin.commands.executers.<a href="CommandAdminVote.html" class="type-name-link" title="class in com.bencodez.votingplugin.commands.executers">CommandAdminVote</a> (implements org.bukkit.command.CommandExecutor)</li>
<li class="circle">com.bencodez.votingplugin.commands.executers.<a href="CommandAliases.html" class="type-name-link" title="class in com.bencodez.votingplugin.commands.executers">CommandAliases</a> (implements org.bukkit.command.CommandExecutor)</li>
<li class="circle">com.bencodez.votingplugin.commands.executers.<a href="CommandVote.html" class="type-name-link" title="class in com.bencodez.votingplugin.commands.executers">CommandVote</a> (implements org.bukkit.command.CommandExecutor)</li>
</ul>
</li>
</ul>
</section>
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,87 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>Uses of Package com.bencodez.votingplugin.commands.executers (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="use: package: com.bencodez.votingplugin.commands.executers">
<meta name="generator" content="javadoc/PackageUseWriter">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="package-use-page">
<script type="text/javascript">var pathtoroot = "../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li>Class</li>
<li class="nav-bar-cell1-rev">Use</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html#use">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list"></div>
<div class="nav-list-search"><a href="../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<div class="header">
<h1 title="Uses of Package com.bencodez.votingplugin.commands.executers" class="title">Uses of Package<br>com.bencodez.votingplugin.commands.executers</h1>
</div>
<div class="caption"><span>Packages that use <a href="package-summary.html">com.bencodez.votingplugin.commands.executers</a></span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Package</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><a href="#com.bencodez.votingplugin.commands.executers">com.bencodez.votingplugin.commands.executers</a></div>
<div class="col-last even-row-color">&nbsp;</div>
</div>
<section class="package-uses">
<ul class="block-list">
<li>
<section class="detail" id="com.bencodez.votingplugin.commands.executers">
<div class="caption"><span>Classes in <a href="package-summary.html">com.bencodez.votingplugin.commands.executers</a> used by <a href="package-summary.html">com.bencodez.votingplugin.commands.executers</a></span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Class</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><a href="class-use/CommandVote.html#com.bencodez.votingplugin.commands.executers">CommandVote</a></div>
<div class="col-last even-row-color">
<div class="block">The Class CommandVote.</div>
</div>
</div>
</section>
</li>
</ul>
</section>
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,240 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>AdminGUI (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="declaration: package: com.bencodez.votingplugin.commands.gui, class: AdminGUI">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var pathtoroot = "../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/AdminGUI.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html#class">Help</a></li>
</ul>
<ul class="sub-nav-list-small">
<li>
<p>Summary:</p>
<ul>
<li>Nested</li>
<li>Field</li>
<li><a href="#constructor-summary">Constr</a></li>
<li><a href="#method-summary">Method</a></li>
</ul>
</li>
<li>
<p>Detail:</p>
<ul>
<li>Field</li>
<li><a href="#constructor-detail">Constr</a></li>
<li><a href="#method-detail">Method</a></li>
</ul>
</li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list">
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><a href="../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">com.bencodez.votingplugin.commands.gui</a></div>
<h1 title="Class AdminGUI" class="title">Class AdminGUI</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance">com.bencodez.votingplugin.commands.gui.AdminGUI</div>
</div>
<section class="class-description" id="class-description">
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">AdminGUI</span>
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></span></div>
<div class="block">Admin GUI handler for the voting plugin.</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.bencodez.votingplugin.VotingPluginMain)" class="member-name-link">AdminGUI</a><wbr>(<a href="../../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin)</code></div>
<div class="col-last even-row-color">
<div class="block">Constructor for AdminGUI.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><wbr>&lt;com.bencodez.advancedcore.api.inventory.BInventoryButton&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#adminGUIButtons()" class="member-name-link">adminGUIButtons</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Open admin GUI.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#loadHook()" class="member-name-link">loadHook</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Load hook to add admin GUI buttons.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#openAdminGUIVoteSites(org.bukkit.entity.Player)" class="member-name-link">openAdminGUIVoteSites</a><wbr>(org.bukkit.entity.Player&nbsp;player)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Open admin GUI vote sites.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#openAdminGUIVoteSiteSite(org.bukkit.entity.Player,com.bencodez.votingplugin.votesites.VoteSite)" class="member-name-link">openAdminGUIVoteSiteSite</a><wbr>(org.bukkit.entity.Player&nbsp;player,
<a href="../../votesites/VoteSite.html" title="class in com.bencodez.votingplugin.votesites">VoteSite</a>&nbsp;voteSite)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Open admin GUI vote site site.</div>
</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;(com.bencodez.votingplugin.VotingPluginMain)">
<h3>AdminGUI</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">AdminGUI</span><wbr><span class="parameters">(<a href="../../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin)</span></div>
<div class="block">Constructor for AdminGUI.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>plugin</code> - the VotingPluginMain instance</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="adminGUIButtons()">
<h3>adminGUIButtons</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a>&lt;com.bencodez.advancedcore.api.inventory.BInventoryButton&gt;</span>&nbsp;<span class="element-name">adminGUIButtons</span>()</div>
<div class="block">Open admin GUI.</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>ArrayList of buttons</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="loadHook()">
<h3>loadHook</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">loadHook</span>()</div>
<div class="block">Load hook to add admin GUI buttons.</div>
</section>
</li>
<li>
<section class="detail" id="openAdminGUIVoteSites(org.bukkit.entity.Player)">
<h3>openAdminGUIVoteSites</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">openAdminGUIVoteSites</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player)</span></div>
<div class="block">Open admin GUI vote sites.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>player</code> - the player</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="openAdminGUIVoteSiteSite(org.bukkit.entity.Player,com.bencodez.votingplugin.votesites.VoteSite)">
<h3>openAdminGUIVoteSiteSite</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">openAdminGUIVoteSiteSite</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player,
<a href="../../votesites/VoteSite.html" title="class in com.bencodez.votingplugin.votesites">VoteSite</a>&nbsp;voteSite)</span></div>
<div class="block">Open admin GUI vote site site.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>player</code> - the player</dd>
<dd><code>voteSite</code> - the vote site</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,298 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>AdminVoteConfirmation (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="declaration: package: com.bencodez.votingplugin.commands.gui.admin, class: AdminVoteConfirmation">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var pathtoroot = "../../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/AdminVoteConfirmation.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html#class">Help</a></li>
</ul>
<ul class="sub-nav-list-small">
<li>
<p>Summary:</p>
<ul>
<li>Nested</li>
<li>Field</li>
<li><a href="#constructor-summary">Constr</a></li>
<li><a href="#method-summary">Method</a></li>
</ul>
</li>
<li>
<p>Detail:</p>
<ul>
<li>Field</li>
<li><a href="#constructor-detail">Constr</a></li>
<li><a href="#method-detail">Method</a></li>
</ul>
</li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list">
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><a href="../../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">com.bencodez.votingplugin.commands.gui.admin</a></div>
<h1 title="Class AdminVoteConfirmation" class="title">Class AdminVoteConfirmation</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance">com.bencodez.advancedcore.api.gui.GUIHandler
<div class="inheritance">com.bencodez.votingplugin.commands.gui.admin.AdminVoteConfirmation</div>
</div>
</div>
<section class="class-description" id="class-description">
<hr>
<div class="type-signature"><span class="modifiers">public abstract class </span><span class="element-name type-name-label">AdminVoteConfirmation</span>
<span class="extends-implements">extends com.bencodez.advancedcore.api.gui.GUIHandler</span></div>
<div class="block">Abstract class for admin vote confirmation dialogs.</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.bencodez.votingplugin.VotingPluginMain,org.bukkit.command.CommandSender,java.lang.String)" class="member-name-link">AdminVoteConfirmation</a><wbr>(<a href="../../../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin,
org.bukkit.command.CommandSender&nbsp;player,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;title)</code></div>
<div class="col-last even-row-color">
<div class="block">Constructor for AdminVoteConfirmation.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab3" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab3', 3)" class="table-tab">Abstract Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><wbr>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getChat(org.bukkit.command.CommandSender)" class="member-name-link">getChat</a><wbr>(org.bukkit.command.CommandSender&nbsp;sender)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onBook(org.bukkit.entity.Player)" class="member-name-link">onBook</a><wbr>(org.bukkit.entity.Player&nbsp;player)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onChat(org.bukkit.command.CommandSender)" class="member-name-link">onChat</a><wbr>(org.bukkit.command.CommandSender&nbsp;sender)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onChest(org.bukkit.entity.Player)" class="member-name-link">onChest</a><wbr>(org.bukkit.entity.Player&nbsp;player)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>abstract void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#onConfirm(org.bukkit.entity.Player)" class="member-name-link">onConfirm</a><wbr>(org.bukkit.entity.Player&nbsp;p)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Called when the user confirms the action.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>abstract void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#onDeny(org.bukkit.entity.Player)" class="member-name-link">onDeny</a><wbr>(org.bukkit.entity.Player&nbsp;p)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Called when the user denies the action.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onDialog(org.bukkit.entity.Player)" class="member-name-link">onDialog</a><wbr>(org.bukkit.entity.Player&nbsp;player)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#open()" class="member-name-link">open</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-com.bencodez.advancedcore.api.gui.GUIHandler">Methods inherited from class&nbsp;com.bencodez.advancedcore.api.gui.GUIHandler</h3>
<code>colorize, getData, getPlayer, getPlugin, open, sendMessage, sendMessage, sendMessageJson, setData</code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;(com.bencodez.votingplugin.VotingPluginMain,org.bukkit.command.CommandSender,java.lang.String)">
<h3>AdminVoteConfirmation</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">AdminVoteConfirmation</span><wbr><span class="parameters">(<a href="../../../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin,
org.bukkit.command.CommandSender&nbsp;player,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;title)</span></div>
<div class="block">Constructor for AdminVoteConfirmation.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>plugin</code> - the VotingPluginMain instance</dd>
<dd><code>player</code> - the command sender</dd>
<dd><code>title</code> - the title of the confirmation dialog</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="getChat(org.bukkit.command.CommandSender)">
<h3>getChat</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</span>&nbsp;<span class="element-name">getChat</span><wbr><span class="parameters">(org.bukkit.command.CommandSender&nbsp;sender)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>getChat</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onDialog(org.bukkit.entity.Player)">
<h3>onDialog</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onDialog</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onDialog</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onBook(org.bukkit.entity.Player)">
<h3>onBook</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onBook</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onBook</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onChat(org.bukkit.command.CommandSender)">
<h3>onChat</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onChat</span><wbr><span class="parameters">(org.bukkit.command.CommandSender&nbsp;sender)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onChat</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onChest(org.bukkit.entity.Player)">
<h3>onChest</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onChest</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onChest</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onConfirm(org.bukkit.entity.Player)">
<h3>onConfirm</h3>
<div class="member-signature"><span class="modifiers">public abstract</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onConfirm</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;p)</span></div>
<div class="block">Called when the user confirms the action.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>p</code> - the player who confirmed</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onDeny(org.bukkit.entity.Player)">
<h3>onDeny</h3>
<div class="member-signature"><span class="modifiers">public abstract</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onDeny</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;p)</span></div>
<div class="block">Called when the user denies the action.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>p</code> - the player who denied</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="open()">
<h3>open</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">open</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>open</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,305 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>AdminVoteHelp (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="declaration: package: com.bencodez.votingplugin.commands.gui.admin, class: AdminVoteHelp">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var pathtoroot = "../../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/AdminVoteHelp.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html#class">Help</a></li>
</ul>
<ul class="sub-nav-list-small">
<li>
<p>Summary:</p>
<ul>
<li>Nested</li>
<li>Field</li>
<li><a href="#constructor-summary">Constr</a></li>
<li><a href="#method-summary">Method</a></li>
</ul>
</li>
<li>
<p>Detail:</p>
<ul>
<li>Field</li>
<li><a href="#constructor-detail">Constr</a></li>
<li><a href="#method-detail">Method</a></li>
</ul>
</li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list">
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><a href="../../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">com.bencodez.votingplugin.commands.gui.admin</a></div>
<h1 title="Class AdminVoteHelp" class="title">Class AdminVoteHelp</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance">com.bencodez.advancedcore.api.gui.GUIHandler
<div class="inheritance">com.bencodez.votingplugin.commands.gui.admin.AdminVoteHelp</div>
</div>
</div>
<section class="class-description" id="class-description">
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">AdminVoteHelp</span>
<span class="extends-implements">extends com.bencodez.advancedcore.api.gui.GUIHandler</span></div>
<div class="block">Admin help GUI handler.</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.bencodez.votingplugin.VotingPluginMain,org.bukkit.command.CommandSender,int)" class="member-name-link">AdminVoteHelp</a><wbr>(<a href="../../../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin,
org.bukkit.command.CommandSender&nbsp;player,
int&nbsp;page)</code></div>
<div class="col-last even-row-color">
<div class="block">Constructor for AdminVoteHelp.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><wbr>&lt;net.md_5.bungee.api.chat.TextComponent&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#adminHelp(org.bukkit.command.CommandSender,int)" class="member-name-link">adminHelp</a><wbr>(org.bukkit.command.CommandSender&nbsp;sender,
int&nbsp;page)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Admin help.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><wbr>&lt;net.md_5.bungee.api.chat.TextComponent&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#adminHelpText(org.bukkit.command.CommandSender)" class="member-name-link">adminHelpText</a><wbr>(org.bukkit.command.CommandSender&nbsp;sender)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Admin help text.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><wbr>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getChat(org.bukkit.command.CommandSender)" class="member-name-link">getChat</a><wbr>(org.bukkit.command.CommandSender&nbsp;sender)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onBook(org.bukkit.entity.Player)" class="member-name-link">onBook</a><wbr>(org.bukkit.entity.Player&nbsp;player)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onChat(org.bukkit.command.CommandSender)" class="member-name-link">onChat</a><wbr>(org.bukkit.command.CommandSender&nbsp;sender)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onChest(org.bukkit.entity.Player)" class="member-name-link">onChest</a><wbr>(org.bukkit.entity.Player&nbsp;player)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onDialog(org.bukkit.entity.Player)" class="member-name-link">onDialog</a><wbr>(org.bukkit.entity.Player&nbsp;player)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#open()" class="member-name-link">open</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-com.bencodez.advancedcore.api.gui.GUIHandler">Methods inherited from class&nbsp;com.bencodez.advancedcore.api.gui.GUIHandler</h3>
<code>colorize, getData, getPlayer, getPlugin, open, sendMessage, sendMessage, sendMessageJson, setData</code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;(com.bencodez.votingplugin.VotingPluginMain,org.bukkit.command.CommandSender,int)">
<h3>AdminVoteHelp</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">AdminVoteHelp</span><wbr><span class="parameters">(<a href="../../../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin,
org.bukkit.command.CommandSender&nbsp;player,
int&nbsp;page)</span></div>
<div class="block">Constructor for AdminVoteHelp.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>plugin</code> - the VotingPluginMain instance</dd>
<dd><code>player</code> - the command sender</dd>
<dd><code>page</code> - the page number to display</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="adminHelp(org.bukkit.command.CommandSender,int)">
<h3>adminHelp</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a>&lt;net.md_5.bungee.api.chat.TextComponent&gt;</span>&nbsp;<span class="element-name">adminHelp</span><wbr><span class="parameters">(org.bukkit.command.CommandSender&nbsp;sender,
int&nbsp;page)</span></div>
<div class="block">Admin help.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>sender</code> - the sender</dd>
<dd><code>page</code> - the page</dd>
<dt>Returns:</dt>
<dd>the array list</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onDialog(org.bukkit.entity.Player)">
<h3>onDialog</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onDialog</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onDialog</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="adminHelpText(org.bukkit.command.CommandSender)">
<h3>adminHelpText</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a>&lt;net.md_5.bungee.api.chat.TextComponent&gt;</span>&nbsp;<span class="element-name">adminHelpText</span><wbr><span class="parameters">(org.bukkit.command.CommandSender&nbsp;sender)</span></div>
<div class="block">Admin help text.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>sender</code> - the sender</dd>
<dt>Returns:</dt>
<dd>the array list</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getChat(org.bukkit.command.CommandSender)">
<h3>getChat</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</span>&nbsp;<span class="element-name">getChat</span><wbr><span class="parameters">(org.bukkit.command.CommandSender&nbsp;sender)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>getChat</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onBook(org.bukkit.entity.Player)">
<h3>onBook</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onBook</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onBook</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onChat(org.bukkit.command.CommandSender)">
<h3>onChat</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onChat</span><wbr><span class="parameters">(org.bukkit.command.CommandSender&nbsp;sender)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onChat</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onChest(org.bukkit.entity.Player)">
<h3>onChest</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onChest</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onChest</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="open()">
<h3>open</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">open</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>open</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,350 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>AdminVotePerms (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="declaration: package: com.bencodez.votingplugin.commands.gui.admin, class: AdminVotePerms">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var pathtoroot = "../../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/AdminVotePerms.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html#class">Help</a></li>
</ul>
<ul class="sub-nav-list-small">
<li>
<p>Summary:</p>
<ul>
<li>Nested</li>
<li>Field</li>
<li><a href="#constructor-summary">Constr</a></li>
<li><a href="#method-summary">Method</a></li>
</ul>
</li>
<li>
<p>Detail:</p>
<ul>
<li>Field</li>
<li><a href="#constructor-detail">Constr</a></li>
<li><a href="#method-detail">Method</a></li>
</ul>
</li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list">
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><a href="../../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">com.bencodez.votingplugin.commands.gui.admin</a></div>
<h1 title="Class AdminVotePerms" class="title">Class AdminVotePerms</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance">com.bencodez.advancedcore.api.gui.GUIHandler
<div class="inheritance">com.bencodez.votingplugin.commands.gui.admin.AdminVotePerms</div>
</div>
</div>
<section class="class-description" id="class-description">
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">AdminVotePerms</span>
<span class="extends-implements">extends com.bencodez.advancedcore.api.gui.GUIHandler</span></div>
<div class="block">Admin permissions GUI handler.</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.bencodez.votingplugin.VotingPluginMain,org.bukkit.command.CommandSender,int)" class="member-name-link">AdminVotePerms</a><wbr>(<a href="../../../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin,
org.bukkit.command.CommandSender&nbsp;player,
int&nbsp;page)</code></div>
<div class="col-last even-row-color">
<div class="block">Constructor for AdminVotePerms.</div>
</div>
<div class="col-constructor-name odd-row-color"><code><a href="#%3Cinit%3E(com.bencodez.votingplugin.VotingPluginMain,org.bukkit.command.CommandSender,int,java.lang.String)" class="member-name-link">AdminVotePerms</a><wbr>(<a href="../../../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin,
org.bukkit.command.CommandSender&nbsp;player,
int&nbsp;page,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;playerName)</code></div>
<div class="col-last odd-row-color">
<div class="block">Constructor for AdminVotePerms with player name.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><wbr>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getChat(org.bukkit.command.CommandSender)" class="member-name-link">getChat</a><wbr>(org.bukkit.command.CommandSender&nbsp;sender)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>[]</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#listPerms(org.bukkit.command.CommandSender)" class="member-name-link">listPerms</a><wbr>(org.bukkit.command.CommandSender&nbsp;sender)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">List permissions for a sender.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><wbr>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#listPerms(org.bukkit.command.CommandSender,java.lang.String,int)" class="member-name-link">listPerms</a><wbr>(org.bukkit.command.CommandSender&nbsp;sender,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;player,
int&nbsp;page)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">List permissions for a specific player.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>[]</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#listPermsDev(org.bukkit.command.CommandSender)" class="member-name-link">listPermsDev</a><wbr>(org.bukkit.command.CommandSender&nbsp;sender)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">List permissions in developer format.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onBook(org.bukkit.entity.Player)" class="member-name-link">onBook</a><wbr>(org.bukkit.entity.Player&nbsp;player)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onChat(org.bukkit.command.CommandSender)" class="member-name-link">onChat</a><wbr>(org.bukkit.command.CommandSender&nbsp;sender)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onChest(org.bukkit.entity.Player)" class="member-name-link">onChest</a><wbr>(org.bukkit.entity.Player&nbsp;player)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onDialog(org.bukkit.entity.Player)" class="member-name-link">onDialog</a><wbr>(org.bukkit.entity.Player&nbsp;player)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#open()" class="member-name-link">open</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-com.bencodez.advancedcore.api.gui.GUIHandler">Methods inherited from class&nbsp;com.bencodez.advancedcore.api.gui.GUIHandler</h3>
<code>colorize, getData, getPlayer, getPlugin, open, sendMessage, sendMessage, sendMessageJson, setData</code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;(com.bencodez.votingplugin.VotingPluginMain,org.bukkit.command.CommandSender,int)">
<h3>AdminVotePerms</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">AdminVotePerms</span><wbr><span class="parameters">(<a href="../../../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin,
org.bukkit.command.CommandSender&nbsp;player,
int&nbsp;page)</span></div>
<div class="block">Constructor for AdminVotePerms.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>plugin</code> - the VotingPluginMain instance</dd>
<dd><code>player</code> - the command sender</dd>
<dd><code>page</code> - the page number</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="&lt;init&gt;(com.bencodez.votingplugin.VotingPluginMain,org.bukkit.command.CommandSender,int,java.lang.String)">
<h3>AdminVotePerms</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">AdminVotePerms</span><wbr><span class="parameters">(<a href="../../../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin,
org.bukkit.command.CommandSender&nbsp;player,
int&nbsp;page,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;playerName)</span></div>
<div class="block">Constructor for AdminVotePerms with player name.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>plugin</code> - the VotingPluginMain instance</dd>
<dd><code>player</code> - the command sender</dd>
<dd><code>page</code> - the page number</dd>
<dd><code>playerName</code> - the player name to check</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="getChat(org.bukkit.command.CommandSender)">
<h3>getChat</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</span>&nbsp;<span class="element-name">getChat</span><wbr><span class="parameters">(org.bukkit.command.CommandSender&nbsp;sender)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>getChat</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onDialog(org.bukkit.entity.Player)">
<h3>onDialog</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onDialog</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onDialog</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="listPerms(org.bukkit.command.CommandSender)">
<h3>listPerms</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>[]</span>&nbsp;<span class="element-name">listPerms</span><wbr><span class="parameters">(org.bukkit.command.CommandSender&nbsp;sender)</span></div>
<div class="block">List permissions for a sender.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>sender</code> - the command sender</dd>
<dt>Returns:</dt>
<dd>array of permission strings</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="listPerms(org.bukkit.command.CommandSender,java.lang.String,int)">
<h3>listPerms</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</span>&nbsp;<span class="element-name">listPerms</span><wbr><span class="parameters">(org.bukkit.command.CommandSender&nbsp;sender,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;player,
int&nbsp;page)</span></div>
<div class="block">List permissions for a specific player.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>sender</code> - the command sender</dd>
<dd><code>player</code> - the player name</dd>
<dd><code>page</code> - the page number</dd>
<dt>Returns:</dt>
<dd>list of permission strings</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="listPermsDev(org.bukkit.command.CommandSender)">
<h3>listPermsDev</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>[]</span>&nbsp;<span class="element-name">listPermsDev</span><wbr><span class="parameters">(org.bukkit.command.CommandSender&nbsp;sender)</span></div>
<div class="block">List permissions in developer format.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>sender</code> - the command sender</dd>
<dt>Returns:</dt>
<dd>array of permission strings in developer format</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onBook(org.bukkit.entity.Player)">
<h3>onBook</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onBook</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onBook</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onChat(org.bukkit.command.CommandSender)">
<h3>onChat</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onChat</span><wbr><span class="parameters">(org.bukkit.command.CommandSender&nbsp;sender)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onChat</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onChest(org.bukkit.entity.Player)">
<h3>onChest</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onChest</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onChest</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="open()">
<h3>open</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">open</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>open</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,263 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>AdminVotePlaceholders (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="declaration: package: com.bencodez.votingplugin.commands.gui.admin, class: AdminVotePlaceholders">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var pathtoroot = "../../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/AdminVotePlaceholders.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html#class">Help</a></li>
</ul>
<ul class="sub-nav-list-small">
<li>
<p>Summary:</p>
<ul>
<li>Nested</li>
<li>Field</li>
<li><a href="#constructor-summary">Constr</a></li>
<li><a href="#method-summary">Method</a></li>
</ul>
</li>
<li>
<p>Detail:</p>
<ul>
<li>Field</li>
<li><a href="#constructor-detail">Constr</a></li>
<li><a href="#method-detail">Method</a></li>
</ul>
</li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list">
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><a href="../../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">com.bencodez.votingplugin.commands.gui.admin</a></div>
<h1 title="Class AdminVotePlaceholders" class="title">Class AdminVotePlaceholders</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance">com.bencodez.advancedcore.api.gui.GUIHandler
<div class="inheritance">com.bencodez.votingplugin.commands.gui.admin.AdminVotePlaceholders</div>
</div>
</div>
<section class="class-description" id="class-description">
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">AdminVotePlaceholders</span>
<span class="extends-implements">extends com.bencodez.advancedcore.api.gui.GUIHandler</span></div>
<div class="block">Admin placeholders GUI handler.</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.bencodez.votingplugin.VotingPluginMain,org.bukkit.command.CommandSender)" class="member-name-link">AdminVotePlaceholders</a><wbr>(<a href="../../../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin,
org.bukkit.command.CommandSender&nbsp;player)</code></div>
<div class="col-last even-row-color">
<div class="block">Constructor for AdminVotePlaceholders.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><wbr>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getChat(org.bukkit.command.CommandSender)" class="member-name-link">getChat</a><wbr>(org.bukkit.command.CommandSender&nbsp;sender)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onBook(org.bukkit.entity.Player)" class="member-name-link">onBook</a><wbr>(org.bukkit.entity.Player&nbsp;player)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onChat(org.bukkit.command.CommandSender)" class="member-name-link">onChat</a><wbr>(org.bukkit.command.CommandSender&nbsp;sender)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onChest(org.bukkit.entity.Player)" class="member-name-link">onChest</a><wbr>(org.bukkit.entity.Player&nbsp;player)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onDialog(org.bukkit.entity.Player)" class="member-name-link">onDialog</a><wbr>(org.bukkit.entity.Player&nbsp;player)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#open()" class="member-name-link">open</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-com.bencodez.advancedcore.api.gui.GUIHandler">Methods inherited from class&nbsp;com.bencodez.advancedcore.api.gui.GUIHandler</h3>
<code>colorize, getData, getPlayer, getPlugin, open, sendMessage, sendMessage, sendMessageJson, setData</code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;(com.bencodez.votingplugin.VotingPluginMain,org.bukkit.command.CommandSender)">
<h3>AdminVotePlaceholders</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">AdminVotePlaceholders</span><wbr><span class="parameters">(<a href="../../../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin,
org.bukkit.command.CommandSender&nbsp;player)</span></div>
<div class="block">Constructor for AdminVotePlaceholders.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>plugin</code> - the VotingPluginMain instance</dd>
<dd><code>player</code> - the command sender</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="getChat(org.bukkit.command.CommandSender)">
<h3>getChat</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</span>&nbsp;<span class="element-name">getChat</span><wbr><span class="parameters">(org.bukkit.command.CommandSender&nbsp;sender)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>getChat</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onDialog(org.bukkit.entity.Player)">
<h3>onDialog</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onDialog</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onDialog</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onBook(org.bukkit.entity.Player)">
<h3>onBook</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onBook</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onBook</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onChat(org.bukkit.command.CommandSender)">
<h3>onChat</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onChat</span><wbr><span class="parameters">(org.bukkit.command.CommandSender&nbsp;sender)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onChat</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onChest(org.bukkit.entity.Player)">
<h3>onChest</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onChest</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onChest</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="open()">
<h3>open</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">open</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>open</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,266 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>AdminVotePlaceholdersPlayer (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="declaration: package: com.bencodez.votingplugin.commands.gui.admin, class: AdminVotePlaceholdersPlayer">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var pathtoroot = "../../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/AdminVotePlaceholdersPlayer.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html#class">Help</a></li>
</ul>
<ul class="sub-nav-list-small">
<li>
<p>Summary:</p>
<ul>
<li>Nested</li>
<li>Field</li>
<li><a href="#constructor-summary">Constr</a></li>
<li><a href="#method-summary">Method</a></li>
</ul>
</li>
<li>
<p>Detail:</p>
<ul>
<li>Field</li>
<li><a href="#constructor-detail">Constr</a></li>
<li><a href="#method-detail">Method</a></li>
</ul>
</li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list">
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><a href="../../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">com.bencodez.votingplugin.commands.gui.admin</a></div>
<h1 title="Class AdminVotePlaceholdersPlayer" class="title">Class AdminVotePlaceholdersPlayer</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance">com.bencodez.advancedcore.api.gui.GUIHandler
<div class="inheritance">com.bencodez.votingplugin.commands.gui.admin.AdminVotePlaceholdersPlayer</div>
</div>
</div>
<section class="class-description" id="class-description">
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">AdminVotePlaceholdersPlayer</span>
<span class="extends-implements">extends com.bencodez.advancedcore.api.gui.GUIHandler</span></div>
<div class="block">Admin placeholders player GUI handler.</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.bencodez.votingplugin.VotingPluginMain,org.bukkit.command.CommandSender,com.bencodez.votingplugin.user.VotingPluginUser)" class="member-name-link">AdminVotePlaceholdersPlayer</a><wbr>(<a href="../../../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin,
org.bukkit.command.CommandSender&nbsp;player,
<a href="../../../user/VotingPluginUser.html" title="class in com.bencodez.votingplugin.user">VotingPluginUser</a>&nbsp;user)</code></div>
<div class="col-last even-row-color">
<div class="block">Constructor for AdminVotePlaceholdersPlayer.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><wbr>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getChat(org.bukkit.command.CommandSender)" class="member-name-link">getChat</a><wbr>(org.bukkit.command.CommandSender&nbsp;sender)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onBook(org.bukkit.entity.Player)" class="member-name-link">onBook</a><wbr>(org.bukkit.entity.Player&nbsp;player)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onChat(org.bukkit.command.CommandSender)" class="member-name-link">onChat</a><wbr>(org.bukkit.command.CommandSender&nbsp;sender)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onChest(org.bukkit.entity.Player)" class="member-name-link">onChest</a><wbr>(org.bukkit.entity.Player&nbsp;player)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onDialog(org.bukkit.entity.Player)" class="member-name-link">onDialog</a><wbr>(org.bukkit.entity.Player&nbsp;player)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#open()" class="member-name-link">open</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-com.bencodez.advancedcore.api.gui.GUIHandler">Methods inherited from class&nbsp;com.bencodez.advancedcore.api.gui.GUIHandler</h3>
<code>colorize, getData, getPlayer, getPlugin, open, sendMessage, sendMessage, sendMessageJson, setData</code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;(com.bencodez.votingplugin.VotingPluginMain,org.bukkit.command.CommandSender,com.bencodez.votingplugin.user.VotingPluginUser)">
<h3>AdminVotePlaceholdersPlayer</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">AdminVotePlaceholdersPlayer</span><wbr><span class="parameters">(<a href="../../../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin,
org.bukkit.command.CommandSender&nbsp;player,
<a href="../../../user/VotingPluginUser.html" title="class in com.bencodez.votingplugin.user">VotingPluginUser</a>&nbsp;user)</span></div>
<div class="block">Constructor for AdminVotePlaceholdersPlayer.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>plugin</code> - the VotingPluginMain instance</dd>
<dd><code>player</code> - the command sender</dd>
<dd><code>user</code> - the voting plugin user</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="getChat(org.bukkit.command.CommandSender)">
<h3>getChat</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</span>&nbsp;<span class="element-name">getChat</span><wbr><span class="parameters">(org.bukkit.command.CommandSender&nbsp;sender)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>getChat</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onDialog(org.bukkit.entity.Player)">
<h3>onDialog</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onDialog</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onDialog</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onBook(org.bukkit.entity.Player)">
<h3>onBook</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onBook</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onBook</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onChat(org.bukkit.command.CommandSender)">
<h3>onChat</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onChat</span><wbr><span class="parameters">(org.bukkit.command.CommandSender&nbsp;sender)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onChat</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onChest(org.bukkit.entity.Player)">
<h3>onChest</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onChest</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onChest</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="open()">
<h3>open</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">open</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>open</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,269 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>AdminVoteTopPoints (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="declaration: package: com.bencodez.votingplugin.commands.gui.admin, class: AdminVoteTopPoints">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var pathtoroot = "../../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/AdminVoteTopPoints.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html#class">Help</a></li>
</ul>
<ul class="sub-nav-list-small">
<li>
<p>Summary:</p>
<ul>
<li>Nested</li>
<li>Field</li>
<li><a href="#constructor-summary">Constr</a></li>
<li><a href="#method-summary">Method</a></li>
</ul>
</li>
<li>
<p>Detail:</p>
<ul>
<li>Field</li>
<li><a href="#constructor-detail">Constr</a></li>
<li><a href="#method-detail">Method</a></li>
</ul>
</li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list">
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><a href="../../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">com.bencodez.votingplugin.commands.gui.admin</a></div>
<h1 title="Class AdminVoteTopPoints" class="title">Class AdminVoteTopPoints</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance">com.bencodez.advancedcore.api.gui.GUIHandler
<div class="inheritance">com.bencodez.votingplugin.commands.gui.admin.AdminVoteTopPoints</div>
</div>
</div>
<section class="class-description" id="class-description">
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">AdminVoteTopPoints</span>
<span class="extends-implements">extends com.bencodez.advancedcore.api.gui.GUIHandler</span></div>
<div class="block">Admin top points GUI handler.</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.bencodez.votingplugin.VotingPluginMain,org.bukkit.command.CommandSender,com.bencodez.votingplugin.user.VotingPluginUser,int)" class="member-name-link">AdminVoteTopPoints</a><wbr>(<a href="../../../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin,
org.bukkit.command.CommandSender&nbsp;player,
<a href="../../../user/VotingPluginUser.html" title="class in com.bencodez.votingplugin.user">VotingPluginUser</a>&nbsp;user,
int&nbsp;page)</code></div>
<div class="col-last even-row-color">
<div class="block">Constructor for AdminVoteTopPoints.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><wbr>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getChat(org.bukkit.command.CommandSender)" class="member-name-link">getChat</a><wbr>(org.bukkit.command.CommandSender&nbsp;sender)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onBook(org.bukkit.entity.Player)" class="member-name-link">onBook</a><wbr>(org.bukkit.entity.Player&nbsp;player)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onChat(org.bukkit.command.CommandSender)" class="member-name-link">onChat</a><wbr>(org.bukkit.command.CommandSender&nbsp;sender)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onChest(org.bukkit.entity.Player)" class="member-name-link">onChest</a><wbr>(org.bukkit.entity.Player&nbsp;player)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onDialog(org.bukkit.entity.Player)" class="member-name-link">onDialog</a><wbr>(org.bukkit.entity.Player&nbsp;player)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#open()" class="member-name-link">open</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-com.bencodez.advancedcore.api.gui.GUIHandler">Methods inherited from class&nbsp;com.bencodez.advancedcore.api.gui.GUIHandler</h3>
<code>colorize, getData, getPlayer, getPlugin, open, sendMessage, sendMessage, sendMessageJson, setData</code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;(com.bencodez.votingplugin.VotingPluginMain,org.bukkit.command.CommandSender,com.bencodez.votingplugin.user.VotingPluginUser,int)">
<h3>AdminVoteTopPoints</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">AdminVoteTopPoints</span><wbr><span class="parameters">(<a href="../../../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin,
org.bukkit.command.CommandSender&nbsp;player,
<a href="../../../user/VotingPluginUser.html" title="class in com.bencodez.votingplugin.user">VotingPluginUser</a>&nbsp;user,
int&nbsp;page)</span></div>
<div class="block">Constructor for AdminVoteTopPoints.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>plugin</code> - the VotingPluginMain instance</dd>
<dd><code>player</code> - the command sender</dd>
<dd><code>user</code> - the voting plugin user</dd>
<dd><code>page</code> - the page number</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="getChat(org.bukkit.command.CommandSender)">
<h3>getChat</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</span>&nbsp;<span class="element-name">getChat</span><wbr><span class="parameters">(org.bukkit.command.CommandSender&nbsp;sender)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>getChat</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onDialog(org.bukkit.entity.Player)">
<h3>onDialog</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onDialog</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onDialog</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onBook(org.bukkit.entity.Player)">
<h3>onBook</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onBook</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onBook</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onChat(org.bukkit.command.CommandSender)">
<h3>onChat</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onChat</span><wbr><span class="parameters">(org.bukkit.command.CommandSender&nbsp;sender)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onChat</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onChest(org.bukkit.entity.Player)">
<h3>onChest</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onChest</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onChest</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="open()">
<h3>open</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">open</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>open</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,263 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>AdminVoteVoteParty (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="declaration: package: com.bencodez.votingplugin.commands.gui.admin, class: AdminVoteVoteParty">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var pathtoroot = "../../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/AdminVoteVoteParty.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html#class">Help</a></li>
</ul>
<ul class="sub-nav-list-small">
<li>
<p>Summary:</p>
<ul>
<li>Nested</li>
<li>Field</li>
<li><a href="#constructor-summary">Constr</a></li>
<li><a href="#method-summary">Method</a></li>
</ul>
</li>
<li>
<p>Detail:</p>
<ul>
<li>Field</li>
<li><a href="#constructor-detail">Constr</a></li>
<li><a href="#method-detail">Method</a></li>
</ul>
</li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list">
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><a href="../../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">com.bencodez.votingplugin.commands.gui.admin</a></div>
<h1 title="Class AdminVoteVoteParty" class="title">Class AdminVoteVoteParty</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance">com.bencodez.advancedcore.api.gui.GUIHandler
<div class="inheritance">com.bencodez.votingplugin.commands.gui.admin.AdminVoteVoteParty</div>
</div>
</div>
<section class="class-description" id="class-description">
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">AdminVoteVoteParty</span>
<span class="extends-implements">extends com.bencodez.advancedcore.api.gui.GUIHandler</span></div>
<div class="block">Admin vote party GUI handler.</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.bencodez.votingplugin.VotingPluginMain,org.bukkit.command.CommandSender)" class="member-name-link">AdminVoteVoteParty</a><wbr>(<a href="../../../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin,
org.bukkit.command.CommandSender&nbsp;player)</code></div>
<div class="col-last even-row-color">
<div class="block">Constructor for AdminVoteVoteParty.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><wbr>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getChat(org.bukkit.command.CommandSender)" class="member-name-link">getChat</a><wbr>(org.bukkit.command.CommandSender&nbsp;sender)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onBook(org.bukkit.entity.Player)" class="member-name-link">onBook</a><wbr>(org.bukkit.entity.Player&nbsp;player)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onChat(org.bukkit.command.CommandSender)" class="member-name-link">onChat</a><wbr>(org.bukkit.command.CommandSender&nbsp;sender)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onChest(org.bukkit.entity.Player)" class="member-name-link">onChest</a><wbr>(org.bukkit.entity.Player&nbsp;player)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onDialog(org.bukkit.entity.Player)" class="member-name-link">onDialog</a><wbr>(org.bukkit.entity.Player&nbsp;player)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#open()" class="member-name-link">open</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-com.bencodez.advancedcore.api.gui.GUIHandler">Methods inherited from class&nbsp;com.bencodez.advancedcore.api.gui.GUIHandler</h3>
<code>colorize, getData, getPlayer, getPlugin, open, sendMessage, sendMessage, sendMessageJson, setData</code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;(com.bencodez.votingplugin.VotingPluginMain,org.bukkit.command.CommandSender)">
<h3>AdminVoteVoteParty</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">AdminVoteVoteParty</span><wbr><span class="parameters">(<a href="../../../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin,
org.bukkit.command.CommandSender&nbsp;player)</span></div>
<div class="block">Constructor for AdminVoteVoteParty.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>plugin</code> - the VotingPluginMain instance</dd>
<dd><code>player</code> - the command sender</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="getChat(org.bukkit.command.CommandSender)">
<h3>getChat</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</span>&nbsp;<span class="element-name">getChat</span><wbr><span class="parameters">(org.bukkit.command.CommandSender&nbsp;sender)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>getChat</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onBook(org.bukkit.entity.Player)">
<h3>onBook</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onBook</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onBook</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onChat(org.bukkit.command.CommandSender)">
<h3>onChat</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onChat</span><wbr><span class="parameters">(org.bukkit.command.CommandSender&nbsp;sender)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onChat</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onDialog(org.bukkit.entity.Player)">
<h3>onDialog</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onDialog</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onDialog</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onChest(org.bukkit.entity.Player)">
<h3>onChest</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onChest</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onChest</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="open()">
<h3>open</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">open</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>open</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,266 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>AdminVoteVotePlayer (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="declaration: package: com.bencodez.votingplugin.commands.gui.admin, class: AdminVoteVotePlayer">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var pathtoroot = "../../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/AdminVoteVotePlayer.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html#class">Help</a></li>
</ul>
<ul class="sub-nav-list-small">
<li>
<p>Summary:</p>
<ul>
<li>Nested</li>
<li>Field</li>
<li><a href="#constructor-summary">Constr</a></li>
<li><a href="#method-summary">Method</a></li>
</ul>
</li>
<li>
<p>Detail:</p>
<ul>
<li>Field</li>
<li><a href="#constructor-detail">Constr</a></li>
<li><a href="#method-detail">Method</a></li>
</ul>
</li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list">
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><a href="../../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">com.bencodez.votingplugin.commands.gui.admin</a></div>
<h1 title="Class AdminVoteVotePlayer" class="title">Class AdminVoteVotePlayer</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance">com.bencodez.advancedcore.api.gui.GUIHandler
<div class="inheritance">com.bencodez.votingplugin.commands.gui.admin.AdminVoteVotePlayer</div>
</div>
</div>
<section class="class-description" id="class-description">
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">AdminVoteVotePlayer</span>
<span class="extends-implements">extends com.bencodez.advancedcore.api.gui.GUIHandler</span></div>
<div class="block">Admin vote player GUI handler.</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.bencodez.votingplugin.VotingPluginMain,org.bukkit.command.CommandSender,java.lang.String)" class="member-name-link">AdminVoteVotePlayer</a><wbr>(<a href="../../../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin,
org.bukkit.command.CommandSender&nbsp;player,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;playerName)</code></div>
<div class="col-last even-row-color">
<div class="block">Constructor for AdminVoteVotePlayer.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a><wbr>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getChat(org.bukkit.command.CommandSender)" class="member-name-link">getChat</a><wbr>(org.bukkit.command.CommandSender&nbsp;sender)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onBook(org.bukkit.entity.Player)" class="member-name-link">onBook</a><wbr>(org.bukkit.entity.Player&nbsp;player)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onChat(org.bukkit.command.CommandSender)" class="member-name-link">onChat</a><wbr>(org.bukkit.command.CommandSender&nbsp;sender)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onChest(org.bukkit.entity.Player)" class="member-name-link">onChest</a><wbr>(org.bukkit.entity.Player&nbsp;player)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onDialog(org.bukkit.entity.Player)" class="member-name-link">onDialog</a><wbr>(org.bukkit.entity.Player&nbsp;player)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#open()" class="member-name-link">open</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-com.bencodez.advancedcore.api.gui.GUIHandler">Methods inherited from class&nbsp;com.bencodez.advancedcore.api.gui.GUIHandler</h3>
<code>colorize, getData, getPlayer, getPlugin, open, sendMessage, sendMessage, sendMessageJson, setData</code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;(com.bencodez.votingplugin.VotingPluginMain,org.bukkit.command.CommandSender,java.lang.String)">
<h3>AdminVoteVotePlayer</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">AdminVoteVotePlayer</span><wbr><span class="parameters">(<a href="../../../VotingPluginMain.html" title="class in com.bencodez.votingplugin">VotingPluginMain</a>&nbsp;plugin,
org.bukkit.command.CommandSender&nbsp;player,
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;playerName)</span></div>
<div class="block">Constructor for AdminVoteVotePlayer.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>plugin</code> - the VotingPluginMain instance</dd>
<dd><code>player</code> - the command sender</dd>
<dd><code>playerName</code> - the player name</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="getChat(org.bukkit.command.CommandSender)">
<h3>getChat</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a>&lt;<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&gt;</span>&nbsp;<span class="element-name">getChat</span><wbr><span class="parameters">(org.bukkit.command.CommandSender&nbsp;sender)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>getChat</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onBook(org.bukkit.entity.Player)">
<h3>onBook</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onBook</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onBook</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onChat(org.bukkit.command.CommandSender)">
<h3>onChat</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onChat</span><wbr><span class="parameters">(org.bukkit.command.CommandSender&nbsp;sender)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onChat</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onChest(org.bukkit.entity.Player)">
<h3>onChest</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onChest</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onChest</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="onDialog(org.bukkit.entity.Player)">
<h3>onDialog</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">onDialog</span><wbr><span class="parameters">(org.bukkit.entity.Player&nbsp;player)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>onDialog</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="open()">
<h3>open</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">open</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code>open</code>&nbsp;in class&nbsp;<code>com.bencodez.advancedcore.api.gui.GUIHandler</code></dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,63 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>Uses of Class com.bencodez.votingplugin.commands.gui.admin.AdminVoteConfirmation (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="use: package: com.bencodez.votingplugin.commands.gui.admin, class: AdminVoteConfirmation">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-use-page">
<script type="text/javascript">var pathtoroot = "../../../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../../../index.html">Overview</a></li>
<li><a href="../package-summary.html">Package</a></li>
<li><a href="../AdminVoteConfirmation.html" title="class in com.bencodez.votingplugin.commands.gui.admin">Class</a></li>
<li class="nav-bar-cell1-rev">Use</li>
<li><a href="../package-tree.html">Tree</a></li>
<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../../help-doc.html#use">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list"></div>
<div class="nav-list-search"><a href="../../../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<div class="header">
<h1 title="Uses of Class com.bencodez.votingplugin.commands.gui.admin.AdminVoteConfirmation" class="title">Uses of Class<br>com.bencodez.votingplugin.commands.gui.admin.AdminVoteConfirmation</h1>
</div>
No usage of com.bencodez.votingplugin.commands.gui.admin.AdminVoteConfirmation</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,63 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>Uses of Class com.bencodez.votingplugin.commands.gui.admin.AdminVoteHelp (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="use: package: com.bencodez.votingplugin.commands.gui.admin, class: AdminVoteHelp">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-use-page">
<script type="text/javascript">var pathtoroot = "../../../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../../../index.html">Overview</a></li>
<li><a href="../package-summary.html">Package</a></li>
<li><a href="../AdminVoteHelp.html" title="class in com.bencodez.votingplugin.commands.gui.admin">Class</a></li>
<li class="nav-bar-cell1-rev">Use</li>
<li><a href="../package-tree.html">Tree</a></li>
<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../../help-doc.html#use">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list"></div>
<div class="nav-list-search"><a href="../../../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<div class="header">
<h1 title="Uses of Class com.bencodez.votingplugin.commands.gui.admin.AdminVoteHelp" class="title">Uses of Class<br>com.bencodez.votingplugin.commands.gui.admin.AdminVoteHelp</h1>
</div>
No usage of com.bencodez.votingplugin.commands.gui.admin.AdminVoteHelp</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,63 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>Uses of Class com.bencodez.votingplugin.commands.gui.admin.AdminVotePerms (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="use: package: com.bencodez.votingplugin.commands.gui.admin, class: AdminVotePerms">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-use-page">
<script type="text/javascript">var pathtoroot = "../../../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../../../index.html">Overview</a></li>
<li><a href="../package-summary.html">Package</a></li>
<li><a href="../AdminVotePerms.html" title="class in com.bencodez.votingplugin.commands.gui.admin">Class</a></li>
<li class="nav-bar-cell1-rev">Use</li>
<li><a href="../package-tree.html">Tree</a></li>
<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../../help-doc.html#use">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list"></div>
<div class="nav-list-search"><a href="../../../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<div class="header">
<h1 title="Uses of Class com.bencodez.votingplugin.commands.gui.admin.AdminVotePerms" class="title">Uses of Class<br>com.bencodez.votingplugin.commands.gui.admin.AdminVotePerms</h1>
</div>
No usage of com.bencodez.votingplugin.commands.gui.admin.AdminVotePerms</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,63 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>Uses of Class com.bencodez.votingplugin.commands.gui.admin.AdminVotePlaceholders (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="use: package: com.bencodez.votingplugin.commands.gui.admin, class: AdminVotePlaceholders">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-use-page">
<script type="text/javascript">var pathtoroot = "../../../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../../../index.html">Overview</a></li>
<li><a href="../package-summary.html">Package</a></li>
<li><a href="../AdminVotePlaceholders.html" title="class in com.bencodez.votingplugin.commands.gui.admin">Class</a></li>
<li class="nav-bar-cell1-rev">Use</li>
<li><a href="../package-tree.html">Tree</a></li>
<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../../help-doc.html#use">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list"></div>
<div class="nav-list-search"><a href="../../../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<div class="header">
<h1 title="Uses of Class com.bencodez.votingplugin.commands.gui.admin.AdminVotePlaceholders" class="title">Uses of Class<br>com.bencodez.votingplugin.commands.gui.admin.AdminVotePlaceholders</h1>
</div>
No usage of com.bencodez.votingplugin.commands.gui.admin.AdminVotePlaceholders</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
@@ -1,63 +0,0 @@
<!DOCTYPE HTML>
<html lang>
<head>
<!-- Generated by javadoc (21) on Thu Jul 23 01:52:27 UTC 2026 -->
<title>Uses of Class com.bencodez.votingplugin.commands.gui.admin.AdminVotePlaceholdersPlayer (VotingPlugin 7.1.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2026-07-23">
<meta name="description" content="use: package: com.bencodez.votingplugin.commands.gui.admin, class: AdminVotePlaceholdersPlayer">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../../script-dir/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-use-page">
<script type="text/javascript">var pathtoroot = "../../../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../../../index.html">Overview</a></li>
<li><a href="../package-summary.html">Package</a></li>
<li><a href="../AdminVotePlaceholdersPlayer.html" title="class in com.bencodez.votingplugin.commands.gui.admin">Class</a></li>
<li class="nav-bar-cell1-rev">Use</li>
<li><a href="../package-tree.html">Tree</a></li>
<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../../help-doc.html#use">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list"></div>
<div class="nav-list-search"><a href="../../../../../../../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Search">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<div class="header">
<h1 title="Uses of Class com.bencodez.votingplugin.commands.gui.admin.AdminVotePlaceholdersPlayer" class="title">Uses of Class<br>com.bencodez.votingplugin.commands.gui.admin.AdminVotePlaceholdersPlayer</h1>
</div>
No usage of com.bencodez.votingplugin.commands.gui.admin.AdminVotePlaceholdersPlayer</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2026. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
Loaded 100 of 704 files, more files were not shown because too many files have changed in this diff. Show more