Compare commits

..
71 Commits
Author SHA1 Message Date
BenCodez 3e862efff2 Fix javadoc issue 2024-11-24 14:24:01 -06:00
BenCodez 52ca5467f7 Update version number to 6.17.3 2024-11-24 14:06:58 -06:00
BenCodez 61657dc670 Disable update checking on dev builds 2024-11-24 11:24:03 -06:00
BenCodez 4bac98c015 Quick fix 2024-11-23 11:22:55 -06:00
BenCodez 1215d224b4 Changes to vote party remindatvotes is gotten from specialrewards.yml 2024-11-23 11:21:57 -06:00
BenCodez 6dde613558 Modify hiding triggering vote message in console 2024-11-21 19:33:52 -06:00
BenCodez 99e34b5cd4 Hide trigger vote message if noservicesitemessage is disabled 2024-11-21 16:23:34 -06:00
BenCodez e049329f41 Add ability to hide issue with service site message on /av vote 2024-11-21 16:16:26 -06:00
BenCodez 8fe4661fe1 Change default skull cache timing 2024-11-19 19:27:11 -06:00
BenCodez af8cfc94a9 Changes to default sound 2024-11-18 08:01:16 -06:00
Ben d98a9a9152 Merge pull request #1394 from BenCodez/dependabot/maven/VotingPlugin/org.projectlombok-lombok-1.18.36
Bump org.projectlombok:lombok from 1.18.34 to 1.18.36 in /VotingPlugin
2024-11-18 07:29:48 -06:00
dependabot[bot] 749ef7fa45 Bump org.projectlombok:lombok from 1.18.34 to 1.18.36 in /VotingPlugin
Bumps [org.projectlombok:lombok](https://github.com/projectlombok/lombok) from 1.18.34 to 1.18.36.
- [Changelog](https://github.com/projectlombok/lombok/blob/master/doc/changelog.markdown)
- [Commits](https://github.com/projectlombok/lombok/compare/v1.18.34...v1.18.36)

---
updated-dependencies:
- dependency-name: org.projectlombok:lombok
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-18 06:16:44 +00:00
BenCodez 3f2a2fa33a Change version system to snapshots 2024-11-17 14:53:33 -06:00
BenCodez 2cb48d655a Disable plugin update checking if using snapshot version 2024-11-17 14:48:32 -06:00
BenCodez 573315dd18 Use snapshot version 2024-11-17 14:45:47 -06:00
BenCodez 63091ad815 Add dev maven profile back 2024-11-17 13:54:30 -06:00
BenCodez 9e88f57bfb Cleanup pom.xml 2024-11-17 12:55:15 -06:00
BenCodez 86d38d6ac9 Set correct java version in pom.xml 2024-11-17 12:28:30 -06:00
BenCodez e752d111a0 Fix pom.xml 2024-11-16 22:04:59 -06:00
BenCodez 0a09d13bb3 Remove unneeded maven profiles 2024-11-16 17:30:04 -06:00
BenCodez 08a6d91996 Fix issue with reload order with GlobalData mysql connection 2024-11-07 08:47:12 -06:00
BenCodez 1082c47297 Flush skull cache not used for a week 2024-11-05 18:08:34 -06:00
BenCodez 531812d800 Check if sever still exists on velocity 2024-11-05 07:31:24 -06:00
BenCodez 903a7232de Use new api 2024-11-04 12:01:30 -06:00
Ben ed1a0c0708 Merge pull request #1392 from BenCodez/dependabot/maven/VotingPlugin/org.apache.maven.plugins-maven-javadoc-plugin-3.11.1
Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.10.1 to 3.11.1 in /VotingPlugin
2024-11-04 07:45:16 -06:00
dependabot[bot] 15f12220a3 Bump org.apache.maven.plugins:maven-javadoc-plugin in /VotingPlugin
Bumps [org.apache.maven.plugins:maven-javadoc-plugin](https://github.com/apache/maven-javadoc-plugin) from 3.10.1 to 3.11.1.
- [Release notes](https://github.com/apache/maven-javadoc-plugin/releases)
- [Commits](https://github.com/apache/maven-javadoc-plugin/compare/maven-javadoc-plugin-3.10.1...maven-javadoc-plugin-3.11.1)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-javadoc-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-04 06:55:01 +00:00
BenCodez c24871c34d Add new skull caching delay option 2024-11-03 13:58:25 -06:00
BenCodez 65e180ccf8 Remove all unused skull options 2024-11-03 13:48:02 -06:00
BenCodez 4cc523429d Changes to skull caching 2024-11-03 11:03:27 -06:00
BenCodez 01b5e5f8a1 Remove deprecated code 2024-11-02 16:45:50 -06:00
BenCodez 944458d858 Update to 1.21.3 2024-11-02 16:43:35 -06:00
BenCodez 9beaa4e440 Handle casing differences in position placeholder checking 2024-10-29 10:27:48 -06:00
BenCodez 3c78db5fe6 Update version number to 6.17.2 2024-10-20 13:27:26 -06:00
BenCodez 9400a4fa08 change book placeholder to use [] 2024-10-19 12:29:10 -06:00
BenCodez b4519bc6e7 add %num% placeholder to books 2024-10-18 07:06:53 -06:00
BenCodez f698481b97 More adjustments to global data handling 2024-10-08 15:39:21 -06:00
BenCodez 927641f005 Actually fix time changes on velocity not working correctly 2024-10-07 07:33:08 -06:00
BenCodez d85ad022fb Add extra checks on global data time changes 2024-10-07 07:27:49 -06:00
Ben e39fcd78ca Merge pull request #1390 from BenCodez/dependabot/maven/VotingPlugin/org.apache.maven.plugins-maven-javadoc-plugin-3.10.1
Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.10.0 to 3.10.1 in /VotingPlugin
2024-10-07 07:10:15 -06:00
dependabot[bot] 6800ccd4a7 Bump org.apache.maven.plugins:maven-javadoc-plugin in /VotingPlugin
Bumps [org.apache.maven.plugins:maven-javadoc-plugin](https://github.com/apache/maven-javadoc-plugin) from 3.10.0 to 3.10.1.
- [Release notes](https://github.com/apache/maven-javadoc-plugin/releases)
- [Commits](https://github.com/apache/maven-javadoc-plugin/compare/maven-javadoc-plugin-3.10.0...maven-javadoc-plugin-3.10.1)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-javadoc-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-07 06:56:01 +00:00
BenCodez 3065e57b44 Add extra debug for vote shop permission checks 2024-10-06 22:18:31 -06:00
BenCodez fdcf092c7f Update banned players every day 2024-10-06 09:38:56 -06:00
BenCodez 7b9e734ccd Add option to force load skulls 2024-10-02 21:56:13 -06:00
BenCodez 5718e3261a Fix VoteParty increase votes required typo 2024-10-02 17:22:54 -06:00
BenCodez e391ba88e4 Add extra debug to limit monthly votes 2024-10-02 07:31:00 -06:00
BenCodez b7942e763c Fix NPE with placeholder caching invalid placeholders 2024-09-30 13:50:30 -06:00
BenCodez cb039e052c Fix invalid enoughpoints placeholder from creating errors 2024-09-30 08:06:58 -06:00
BenCodez 07a4350f10 Add more debug to login event 2024-09-30 07:20:50 -06:00
BenCodez 44130f6a52 Run everysite reward before votesite reward 2024-09-23 14:46:17 -06:00
Ben 6caf9afc1d Merge pull request #1386 from BenCodez/dependabot/maven/VotingPlugin/org.bstats-bstats-velocity-3.1.0
Bump org.bstats:bstats-velocity from 3.0.3 to 3.1.0 in /VotingPlugin
2024-09-23 07:28:25 -06:00
dependabot[bot] 7428581b4c Bump org.bstats:bstats-velocity from 3.0.3 to 3.1.0 in /VotingPlugin
Bumps [org.bstats:bstats-velocity](https://github.com/Bastian/bStats-Metrics) from 3.0.3 to 3.1.0.
- [Release notes](https://github.com/Bastian/bStats-Metrics/releases)
- [Commits](https://github.com/Bastian/bStats-Metrics/compare/v3.0.3...v3.1.0)

---
updated-dependencies:
- dependency-name: org.bstats:bstats-velocity
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-23 06:13:42 +00:00
BenCodez a2dc362456 Add placeholder support to voteshop permission 2024-09-05 07:30:18 -04:00
Ben 8d8e904a5f Merge pull request #1382 from BenCodez/dependabot/maven/VotingPlugin/org.apache.maven.plugins-maven-javadoc-plugin-3.10.0
Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.8.0 to 3.10.0 in /VotingPlugin
2024-09-02 07:33:11 -04:00
dependabot[bot] 4485006fbb Bump org.apache.maven.plugins:maven-javadoc-plugin in /VotingPlugin
Bumps [org.apache.maven.plugins:maven-javadoc-plugin](https://github.com/apache/maven-javadoc-plugin) from 3.8.0 to 3.10.0.
- [Release notes](https://github.com/apache/maven-javadoc-plugin/releases)
- [Commits](https://github.com/apache/maven-javadoc-plugin/compare/maven-javadoc-plugin-3.8.0...maven-javadoc-plugin-3.10.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-javadoc-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-02 06:49:44 +00:00
Ben 6fc3cb9096 Merge pull request #1378 from BenCodez/dependabot/maven/VotingPlugin/org.bstats-bstats-velocity-3.0.3
Bump org.bstats:bstats-velocity from 3.0.2 to 3.0.3 in /VotingPlugin
2024-08-26 07:25:55 -04:00
Ben cdf14896f0 Merge pull request #1379 from BenCodez/dependabot/maven/VotingPlugin/org.apache.maven.plugins-maven-deploy-plugin-3.1.3
Bump org.apache.maven.plugins:maven-deploy-plugin from 3.1.2 to 3.1.3 in /VotingPlugin
2024-08-26 07:25:49 -04:00
dependabot[bot] bdd73b2873 Bump org.apache.maven.plugins:maven-deploy-plugin in /VotingPlugin
Bumps [org.apache.maven.plugins:maven-deploy-plugin](https://github.com/apache/maven-deploy-plugin) from 3.1.2 to 3.1.3.
- [Release notes](https://github.com/apache/maven-deploy-plugin/releases)
- [Commits](https://github.com/apache/maven-deploy-plugin/compare/maven-deploy-plugin-3.1.2...maven-deploy-plugin-3.1.3)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-deploy-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-26 06:59:28 +00:00
dependabot[bot] e8781a0abe Bump org.bstats:bstats-velocity from 3.0.2 to 3.0.3 in /VotingPlugin
Bumps [org.bstats:bstats-velocity](https://github.com/Bastian/bStats-Metrics) from 3.0.2 to 3.0.3.
- [Release notes](https://github.com/Bastian/bStats-Metrics/releases)
- [Commits](https://github.com/Bastian/bStats-Metrics/compare/v3.0.2...v3.0.3)

---
updated-dependencies:
- dependency-name: org.bstats:bstats-velocity
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-26 06:59:15 +00:00
BenCodez 0d26b59777 process vote party before broadcast message 2024-08-12 16:09:48 -04:00
BenCodez fa0535cf32 Update to 1.21.1 2024-08-11 16:39:08 -04:00
BenCodez 2353ec321c Remove treatvanishasoffline to be enabled for voteparty reminder 2024-08-11 13:08:36 -04:00
BenCodez cb4646f67d Don't broadcast vote party reminders if vanished 2024-08-11 12:44:48 -04:00
BenCodez 7a500f9cca Fixed voteshop exra items rewards not working 2024-08-09 16:04:32 -04:00
BenCodez b583b71721 Fix Shop.yml not reloading on reload 2024-08-04 20:22:07 -04:00
BenCodez c2fa7c4f90 Update version number to 6.17.1 2024-08-04 13:43:54 -04:00
BenCodez 2b82b8db82 Changes to package relocations 2024-08-02 20:14:09 -04:00
BenCodez c130004201 Remove unused command in plugin.yml 2024-08-02 15:52:17 -04:00
BenCodez 4829c772cb Fix voteshop extra items not working 2024-07-30 16:00:20 -04:00
BenCodez e8bf487d74 Fix /voteshop (shop) not working 2024-07-22 20:26:30 -04:00
Ben f5e9a450f9 Merge pull request #1370 from BenCodez/dependabot/maven/VotingPlugin/org.apache.maven.plugins-maven-javadoc-plugin-3.8.0
Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.7.0 to 3.8.0 in /VotingPlugin
2024-07-22 16:07:57 -04:00
dependabot[bot] ebb44330fd Bump org.apache.maven.plugins:maven-javadoc-plugin in /VotingPlugin
Bumps [org.apache.maven.plugins:maven-javadoc-plugin](https://github.com/apache/maven-javadoc-plugin) from 3.7.0 to 3.8.0.
- [Release notes](https://github.com/apache/maven-javadoc-plugin/releases)
- [Commits](https://github.com/apache/maven-javadoc-plugin/compare/maven-javadoc-plugin-3.7.0...maven-javadoc-plugin-3.8.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-javadoc-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-22 06:29:26 +00:00
28 changed files with 219 additions and 279 deletions

No files matched your search

+7 -6
View File
@@ -598,12 +598,13 @@ DefaultRewardBlackListedWorlds: []
# Preload skulls to improve performance for vote top
# when using skulls as the item to display players
# If false, skulls will be cached as they are used
# assuming loadskulls is enabled
PreloadSkulls: false
PreloadSkulls: true
# Setting to false disables saving skulls in a cache to improve speeds
# Will reduce ram usage (very little) if disabled, but slow GUI speeds when using skulls
LoadSkulls: true
# Number of miliseconds between skull caching
# Default about 3 seconds is good for most servers
# Used to avoid rate limit, increase if needed
# If rate limit is hit caching will pause for 15 minutes
SkullLoadDelay: 3000
###########################################
# Extra checks on vote
@@ -716,7 +717,7 @@ ExtraBackgroundUpdate: false
# Click sound when using gui
# Set to none for no sound
ClickSound:
Sound: 'UI_BUTTON_CLICK'
Sound: 'ui.button.click'
Volume: 1.0
Pitch: 1.0
+2 -2
View File
@@ -65,7 +65,7 @@ VoteParty:
# Number of votes required to give rewards
VotesRequired: 20
# Increase the amount of votes required on each vote party reached
#IncreaseVotesRquired: 10
#IncreaseVotesRequired: 10
# If true, players who did not vote to reach the votes required will
# recieve the reward
# If false, only players who voted get rewards
@@ -97,7 +97,7 @@ VoteParty:
Broadcast: '&cReached the vote party amount!'
# Send a broadcast at a certain number of votes left and send a vote reminder
VoteReminderBroadcast: '%votesrequired% left to go, go vote!'
# List of votes required amounts for when to send vote party reminders
# Send vote reminder at number of votes to go
VoteReminderAtVotes: []
# List of commands to execute, these only execute once.
# %player% does not work here
-3
View File
@@ -54,9 +54,6 @@ commands:
voteurl:
description: Open VoteURL
aliases: vurl
votereward:
description: Open VoteReward GUI
aliases: vreward
voteparty:
description: A command
aliases: vparty
+53 -139
View File
@@ -3,14 +3,16 @@
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.bencodez</groupId>
<artifactId>${version.art}</artifactId>
<version>6.17</version>
<artifactId>votingplugin</artifactId>
<version>6.17.3</version>
<packaging>jar</packaging>
<name>VotingPlugin</name>
<properties>
<github.global.server>github</github.global.server>
<project.build.sourceEncoding>Cp1252</project.build.sourceEncoding>
<build.number>NOTSET</build.number>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
</properties>
<build>
<resources>
@@ -68,8 +70,6 @@
<paperweight-mappings-namespace>mojang</paperweight-mappings-namespace>
</manifestEntries>
</archive>
<source>1.8</source>
<target>1.8</target>
<finalName>${project.name}</finalName>
</configuration>
</plugin>
@@ -108,6 +108,11 @@
</filter>
</filters>
<relocations>
<relocation>
<pattern>com.tcoded.folialib</pattern>
<shadedPattern>
${project.groupId}.votingplugin.simpleapi.folialib</shadedPattern>
</relocation>
<relocation>
<pattern>com.bencodez.simpleapi</pattern>
<shadedPattern>
@@ -191,7 +196,8 @@
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${user.home}/Documents/Test Server/plugins</outputDirectory>
<outputDirectory>
${user.home}/Documents/Test_Server/plugins</outputDirectory>
<resources>
<resource>
<directory>${basedir}/target</directory>
@@ -242,19 +248,19 @@
<dependency>
<groupId>org.spigotmc</groupId>
<artifactId>spigot-api</artifactId>
<version>1.21-R0.1-SNAPSHOT</version>
<version>1.21.3-R0.1-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.34</version>
<version>1.18.36</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>net.md-5</groupId>
<artifactId>bungeecord-api</artifactId>
<version>1.20-R0.2</version>
<version>1.20-R0.3-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<dependency>
@@ -272,13 +278,13 @@
<dependency>
<groupId>com.velocitypowered</groupId>
<artifactId>velocity-api</artifactId>
<version>3.1.1</version>
<version>3.1.2-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.bstats</groupId>
<artifactId>bstats-velocity</artifactId>
<version>3.0.2</version>
<version>3.1.0</version>
<scope>compile</scope>
</dependency>
<dependency>
@@ -287,76 +293,18 @@
<version>2.11.6</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.bencodez</groupId>
<artifactId>advancedcore</artifactId>
<version>3.7.10-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
</dependencies>
<profiles>
<profile>
<id>normal</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<build.profile.id>normal</build.profile.id>
<version.art>votingplugin</version.art>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>com.bencodez</groupId>
<artifactId>advancedcore</artifactId>
<version>LATEST</version>
<scope>compile</scope>
</dependency>
</dependencies>
</profile>
<profile>
<id>normal-folia</id>
<properties>
<build.profile.id>normal</build.profile.id>
<version.art>votingplugin-folia</version.art>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>com.bencodez</groupId>
<artifactId>advancedcore-folia</artifactId>
<version>LATEST</version>
<scope>compile</scope>
</dependency>
</dependencies>
</profile>
<profile>
<id>prod2</id>
<properties>
<version.art>votingplugin</version.art>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<build.profile.id>prod2</build.profile.id>
</properties>
<distributionManagement>
<repository>
<id>internal.repo</id>
<name>Temporary Staging Repository</name>
<url>file://${project.build.directory}/mvn-repo</url>
</repository>
</distributionManagement>
<dependencies>
<dependency>
<groupId>com.bencodez</groupId>
<artifactId>advancedcore</artifactId>
<version>LATEST</version>
<scope>compile</scope>
</dependency>
</dependencies>
</profile>
<profile>
<id>deploy-snapshot</id>
<properties>
<version.art>votingplugin</version.art>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<build.profile.id>deploy-snapshot</build.profile.id>
<build.profile.id>dev-snapshot</build.profile.id>
</properties>
<distributionManagement>
<snapshotRepository>
@@ -365,23 +313,33 @@
</snapshotRepository>
<repository>
<id>nexus</id>
<url>https://nexus.bencodez.com/repository/maven-snapshots/</url>
<url>https://nexus.bencodez.com/repository/maven-releases/</url>
</repository>
</distributionManagement>
<dependencies>
<dependency>
<groupId>com.bencodez</groupId>
<artifactId>advancedcore</artifactId>
<version>LATEST</version>
<scope>compile</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.11.1</version>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
<phase>install</phase>
<configuration>
<sourcepath>
${project.basedir}/target/delombok</sourcepath>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>3.1.2</version>
<version>3.1.3</version>
<configuration>
<skip>true</skip>
</configuration>
@@ -393,7 +351,7 @@
<executions>
<execution>
<id>default-deploy</id>
<phase>deploy</phase>
<phase>install</phase>
<goals>
<goal>deploy</goal>
</goals>
@@ -411,9 +369,6 @@
<profile>
<id>javadoc</id>
<properties>
<version.art>votingplugin</version.art>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<build.profile.id>javadoc</build.profile.id>
</properties>
<distributionManagement>
@@ -423,20 +378,12 @@
<url>file://${project.build.directory}/mvn-repo</url>
</repository>
</distributionManagement>
<dependencies>
<dependency>
<groupId>com.bencodez</groupId>
<artifactId>advancedcore</artifactId>
<version>LATEST</version>
<scope>compile</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.7.0</version>
<version>3.11.1</version>
<executions>
<execution>
<id>attach-javadocs</id>
@@ -456,23 +403,17 @@
</plugins>
</build>
</profile>
<profile>
<id>dev</id>
<properties>
<build.profile.id>dev</build.profile.id>
</properties>
</profile>
<profile>
<id>deploy</id>
<properties>
<version.art>votingplugin</version.art>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<build.profile.id>deploy</build.profile.id>
</properties>
<dependencies>
<dependency>
<groupId>com.bencodez</groupId>
<artifactId>advancedcore</artifactId>
<version>LATEST</version>
<scope>compile</scope>
</dependency>
</dependencies>
<distributionManagement>
<snapshotRepository>
<id>nexus</id>
@@ -488,7 +429,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.7.0</version>
<version>3.11.1</version>
<executions>
<execution>
<id>attach-javadocs</id>
@@ -506,7 +447,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>3.1.2</version>
<version>3.1.3</version>
<configuration>
<skip>true</skip>
</configuration>
@@ -530,33 +471,6 @@
<skipStaging>true</skipStaging>
</configuration>
</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>BenCodez</repositoryOwner>
<server>github</server>
</configuration>
</execution>
</executions>
</plugin>-->
</plugins>
</build>
</profile>
@@ -1,31 +0,0 @@
package com.Ben12345rocks.VotingPlugin.Objects;
import org.bukkit.entity.Player;
import com.bencodez.votingplugin.VotingPluginMain;
import com.bencodez.votingplugin.user.VotingPluginUser;
@Deprecated
public class User {
private VotingPluginUser user;
public User(Player p) {
user = VotingPluginMain.plugin.getVotingPluginUserManager().getVotingPluginUser(p);
}
public void addPoints(int points) {
user.addPoints(points);
}
public int getPoints() {
return user.getPoints();
}
public boolean removePoints(int points) {
return user.removePoints(points);
}
public void setPoints(int points) {
user.setPoints(points);
}
}
@@ -167,6 +167,8 @@ public class BungeeHandler implements Listener {
plugin.debug("Detected time change from bungee: " + type.toString());
plugin.getTimeChecker().forceChanged(type, false, true, true);
globalDataHandler.setBoolean(plugin.getBungeeSettings().getServer(), type.toString(), false);
getGlobalMessageHandler().sendMessage("TimeChangeFinished",
"" + plugin.getBungeeSettings().getServer());
}
}
return isProcessing;
@@ -53,12 +53,12 @@ import com.bencodez.advancedcore.api.rewards.injected.RewardInjectConfigurationS
import com.bencodez.advancedcore.api.rewards.injected.RewardInjectInt;
import com.bencodez.advancedcore.api.rewards.injected.RewardInjectValidator;
import com.bencodez.advancedcore.api.rewards.injectedrequirement.RequirementInjectConfigurationSection;
import com.bencodez.advancedcore.api.skull.SkullHandler;
import com.bencodez.advancedcore.api.user.AdvancedCoreUser;
import com.bencodez.advancedcore.api.user.userstorage.Column;
import com.bencodez.advancedcore.api.yml.YMLConfig;
import com.bencodez.advancedcore.logger.Logger;
import com.bencodez.simpleapi.file.YMLConfig;
import com.bencodez.simpleapi.nms.NMSManager;
import com.bencodez.simpleapi.skull.SkullCache;
import com.bencodez.simpleapi.updater.Updater;
import com.bencodez.votingplugin.broadcast.BroadcastHandler;
import com.bencodez.votingplugin.commands.CommandLoader;
@@ -1495,8 +1495,12 @@ public class VotingPluginMain extends AdvancedCorePlugin {
specialRewardsConfig.reloadData();
gui.reloadData();
shopFile.reloadData();
bungeeSettings.reloadData();
updateAdvancedCoreHook();
reloadAdvancedCore(userStorage);
if (bungeeSettings.isUseBungeecoord()) {
if (getBungeeHandler() == null) {
@@ -1507,15 +1511,13 @@ public class VotingPluginMain extends AdvancedCorePlugin {
}
}
checkYMLError();
if (broadcastHandler != null) {
broadcastHandler.schedule(getConfigFile().getFormatAlternateBroadcastDelay());
}
updateAdvancedCoreHook();
plugin.loadVoteSites();
reloadAdvancedCore(userStorage);
getOptions().setServer(bungeeSettings.getServer());
if (userStorage) {
placeholders.load();
@@ -1580,6 +1582,7 @@ public class VotingPluginMain extends AdvancedCorePlugin {
synchronized (plugin) {
if (plugin != null && plugin.isEnabled()) {
getUserManager().getDataManager().clearCacheBasic();
SkullCache.flushWeek();
plugin.debug("Starting background task, current cached users: "
+ plugin.getUserManager().getDataManager().getUserDataCache().keySet().size());
@@ -1723,7 +1726,7 @@ public class VotingPluginMain extends AdvancedCorePlugin {
Set<TopVoterPlayer> players = topVoter.get(top).keySet();
for (TopVoterPlayer p : players) {
if (num <= maxToLoad) {
SkullHandler.getInstance().loadSkull(p.getPlayerName());
getSkullCacheHandler().addToCache(p.getUuid(), p.getPlayerName());
}
num++;
}
@@ -382,6 +382,8 @@ public class VotingPluginBungee extends Plugin implements Listener {
@Override
public void onTimeChangedFailed(String server, TimeType type) {
getGlobalDataHandler().setBoolean(server, type.toString(), false);
getGlobalDataHandler().setBoolean(server, "FinishedProcessing", true);
getGlobalDataHandler().setBoolean(server, "Processing", false);
}
};
} else {
@@ -876,6 +878,8 @@ public class VotingPluginBungee extends Plugin implements Listener {
if (message[0].equalsIgnoreCase("statusokay")) {
String server = message[1];
getLogger().info("Status okay for " + server);
} else if (message[0].equalsIgnoreCase("TimeChangeFinished")) {
} else if (message[0].equalsIgnoreCase("login")) {
String player = message[1];
String uuid = message[2];
@@ -1183,6 +1187,8 @@ public class VotingPluginBungee extends Plugin implements Listener {
String server = in.readUTF();
getLogger().info("Status okay for " + server);
return;
} else if (subchannel.equalsIgnoreCase("TimeChangeFinished")) {
} else if (subchannel.equalsIgnoreCase("login")) {
String player = in.readUTF();
String uuid = in.readUTF();
@@ -387,6 +387,8 @@ public class VotingPluginVelocity {
@Override
public void onTimeChangedFailed(String server, TimeType type) {
getGlobalDataHandler().setBoolean(server, type.toString(), false);
getGlobalDataHandler().setBoolean(server, "FinishedProcessing", true);
getGlobalDataHandler().setBoolean(server, "Processing", false);
}
};
} else {
@@ -497,7 +499,10 @@ public class VotingPluginVelocity {
String server = in.readUTF();
logger.info("Status okay for " + server);
return;
} else if (subchannel.equalsIgnoreCase("TimeChangeFinished")) {
} else if (subchannel.equalsIgnoreCase("login")) {
String player = in.readUTF();
String uuid = in.readUTF();
String serverName = "";
@@ -701,6 +706,7 @@ public class VotingPluginVelocity {
}
}
globalDataHandler.onTimeChange(type);
}
@Override
@@ -851,7 +857,9 @@ public class VotingPluginVelocity {
data.getNode("Time").getLong(), data.getNode("Real").getBoolean(),
data.getNode("Text").getString()));
}
cachedVotes.put(server.getServer(serverToCheck).get(), vote);
if (server.getServer(serverToCheck).isPresent()) {
cachedVotes.put(server.getServer(serverToCheck).get(), vote);
}
}
} catch (Exception e) {
e.printStackTrace();
@@ -959,6 +967,8 @@ public class VotingPluginVelocity {
if (message[0].equalsIgnoreCase("statusokay")) {
String server = message[1];
getLogger().info("Status okay for " + server);
} else if (message[0].equalsIgnoreCase("TimeChangeFinished")) {
} else if (message[0].equalsIgnoreCase("login")) {
String player = message[1];
String uuid = message[2];
@@ -1,9 +1,7 @@
package com.bencodez.votingplugin.commands;
import java.io.IOException;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.Map.Entry;
@@ -39,7 +37,6 @@ import com.bencodez.advancedcore.api.valuerequest.ValueRequest;
import com.bencodez.advancedcore.api.valuerequest.listeners.BooleanListener;
import com.bencodez.advancedcore.api.valuerequest.listeners.StringListener;
import com.bencodez.advancedcore.api.yml.editor.ConfigEditor;
import com.bencodez.advancedcore.api.yml.updater.ConfigUpdater;
import com.bencodez.advancedcore.command.gui.UserGUI;
import com.bencodez.simpleapi.array.ArrayUtils;
import com.bencodez.simpleapi.command.TabCompleteHandle;
@@ -726,6 +723,7 @@ public class CommandLoader {
+ "Detected that server hasn't received any votes from votifier, please check votifier connection");
}
if (!plugin.getConfigFile().isDisableUpdateChecking()
&& !plugin.getDescription().getVersion().endsWith("SNAPSHOT") && plugin.getUpdater() != null
&& plugin.getUpdater().getResult().equals(Updater.UpdateResult.UPDATE_AVAILABLE)) {
sendMessage(sender,
"&3Plugin has update available! https://www.spigotmc.org/resources/votingplugin.15358/");
@@ -753,6 +751,7 @@ public class CommandLoader {
+ "Detected that server hasn't received any votes from votifier, please check votifier connection");
}
if (!plugin.getConfigFile().isDisableUpdateChecking()
&& !plugin.getDescription().getVersion().endsWith("SNAPSHOT") && plugin.getUpdater() != null
&& plugin.getUpdater().getResult().equals(Updater.UpdateResult.UPDATE_AVAILABLE)) {
sendMessage(sender,
"&3Plugin has update available! https://www.spigotmc.org/resources/votingplugin.15358/");
@@ -793,7 +792,7 @@ public class CommandLoader {
sendMessage(sender, "AdvancedCore Jenkins build number: " + plugin.getAdvancedCoreBuildNumber());
}
if (!plugin.getBuildNumber().equals("NOTSET")) {
sendMessage(sender, "Using votingplugin jenkins build: " + plugin.getBuildNumber());
sendMessage(sender, "Using VotingPlugin jenkins build: " + plugin.getBuildNumber());
}
}
});
@@ -1090,7 +1089,8 @@ public class CommandLoader {
PlayerVoteEvent voteEvent = new PlayerVoteEvent(site, args[1], site.getServiceSite(),
false);
if (voteEvent.getVoteSite() != null) {
if (!voteEvent.getVoteSite().isVaidServiceSite()) {
if (!voteEvent.getVoteSite().isVaidServiceSite()
&& !plugin.getConfigFile().isDisableNoServiceSiteMessage()) {
sendMessage(sender,
"&cPossible issue with service site, has the server gotten the vote from "
+ voteEvent.getServiceSite() + "?");
@@ -1116,11 +1116,14 @@ public class CommandLoader {
PlayerVoteEvent voteEvent = new PlayerVoteEvent(plugin.getVoteSite(args[2], true), args[1], args[2],
false);
if (voteEvent.getVoteSite() != null) {
if (!voteEvent.getVoteSite().isVaidServiceSite()) {
if (!voteEvent.getVoteSite().isVaidServiceSite()
&& !plugin.getConfigFile().isDisableNoServiceSiteMessage()) {
sendMessage(sender, "&cPossible issue with service site, has the server gotten the vote from "
+ voteEvent.getServiceSite() + "?");
}
sendMessage(sender, "&cTriggering vote...");
if (!plugin.getConfigFile().isDisableNoServiceSiteMessage() && !isPlayer(sender)) {
sendMessage(sender, "&cTriggering vote...");
}
plugin.getVoteTimer().submit(new Runnable() {
@@ -1147,9 +1150,12 @@ public class CommandLoader {
public void execute(CommandSender sender, String[] args) {
PlayerVoteEvent voteEvent = new PlayerVoteEvent(plugin.getVoteSite(args[2], true), args[1],
args[2], false);
sendMessage(sender, "&cTriggering vote...");
if (!plugin.getConfigFile().isDisableNoServiceSiteMessage() && !isPlayer(sender)) {
sendMessage(sender, "&cTriggering vote...");
}
if (voteEvent.getVoteSite() != null) {
if (!voteEvent.getVoteSite().isVaidServiceSite()) {
if (!voteEvent.getVoteSite().isVaidServiceSite()
&& !plugin.getConfigFile().isDisableNoServiceSiteMessage()) {
sendMessage(sender,
"&cPossible issue with service site, has the server gotten the vote from "
+ voteEvent.getServiceSite() + "?");
@@ -1199,7 +1205,8 @@ public class CommandLoader {
PlayerVoteEvent voteEvent = new PlayerVoteEvent(site, args[1], site.getServiceSite(),
false);
if (voteEvent.getVoteSite() != null) {
if (!voteEvent.getVoteSite().isVaidServiceSite()) {
if (!voteEvent.getVoteSite().isVaidServiceSite()
&& !plugin.getConfigFile().isDisableNoServiceSiteMessage()) {
sendMessage(sender,
"&cPossible issue with service site, has the server gotten the vote from "
+ voteEvent.getServiceSite() + "?");
@@ -1223,9 +1230,12 @@ public class CommandLoader {
public void execute(CommandSender sender, String[] args) {
PlayerVoteEvent voteEvent = new PlayerVoteEvent(plugin.getVoteSite(args[3], true), args[1],
args[3], false);
sendMessage(sender, "&cTriggering vote...");
if (!plugin.getConfigFile().isDisableNoServiceSiteMessage() && !isPlayer(sender)) {
sendMessage(sender, "&cTriggering vote...");
}
if (voteEvent.getVoteSite() != null) {
if (!voteEvent.getVoteSite().isVaidServiceSite()) {
if (!voteEvent.getVoteSite().isVaidServiceSite()
&& !plugin.getConfigFile().isDisableNoServiceSiteMessage()) {
sendMessage(sender,
"&cPossible issue with service site, has the server gotten the vote from "
+ voteEvent.getServiceSite() + "?");
@@ -1288,24 +1298,6 @@ public class CommandLoader {
}
});
plugin.getAdminVoteCommand()
.add(new CommandHandler(plugin, new String[] { "Config", "Update" },
"VotingPlugin.Commands.AdminVote.Config.Edit|" + adminPerm,
"Force update Config.yml with new options") {
@Override
public void execute(CommandSender sender, String[] args) {
try {
ConfigUpdater.update(plugin, "Config.yml", plugin.getConfigFile().getdFile(), Arrays
.asList("VoteReminding", "MySQL", "CustomCommands", "CustomPlaceholderReturns"));
plugin.getConfigFile().reloadData();
} catch (IOException e) {
e.printStackTrace();
}
sendMessage(sender, "&aUpdated config");
}
});
plugin.getAdminVoteCommand()
.add(new CommandHandler(plugin, new String[] { "VoteSite", "(sitename)", "SetServiceSite", "(string)" },
"VotingPlugin.Commands.AdminVote.VoteSite.Edit|" + adminPerm, "Set VoteSite SerivceSite") {
@@ -2251,7 +2243,7 @@ public class CommandLoader {
placeholders.put("limit", "" + limit);
if (user.removePoints(points, true)) {
plugin.getRewardHandler().giveReward(user, plugin.getGui().getData(),
plugin.getRewardHandler().giveReward(user, plugin.getShopFile().getData(),
plugin.getShopFile().getShopIdentifierRewardsPath(identifier),
new RewardOptions().setPlaceholders(placeholders));
@@ -70,10 +70,17 @@ public class VoteShop extends GUIHandler {
if (perm.isEmpty()) {
hasPerm = true;
} else {
String p = "";
if (perm.startsWith("!")) {
hasPerm = !player.hasPermission(perm.substring(1));
p = PlaceholderUtils.replacePlaceHolders(player, perm.substring(1));
hasPerm = !player.hasPermission(p);
} else {
hasPerm = player.hasPermission(perm);
p = PlaceholderUtils.replacePlaceHolders(player, perm);
hasPerm = player.hasPermission(p);
}
if (!hasPerm) {
plugin.extraDebug("VoteShop: " + player.getName() + "/" + player.getUniqueId()
+ " does not have permission `" + p + "` for " + identifier);
}
}
@@ -192,7 +199,7 @@ public class VoteShop extends GUIHandler {
public void onClick(ClickEvent clickEvent) {
plugin.getCommandLoader().processSlotClick(player, user, str);
new RewardBuilder(plugin.getShopFile().getData(),
"CHEST.VoteShopExtraItems." + str + "." + clickEvent.getButton().getLastRewardsPath(player))
"ExtraItems." + str + "." + clickEvent.getButton().getLastRewardsPath(player))
.setGiveOffline(false).send(clickEvent.getPlayer());
}
});
@@ -101,8 +101,8 @@ public class VoteToday extends GUIHandler {
} else {
item = new ItemBuilder(plugin.getGui().getChestVoteTodayPlayerItem());
}
item.setName(PlaceholderUtils.replacePlaceHolder(plugin.getGui().getChestVoteTodayIconTitle(),
"player", user.getPlayerName()));
item.setName(PlaceholderUtils.replacePlaceHolder(plugin.getGui().getChestVoteTodayIconTitle(), "player",
user.getPlayerName()));
item.setLore(msg);
final UUID uuid = user.getUuid();
inv.addButton(inv.getNextSlot(), new BInventoryButton(item) {
@@ -116,24 +116,30 @@ public class VoteToday extends GUIHandler {
});
}
}
String guiPath = "VoteToday";
for (final String str : plugin.getGui().getChestGUIExtraItems(guiPath)) {
inv.addButton(
new BInventoryButton(new ItemBuilder(plugin.getGui().getChestGUIExtraItemsItem(guiPath, str))) {
@Override
public void onClick(ClickEvent clickEvent) {
new RewardBuilder(plugin.getGui().getData(),
"CHEST." + guiPath + ".ExtraItems." + str + "." + clickEvent.getButton().getLastRewardsPath(player))
.setGiveOffline(false).send(clickEvent.getPlayer());
@Override
public void onClick(ClickEvent clickEvent) {
new RewardBuilder(plugin.getGui().getData(),
"CHEST." + guiPath + ".ExtraItems." + str + "."
+ clickEvent.getButton().getLastRewardsPath(player))
.setGiveOffline(false).send(clickEvent.getPlayer());
}
});
}
if (plugin.getGui().isChestVoteTodayBackButton()) {
inv.addButton(plugin.getCommandLoader().getBackButton(user));
}
inv.openInventory(player);
}
});}
if(plugin.getGui().isChestVoteTodayBackButton()){inv.addButton(plugin.getCommandLoader().getBackButton(user));}inv.openInventory(player);}
@Override
public void open() {
open(GUIMethod.valueOf(plugin.getGui().getGuiMethodToday().toUpperCase()));
@@ -150,8 +156,8 @@ public class VoteToday extends GUIHandler {
placeholders.put("player", user.getPlayerName());
placeholders.put("votesite", voteSite.getKey());
placeholders.put("time", timeString);
msg.add(PlaceholderUtils
.replacePlaceHolder(plugin.getConfigFile().getFormatCommandsVoteTodayLine(), placeholders));
msg.add(PlaceholderUtils.replacePlaceHolder(plugin.getConfigFile().getFormatCommandsVoteTodayLine(),
placeholders));
// msg.add("&6" + user.getPlayerName() + " : " + voteSite.getKey() + " : " +
// timeString);
}
@@ -179,8 +185,8 @@ public class VoteToday extends GUIHandler {
placeholders.put("player", user.getPlayerName());
placeholders.put("votesite", mostRecentSite.getKey());
placeholders.put("time", timeString);
msg.add(PlaceholderUtils
.replacePlaceHolder(plugin.getConfigFile().getFormatCommandsVoteTodayLine(), placeholders));
msg.add(PlaceholderUtils.replacePlaceHolder(plugin.getConfigFile().getFormatCommandsVoteTodayLine(),
placeholders));
}
}
msg = ArrayUtils.colorize(msg);
@@ -157,8 +157,8 @@ public class VoteURL extends GUIHandler {
for (VoteSite site : plugin.getVoteSitesEnabled()) {
if (!site.isHidden()) {
if (site.getPermissionToView().isEmpty() || player.hasPermission(site.getPermissionToView())) {
Layout layout = new Layout(plugin.getGui().getBookVoteURLBookGUILayout()).addPlaceholder("sitename",
site.getDisplayName());
Layout layout = new Layout(plugin.getGui().getBookVoteURLBookGUILayout())
.addPlaceholder("sitename", site.getDisplayName()).addPlaceholder("num", "" + i);
String text = plugin.getGui().getBookVoteURLBookGUIAlreadyVotedText();
ChatColor color = ChatColor.valueOf(plugin.getGui().getBookVoteURLBookGUIAlreadyVotedColor());
if (user.canVoteSite(site)) {
@@ -3,7 +3,7 @@ package com.bencodez.votingplugin.config;
import java.io.File;
import java.util.ArrayList;
import com.bencodez.advancedcore.api.yml.YMLFile;
import com.bencodez.simpleapi.file.YMLFile;
import com.bencodez.simpleapi.file.annotation.AnnotationHandler;
import com.bencodez.simpleapi.file.annotation.ConfigDataBoolean;
import com.bencodez.simpleapi.file.annotation.ConfigDataInt;
@@ -7,8 +7,8 @@ import java.util.Set;
import org.bukkit.configuration.ConfigurationSection;
import com.bencodez.advancedcore.api.yml.YMLFile;
import com.bencodez.simpleapi.array.ArrayUtils;
import com.bencodez.simpleapi.file.YMLFile;
import com.bencodez.simpleapi.file.annotation.AnnotationHandler;
import com.bencodez.simpleapi.file.annotation.ConfigDataBoolean;
import com.bencodez.simpleapi.file.annotation.ConfigDataInt;
@@ -14,7 +14,7 @@ import org.bukkit.configuration.file.YamlConfiguration;
import org.bukkit.entity.Player;
import com.bencodez.advancedcore.api.rewards.DirectlyDefinedReward;
import com.bencodez.advancedcore.api.yml.YMLFile;
import com.bencodez.simpleapi.file.YMLFile;
import com.bencodez.simpleapi.array.ArrayUtils;
import com.bencodez.simpleapi.messages.MessageAPI;
import com.bencodez.votingplugin.VotingPluginMain;
@@ -7,7 +7,7 @@ import java.util.Set;
import org.bukkit.configuration.ConfigurationSection;
import com.bencodez.advancedcore.api.yml.YMLFile;
import com.bencodez.simpleapi.file.YMLFile;
import com.bencodez.simpleapi.array.ArrayUtils;
import com.bencodez.simpleapi.file.annotation.AnnotationHandler;
import com.bencodez.simpleapi.file.annotation.ConfigDataBoolean;
@@ -6,7 +6,7 @@ import java.util.Set;
import org.bukkit.configuration.ConfigurationSection;
import com.bencodez.advancedcore.api.yml.YMLFile;
import com.bencodez.simpleapi.file.YMLFile;
import com.bencodez.simpleapi.file.annotation.AnnotationHandler;
import com.bencodez.simpleapi.file.annotation.ConfigDataBoolean;
import com.bencodez.simpleapi.file.annotation.ConfigDataConfigurationSection;
@@ -69,10 +69,6 @@ public class ShopFile extends YMLFile {
saveData();
}
@ConfigDataConfigurationSection(path = "CHEST.BackButton")
@Getter
private ConfigurationSection CHESTBackButton;
public int getShopIdentifierCost(String identifier) {
return getData().getInt("Shop." + identifier + ".Cost");
}
@@ -151,10 +147,10 @@ public class ShopFile extends YMLFile {
}
public ConfigurationSection getGUIVoteShopExtraItems(String item) {
return getData().getConfigurationSection("VoteShopExtraItems." + item);
return getData().getConfigurationSection("ExtraItems." + item);
}
@ConfigDataKeys(path = "VoteShopExtraItems")
@ConfigDataKeys(path = "ExtraItems")
@Getter
private Set<String> voteShopExtraItems = new HashSet<String>();
@@ -6,12 +6,13 @@ import java.util.HashSet;
import java.util.List;
import java.util.Set;
import com.bencodez.advancedcore.api.yml.YMLFile;
import com.bencodez.simpleapi.file.YMLFile;
import com.bencodez.simpleapi.file.annotation.AnnotationHandler;
import com.bencodez.simpleapi.file.annotation.ConfigDataBoolean;
import com.bencodez.simpleapi.file.annotation.ConfigDataDouble;
import com.bencodez.simpleapi.file.annotation.ConfigDataInt;
import com.bencodez.simpleapi.file.annotation.ConfigDataKeys;
import com.bencodez.simpleapi.file.annotation.ConfigDataListInt;
import com.bencodez.simpleapi.file.annotation.ConfigDataListString;
import com.bencodez.simpleapi.file.annotation.ConfigDataString;
import com.bencodez.votingplugin.VotingPluginMain;
@@ -66,7 +67,7 @@ public class SpecialRewardsConfig extends YMLFile {
@ConfigDataBoolean(path = "VoteParty.ResetExtraVotesMonthly")
@Getter
private boolean votePartyResetExtraVotesMonthly = false;
@ConfigDataBoolean(path = "VoteParty.ResetExtraVotesWeekly")
@Getter
private boolean votePartyResetExtraVotesWeekly = false;
@@ -75,9 +76,9 @@ public class SpecialRewardsConfig extends YMLFile {
@Getter
private String votePartyVoteReminderBroadcast = "%votesrequired% left to go, go vote!";
@ConfigDataListString(path = "VoteParty.VoteReminderAtVotes")
@ConfigDataListInt(path = "VoteParty.VoteReminderAtVotes")
@Getter
private ArrayList<String> votePartyVoteReminderAtVotes = new ArrayList<String>();
private ArrayList<Integer> votePartyVoteReminderAtVotes = new ArrayList<Integer>();
@ConfigDataListString(path = "VoteParty.GlobalRandomCommand")
@Getter
@@ -232,10 +233,23 @@ public class SpecialRewardsConfig extends YMLFile {
@Getter
private boolean votePartyGiveAllPlayers = false;
@Deprecated
@ConfigDataInt(path = "VoteParty.IncreaseVotesRquired")
@Getter
private int votePartyIncreaseVotesRquired = 0;
@ConfigDataInt(path = "VoteParty.IncreaseVotesRequired")
@Getter
private int votePartyIncreaseVotesRequired = 0;
public int getVotePartyIncreaseVotesRequiredWithTypo() {
int increase = getVotePartyIncreaseVotesRequired();
if (increase > 0) {
return increase;
}
return getVotePartyIncreaseVotesRquired();
}
@ConfigDataBoolean(path = "VoteParty.OnlyOncePerDay")
@Getter
private boolean votePartyOnlyOncePerDay = false;
@@ -42,6 +42,8 @@ public class PlayerJoinEvent implements Listener {
if (data) {
// give offline vote (if they voted offline)
user.offVote();
} else {
plugin.debug("No data detected for " + player.getUniqueId().toString() + "/" + player.getName());
}
user.loginRewards();
@@ -134,6 +134,9 @@ public class PlayerVoteListener implements Listener {
user.updateName(true);
// vote party
plugin.getVoteParty().vote(user, event.isRealVote(), event.isForceBungee());
if (event.isBroadcast() && !plugin.getBungeeSettings().isDisableBroadcast()) {
// broadcast vote if enabled in config
if (plugin.getConfigFile().isBroadcastVotesEnabled()
@@ -223,14 +226,14 @@ public class PlayerVoteListener implements Listener {
}
LocalDateTime cTime = plugin.getTimeChecker().getTime();
int days = cTime.getDayOfMonth();
plugin.extraDebug("Current day of month: " + days + " Current total: " + value);
if (value >= days * plugin.getVoteSitesEnabled().size()) {
plugin.debug("Detected higher month total, changing. Current Total: " + value + " Days: " + days
+ " New Total: " + days * plugin.getVoteSitesEnabled().size());
user.setTotal(TopVoter.Monthly, days * plugin.getVoteSitesEnabled().size());
}
}
// vote party
plugin.getVoteParty().vote(user, event.isRealVote(), event.isForceBungee());
// other rewards
plugin.getSpecialRewards().checkAllSites(user, event.isForceBungee());
plugin.getSpecialRewards().checkAlmostAllSites(user, event.isForceBungee());
@@ -202,15 +202,16 @@ public class VoteSite {
}
public void giveRewards(VotingPluginUser user, boolean online, boolean bungee) {
new RewardBuilder(plugin.getConfigVoteSites().getData(), plugin.getConfigVoteSites().getEverySiteRewardPath())
.setOnline(online).withPlaceHolder("ServiceSite", getServiceSite())
.withPlaceHolder("SiteName", getDisplayName()).withPlaceHolder("VoteDelay", "" + getVoteDelay())
.withPlaceHolder("VoteURL", getVoteURL()).setServer(bungee).send(user);
new RewardBuilder(plugin.getConfigVoteSites().getData(), plugin.getConfigVoteSites().getRewardsPath(key))
.setOnline(online).withPlaceHolder("ServiceSite", getServiceSite())
.withPlaceHolder("SiteName", getDisplayName()).withPlaceHolder("VoteDelay", "" + getVoteDelay())
.withPlaceHolder("VoteURL", getVoteURL()).setServer(bungee).send(user);
new RewardBuilder(plugin.getConfigVoteSites().getData(), plugin.getConfigVoteSites().getEverySiteRewardPath())
.setOnline(online).withPlaceHolder("ServiceSite", getServiceSite())
.withPlaceHolder("SiteName", getDisplayName()).withPlaceHolder("VoteDelay", "" + getVoteDelay())
.withPlaceHolder("VoteURL", getVoteURL()).setServer(bungee).send(user);
}
public boolean hasRewards() {
@@ -115,7 +115,7 @@ public class PlaceHolders {
identifier = PlaceholderUtils.replaceJavascript(p, identifier);
}
if (!identifier.endsWith("Position")) {
if (!identifier.toLowerCase().endsWith("position")) {
for (NonPlayerPlaceHolder<VotingPluginUser> placeholder : nonPlayerPlaceholders) {
if (placeholder.matches(identifier)) {
String str = placeholder.placeholderRequest(identifier);
@@ -573,6 +573,9 @@ public class PlaceHolders {
@Override
public String placeholderRequest(VotingPluginUser user, String identifier) {
if (!MessageAPI.isInt(identifier.split("_")[1])) {
return "invalid";
}
int number = Integer.parseInt(identifier.split("_")[1]);
if (user.getPoints() >= number) {
return "true";
@@ -602,7 +605,7 @@ public class PlaceHolders {
@Override
public String placeholderRequest(String identifier) {
if (!MessageAPI.isInt(identifier.split("_")[2])) {
return null;
return "invalid";
}
int num = 1;
int number = Integer.parseInt(identifier.split("_")[2]);
@@ -653,7 +656,7 @@ public class PlaceHolders {
@Override
public String placeholderRequest(String identifier) {
if (!MessageAPI.isInt(identifier.split("_")[2])) {
return null;
return "invalid";
}
int num = 1;
int number = Integer.parseInt(identifier.split("_")[2]);
@@ -690,7 +693,7 @@ public class PlaceHolders {
@Override
public String placeholderRequest(String identifier) {
if (!MessageAPI.isInt(identifier.split("_")[2])) {
return null;
return "invalid";
}
int num = 1;
int number = Integer.parseInt(identifier.split("_")[2]);
@@ -741,7 +744,7 @@ public class PlaceHolders {
@Override
public String placeholderRequest(String identifier) {
if (!MessageAPI.isInt(identifier.split("_")[2])) {
return null;
return "invalid";
}
int num = 1;
int number = Integer.parseInt(identifier.split("_")[2]);
@@ -792,7 +795,7 @@ public class PlaceHolders {
@Override
public String placeholderRequest(String identifier) {
if (!MessageAPI.isInt(identifier.split("_")[2])) {
return null;
return "invalid";
}
int num = 1;
int number = Integer.parseInt(identifier.split("_")[2]);
@@ -61,7 +61,7 @@ public class VoteTester {
String SALTCHARS = "ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";
StringBuilder salt = new StringBuilder();
Random rnd = new Random();
while (salt.length() < 18) { // length of the random string.
while (salt.length() < 12) { // length of the random string.
int index = (int) (rnd.nextFloat() * SALTCHARS.length());
salt.append(SALTCHARS.charAt(index));
}
@@ -13,6 +13,8 @@ import java.util.Map.Entry;
import java.util.Set;
import java.util.UUID;
import org.bukkit.Bukkit;
import org.bukkit.OfflinePlayer;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
@@ -26,8 +28,8 @@ import com.bencodez.advancedcore.api.time.events.WeekChangeEvent;
import com.bencodez.advancedcore.api.user.UserStorage;
import com.bencodez.advancedcore.api.user.userstorage.Column;
import com.bencodez.advancedcore.api.user.userstorage.DataType;
import com.bencodez.advancedcore.api.yml.YMLFileHandler;
import com.bencodez.simpleapi.array.ArrayUtils;
import com.bencodez.simpleapi.file.YMLFileHandler;
import com.bencodez.simpleapi.messages.MessageAPI;
import com.bencodez.votingplugin.VotingPluginMain;
import com.bencodez.votingplugin.user.VotingPluginUser;
@@ -344,6 +346,12 @@ public class TopVoterHandler implements Listener {
@EventHandler(priority = EventPriority.NORMAL, ignoreCancelled = true)
public void onPreDateChanged(PreDateChangedEvent event) {
if (event.getTimeType().equals(TimeType.DAY)) {
plugin.getBannedPlayers().clear();
for (OfflinePlayer p : Bukkit.getBannedPlayers()) {
plugin.getBannedPlayers().add(p.getUniqueId().toString());
}
}
plugin.setUpdate(true);
plugin.update();
}
@@ -4,7 +4,6 @@ import java.util.UUID;
import org.bukkit.inventory.ItemStack;
import com.bencodez.advancedcore.api.misc.PlayerManager;
import com.bencodez.votingplugin.VotingPluginMain;
import com.bencodez.votingplugin.user.VotingPluginUser;
@@ -30,7 +29,7 @@ public class TopVoterPlayer {
}
public ItemStack getPlayerHead() {
return PlayerManager.getInstance().getPlayerSkull(getPlayerName(), false);
return VotingPluginMain.plugin.getSkullCacheHandler().getSkull(uuid, playerName);
}
public VotingPluginUser getUser() {
@@ -22,7 +22,8 @@ public class CheckUpdate {
* Check update.
*/
public void checkUpdate() {
if (plugin.getConfigFile().isDisableUpdateChecking()) {
if (plugin.getConfigFile().isDisableUpdateChecking()
|| plugin.getDescription().getVersion().endsWith("SNAPSHOT")) {
return;
}
plugin.setUpdater(new Updater(plugin, 15358, false));
@@ -69,7 +70,8 @@ public class CheckUpdate {
* Start up.
*/
public void startUp() {
if (plugin.getConfigFile().isDisableUpdateChecking()) {
if (plugin.getConfigFile().isDisableUpdateChecking()
|| plugin.getDescription().getVersion().endsWith("SNAPSHOT")) {
return;
}
plugin.getBukkitScheduler().runTaskLaterAsynchronously(plugin, new Runnable() {
@@ -229,6 +229,7 @@ public class VoteParty implements Listener {
if (plugin.getSpecialRewardsConfig().isVotePartyGiveAllPlayers()) {
plugin.debug("Trying to give all players vote party");
ArrayList<String> alreadyGotten = new ArrayList<String>();
for (Player p : Bukkit.getOnlinePlayers()) {
VotingPluginUser user;
@@ -262,7 +263,9 @@ public class VoteParty implements Listener {
} else {
plugin.debug("Trying to give all voted players vote party");
plugin.debug(ArrayUtils.makeStringList(getVotedUsers()));
for (String uuid : getVotedUsers()) {
for (String uuid :
getVotedUsers()) {
VotingPluginUser user;
if (orgUser != null && orgUser.getJavaUUID().toString().equals(uuid)) {
user = orgUser;
@@ -276,6 +279,7 @@ public class VoteParty implements Listener {
}
}
reset(false);
}
@@ -346,11 +350,11 @@ public class VoteParty implements Listener {
}
public void checkVoteReminder(VotingPluginUser user) {
int neededVotes = getNeededVotes();
if (!user.isVanished()) {
int neededVotes = getNeededVotes();
for (String str : plugin.getSpecialRewardsConfig().getVotePartyVoteReminderAtVotes()) {
if (MessageAPI.isInt(str)) {
int num = Integer.parseInt(str);
for (Integer num1 : plugin.getSpecialRewardsConfig().getVotePartyVoteReminderAtVotes()) {
int num = num1.intValue();
if (neededVotes == num) {
String broadcastMessage = plugin.getSpecialRewardsConfig().getVotePartyVoteReminderBroadcast();
HashMap<String, String> placeholders = new HashMap<String, String>();
@@ -361,6 +365,7 @@ public class VoteParty implements Listener {
}
}
}
}
public synchronized void vote(VotingPluginUser user, boolean realVote, boolean forceBungee) {