Compare commits

..

252 Commits

Author SHA1 Message Date
renovate 46829a60db Add renovate.json 2025-03-22 23:13:35 +00:00
Lorenzo Dellacà 5d3fe2a2f4 Merge branch '1.6.x' of https://github.com/SaberLLC/Saber-Factions into 1.6.x 2020-07-01 22:37:14 +02:00
DroppingAnvil 1becd7b299 Version change 2020-06-26 00:49:54 -05:00
DroppingAnvil f7c9de0664 Version change 2020-06-26 00:45:37 -05:00
DroppingAnvil 7667e69cf2 Update XMaterial 2020-06-26 00:43:26 -05:00
Lorenzo Dellacà 1383e451f1 optimized dependencies for JAR file size (8.6MB -> 7.8MB) 2020-06-25 23:24:39 +02:00
DroppingAnvil 677c609ec8 Merge remote-tracking branch 'origin/1.6.x' into 1.6.x 2020-06-25 13:24:13 -05:00
DroppingAnvil 09f1df49a9 Begin 1.16 support 2020-06-25 13:23:52 -05:00
Driftay dd94b45347 Forgot about the FactionsPlayerListener 2020-06-19 11:18:11 -04:00
Driftay 28b07fc6a4 Updates To Scoreboard 2020-06-19 11:15:22 -04:00
DroppingAnvil 11ea9bc1aa Allow non-relational show 2020-06-16 11:59:45 -05:00
DroppingAnvil 7f922fef28 Merge remote-tracking branch 'origin/1.6.x' into 1.6.x 2020-06-14 16:02:45 -05:00
DroppingAnvil 81ef43768d Fix startup error that may happen when factions is shutdown improperly 2020-06-14 16:02:18 -05:00
Driftay 1a19ee77ba Merge pull request #138 from f0rb1d/1.6.x
Added Simplified Chinese translation and fixed a typo in English language pack
2020-06-12 23:27:35 -04:00
DroppingAnvil 0444517eec F unclaim can now be used without a faction when bypassing 2020-06-12 18:43:56 -05:00
f0rb1d 03077b62ba Added Simplified Chinese translation and fixed a typo in English language pack. 2020-06-12 01:22:36 -04:00
DroppingAnvil d98c647397 Version change for shield removal 2020-06-08 16:04:03 -04:00
DroppingAnvil e9923344a2 Deal with remaining shield code 2020-06-08 16:03:28 -04:00
DroppingAnvil cdc07ed5eb Revert "Merge pull request #134 from ImCarib/1.6.x"
This reverts commit 0b677cb4de, reversing
changes made to a355b1d0c8.
2020-06-08 15:52:29 -04:00
Driftay 7b94367eb4 Added shield status placeholder 2020-06-08 15:03:36 -04:00
Driftay b7d991c0dd unclaim fly fix 2020-06-08 07:06:16 -04:00
Driftay 6372245fcd Version Change 2020-06-08 06:42:51 -04:00
Driftay f2c0f725b7 Carib unregistered the command 2020-06-08 05:46:25 -04:00
Driftay 0b677cb4de Merge pull request #134 from ImCarib/1.6.x
shields added
2020-06-08 05:39:38 -04:00
ImCarib e8642a3108 shields added 2020-06-08 05:22:50 -04:00
DroppingAnvil a355b1d0c8 Fix certain GUIs not loading 2020-06-07 20:34:42 -04:00
Driftay 929c34d850 Final Touches on PermissableAction Rollback 2020-06-01 22:52:03 -04:00
Driftay 903129e462 Reverted Back To Old FactionsBlockListener to Reference Other Plugins Hook Systems 2020-06-01 22:41:14 -04:00
Driftay e84c69f2b0 Code Cleanup & Fix With Fly Unclaiming 2020-05-27 23:40:46 -04:00
Driftay 3e530487d7 Merge pull request #131 from SaberLLC/beta
Beta
2020-05-25 20:40:22 -04:00
Driftay 14776b8877 Merge pull request #127 from Juniormunk/1.6.x
Fix Bugs
2020-05-25 20:38:35 -04:00
Driftay 7f927189ea Alts Can No Longer Be Promoted 2020-05-25 14:16:49 -04:00
Driftay 6f293dce17 Fixed Kicked Player Staying In Fly Map & FPerms GUI Returning Only Black Stained Glass Pane 2020-05-24 09:35:10 -04:00
Driftay 2676f048d6 Alt Limit Fix 2020-05-24 05:58:35 -04:00
droppinganvil 24aaa0ed6f Merge remote-tracking branch 'origin/1.6.x' into 1.6.x 2020-05-23 13:36:04 -05:00
DroppingAnvil 2a01682fbe Fix issue not allowing use of multiworld wild 2020-05-23 13:35:51 -05:00
Juniormunk ba59310548 Fix occasional dynmap bug 2020-05-22 17:11:53 -04:00
Juniormunk bec09168b6 Remove debugging prints 2020-05-22 02:33:31 -04:00
Juniormunk 4fe6484db9 Fix bug #129 2020-05-22 02:24:57 -04:00
Juniormunk 71a099beeb Fix bugs #123, #128 2020-05-21 19:29:51 -04:00
Juniormunk ddd3150732 Fix bugs #118 , #122 2020-05-21 04:22:53 -04:00
Juniormunk ec1501bf4f Fix Bug #125 2020-05-21 02:51:41 -04:00
Juniormunk 8ad2fdf848 Fix Bug #126 2020-05-21 01:58:05 -04:00
Driftay 1ee62c2267 Merge pull request #121 from SaberLLC/beta
Beta
2020-05-19 13:48:00 -04:00
Driftay 7e6646b4df Config Fix for default worlds 2020-05-19 06:28:05 -04:00
Driftay 0d08ff4cec Wild Updates 2020-05-19 06:27:20 -04:00
Driftay cf3ce62023 Merge pull request #120 from SaberLLC/1.6.x
Merging
2020-05-19 06:25:42 -04:00
Driftay 30d6b3c248 Merge pull request #119 from SaberLLC/beta
F Show Async Calling
2020-05-19 06:24:02 -04:00
Driftay c22e3a5227 F Show Async Calling 2020-05-19 06:22:09 -04:00
Driftay cf71603eeb Merge pull request #117 from SaberLLC/beta
Beta
2020-05-18 04:31:06 -04:00
Driftay c45b68a95f Merge pull request #116 from Aeris1One/patch-1
Fix
2020-05-18 04:29:42 -04:00
Aeris One 67a9a6db28 Update ja_JP.yml 2020-05-16 12:07:53 +02:00
DroppingAnvil 0ea56fe5d2 World now per range instead of global + CmdWild cleanup 2020-05-12 14:41:12 -05:00
DroppingAnvil 7d3c4d6e33 Merge pull request #115 from Stefan923/1.6.x
Fixed a JSON issue.
2020-05-11 16:47:08 -05:00
Stefan923 4d05b4a376 Fixed "RESET is not a style/color" error. 2020-05-10 17:18:48 +03:00
Driftay c29850eaaa Fixes NPE on Saving Task onDisable MPlugin, removed Async Throw for 1.15 in F Show 2020-05-09 14:04:17 -04:00
Driftay ece5dd0bb7 Merge pull request #113 from Stefan923/1.6.x
Fixed issues
2020-05-09 14:01:55 -04:00
Driftay bbaee8ab06 Merge pull request #114 from Stefan923/1.6.x
Fixed issues
2020-05-09 13:39:51 -04:00
Stefan923 c42949ec59 Fixed a bug: people were able to move banned items in /f chest by using hotbar keys. 2020-05-09 17:37:06 +03:00
Stefan923 f5f8e6aad2 Edited some translation messages. 2020-05-09 16:22:16 +03:00
Stefan923 447bfedbb1 Fixed an internal error caused by some unhandled cases. 2020-05-09 15:51:14 +03:00
Stefan923 1d4a1c2a1a Avoid disabling player's flight mode if it's not enabled. 2020-05-09 14:53:53 +03:00
Stefan923 31b8f0be25 Fixed internal error caused by trying to demote a player who already has the lowest rank 2020-05-09 14:53:02 +03:00
Driftay e2d85d83f3 Merge pull request #111 from Stefan923/1.6.x
Fixed AutoFly issue
2020-05-08 20:22:33 -04:00
Driftay 66f2fd22f6 Merge pull request #112 from SaberLLC/beta
Beta
2020-05-08 20:21:55 -04:00
Stefan923 842eb097c6 Fixed issue. If the player does not have the fly activated when he joins another teritory, it skips the checks and his flight is activated. 2020-05-09 00:30:03 +03:00
DroppingAnvil 2f18da3cfb Merge pull request #110 from Stefan923/1.6.x
Fixed issues
2020-05-08 15:57:02 -05:00
Stefan923 5fb8d06d98 Fixed the asynchronous command dispatch issue. The issue was being thrown on PaperSpigot and its forks. 2020-05-08 20:29:54 +03:00
Stefan923 868e7f4102 Method weren't formatting both color and style to the same text. 2020-05-08 20:27:03 +03:00
Popescu Ștefan d8b08ef6d7 Merge pull request #1 from SaberLLC/beta
Beta
2020-05-07 23:06:20 +03:00
DroppingAnvil 7bffed2d34 Merge pull request #108 from Stefan923/1.6.x
Fixed an issue with disband GUI
2020-05-07 14:44:15 -05:00
BrowkS 541e1fc69b Fixed issue - ignoring "useDisbandGui" if the player is not an OP 2020-05-07 22:36:39 +03:00
Driftay 07dce634af Addressed Config Properly 2020-05-07 12:23:32 -04:00
Driftay 75faaa4bb5 More Radius Claiming Changes 2020-05-07 07:07:40 -04:00
Driftay 17e2a86717 Cleaned Up Double Message With Fly & Double Message With Radius Claim System When Claiming A Single Claim 2020-05-07 05:56:12 -04:00
Driftay f384100925 Fixed Small Issue With Owner List In Replacement Of TL Translation 2020-05-07 05:26:08 -04:00
Driftay b8c695c2f4 Grace Check in checkForExplosion Method & Added a Async Task On Show.
NOTE: Ran 100 Alts Running /f who every second whilst all being in my faction with 0 lag or errors with LuckPerms
2020-05-07 05:11:28 -04:00
Driftay 78a5e65e5c Merge pull request #106 from Stefan923/1.6.x
Fixed some internal errors caused by using /f wild and a placeholder issue
2020-05-07 01:57:05 -04:00
Driftay 33761fee2b Radius Claiming Finalized, Few Fixes With Econ & Essentials & Fly Performance 2020-05-07 01:55:24 -04:00
BrowkS bf23521309 Sending join message to faction members after setting player's faction and role. 2020-05-06 22:32:40 +03:00
BrowkS 55fd5ffdfd Added {player-role} placeholder. 2020-05-06 13:07:16 +03:00
BrowkS 04273de995 Removed an unnecessary check 2020-05-06 12:36:24 +03:00
Stefan923 7fc1ad19ad Fixed an internal error. Trying to send a message without enough arguments. 2020-05-05 18:32:50 +03:00
Stefan923 01913e7286 Fixed an internal error. Player wasn't being removed from teleportRange after a failed teleportation. 2020-05-05 18:30:09 +03:00
Driftay ae7bb670d7 Reverted Back To Old Fly Mechanics 2020-05-05 07:20:06 -04:00
Driftay 499d41dea0 Radius Claiming & Alt Limit Fix 2020-05-04 20:27:39 -04:00
DroppingAnvil e0d2e6b4db Version change for fly changes 2020-04-30 14:40:59 -05:00
DroppingAnvil e37745eff9 Fixed a few known issues with F Fly 2020-04-30 14:27:26 -05:00
DroppingAnvil 86cba0e24c PlaceholderAPI expansion revamp 2020-04-29 16:31:47 -05:00
droppinganvil 69a4651e23 Merge remote-tracking branch 'origin/1.6.x' into 1.6.x 2020-04-26 12:54:03 -05:00
DroppingAnvil f2c6d0b9da Even more fly changes 2020-04-26 12:53:48 -05:00
Driftay 8f343a5344 FIXED MASSIVE BUG WITH SAVING 2020-04-21 21:39:28 -04:00
Driftay 8665d92476 FIXED MASSIVE BUG WITH SAVING 2020-04-21 20:25:44 -04:00
droppinganvil b89db7b082 Merge remote-tracking branch 'origin/1.6.x' into 1.6.x 2020-04-21 16:04:39 -05:00
DroppingAnvil 00cb78fd9b Set a world for /f wild 2020-04-21 16:04:18 -05:00
Driftay aca075b5c7 Version Change 2020-04-13 20:30:02 -04:00
Driftay 03886aa84e Merge pull request #92 from CanardConfit/1.6.x
Fix issue #84
2020-04-13 20:26:17 -04:00
CanardConfit 22472f63f1 Merge remote-tracking branch 'origin/1.6.x' into 1.6.x 2020-04-14 01:05:17 +02:00
CanardConfit 6d72e5d167 Fix issue #84 2020-04-14 01:04:33 +02:00
CanardConfit 69765e472c Fix issue #84 2020-04-14 01:01:05 +02:00
Driftay 4f55b10c7d Fixed Faction Claiming Over Themselves 2020-04-13 18:44:17 -04:00
Driftay 0395280a9e Addressed Issue #72 2020-04-13 16:12:46 -04:00
Driftay d1252df3ba Addressed Issue: 70 Some Blocks may be missing, but they are 100% configurable in conf.json I don't want to hardcode item names that people want to block by default. ex: crafting tables 2020-04-13 15:28:37 -04:00
Driftay 9707226762 Addressed Issue: #90 & Added Configurable removePlayerDataWhenBanned message 2020-04-13 15:20:46 -04:00
Driftay cf075c270e Addressed Issue: #81 2020-04-13 13:35:27 -04:00
Driftay f088b42bbe Added uneeded comment 2020-04-13 13:29:01 -04:00
Driftay baee5d2158 Addressed Issue: #77 & #68 2020-04-13 13:24:30 -04:00
Driftay f871787b0c Merge remote-tracking branch 'origin/1.6.x' into 1.6.x 2020-04-13 13:18:27 -04:00
Driftay 749fca0690 Merge pull request #91 from CanardConfit/1.6.x
Fix Issue #75
2020-04-13 13:17:59 -04:00
CanardConfit 319940d9b3 Fix Issue #75 2020-04-13 19:12:11 +02:00
Driftay 7ea81a6c10 Addressed Issue: https://github.com/SaberLLC/Saber-Factions/issues/69 2020-04-13 13:09:15 -04:00
Driftay 6205bbca9f Added a bunch of fixes from github requests 2020-04-13 05:03:41 -04:00
Driftay 241a16bc2a Merge remote-tracking branch 'origin/1.6.x' into 1.6.x 2020-04-12 06:26:45 -04:00
Driftay 3aa98121e5 Factions Fly Cache on Startup, Attempt At SaveSync Fix 2020-04-12 06:26:27 -04:00
DroppingAnvil 144798b2dd Fixed message given to WaitExecutor causing F Wild to constantly say "You are already teleporting somewhere" 2020-04-11 15:02:17 -05:00
droppinganvil dac07178e5 Merge remote-tracking branch 'origin/1.6.x' into 1.6.x 2020-04-11 14:52:12 -05:00
DroppingAnvil f8421c09cf Option to load chunk before /f wild teleport. 2020-04-11 14:51:57 -05:00
Driftay 932a5768b0 Fixed Small NPE With Grace if GraceSystem was set to false 2020-04-09 17:53:05 -04:00
droppinganvil 861f88a916 Merge remote-tracking branch 'origin/1.6.x' into 1.6.x 2020-04-08 12:59:51 -05:00
DroppingAnvil 5b7f3b0f0e Fixed fly no permission issue 2020-04-08 12:59:41 -05:00
Driftay 304662fa9b Merge remote-tracking branch 'origin/1.6.x' into 1.6.x 2020-04-08 09:19:14 -04:00
Driftay 5a6c660f7f Fixed Small Error With Money Format If Econ is Off 2020-04-08 09:18:50 -04:00
Driftay 0fc736cdf5 Update README.md 2020-04-08 06:22:34 -04:00
Driftay ef7db546a3 Update README.md 2020-04-08 06:22:14 -04:00
Driftay 4496d4251b Finished Grace Timer :) 2020-04-07 23:22:53 -04:00
Driftay d86d8fc73a Merge remote-tracking branch 'origin/1.6.x' into 1.6.x 2020-04-07 22:24:55 -04:00
Driftay 380caf1ca3 More things to GraceTimer 2020-04-07 22:24:07 -04:00
DroppingAnvil 103c69fecf Changed every fly check to the same one instead of having multiple, FactionsPlayerListener.checkCanFly will be removed soon. 2020-04-07 16:02:18 -05:00
Driftay d4ac0ab310 Completely Reformatted GracePeriod with a timer now 2020-04-07 07:59:18 -04:00
Driftay 8fb697888f Added Neutral List PlaceHolder 2020-04-06 16:55:22 -04:00
Driftay b15ff69682 Finalized F Cooldowns 2020-04-06 16:50:12 -04:00
Driftay 919a3ada25 Revert cooldown is player is bypassing 2020-04-06 16:21:22 -04:00
Driftay 62e4114466 Cooldowns initiated & Disable Open Broadcasts 2020-04-06 16:19:41 -04:00
Driftay cb2afb5a4f Anotha one 2020-04-06 15:34:26 -04:00
Driftay 8efe68111b Class Cast Exception Fixed 2020-04-06 15:28:49 -04:00
Driftay 388f83694d Per Player Friend Fire Added (Command Usage: /f friendlyfire) 2020-04-06 15:10:37 -04:00
Driftay 23320db201 Create As Many Levels to Upgrades As You Would Like Now, Properly Relocating InventoryFramework 2020-04-06 11:26:48 -04:00
Driftay 0c5cc3a978 ItemFrame Fix, Claiming with No Power Double Check, Scoreboard Duplicate Double Check modified BlockListener 2020-04-06 10:32:16 -04:00
Driftay 8d1b26e561 Small Fix in Conf 2020-04-05 16:13:02 -04:00
Driftay ef90cd5be8 Metrics & bStats 2020-04-05 12:57:28 -04:00
DroppingAnvil 5809387df2 Small change to fly 2020-04-04 18:42:38 -05:00
DroppingAnvil 5cf21d479e Fly improved 2020-04-04 18:41:13 -05:00
Driftay 44cac68a15 Alt Fix Join Limit 2020-04-04 09:31:45 -04:00
Driftay f271cef686 Version Change 2020-04-04 07:54:19 -04:00
Driftay 065077e241 Vanish Check for Factions Fly 2020-04-04 07:53:52 -04:00
Driftay 97b6c75ffa Alt Placeholders & Remove Creeper Anti Glitch (SaberCoreX has this module) 2020-04-04 07:48:25 -04:00
Driftay af1ee43771 COMPLETELY reformatted Shop.yml to loadFromProject as well as permissions.yml. Added Placeholders, Redefined FileManager, added F Notifications to factions.kit.halfplayer 2020-04-04 07:30:10 -04:00
Driftay d79b93d6c5 New Shop Config Format With Help, Removed Useless Code FactionsBlockListener Block Break Revamp, F Wild Revamp (DroppingAnvil) & Alot I can't remember xD 2020-04-04 05:09:05 -04:00
Driftay 0aeadcf0d0 Fixed F Lock 2020-04-03 19:02:34 -04:00
Driftay c237667def Added F Notifcations Command (Allows Players To Disable Notifications From Land Claiming) 2020-04-02 15:15:59 -04:00
Driftay 95a202d2cf Fixed Shop Comparison to XMaterial As Well As Added F Points Balance Command 2020-04-02 11:01:01 -04:00
Driftay 663bd96d26 Proper Distribution to Vankka For Proper Discord Code & Fixed F Leader Leaving Faction Disband Message 2020-04-02 08:33:33 -04:00
Driftay 4359a8b584 Update README.md 2020-03-27 08:31:05 -04:00
Driftay cd24b053dc Fixed Money Spam if Amount is 0 2020-03-26 01:11:57 -04:00
Driftay 66ad927b2f Multiple Messages From Disband Fixed 2020-03-25 15:50:19 -04:00
Driftay efae187e1a Removed Broadcast Message (SORRY) 2020-03-25 15:17:26 -04:00
Driftay 447860ab2d Small Json Util Fix 2020-03-25 02:41:50 -04:00
Driftay 6540e47ff5 Minor Reformat For Primary Group Fetching 2020-03-25 01:55:04 -04:00
Driftay e55f053e4d Version Change 2020-03-25 00:59:39 -04:00
Driftay 945edc946e Merge remote-tracking branch 'origin/1.6.x' into 1.6.x 2020-03-25 00:57:21 -04:00
Driftay 8cace99444 Changelog will be posted, add alot 2020-03-25 00:56:39 -04:00
Driftay 5d4735859b Merge pull request #54 from Lumpiasty/1.6.x
Add missing BLAST_FURNACE and SMOKER to Container permission
2020-03-24 11:22:34 -04:00
Lumpiasty cef153691d Add missing BLAST_FURNACE and SMOKER to Container permission 2020-03-24 16:05:37 +01:00
Driftay 4dec162d46 More Configurability 2020-03-23 16:31:33 -04:00
Driftay 606e82c890 Made F Stuck Toggleable 2020-03-23 16:11:54 -04:00
Driftay 323dce1c4f boolean to toggle f inspect on and off 2020-03-18 14:37:23 -04:00
Driftay 36c8d53a85 Configurable Option For Click To Claim 2020-03-10 06:36:47 -04:00
Driftay 81bac35b51 OCD Fixed 2020-03-03 00:45:56 -05:00
Driftay 19f09a6379 Version Change 2020-03-03 00:36:48 -05:00
Driftay 19ea590e5f Merge pull request #52 from MSWS/patch-1
Allow color codes in Faction Upgrade Title GUI
2020-02-26 06:52:42 -05:00
Driftay d6a274ddc5 Revert Deleted Line 2020-02-26 06:51:41 -05:00
Driftay 5591048136 Merge remote-tracking branch 'origin/1.6.x' into 1.6.x 2020-02-26 06:50:23 -05:00
Driftay fe7738fea0 Fixed Faction Alt And Member Limits 2020-02-26 06:50:07 -05:00
MSWS 3ba6e1f376 Allow color codes in Faction Upgrade Title GUI 2020-02-23 22:31:50 -08:00
droppinganvil dfbfbf9981 Merge remote-tracking branch 'origin/1.6.x' into 1.6.x 2020-02-16 22:59:48 -06:00
DroppingAnvil 13399c53c5 Added ability to customize the separator item in the Disband GUI. 2020-02-16 22:59:02 -06:00
Driftay 55d6af7195 Proper Distribution for Reserve Saving 2020-02-11 22:42:14 -05:00
Driftay 4f675dfd66 Version Change 2020-02-11 22:23:14 -05:00
Driftay 22957b641b Merge remote-tracking branch 'origin/1.6.x' into 1.6.x 2020-02-11 22:17:21 -05:00
Driftay 0fc3e47289 Fixed Spawner Mining Error 2020-02-11 22:17:01 -05:00
DroppingAnvil 730693aed1 Merge pull request #47 from N0tMyFaultOG/1.6.x
Fix typo in issue template
2020-02-07 13:10:41 -06:00
NotMyFault 61570be012 Fixed upercase version
Kinda triggering my ocd
2020-02-04 02:37:00 +01:00
Driftay bcc04e6174 Updated TimeUtil 2020-02-01 03:01:36 -05:00
Driftay d30780e06e Created Time Utility for Shields 2020-01-30 04:18:18 -05:00
Driftay ed73baf5f1 SeeChunk 1.15 Fix 2020-01-29 14:32:32 -05:00
Driftay 94d2035c78 Version Change 2020-01-27 00:52:52 -05:00
Driftay 8ff8c78a44 Fixed Mouse Movement for Wild Teleportation & Properly initialized tntfill aliases 2020-01-27 00:47:48 -05:00
Driftay 591dc2172f Fixed F Disband w/Admins Disbanding Other Factions 2020-01-26 16:17:08 -05:00
Driftay 1a4c860c46 Fixed F Power Upgrade 2020-01-26 16:08:03 -05:00
Driftay ad56264c5d 1.15 Support for Permissable Items & Fixed F Upgrades GUI Rows 2020-01-26 15:54:54 -05:00
Driftay def1a8b15a Merge remote-tracking branch 'origin/1.6.x' into 1.6.x 2020-01-26 12:51:58 -05:00
Driftay 8b577d360b Added Barrels to Container Permissible Action & Fixed NPE When running f seechunk on 1.15.1 2020-01-26 12:51:41 -05:00
DroppingAnvil f34ebc73fa Remove unused import. 2020-01-26 00:48:21 -06:00
DroppingAnvil c86db7ab51 Fix system factions with custom names fly permissions. 2020-01-26 00:48:21 -06:00
Driftay 070f239948 Merge remote-tracking branch 'origin/1.6.x' into 1.6.x 2020-01-20 03:47:25 -05:00
Driftay 018f08699d 1.15 Item Conversion Complete 2020-01-20 03:46:53 -05:00
Driftay 5542245b2a Update README.md 2020-01-20 03:07:36 -05:00
Driftay 6eb204587d Update README.md 2020-01-20 02:33:32 -05:00
Driftay ce1eedd7cd Home Fix & Version Change 2020-01-19 03:40:30 -05:00
Driftay 417cc57aa7 Confirmation Disband GUI Created 2020-01-19 02:55:56 -05:00
DroppingAnvil 57ac2c8c98 Fix getAccess for leaders 2020-01-18 21:26:21 -06:00
Driftay 25515d863e Fixed F Show & Made SaberFacs not Require Essentials 2020-01-18 02:33:01 -05:00
Driftay 2412931122 Reformat again 2020-01-18 02:20:11 -05:00
Driftay 51838df0d7 TntFill Fixed & Code Cleanup 2020-01-18 02:18:38 -05:00
Driftay e3e6f5561c Discord Placeholders 2020-01-17 21:50:34 -05:00
Driftay a54a7aa4fb Added Placeholders to papi 2020-01-17 21:45:18 -05:00
Driftay 9de773ddae Announcement Placeholder 2020-01-17 21:42:23 -05:00
Driftay 9a32cd9501 Adding some placeholders 2020-01-17 21:36:36 -05:00
DroppingAnvil 90d39a3974 Version change
1.6.9.5-2.2.5-RC -> 1.6.9.5-2.2.6-RC
2020-01-17 18:24:53 -06:00
DroppingAnvil 6544513ca7 Many F Fly bug fixes:
- Async get nearby entities
- Not respecting admin bypass
- Not respecting permissions for system claims
- Not respecting permissions for relations
- Sending fly disabled message when user is not flying
- Sending double messages when disabling
- Sometimes disabling fly while in creative and spectator game modes
2020-01-17 17:55:37 -06:00
DroppingAnvil f7619f0685 Fixed a few issues with CmdAdmin now being Async 2020-01-15 16:01:32 -06:00
droppinganvil a20c2ec2eb Tiny bug fix. 2020-01-15 15:21:02 -06:00
DroppingAnvil 028734a42c Shutdown JDA on disable. 2020-01-14 12:57:09 -06:00
DroppingAnvil 29b9eadd57 Fix mistype made in Aliases. 2020-01-10 20:41:12 -06:00
Driftay 83a33c2222 Version Change 2020-01-07 15:38:43 -05:00
Driftay c274918244 Removed everything shield wise for release with bug fixes 2020-01-07 15:37:46 -05:00
Driftay 57833bee13 Fixed TntFill (Again) -_- 2020-01-04 18:49:55 -05:00
Driftay 0a1346f1c2 Made Scoreboard Dummy Proof & Started Adding Shield Tasks Timers and Objects 2020-01-04 18:29:49 -05:00
Driftay 5145ae1714 Allowed players to continue using Essentials fly is Factions Fly is Disabled 2020-01-04 13:23:55 -05:00
Driftay 086ec3e145 Allowed Custom Heads to be in Faction Upgrades 2020-01-04 12:42:53 -05:00
Driftay d538502457 Added Enchanting on Level 1 or Higher for Upgrades 2020-01-04 12:26:23 -05:00
Driftay 978782e2fe Remade Faction GUI 2020-01-04 12:23:10 -05:00
Driftay ce1004d318 Removed Stream Code lol 2020-01-04 11:29:44 -05:00
Driftay 3545253844 Version Change 2020-01-03 18:53:52 -05:00
Driftay ad69019ba6 Fixed F Chest Logging 2020-01-03 18:53:01 -05:00
Driftay b8f6a05538 Re-added Mis-deleted code 2020-01-03 10:55:22 -05:00
Driftay 98b40d325a Fixed Chest Error, and Fixed Unban TL Translation 2020-01-03 05:04:12 -05:00
Driftay 8f2e58733d Decided to remove alot of open and closing brackets for no reason lol 2020-01-02 10:35:54 -05:00
Driftay ae17f3d788 Merge remote-tracking branch 'origin/1.6.x' into 1.6.x 2020-01-02 05:02:56 -05:00
DroppingAnvil a71bbd5b14 remove unused import. 2020-01-01 20:04:02 -06:00
DroppingAnvil 05e1a7297c Change any command (: also refixed tntfill 2020-01-01 19:59:31 -06:00
Driftay 1f9965b13a Fixed NPE Throwing From Console Disband 2020-01-01 02:34:59 -05:00
Driftay fb32d2155b Fixed Error being thrown with FRenameEvent 2020-01-01 02:11:20 -05:00
Driftay 4c90bae87c F Reserve System ReAdded 2019-12-31 02:56:45 -05:00
Driftay 05cfd5d8b0 Added AutoUpdating FMap on Click to Claim 2019-12-31 02:20:33 -05:00
Driftay b2fdcd5649 Fixed Click To Claim FLog 2019-12-31 01:45:33 -05:00
Driftay f4bfa83e24 Added FLog For Click to Claim Map 2019-12-31 01:42:22 -05:00
Driftay 4222dd9689 Added FLog For Claiming Single Chunk 2019-12-31 01:40:04 -05:00
Driftay ccb2dae890 Version Change 2019-12-31 01:15:30 -05:00
Driftay f7297c96c4 Flog Material & Slot Fixed 2019-12-31 00:20:00 -05:00
Driftay 87f0810914 Fixed WorldEdit Player Cast 2019-12-31 00:03:57 -05:00
Driftay 016c82fa85 FAudit Slots & Materials Configurable
Fixed IllegalPluginAccessException onDisable
2019-12-30 23:56:59 -05:00
Driftay fad866cf33 Fixed Bow Boosting 2019-12-29 17:30:12 -05:00
Driftay c3319ce109 Merge remote-tracking branch 'origin/1.6.x' into 1.6.x 2019-12-29 17:27:03 -05:00
Driftay ca5d7663f9 Added Default Size for F Chest 2019-12-29 17:26:29 -05:00
DroppingAnvil cee9c1f4d7 Update README.md 2019-12-28 13:59:12 -06:00
DroppingAnvil fb03d78234 Update README.md 2019-12-28 13:55:37 -06:00
Driftay e0134d680e Merge remote-tracking branch 'origin/1.6.x' into 1.6.x 2019-12-28 04:58:52 -05:00
Driftay 8e855bc9bb More Audit Things + Code Cleanup + SaberException Added for Debugging 2019-12-28 04:58:33 -05:00
DroppingAnvil 2772d85603 Added check for Discord system during setup. 2019-12-26 15:25:47 -06:00
Driftay acf06c78ed Removed Discord statTrace in Login Exception 2019-12-26 14:54:24 -05:00
Driftay cda1610a58 Added Brand New F Audit Base. 2019-12-24 22:19:49 -05:00
314 changed files with 8947 additions and 5473 deletions
+1 -1
View File
@@ -23,7 +23,7 @@ A clear and concise description of what you expected to happen.
**Screenshots**
If applicable, add screenshots to help explain your problem.
**Server VErsion (please complete the following information):**
**Server Version (please complete the following information):**
- Spigot Version: [e.g. Paperspigot 1.8.8]
- Factions Version [use /f version]
- Minecraft Version: [If a bug is dependent on client version]
+22 -16
View File
@@ -1,9 +1,9 @@
# SaberFactions
![Downloads](https://img.shields.io/github/downloads/driftay/saber-factions/total.svg) [![CodeFactor](https://www.codefactor.io/repository/github/driftay/saber-factions/badge)](https://www.codefactor.io/repository/github/driftay/saber-factions)
![Downloads](https://img.shields.io/github/downloads/driftay/saber-factions/total.svg) [![CodeFactor](https://www.codefactor.io/repository/github/driftay/saber-factions/badge)](https://www.codefactor.io/repository/github/driftay/saber-factions) [![License](https://img.shields.io/badge/license-GNU%20General%20Public%20License%20v3.0-brightgreen)](https://github.com/SaberLLC/Saber-Factions/blob/1.6.x/LICENSE) ![GitHub commit activity](https://img.shields.io/github/commit-activity/m/SaberLLC/Saber-Factions) [![](https://jitpack.io/v/SaberLLC/Saber-Factions.svg)](https://jitpack.io/#SaberLLC/Saber-Factions)
SaberFactions is a fork of both FactionsUUID and SavageFactions. Creators of those plugins include DtrShock and ProSavage. Credits to them.
SaberFactions is the newest, latest and greatest factions plugin designed for the best and most functional factions experience minecraft has seen!
SaberFactions is an exotic, performance optimized, and feature rich factions plugin that focuses on not only making the player experience as great as possibly but maintaining this aspect with the cost of NOTHING! We strive to continue development for SaberFactions as the factions community is strongly growing and seeking new players every day.
## Some Exciting Features
Some of our features include the following
@@ -14,21 +14,27 @@ Some of our features include the following
* More F Upgrades - Unbreakable Redstone Upgrade, Members Upgrade, and Power Upgrade.
* Factions Corner - In the corner of a world? No Problem /f corner will claim your entire buffer for you!
* Command Cooldowns - Configurable Command Cooldowns for most "spam" commands. And so Much More to Come!
* Faction Points - A point based currency that can be used for any aspect of factions gameplay!
* Faction Shop - A shop that essentially lets players buy in-game items in exchange for faction points!
* Faction Discord Integration - A discord intergrated factions bot for each faction to have their own personalized discord bot within their faction!
* Faction Audit - A full based logging system (GUI designed) to see every aspect of what happens in your faction!
* Factions Check System - An automated check system that alerts players when to check walls/buffers!
* Faction Reserves - A system designed to reserve a specific faction name for a specific player!
## Dependency With Maven
```
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
<dependency>
<groupId>com.github.Driftay</groupId>
<artifactId>Saber-Factions</artifactId>
<version>1.4.1</version>
</dependency>
<dependency>
<groupId>com.github.SaberLLC</groupId>
<artifactId>Saber-Factions</artifactId>
<version>2.3.3-STABLE</version>
</dependency>
```
## Moving Forward
@@ -36,8 +42,8 @@ Moving forward we plan to take all suggestions into consideration, as they come
We Plan on Releasing the latest and greatest factions/skyblock/prison plugins minecraft has to offer and wont settle for anything less
## Support
Our Discord is Currently In Progress of a Massive Overhaul, but we still encourage our community to join and express any concerns/questions/suggestions they may have!
https://discord.gg/37JvmM
Have a problem, question, or concer? We encourage our community to join and express any inquiry you may have
https://discord.saber.pw
Look forward to a bright future and a journey with all of you!
+4 -4
View File
@@ -128,7 +128,7 @@
<li><a href="com/massivecraft/factions/zcore/CommandVisibility.html" title="enum in com.massivecraft.factions.zcore" target="classFrame">CommandVisibility</a></li>
<li><a href="com/massivecraft/factions/Conf.html" title="class in com.massivecraft.factions" target="classFrame">Conf</a></li>
<li><a href="com/massivecraft/factions/Conf.Backend.html" title="enum in com.massivecraft.factions" target="classFrame">Conf.Backend</a></li>
<li><a href="com/massivecraft/factions/zcore/fupgrades/CropUpgrades.html" title="class in com.massivecraft.factions.zcore.fupgrades" target="classFrame">CropUpgrades</a></li>
<li><a href="com/massivecraft/factions/zcore/fupgrades/CropUpgrades.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades" target="classFrame">CropUpgrades</a></li>
<li><a href="com/massivecraft/factions/zcore/util/DiscUtil.html" title="class in com.massivecraft.factions.zcore.util" target="classFrame">DiscUtil</a></li>
<li><a href="com/massivecraft/factions/integration/dynmap/DynmapStyle.html" title="class in com.massivecraft.factions.integration.dynmap" target="classFrame">DynmapStyle</a></li>
<li><a href="com/massivecraft/factions/integration/Econ.html" title="class in com.massivecraft.factions.integration" target="classFrame">Econ</a></li>
@@ -136,7 +136,7 @@
<li><a href="com/massivecraft/factions/integration/dynmap/EngineDynmap.html" title="class in com.massivecraft.factions.integration.dynmap" target="classFrame">EngineDynmap</a></li>
<li><a href="com/massivecraft/factions/util/EnumTypeAdapter.html" title="class in com.massivecraft.factions.util" target="classFrame">EnumTypeAdapter</a></li>
<li><a href="com/massivecraft/factions/integration/Essentials.html" title="class in com.massivecraft.factions.integration" target="classFrame">Essentials</a></li>
<li><a href="com/massivecraft/factions/zcore/fupgrades/EXPUpgrade.html" title="class in com.massivecraft.factions.zcore.fupgrades" target="classFrame">EXPUpgrade</a></li>
<li><a href="com/massivecraft/factions/zcore/fupgrades/EXPUpgrade.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades" target="classFrame">EXPUpgrade</a></li>
<li><a href="com/massivecraft/factions/Faction.html" title="interface in com.massivecraft.factions" target="classFrame"><span class="interfaceName">Faction</span></a></li>
<li><a href="com/massivecraft/factions/event/FactionCreateEvent.html" title="class in com.massivecraft.factions.event" target="classFrame">FactionCreateEvent</a></li>
<li><a href="com/massivecraft/factions/event/FactionDisbandEvent.html" title="class in com.massivecraft.factions.event" target="classFrame">FactionDisbandEvent</a></li>
@@ -171,7 +171,7 @@
<li><a href="com/massivecraft/factions/scoreboards/FScoreboard.html" title="class in com.massivecraft.factions.scoreboards" target="classFrame">FScoreboard</a></li>
<li><a href="com/massivecraft/factions/scoreboards/FSidebarProvider.html" title="class in com.massivecraft.factions.scoreboards" target="classFrame">FSidebarProvider</a></li>
<li><a href="com/massivecraft/factions/scoreboards/FTeamWrapper.html" title="class in com.massivecraft.factions.scoreboards" target="classFrame">FTeamWrapper</a></li>
<li><a href="com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.fupgrades" target="classFrame">FUpgradesGUI</a></li>
<li><a href="com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades" target="classFrame">FUpgradesGUI</a></li>
<li><a href="com/massivecraft/factions/zcore/nbtapi/utils/GsonWrapper.html" title="class in com.massivecraft.factions.zcore.nbtapi.utils" target="classFrame">GsonWrapper</a></li>
<li><a href="com/massivecraft/factions/util/InventoryTypeAdapter.html" title="class in com.massivecraft.factions.util" target="classFrame">InventoryTypeAdapter</a></li>
<li><a href="com/massivecraft/factions/util/InventoryUtil.html" title="class in com.massivecraft.factions.util" target="classFrame">InventoryUtil</a></li>
@@ -242,7 +242,7 @@
title="class in com.massivecraft.factions">SaberFactions</a></li>
<li><a href="com/massivecraft/factions/zcore/persist/SaveTask.html" title="class in com.massivecraft.factions.zcore.persist" target="classFrame">SaveTask</a></li>
<li><a href="com/massivecraft/factions/zcore/util/SmokeUtil.html" title="class in com.massivecraft.factions.zcore.util" target="classFrame">SmokeUtil</a></li>
<li><a href="com/massivecraft/factions/zcore/fupgrades/SpawnerUpgrades.html" title="class in com.massivecraft.factions.zcore.fupgrades" target="classFrame">SpawnerUpgrades</a></li>
<li><a href="com/massivecraft/factions/zcore/fupgrades/SpawnerUpgrades.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades" target="classFrame">SpawnerUpgrades</a></li>
<li><a href="com/massivecraft/factions/util/SpiralTask.html" title="class in com.massivecraft.factions.util" target="classFrame">SpiralTask</a></li>
<li><a href="com/massivecraft/factions/zcore/util/TagReplacer.html" title="enum in com.massivecraft.factions.zcore.util" target="classFrame">TagReplacer</a></li>
<li><a href="com/massivecraft/factions/zcore/util/TagReplacer.TagType.html" title="enum in com.massivecraft.factions.zcore.util" target="classFrame">TagReplacer.TagType</a></li>
+3 -3
View File
@@ -942,7 +942,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<th class="colLast" scope="row">&nbsp;</th>
</tr>
<tr class="rowColor" id="i207">
<td class="colFirst"><a href="com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.fupgrades">FUpgradesGUI</a></td>
<td class="colFirst"><a href="com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades">FUpgradesGUI</a></td>
<th class="colLast" scope="row">&nbsp;</th>
</tr>
<tr class="altColor" id="i208">
@@ -1364,11 +1364,11 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
</th>
</tr>
<tr class="rowColor" id="i301">
<td class="colFirst"><a href="com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html" title="class in com.massivecraft.factions.zcore.fupgrades">UpgradesListener</a></td>
<td class="colFirst"><a href="com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades">UpgradesListener</a></td>
<th class="colLast" scope="row">&nbsp;</th>
</tr>
<tr class="altColor" id="i302">
<td class="colFirst"><a href="com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a></td>
<td class="colFirst"><a href="com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a></td>
<th class="colLast" scope="row">&nbsp;</th>
</tr>
<tr class="rowColor" id="i303">
+4 -4
View File
@@ -128,7 +128,7 @@
<li><a href="com/massivecraft/factions/zcore/CommandVisibility.html" title="enum in com.massivecraft.factions.zcore">CommandVisibility</a></li>
<li><a href="com/massivecraft/factions/Conf.html" title="class in com.massivecraft.factions">Conf</a></li>
<li><a href="com/massivecraft/factions/Conf.Backend.html" title="enum in com.massivecraft.factions">Conf.Backend</a></li>
<li><a href="com/massivecraft/factions/zcore/fupgrades/CropUpgrades.html" title="class in com.massivecraft.factions.zcore.fupgrades">CropUpgrades</a></li>
<li><a href="com/massivecraft/factions/zcore/fupgrades/CropUpgrades.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades">CropUpgrades</a></li>
<li><a href="com/massivecraft/factions/zcore/util/DiscUtil.html" title="class in com.massivecraft.factions.zcore.util">DiscUtil</a></li>
<li><a href="com/massivecraft/factions/integration/dynmap/DynmapStyle.html" title="class in com.massivecraft.factions.integration.dynmap">DynmapStyle</a></li>
<li><a href="com/massivecraft/factions/integration/Econ.html" title="class in com.massivecraft.factions.integration">Econ</a></li>
@@ -136,7 +136,7 @@
<li><a href="com/massivecraft/factions/integration/dynmap/EngineDynmap.html" title="class in com.massivecraft.factions.integration.dynmap">EngineDynmap</a></li>
<li><a href="com/massivecraft/factions/util/EnumTypeAdapter.html" title="class in com.massivecraft.factions.util">EnumTypeAdapter</a></li>
<li><a href="com/massivecraft/factions/integration/Essentials.html" title="class in com.massivecraft.factions.integration">Essentials</a></li>
<li><a href="com/massivecraft/factions/zcore/fupgrades/EXPUpgrade.html" title="class in com.massivecraft.factions.zcore.fupgrades">EXPUpgrade</a></li>
<li><a href="com/massivecraft/factions/zcore/fupgrades/EXPUpgrade.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades">EXPUpgrade</a></li>
<li><a href="com/massivecraft/factions/Faction.html" title="interface in com.massivecraft.factions"><span class="interfaceName">Faction</span></a></li>
<li><a href="com/massivecraft/factions/event/FactionCreateEvent.html" title="class in com.massivecraft.factions.event">FactionCreateEvent</a></li>
<li><a href="com/massivecraft/factions/event/FactionDisbandEvent.html" title="class in com.massivecraft.factions.event">FactionDisbandEvent</a></li>
@@ -171,7 +171,7 @@
<li><a href="com/massivecraft/factions/scoreboards/FScoreboard.html" title="class in com.massivecraft.factions.scoreboards">FScoreboard</a></li>
<li><a href="com/massivecraft/factions/scoreboards/FSidebarProvider.html" title="class in com.massivecraft.factions.scoreboards">FSidebarProvider</a></li>
<li><a href="com/massivecraft/factions/scoreboards/FTeamWrapper.html" title="class in com.massivecraft.factions.scoreboards">FTeamWrapper</a></li>
<li><a href="com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.fupgrades">FUpgradesGUI</a></li>
<li><a href="com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades">FUpgradesGUI</a></li>
<li><a href="com/massivecraft/factions/zcore/nbtapi/utils/GsonWrapper.html" title="class in com.massivecraft.factions.zcore.nbtapi.utils">GsonWrapper</a></li>
<li><a href="com/massivecraft/factions/util/InventoryTypeAdapter.html" title="class in com.massivecraft.factions.util">InventoryTypeAdapter</a></li>
<li><a href="com/massivecraft/factions/util/InventoryUtil.html" title="class in com.massivecraft.factions.util">InventoryUtil</a></li>
@@ -242,7 +242,7 @@
</li>
<li><a href="com/massivecraft/factions/zcore/persist/SaveTask.html" title="class in com.massivecraft.factions.zcore.persist">SaveTask</a></li>
<li><a href="com/massivecraft/factions/zcore/util/SmokeUtil.html" title="class in com.massivecraft.factions.zcore.util">SmokeUtil</a></li>
<li><a href="com/massivecraft/factions/zcore/fupgrades/SpawnerUpgrades.html" title="class in com.massivecraft.factions.zcore.fupgrades">SpawnerUpgrades</a></li>
<li><a href="com/massivecraft/factions/zcore/fupgrades/SpawnerUpgrades.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades">SpawnerUpgrades</a></li>
<li><a href="com/massivecraft/factions/util/SpiralTask.html" title="class in com.massivecraft.factions.util">SpiralTask</a></li>
<li><a href="com/massivecraft/factions/zcore/util/TagReplacer.html" title="enum in com.massivecraft.factions.zcore.util">TagReplacer</a></li>
<li><a href="com/massivecraft/factions/zcore/util/TagReplacer.TagType.html" title="enum in com.massivecraft.factions.zcore.util">TagReplacer.TagType</a></li>
+1 -1
View File
@@ -223,7 +223,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="com/massivecraft/factions/zcore/fupgrades/package-summary.html">com.massivecraft.factions.zcore.fupgrades</a></th>
<th class="colFirst" scope="row"><a href="com/massivecraft/factions/zcore/fupgrades/package-summary.html">com.massivecraft.factions.zcore.frame.fupgrades</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
@@ -630,7 +630,7 @@ extends <a href="iface/EconomyParticipator.html" title="interface in com.massive
</tr>
<tr class="altColor" id="i96">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getUpgrade(com.massivecraft.factions.zcore.fupgrades.UpgradeType)">getUpgrade</a></span>&#8203;(<a href="zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a>&nbsp;upgrade)</code></th>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getUpgrade(com.massivecraft.factions.zcore.frame.fupgrades.UpgradeType)">getUpgrade</a></span>&#8203;(<a href="zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a>&nbsp;upgrade)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor" id="i97">
@@ -1066,7 +1066,7 @@ extends <a href="iface/EconomyParticipator.html" title="interface in com.massive
</tr>
<tr class="rowColor" id="i181">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setUpgrade(com.massivecraft.factions.zcore.fupgrades.UpgradeType,int)">setUpgrade</a></span>&#8203;(<a href="zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a>&nbsp;upgrade,
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setUpgrade(com.massivecraft.factions.zcore.frame.fupgrades.UpgradeType,int)">setUpgrade</a></span>&#8203;(<a href="zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a>&nbsp;upgrade,
int&nbsp;level)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
@@ -1743,23 +1743,23 @@ extends <a href="iface/EconomyParticipator.html" title="interface in com.massive
<pre class="methodSignature">void&nbsp;deinvite&#8203;(<a href="FPlayer.html" title="interface in com.massivecraft.factions">FPlayer</a>&nbsp;fplayer)</pre>
</li>
</ul>
<a id="setUpgrade(com.massivecraft.factions.zcore.fupgrades.UpgradeType,int)">
<a id="setUpgrade(com.massivecraft.factions.zcore.frame.fupgrades.UpgradeType,int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUpgrade</h4>
<pre class="methodSignature">void&nbsp;setUpgrade&#8203;(<a href="zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a>&nbsp;upgrade,
<pre class="methodSignature">void&nbsp;setUpgrade&#8203;(<a href="zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a>&nbsp;upgrade,
int&nbsp;level)</pre>
</li>
</ul>
<a id="getUpgrade(com.massivecraft.factions.zcore.fupgrades.UpgradeType)">
<a id="getUpgrade(com.massivecraft.factions.zcore.frame.fupgrades.UpgradeType)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getUpgrade</h4>
<pre class="methodSignature">int&nbsp;getUpgrade&#8203;(<a href="zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a>&nbsp;upgrade)</pre>
<pre class="methodSignature">int&nbsp;getUpgrade&#8203;(<a href="zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a>&nbsp;upgrade)</pre>
</li>
</ul>
<a id="isInvited(com.massivecraft.factions.FPlayer)">
@@ -107,7 +107,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>com.massivecraft.factions.util.FactionWarpsFrame</li>
<li>com.massivecraft.factions.zcore.frame.fdisband.FactionWarpsFrame</li>
</ul>
</li>
</ul>
@@ -107,7 +107,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>com.massivecraft.factions.util.InventoryTypeAdapter</li>
<li>com.massivecraft.factions.util.adapters.InventoryTypeAdapter</li>
</ul>
</li>
</ul>
@@ -107,7 +107,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>com.massivecraft.factions.util.LocationTypeAdapter</li>
<li>com.massivecraft.factions.util.adapters.LocationTypeAdapter</li>
</ul>
</li>
</ul>
@@ -107,7 +107,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>com.massivecraft.factions.util.MapFLocToStringSetTypeAdapter</li>
<li>com.massivecraft.factions.util.adapters.MapFLocToStringSetTypeAdapter</li>
</ul>
</li>
</ul>
@@ -107,7 +107,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>com.massivecraft.factions.util.MyLocationTypeAdapter</li>
<li>com.massivecraft.factions.util.adapters.MyLocationTypeAdapter</li>
</ul>
</li>
</ul>
@@ -107,7 +107,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>com.massivecraft.factions.util.PermissionsMapTypeAdapter</li>
<li>com.massivecraft.factions.util.adapters.PermissionsMapTypeAdapter</li>
</ul>
</li>
</ul>
@@ -49,7 +49,7 @@ var activeTableTab = "activeTableTab";
<div class="subNav">
<ul class="navList">
<li>Prev&nbsp;Class</li>
<li><a href="../../../../../com/massivecraft/factions/zcore/fupgrades/EXPUpgrade.html" title="class in com.massivecraft.factions.zcore.fupgrades"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
<li><a href="../../../../../com/massivecraft/factions/zcore/fupgrades/EXPUpgrade.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?com/massivecraft/factions/zcore/fupgrades/CropUpgrades.html" target="_top">Frames</a></li>
@@ -91,7 +91,7 @@ var activeTableTab = "activeTableTab";
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">com.massivecraft.factions.zcore.fupgrades</div>
<div class="subTitle">com.massivecraft.factions.zcore.frame.fupgrades</div>
<h2 title="Class CropUpgrades" class="title">Class CropUpgrades</h2>
</div>
<div class="contentContainer">
@@ -99,7 +99,7 @@ var activeTableTab = "activeTableTab";
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>com.massivecraft.factions.zcore.fupgrades.CropUpgrades</li>
<li>com.massivecraft.factions.zcore.frame.fupgrades.CropUpgrades</li>
</ul>
</li>
</ul>
@@ -230,7 +230,7 @@ implements org.bukkit.event.Listener</pre>
<div class="subNav">
<ul class="navList">
<li>Prev&nbsp;Class</li>
<li><a href="../../../../../com/massivecraft/factions/zcore/fupgrades/EXPUpgrade.html" title="class in com.massivecraft.factions.zcore.fupgrades"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
<li><a href="../../../../../com/massivecraft/factions/zcore/fupgrades/EXPUpgrade.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?com/massivecraft/factions/zcore/fupgrades/CropUpgrades.html" target="_top">Frames</a></li>
@@ -48,8 +48,8 @@ var activeTableTab = "activeTableTab";
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../com/massivecraft/factions/zcore/fupgrades/CropUpgrades.html" title="class in com.massivecraft.factions.zcore.fupgrades"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.fupgrades"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
<li><a href="../../../../../com/massivecraft/factions/zcore/fupgrades/CropUpgrades.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?com/massivecraft/factions/zcore/fupgrades/EXPUpgrade.html" target="_top">Frames</a></li>
@@ -91,7 +91,7 @@ var activeTableTab = "activeTableTab";
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">com.massivecraft.factions.zcore.fupgrades</div>
<div class="subTitle">com.massivecraft.factions.zcore.frame.fupgrades</div>
<h2 title="Class EXPUpgrade" class="title">Class EXPUpgrade</h2>
</div>
<div class="contentContainer">
@@ -99,7 +99,7 @@ var activeTableTab = "activeTableTab";
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>com.massivecraft.factions.zcore.fupgrades.EXPUpgrade</li>
<li>com.massivecraft.factions.zcore.frame.fupgrades.EXPUpgrade</li>
</ul>
</li>
</ul>
@@ -229,8 +229,8 @@ implements org.bukkit.event.Listener</pre>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../com/massivecraft/factions/zcore/fupgrades/CropUpgrades.html" title="class in com.massivecraft.factions.zcore.fupgrades"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.fupgrades"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
<li><a href="../../../../../com/massivecraft/factions/zcore/fupgrades/CropUpgrades.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?com/massivecraft/factions/zcore/fupgrades/EXPUpgrade.html" target="_top">Frames</a></li>
@@ -99,7 +99,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">com.massivecraft.factions.zcore.fupgrades</a></div>
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">com.massivecraft.factions.zcore.frame.fupgrades</a></div>
<h2 title="Class FUpgradesGUI" class="title">Class FUpgradesGUI</h2>
</div>
<div class="contentContainer">
@@ -107,7 +107,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>com.massivecraft.factions.zcore.fupgrades.FUpgradesGUI</li>
<li>com.massivecraft.factions.zcore.frame.fupgrades.FUpgradesGUI</li>
</ul>
</li>
</ul>
@@ -48,7 +48,7 @@ var activeTableTab = "activeTableTab";
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.fupgrades"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li>Next&nbsp;Class</li>
</ul>
<ul class="navList">
@@ -91,7 +91,7 @@ var activeTableTab = "activeTableTab";
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">com.massivecraft.factions.zcore.fupgrades</div>
<div class="subTitle">com.massivecraft.factions.zcore.frame.fupgrades</div>
<h2 title="Class SpawnerUpgrades" class="title">Class SpawnerUpgrades</h2>
</div>
<div class="contentContainer">
@@ -99,7 +99,7 @@ var activeTableTab = "activeTableTab";
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>com.massivecraft.factions.zcore.fupgrades.SpawnerUpgrades</li>
<li>com.massivecraft.factions.zcore.frame.fupgrades.SpawnerUpgrades</li>
</ul>
</li>
</ul>
@@ -229,7 +229,7 @@ implements org.bukkit.event.Listener</pre>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.fupgrades"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li>Next&nbsp;Class</li>
</ul>
<ul class="navList">
@@ -99,7 +99,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">com.massivecraft.factions.zcore.fupgrades</a></div>
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">com.massivecraft.factions.zcore.frame.fupgrades</a></div>
<h2 title="Enum UpgradeType" class="title">Enum UpgradeType</h2>
</div>
<div class="contentContainer">
@@ -107,10 +107,10 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>java.lang.Enum&lt;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a>&gt;</li>
<li>java.lang.Enum&lt;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a>&gt;</li>
<li>
<ul class="inheritance">
<li>com.massivecraft.factions.zcore.fupgrades.UpgradeType</li>
<li>com.massivecraft.factions.zcore.frame.fupgrades.UpgradeType</li>
</ul>
</li>
</ul>
@@ -121,11 +121,11 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code>java.io.Serializable</code>, <code>java.lang.Comparable&lt;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a>&gt;</code>, <code>java.lang.constant.Constable</code></dd>
<dd><code>java.io.Serializable</code>, <code>java.lang.Comparable&lt;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a>&gt;</code>, <code>java.lang.constant.Constable</code></dd>
</dl>
<hr>
<pre>public enum <span class="typeNameLabel">UpgradeType</span>
extends java.lang.Enum&lt;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a>&gt;</pre>
extends java.lang.Enum&lt;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a>&gt;</pre>
</li>
</ul>
</div>
@@ -241,14 +241,14 @@ extends java.lang.Enum&lt;<a href="UpgradeType.html" title="enum in com.massivec
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor" id="i1">
<td class="colFirst"><code>static <a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a></code></td>
<td class="colFirst"><code>static <a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#valueOf(java.lang.String)">valueOf</a></span>&#8203;(java.lang.String&nbsp;name)</code></th>
<td class="colLast">
<div class="block">Returns the enum constant of this type with the specified name.</div>
</td>
</tr>
<tr class="altColor" id="i2">
<td class="colFirst"><code>static <a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a>[]</code></td>
<td class="colFirst"><code>static <a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a>[]</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#values()">values</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns an array containing the constants of this enum type, in
@@ -295,7 +295,7 @@ the order they are declared.</div>
<ul class="blockList">
<li class="blockList">
<h4>CHEST</h4>
<pre>public static final&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a> CHEST</pre>
<pre>public static final&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a> CHEST</pre>
</li>
</ul>
<a id="SPAWNER">
@@ -304,7 +304,7 @@ the order they are declared.</div>
<ul class="blockList">
<li class="blockList">
<h4>SPAWNER</h4>
<pre>public static final&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a> SPAWNER</pre>
<pre>public static final&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a> SPAWNER</pre>
</li>
</ul>
<a id="EXP">
@@ -313,7 +313,7 @@ the order they are declared.</div>
<ul class="blockList">
<li class="blockList">
<h4>EXP</h4>
<pre>public static final&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a> EXP</pre>
<pre>public static final&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a> EXP</pre>
</li>
</ul>
<a id="CROP">
@@ -322,7 +322,7 @@ the order they are declared.</div>
<ul class="blockList">
<li class="blockList">
<h4>CROP</h4>
<pre>public static final&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a> CROP</pre>
<pre>public static final&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a> CROP</pre>
</li>
</ul>
<a id="POWER">
@@ -331,7 +331,7 @@ the order they are declared.</div>
<ul class="blockList">
<li class="blockList">
<h4>POWER</h4>
<pre>public static final&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a> POWER</pre>
<pre>public static final&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a> POWER</pre>
</li>
</ul>
<a id="REDSTONE">
@@ -340,7 +340,7 @@ the order they are declared.</div>
<ul class="blockList">
<li class="blockList">
<h4>REDSTONE</h4>
<pre>public static final&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a> REDSTONE</pre>
<pre>public static final&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a> REDSTONE</pre>
</li>
</ul>
<a id="MEMBERS">
@@ -349,7 +349,7 @@ the order they are declared.</div>
<ul class="blockList">
<li class="blockList">
<h4>MEMBERS</h4>
<pre>public static final&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a> MEMBERS</pre>
<pre>public static final&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a> MEMBERS</pre>
</li>
</ul>
<a id="TNT">
@@ -358,7 +358,7 @@ the order they are declared.</div>
<ul class="blockList">
<li class="blockList">
<h4>TNT</h4>
<pre>public static final&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a> TNT</pre>
<pre>public static final&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a> TNT</pre>
</li>
</ul>
<a id="WARP">
@@ -367,7 +367,7 @@ the order they are declared.</div>
<ul class="blockList">
<li class="blockList">
<h4>WARP</h4>
<pre>public static final&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a> WARP</pre>
<pre>public static final&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a> WARP</pre>
</li>
</ul>
<a id="DAMAGEINCREASE">
@@ -376,7 +376,7 @@ the order they are declared.</div>
<ul class="blockList">
<li class="blockList">
<h4>DAMAGEINCREASE</h4>
<pre>public static final&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a> DAMAGEINCREASE</pre>
<pre>public static final&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a> DAMAGEINCREASE</pre>
</li>
</ul>
<a id="DAMAGEDECREASE">
@@ -385,7 +385,7 @@ the order they are declared.</div>
<ul class="blockList">
<li class="blockList">
<h4>DAMAGEDECREASE</h4>
<pre>public static final&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a> DAMAGEDECREASE</pre>
<pre>public static final&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a> DAMAGEDECREASE</pre>
</li>
</ul>
<a id="REINFORCEDARMOR">
@@ -394,7 +394,7 @@ the order they are declared.</div>
<ul class="blockListLast">
<li class="blockList">
<h4>REINFORCEDARMOR</h4>
<pre>public static final&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a> REINFORCEDARMOR</pre>
<pre>public static final&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a> REINFORCEDARMOR</pre>
</li>
</ul>
</li>
@@ -413,7 +413,7 @@ the order they are declared.</div>
<ul class="blockList">
<li class="blockList">
<h4>values</h4>
<pre class="methodSignature">public static&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a>[]&nbsp;values()</pre>
<pre class="methodSignature">public static&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a>[]&nbsp;values()</pre>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
<dl>
@@ -428,7 +428,7 @@ the order they are declared.</div>
<ul class="blockList">
<li class="blockList">
<h4>valueOf</h4>
<pre class="methodSignature">public static&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a>&nbsp;valueOf&#8203;(java.lang.String&nbsp;name)</pre>
<pre class="methodSignature">public static&nbsp;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a>&nbsp;valueOf&#8203;(java.lang.String&nbsp;name)</pre>
<div class="block">Returns the enum constant of this type with the specified name.
The string must match <i>exactly</i> an identifier used to declare an
enum constant in this type. (Extraneous whitespace characters are
@@ -453,7 +453,7 @@ not permitted.)</div>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;toString()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>toString</code>&nbsp;in class&nbsp;<code>java.lang.Enum&lt;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a>&gt;</code></dd>
<dd><code>toString</code>&nbsp;in class&nbsp;<code>java.lang.Enum&lt;<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a>&gt;</code></dd>
</dl>
</li>
</ul>
@@ -99,7 +99,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">com.massivecraft.factions.zcore.fupgrades</a></div>
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">com.massivecraft.factions.zcore.frame.fupgrades</a></div>
<h2 title="Class UpgradesListener" class="title">Class UpgradesListener</h2>
</div>
<div class="contentContainer">
@@ -107,7 +107,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>com.massivecraft.factions.zcore.fupgrades.UpgradesListener</li>
<li>com.massivecraft.factions.zcore.frame.fupgrades.UpgradesListener</li>
</ul>
</li>
</ul>
@@ -3,20 +3,20 @@
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_191) on Thu Dec 06 16:05:50 CST 2018 -->
<title>com.massivecraft.factions.zcore.fupgrades</title>
<title>com.massivecraft.factions.zcore.frame.fupgrades</title>
<meta content="2018-12-06" name="date">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
</head>
<body>
<h1 class="bar"><a href="../../../../../com/massivecraft/factions/zcore/fupgrades/package-summary.html" target="classFrame">com.massivecraft.factions.zcore.fupgrades</a></h1>
<h1 class="bar"><a href="../../../../../com/massivecraft/factions/zcore/fupgrades/package-summary.html" target="classFrame">com.massivecraft.factions.zcore.frame.fupgrades</a></h1>
<div class="indexContainer">
<h2 title="Classes">Classes</h2>
<ul title="Classes">
<li><a href="CropUpgrades.html" title="class in com.massivecraft.factions.zcore.fupgrades" target="classFrame">CropUpgrades</a></li>
<li><a href="EXPUpgrade.html" title="class in com.massivecraft.factions.zcore.fupgrades" target="classFrame">EXPUpgrade</a></li>
<li><a href="FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.fupgrades" target="classFrame">FUpgradesGUI</a></li>
<li><a href="SpawnerUpgrades.html" title="class in com.massivecraft.factions.zcore.fupgrades" target="classFrame">SpawnerUpgrades</a></li>
<li><a href="CropUpgrades.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades" target="classFrame">CropUpgrades</a></li>
<li><a href="EXPUpgrade.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades" target="classFrame">EXPUpgrade</a></li>
<li><a href="FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades" target="classFrame">FUpgradesGUI</a></li>
<li><a href="SpawnerUpgrades.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades" target="classFrame">SpawnerUpgrades</a></li>
</ul>
</div>
</body>
@@ -3,7 +3,7 @@
<html lang="en">
<head>
<!-- Generated by javadoc (12.0.1) on Fri Nov 01 13:30:56 CDT 2019 -->
<title>com.massivecraft.factions.zcore.fupgrades</title>
<title>com.massivecraft.factions.zcore.frame.fupgrades</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="dc.created" content="2019-11-01">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
@@ -77,7 +77,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
</header>
<main role="main">
<div class="header">
<h1 title="Package" class="title">Package&nbsp;com.massivecraft.factions.zcore.fupgrades</h1>
<h1 title="Package" class="title">Package&nbsp;com.massivecraft.factions.zcore.frame.fupgrades</h1>
</div>
<div class="contentContainer">
<ul class="blockList">
@@ -91,11 +91,11 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
</tr>
<tbody>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.fupgrades">FUpgradesGUI</a></th>
<th class="colFirst" scope="row"><a href="FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades">FUpgradesGUI</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="UpgradesListener.html" title="class in com.massivecraft.factions.zcore.fupgrades">UpgradesListener</a></th>
<th class="colFirst" scope="row"><a href="UpgradesListener.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades">UpgradesListener</a></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
@@ -112,7 +112,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
</tr>
<tbody>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a></th>
<th class="colFirst" scope="row"><a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
@@ -3,7 +3,7 @@
<html lang="en">
<head>
<!-- Generated by javadoc (12.0.1) on Fri Nov 01 13:30:56 CDT 2019 -->
<title>com.massivecraft.factions.zcore.fupgrades Class Hierarchy</title>
<title>com.massivecraft.factions.zcore.frame.fupgrades Class Hierarchy</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="dc.created" content="2019-11-01">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
@@ -22,15 +22,15 @@
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="com.massivecraft.factions.zcore.fupgrades Class Hierarchy";
parent.document.title="com.massivecraft.factions.zcore.frame.fupgrades Class Hierarchy";
}
}
catch(err) {
}
//-->
var pathtoroot = "../../../../../";
var useModuleDirectories = true;
loadScripts(document, 'script');</script>
var pathtoroot = "../../../../../";
var useModuleDirectories = true;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
@@ -77,7 +77,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
</header>
<main role="main">
<div class="header">
<h1 class="title">Hierarchy For Package com.massivecraft.factions.zcore.fupgrades</h1>
<h1 class="title">Hierarchy For Package com.massivecraft.factions.zcore.frame.fupgrades</h1>
<span class="packageHierarchyLabel">Package Hierarchies:</span>
<ul class="horizontal">
<li><a href="../../../../../overview-tree.html">All Packages</a></li>
@@ -89,8 +89,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<ul>
<li class="circle">java.lang.Object
<ul>
<li class="circle">com.massivecraft.factions.zcore.fupgrades.<a href="FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.fupgrades"><span class="typeNameLink">FUpgradesGUI</span></a> (implements org.bukkit.event.Listener)</li>
<li class="circle">com.massivecraft.factions.zcore.fupgrades.<a href="UpgradesListener.html" title="class in com.massivecraft.factions.zcore.fupgrades"><span class="typeNameLink">UpgradesListener</span></a> (implements org.bukkit.event.Listener)</li>
<li class="circle">com.massivecraft.factions.zcore.frame.fupgrades.<a href="FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades"><span class="typeNameLink">FUpgradesGUI</span></a> (implements org.bukkit.event.Listener)</li>
<li class="circle">com.massivecraft.factions.zcore.frame.fupgrades.<a href="UpgradesListener.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades"><span class="typeNameLink">UpgradesListener</span></a> (implements org.bukkit.event.Listener)</li>
</ul>
</li>
</ul>
@@ -102,7 +102,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<ul>
<li class="circle">java.lang.Enum&lt;E&gt; (implements java.lang.Comparable&lt;T&gt;, java.lang.constant.Constable, java.io.Serializable)
<ul>
<li class="circle">com.massivecraft.factions.zcore.fupgrades.<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades"><span class="typeNameLink">UpgradeType</span></a></li>
<li class="circle">com.massivecraft.factions.zcore.frame.fupgrades.<a href="UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades"><span class="typeNameLink">UpgradeType</span></a></li>
</ul>
</li>
</ul>
@@ -888,7 +888,7 @@ implements <a href="../../Faction.html" title="interface in com.massivecraft.fac
</tr>
<tr class="altColor" id="i98">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getUpgrade(com.massivecraft.factions.zcore.fupgrades.UpgradeType)">getUpgrade</a></span>&#8203;(<a href="../fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a>&nbsp;upgrade)</code></th>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getUpgrade(com.massivecraft.factions.zcore.frame.fupgrades.UpgradeType)">getUpgrade</a></span>&#8203;(<a href="../fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a>&nbsp;upgrade)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor" id="i99">
@@ -1334,7 +1334,7 @@ implements <a href="../../Faction.html" title="interface in com.massivecraft.fac
</tr>
<tr class="rowColor" id="i185">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setUpgrade(com.massivecraft.factions.zcore.fupgrades.UpgradeType,int)">setUpgrade</a></span>&#8203;(<a href="../fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a>&nbsp;upgrade,
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setUpgrade(com.massivecraft.factions.zcore.frame.fupgrades.UpgradeType,int)">setUpgrade</a></span>&#8203;(<a href="../fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a>&nbsp;upgrade,
int&nbsp;level)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
@@ -2455,16 +2455,16 @@ implements <a href="../../Faction.html" title="interface in com.massivecraft.fac
</dl>
</li>
</ul>
<a id="getUpgrade(com.massivecraft.factions.zcore.fupgrades.UpgradeType)">
<a id="getUpgrade(com.massivecraft.factions.zcore.frame.fupgrades.UpgradeType)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getUpgrade</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;getUpgrade&#8203;(<a href="../fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a>&nbsp;upgrade)</pre>
<pre class="methodSignature">public&nbsp;int&nbsp;getUpgrade&#8203;(<a href="../fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a>&nbsp;upgrade)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../Faction.html#getUpgrade(com.massivecraft.factions.zcore.fupgrades.UpgradeType)">getUpgrade</a></code>&nbsp;in interface&nbsp;<code><a href="../../Faction.html" title="interface in com.massivecraft.factions">Faction</a></code></dd>
<dd><code><a href="../../Faction.html#getUpgrade(com.massivecraft.factions.zcore.frame.fupgrades.UpgradeType)">getUpgrade</a></code>&nbsp;in interface&nbsp;<code><a href="../../Faction.html" title="interface in com.massivecraft.factions">Faction</a></code></dd>
</dl>
</li>
</ul>
@@ -2598,17 +2598,17 @@ implements <a href="../../Faction.html" title="interface in com.massivecraft.fac
</dl>
</li>
</ul>
<a id="setUpgrade(com.massivecraft.factions.zcore.fupgrades.UpgradeType,int)">
<a id="setUpgrade(com.massivecraft.factions.zcore.frame.fupgrades.UpgradeType,int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUpgrade</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setUpgrade&#8203;(<a href="../fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a>&nbsp;upgrade,
<pre class="methodSignature">public&nbsp;void&nbsp;setUpgrade&#8203;(<a href="../fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a>&nbsp;upgrade,
int&nbsp;level)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../Faction.html#setUpgrade(com.massivecraft.factions.zcore.fupgrades.UpgradeType,int)">setUpgrade</a></code>&nbsp;in interface&nbsp;<code><a href="../../Faction.html" title="interface in com.massivecraft.factions">Faction</a></code></dd>
<dd><code><a href="../../Faction.html#setUpgrade(com.massivecraft.factions.zcore.frame.fupgrades.UpgradeType,int)">setUpgrade</a></code>&nbsp;in interface&nbsp;<code><a href="../../Faction.html" title="interface in com.massivecraft.factions">Faction</a></code></dd>
</dl>
</li>
</ul>
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -31,7 +31,7 @@ com.massivecraft.factions.util.Particles
com.massivecraft.factions.zcore
com.massivecraft.factions.zcore.fperms
com.massivecraft.factions.zcore.fperms.gui
com.massivecraft.factions.zcore.fupgrades
com.massivecraft.factions.zcore.frame.fupgrades
com.massivecraft.factions.zcore.nbtapi
com.massivecraft.factions.zcore.nbtapi.utils
com.massivecraft.factions.zcore.persist
+1 -1
View File
@@ -235,7 +235,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/cmd/CommandRequirements.Builder.html#memberOnly()">memberOnly()</a></span> - Method in class com.massivecraft.factions.cmd.<a href="../com/massivecraft/factions/cmd/CommandRequirements.Builder.html" title="class in com.massivecraft.factions.cmd">CommandRequirements.Builder</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#MEMBERS">MEMBERS</a></span> - com.massivecraft.factions.zcore.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#MEMBERS">MEMBERS</a></span> - com.massivecraft.factions.zcore.frame.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a></dt>
<dd>&nbsp;</dd>
<dt><a href="../com/massivecraft/factions/zcore/persist/MemoryBoard.html" title="class in com.massivecraft.factions.zcore.persist"><span class="typeNameLink">MemoryBoard</span></a> - Class in <a href="../com/massivecraft/factions/zcore/persist/package-summary.html">com.massivecraft.factions.zcore.persist</a></dt>
<dd>&nbsp;</dd>
+9 -9
View File
@@ -129,7 +129,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/util/TagReplacer.html#OFFLINE_LIST">OFFLINE_LIST</a></span> - com.massivecraft.factions.zcore.util.<a href="../com/massivecraft/factions/zcore/util/TagReplacer.html" title="enum in com.massivecraft.factions.zcore.util">TagReplacer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html#onArmorDamage(org.bukkit.event.player.PlayerItemDamageEvent)">onArmorDamage(PlayerItemDamageEvent)</a></span> - Method in class com.massivecraft.factions.zcore.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html" title="class in com.massivecraft.factions.zcore.fupgrades">UpgradesListener</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html#onArmorDamage(org.bukkit.event.player.PlayerItemDamageEvent)">onArmorDamage(PlayerItemDamageEvent)</a></span> - Method in class com.massivecraft.factions.zcore.frame.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades">UpgradesListener</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/listeners/FactionsBlockListener.html#onBannerBreak(org.bukkit.event.block.BlockBreakEvent)">onBannerBreak(BlockBreakEvent)</a></span> - Method in class com.massivecraft.factions.listeners.<a href="../com/massivecraft/factions/listeners/FactionsBlockListener.html" title="class in com.massivecraft.factions.listeners">FactionsBlockListener</a></dt>
<dd>&nbsp;</dd>
@@ -163,7 +163,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/util/FactionGUI.html#onClick(int,org.bukkit.event.inventory.ClickType)">onClick(int, ClickType)</a></span> - Method in interface com.massivecraft.factions.util.<a href="../com/massivecraft/factions/util/FactionGUI.html" title="interface in com.massivecraft.factions.util">FactionGUI</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html#onClick(org.bukkit.event.inventory.InventoryClickEvent)">onClick(InventoryClickEvent)</a></span> - Method in class com.massivecraft.factions.zcore.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.fupgrades">FUpgradesGUI</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html#onClick(org.bukkit.event.inventory.InventoryClickEvent)">onClick(InventoryClickEvent)</a></span> - Method in class com.massivecraft.factions.zcore.frame.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades">FUpgradesGUI</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/listeners/FactionsPlayerListener.html#onClose(org.bukkit.event.inventory.InventoryCloseEvent)">onClose(InventoryCloseEvent)</a></span> - Method in class com.massivecraft.factions.listeners.<a href="../com/massivecraft/factions/listeners/FactionsPlayerListener.html" title="class in com.massivecraft.factions.listeners">FactionsPlayerListener</a></dt>
<dd>&nbsp;</dd>
@@ -175,19 +175,19 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/listeners/FactionsEntityListener.html#onCreeperGlitch(org.bukkit.event.entity.EntityDamageEvent)">onCreeperGlitch(EntityDamageEvent)</a></span> - Method in class com.massivecraft.factions.listeners.<a href="../com/massivecraft/factions/listeners/FactionsEntityListener.html" title="class in com.massivecraft.factions.listeners">FactionsEntityListener</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html#onCropGrow(org.bukkit.event.block.BlockGrowEvent)">onCropGrow(BlockGrowEvent)</a></span> - Method in class com.massivecraft.factions.zcore.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html" title="class in com.massivecraft.factions.zcore.fupgrades">UpgradesListener</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html#onCropGrow(org.bukkit.event.block.BlockGrowEvent)">onCropGrow(BlockGrowEvent)</a></span> - Method in class com.massivecraft.factions.zcore.frame.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades">UpgradesListener</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/listeners/FactionsPlayerListener.html#onDamage(org.bukkit.event.entity.EntityDamageEvent)">onDamage(EntityDamageEvent)</a></span> - Method in class com.massivecraft.factions.listeners.<a href="../com/massivecraft/factions/listeners/FactionsPlayerListener.html" title="class in com.massivecraft.factions.listeners">FactionsPlayerListener</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html#onDamageIncrease(org.bukkit.event.entity.EntityDamageByEntityEvent)">onDamageIncrease(EntityDamageByEntityEvent)</a></span> - Static method in class com.massivecraft.factions.zcore.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html" title="class in com.massivecraft.factions.zcore.fupgrades">UpgradesListener</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html#onDamageIncrease(org.bukkit.event.entity.EntityDamageByEntityEvent)">onDamageIncrease(EntityDamageByEntityEvent)</a></span> - Static method in class com.massivecraft.factions.zcore.frame.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades">UpgradesListener</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html#onDamageReduction(org.bukkit.event.entity.EntityDamageByEntityEvent)">onDamageReduction(EntityDamageByEntityEvent)</a></span> - Static method in class com.massivecraft.factions.zcore.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html" title="class in com.massivecraft.factions.zcore.fupgrades">UpgradesListener</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html#onDamageReduction(org.bukkit.event.entity.EntityDamageByEntityEvent)">onDamageReduction(EntityDamageByEntityEvent)</a></span> - Static method in class com.massivecraft.factions.zcore.frame.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades">UpgradesListener</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/FPlayer.html#onDeath()">onDeath()</a></span> - Method in interface com.massivecraft.factions.<a href="../com/massivecraft/factions/FPlayer.html" title="interface in com.massivecraft.factions">FPlayer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/persist/MemoryFPlayer.html#onDeath()">onDeath()</a></span> - Method in class com.massivecraft.factions.zcore.persist.<a href="../com/massivecraft/factions/zcore/persist/MemoryFPlayer.html" title="class in com.massivecraft.factions.zcore.persist">MemoryFPlayer</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html#onDeath(org.bukkit.event.entity.EntityDeathEvent)">onDeath(EntityDeathEvent)</a></span> - Method in class com.massivecraft.factions.zcore.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html" title="class in com.massivecraft.factions.zcore.fupgrades">UpgradesListener</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html#onDeath(org.bukkit.event.entity.EntityDeathEvent)">onDeath(EntityDeathEvent)</a></span> - Method in class com.massivecraft.factions.zcore.frame.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades">UpgradesListener</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/FactionsPlugin.html#onDisable()">onDisable()</a></span> - Method in class com.massivecraft.factions.<a href="../com/massivecraft/factions/FactionsPlugin.html" title="class in com.massivecraft.factions">FactionsPlugin</a></dt>
<dd>&nbsp;</dd>
@@ -307,7 +307,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/listeners/FactionsEntityListener.html#onPotionSplashEvent(org.bukkit.event.entity.PotionSplashEvent)">onPotionSplashEvent(PotionSplashEvent)</a></span> - Method in class com.massivecraft.factions.listeners.<a href="../com/massivecraft/factions/listeners/FactionsEntityListener.html" title="class in com.massivecraft.factions.listeners">FactionsEntityListener</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html#onSpawn(org.bukkit.event.entity.SpawnerSpawnEvent)">onSpawn(SpawnerSpawnEvent)</a></span> - Method in class com.massivecraft.factions.zcore.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html" title="class in com.massivecraft.factions.zcore.fupgrades">UpgradesListener</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html#onSpawn(org.bukkit.event.entity.SpawnerSpawnEvent)">onSpawn(SpawnerSpawnEvent)</a></span> - Method in class com.massivecraft.factions.zcore.frame.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades">UpgradesListener</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/FactionsPlugin.html#onTabComplete(org.bukkit.command.CommandSender,org.bukkit.command.Command,java.lang.String,java.lang.String%5B%5D)">onTabComplete(CommandSender, Command, String, String[])</a></span> - Method in class com.massivecraft.factions.<a href="../com/massivecraft/factions/FactionsPlugin.html" title="class in com.massivecraft.factions">FactionsPlugin</a></dt>
<dd>&nbsp;</dd>
@@ -319,13 +319,13 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/listeners/FactionsBlockListener.html#onVaultPlace(org.bukkit.event.block.BlockPlaceEvent)">onVaultPlace(BlockPlaceEvent)</a></span> - Method in class com.massivecraft.factions.listeners.<a href="../com/massivecraft/factions/listeners/FactionsBlockListener.html" title="class in com.massivecraft.factions.listeners">FactionsBlockListener</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html#onWaterRedstone(org.bukkit.event.block.BlockFromToEvent)">onWaterRedstone(BlockFromToEvent)</a></span> - Method in class com.massivecraft.factions.zcore.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html" title="class in com.massivecraft.factions.zcore.fupgrades">UpgradesListener</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html#onWaterRedstone(org.bukkit.event.block.BlockFromToEvent)">onWaterRedstone(BlockFromToEvent)</a></span> - Method in class com.massivecraft.factions.zcore.frame.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades">UpgradesListener</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/persist/MemoryFaction.html#open">open</a></span> - Variable in class com.massivecraft.factions.zcore.persist.<a href="../com/massivecraft/factions/zcore/persist/MemoryFaction.html" title="class in com.massivecraft.factions.zcore.persist">MemoryFaction</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/struct/Permission.html#OPEN">OPEN</a></span> - com.massivecraft.factions.struct.<a href="../com/massivecraft/factions/struct/Permission.html" title="enum in com.massivecraft.factions.struct">Permission</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html#openMainMenu(com.massivecraft.factions.FPlayer)">openMainMenu(FPlayer)</a></span> - Method in class com.massivecraft.factions.zcore.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.fupgrades">FUpgradesGUI</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html#openMainMenu(com.massivecraft.factions.FPlayer)">openMainMenu(FPlayer)</a></span> - Method in class com.massivecraft.factions.zcore.frame.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades">FUpgradesGUI</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/cmd/FCommand.html#optionalArgs">optionalArgs</a></span> - Variable in class com.massivecraft.factions.cmd.<a href="../com/massivecraft/factions/cmd/FCommand.html" title="class in com.massivecraft.factions.cmd">FCommand</a></dt>
<dd>&nbsp;</dd>
+1 -1
View File
@@ -922,7 +922,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/tag/FactionTag.html#POWER">POWER</a></span> - com.massivecraft.factions.tag.<a href="../com/massivecraft/factions/tag/FactionTag.html" title="enum in com.massivecraft.factions.tag">FactionTag</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#POWER">POWER</a></span> - com.massivecraft.factions.zcore.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#POWER">POWER</a></span> - com.massivecraft.factions.zcore.frame.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/util/TagReplacer.html#POWER">POWER</a></span> - com.massivecraft.factions.zcore.util.<a href="../com/massivecraft/factions/zcore/util/TagReplacer.html" title="enum in com.massivecraft.factions.zcore.util">TagReplacer</a></dt>
<dd>&nbsp;</dd>
+2 -2
View File
@@ -193,7 +193,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/util/XMaterial.html#REDSTONE">REDSTONE</a></span> - com.massivecraft.factions.util.<a href="../com/massivecraft/factions/util/XMaterial.html" title="enum in com.massivecraft.factions.util">XMaterial</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#REDSTONE">REDSTONE</a></span> - com.massivecraft.factions.zcore.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#REDSTONE">REDSTONE</a></span> - com.massivecraft.factions.zcore.frame.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/util/XMaterial.html#REDSTONE_BLOCK">REDSTONE_BLOCK</a></span> - com.massivecraft.factions.util.<a href="../com/massivecraft/factions/util/XMaterial.html" title="enum in com.massivecraft.factions.util">XMaterial</a></dt>
<dd>&nbsp;</dd>
@@ -239,7 +239,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/FLocation.html#regionToChunk(int)">regionToChunk(int)</a></span> - Static method in class com.massivecraft.factions.<a href="../com/massivecraft/factions/FLocation.html" title="class in com.massivecraft.factions">FLocation</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#REINFORCEDARMOR">REINFORCEDARMOR</a></span> - com.massivecraft.factions.zcore.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#REINFORCEDARMOR">REINFORCEDARMOR</a></span> - com.massivecraft.factions.zcore.frame.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a></dt>
<dd>&nbsp;</dd>
<dt><a href="../com/massivecraft/factions/struct/Relation.html" title="enum in com.massivecraft.factions.struct"><span class="typeNameLink">Relation</span></a> - Enum in <a href="../com/massivecraft/factions/struct/package-summary.html">com.massivecraft.factions.struct</a></dt>
<dd>&nbsp;</dd>
+3 -3
View File
@@ -757,9 +757,9 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<dd>
<div class="block">This method hooks into all permission plugins we are supporting</div>
</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/Faction.html#setUpgrade(com.massivecraft.factions.zcore.fupgrades.UpgradeType,int)">setUpgrade(UpgradeType, int)</a></span> - Method in interface com.massivecraft.factions.<a href="../com/massivecraft/factions/Faction.html" title="interface in com.massivecraft.factions">Faction</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/Faction.html#setUpgrade(com.massivecraft.factions.zcore.frame.fupgrades.UpgradeType,int)">setUpgrade(UpgradeType, int)</a></span> - Method in interface com.massivecraft.factions.<a href="../com/massivecraft/factions/Faction.html" title="interface in com.massivecraft.factions">Faction</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/persist/MemoryFaction.html#setUpgrade(com.massivecraft.factions.zcore.fupgrades.UpgradeType,int)">setUpgrade(UpgradeType, int)</a></span> - Method in class com.massivecraft.factions.zcore.persist.<a href="../com/massivecraft/factions/zcore/persist/MemoryFaction.html" title="class in com.massivecraft.factions.zcore.persist">MemoryFaction</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/persist/MemoryFaction.html#setUpgrade(com.massivecraft.factions.zcore.frame.fupgrades.UpgradeType,int)">setUpgrade(UpgradeType, int)</a></span> - Method in class com.massivecraft.factions.zcore.persist.<a href="../com/massivecraft/factions/zcore/persist/MemoryFaction.html" title="class in com.massivecraft.factions.zcore.persist">MemoryFaction</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/util/Particles/ReflectionUtils.html#setValue(java.lang.Object,boolean,java.lang.String,java.lang.Object)">setValue(Object, boolean, String, Object)</a></span> - Static method in class com.massivecraft.factions.util.Particles.<a href="../com/massivecraft/factions/util/Particles/ReflectionUtils.html" title="class in com.massivecraft.factions.util.Particles">ReflectionUtils</a></dt>
<dd>
@@ -1009,7 +1009,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fperms/PermissableAction.html#SPAWNER">SPAWNER</a></span> - com.massivecraft.factions.zcore.fperms.<a href="../com/massivecraft/factions/zcore/fperms/PermissableAction.html" title="enum in com.massivecraft.factions.zcore.fperms">PermissableAction</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#SPAWNER">SPAWNER</a></span> - com.massivecraft.factions.zcore.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#SPAWNER">SPAWNER</a></span> - com.massivecraft.factions.zcore.frame.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/Conf.html#spawnerLock">spawnerLock</a></span> - Static variable in class com.massivecraft.factions.<a href="../com/massivecraft/factions/Conf.html" title="class in com.massivecraft.factions">Conf</a></dt>
<dd>&nbsp;</dd>
+2 -2
View File
@@ -236,7 +236,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/util/XMaterial.html#TNT">TNT</a></span> - com.massivecraft.factions.util.<a href="../com/massivecraft/factions/util/XMaterial.html" title="enum in com.massivecraft.factions.util">XMaterial</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#TNT">TNT</a></span> - com.massivecraft.factions.zcore.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#TNT">TNT</a></span> - com.massivecraft.factions.zcore.frame.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/util/XMaterial.html#TNT_MINECART">TNT_MINECART</a></span> - com.massivecraft.factions.util.<a href="../com/massivecraft/factions/util/XMaterial.html" title="enum in com.massivecraft.factions.util">XMaterial</a></dt>
<dd>&nbsp;</dd>
@@ -284,7 +284,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fperms/PermissableAction.html#toString()">toString()</a></span> - Method in enum com.massivecraft.factions.zcore.fperms.<a href="../com/massivecraft/factions/zcore/fperms/PermissableAction.html" title="enum in com.massivecraft.factions.zcore.fperms">PermissableAction</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#toString()">toString()</a></span> - Method in enum com.massivecraft.factions.zcore.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#toString()">toString()</a></span> - Method in enum com.massivecraft.factions.zcore.frame.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/nbtapi/NBTCompound.html#toString()">toString()</a></span> - Method in class com.massivecraft.factions.zcore.nbtapi.<a href="../com/massivecraft/factions/zcore/nbtapi/NBTCompound.html" title="class in com.massivecraft.factions.zcore.nbtapi">NBTCompound</a></dt>
<dd>&nbsp;</dd>
+3 -3
View File
@@ -139,11 +139,11 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/struct/Permission.html#UPGRADES">UPGRADES</a></span> - com.massivecraft.factions.struct.<a href="../com/massivecraft/factions/struct/Permission.html" title="enum in com.massivecraft.factions.struct">Permission</a></dt>
<dd>&nbsp;</dd>
<dt><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html" title="class in com.massivecraft.factions.zcore.fupgrades"><span class="typeNameLink">UpgradesListener</span></a> - Class in <a href="../com/massivecraft/factions/zcore/fupgrades/package-summary.html">com.massivecraft.factions.zcore.fupgrades</a></dt>
<dt><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades"><span class="typeNameLink">UpgradesListener</span></a> - Class in <a href="../com/massivecraft/factions/zcore/fupgrades/package-summary.html">com.massivecraft.factions.zcore.frame.fupgrades</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html#%3Cinit%3E()">UpgradesListener()</a></span> - Constructor for class com.massivecraft.factions.zcore.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html" title="class in com.massivecraft.factions.zcore.fupgrades">UpgradesListener</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html#%3Cinit%3E()">UpgradesListener()</a></span> - Constructor for class com.massivecraft.factions.zcore.frame.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades">UpgradesListener</a></dt>
<dd>&nbsp;</dd>
<dt><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades"><span class="typeNameLink">UpgradeType</span></a> - Enum in <a href="../com/massivecraft/factions/zcore/fupgrades/package-summary.html">com.massivecraft.factions.zcore.fupgrades</a></dt>
<dt><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades"><span class="typeNameLink">UpgradeType</span></a> - Enum in <a href="../com/massivecraft/factions/zcore/fupgrades/package-summary.html">com.massivecraft.factions.zcore.frame.fupgrades</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/util/TextUtil.html#upperCaseFirst(java.lang.String)">upperCaseFirst(String)</a></span> - Static method in class com.massivecraft.factions.zcore.util.<a href="../com/massivecraft/factions/zcore/util/TextUtil.html" title="class in com.massivecraft.factions.zcore.util">TextUtil</a></dt>
<dd>&nbsp;</dd>
+2 -2
View File
@@ -213,7 +213,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum com.massivecraft.factions.zcore.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum com.massivecraft.factions.zcore.frame.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a></dt>
<dd>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</dd>
@@ -362,7 +362,7 @@ the order they are declared.</div>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#values()">values()</a></span> - Static method in enum com.massivecraft.factions.zcore.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#values()">values()</a></span> - Static method in enum com.massivecraft.factions.zcore.frame.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a></dt>
<dd>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
+1 -1
View File
@@ -123,7 +123,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fperms/PermissableAction.html#WARP">WARP</a></span> - com.massivecraft.factions.zcore.fperms.<a href="../com/massivecraft/factions/zcore/fperms/PermissableAction.html" title="enum in com.massivecraft.factions.zcore.fperms">PermissableAction</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#WARP">WARP</a></span> - com.massivecraft.factions.zcore.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#WARP">WARP</a></span> - com.massivecraft.factions.zcore.frame.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/persist/MemoryFaction.html#warpPasswords">warpPasswords</a></span> - Variable in class com.massivecraft.factions.zcore.persist.<a href="../com/massivecraft/factions/zcore/persist/MemoryFaction.html" title="class in com.massivecraft.factions.zcore.persist">MemoryFaction</a></dt>
<dd>&nbsp;</dd>
+3 -3
View File
@@ -347,7 +347,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fperms/PermissableAction.html#CHEST">CHEST</a></span> - com.massivecraft.factions.zcore.fperms.<a href="../com/massivecraft/factions/zcore/fperms/PermissableAction.html" title="enum in com.massivecraft.factions.zcore.fperms">PermissableAction</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#CHEST">CHEST</a></span> - com.massivecraft.factions.zcore.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#CHEST">CHEST</a></span> - com.massivecraft.factions.zcore.frame.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/util/TL.html#CHEST_ITEM_DENIED_TRANSFER">CHEST_ITEM_DENIED_TRANSFER</a></span> - com.massivecraft.factions.zcore.util.<a href="../com/massivecraft/factions/zcore/util/TL.html" title="enum in com.massivecraft.factions.zcore.util">TL</a></dt>
<dd>&nbsp;</dd>
@@ -1445,7 +1445,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<dd>&nbsp;</dd>
<dt><a href="../com/massivecraft/factions/zcore/fperms/gui/package-summary.html">com.massivecraft.factions.zcore.fperms.gui</a> - package com.massivecraft.factions.zcore.fperms.gui</dt>
<dd>&nbsp;</dd>
<dt><a href="../com/massivecraft/factions/zcore/fupgrades/package-summary.html">com.massivecraft.factions.zcore.fupgrades</a> - package com.massivecraft.factions.zcore.fupgrades</dt>
<dt><a href="../com/massivecraft/factions/zcore/fupgrades/package-summary.html">com.massivecraft.factions.zcore.frame.fupgrades</a> - package com.massivecraft.factions.zcore.frame.fupgrades</dt>
<dd>&nbsp;</dd>
<dt><a href="../com/massivecraft/factions/zcore/nbtapi/package-summary.html">com.massivecraft.factions.zcore.nbtapi</a> - package com.massivecraft.factions.zcore.nbtapi</dt>
<dd>&nbsp;</dd>
@@ -3103,7 +3103,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
The speed value influences the velocity at which the particle flies off
</div>
</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#CROP">CROP</a></span> - com.massivecraft.factions.zcore.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#CROP">CROP</a></span> - com.massivecraft.factions.zcore.frame.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/util/XMaterial.html#CROSSBOW">CROSSBOW</a></span> - com.massivecraft.factions.util.<a href="../com/massivecraft/factions/util/XMaterial.html" title="enum in com.massivecraft.factions.util">XMaterial</a></dt>
<dd>&nbsp;</dd>
+2 -2
View File
@@ -87,9 +87,9 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/util/XMaterial.html#DAMAGED_ANVIL">DAMAGED_ANVIL</a></span> - com.massivecraft.factions.util.<a href="../com/massivecraft/factions/util/XMaterial.html" title="enum in com.massivecraft.factions.util">XMaterial</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#DAMAGEDECREASE">DAMAGEDECREASE</a></span> - com.massivecraft.factions.zcore.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#DAMAGEDECREASE">DAMAGEDECREASE</a></span> - com.massivecraft.factions.zcore.frame.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#DAMAGEINCREASE">DAMAGEINCREASE</a></span> - com.massivecraft.factions.zcore.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#DAMAGEINCREASE">DAMAGEINCREASE</a></span> - com.massivecraft.factions.zcore.frame.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/util/XMaterial.html#DANDELION">DANDELION</a></span> - com.massivecraft.factions.util.<a href="../com/massivecraft/factions/util/XMaterial.html" title="enum in com.massivecraft.factions.util">XMaterial</a></dt>
<dd>&nbsp;</dd>
+1 -1
View File
@@ -279,7 +279,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/MCommand.html#execute(org.bukkit.command.CommandSender,java.util.List,java.util.List)">execute(CommandSender, List&lt;String&gt;, List&lt;MCommand&lt;?&gt;&gt;)</a></span> - Method in class com.massivecraft.factions.zcore.<a href="../com/massivecraft/factions/zcore/MCommand.html" title="class in com.massivecraft.factions.zcore">MCommand</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#EXP">EXP</a></span> - com.massivecraft.factions.zcore.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades">UpgradeType</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html#EXP">EXP</a></span> - com.massivecraft.factions.zcore.frame.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades">UpgradeType</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/util/XMaterial.html#EXPERIENCE_BOTTLE">EXPERIENCE_BOTTLE</a></span> - com.massivecraft.factions.util.<a href="../com/massivecraft/factions/util/XMaterial.html" title="enum in com.massivecraft.factions.util">XMaterial</a></dt>
<dd>&nbsp;</dd>
+2 -2
View File
@@ -533,9 +533,9 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<dd>&nbsp;</dd>
<dt><a href="../com/massivecraft/factions/scoreboards/FTeamWrapper.html" title="class in com.massivecraft.factions.scoreboards"><span class="typeNameLink">FTeamWrapper</span></a> - Class in <a href="../com/massivecraft/factions/scoreboards/package-summary.html">com.massivecraft.factions.scoreboards</a></dt>
<dd>&nbsp;</dd>
<dt><a href="../com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.fupgrades"><span class="typeNameLink">FUpgradesGUI</span></a> - Class in <a href="../com/massivecraft/factions/zcore/fupgrades/package-summary.html">com.massivecraft.factions.zcore.fupgrades</a></dt>
<dt><a href="../com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades"><span class="typeNameLink">FUpgradesGUI</span></a> - Class in <a href="../com/massivecraft/factions/zcore/fupgrades/package-summary.html">com.massivecraft.factions.zcore.frame.fupgrades</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html#%3Cinit%3E()">FUpgradesGUI()</a></span> - Constructor for class com.massivecraft.factions.zcore.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.fupgrades">FUpgradesGUI</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html#%3Cinit%3E()">FUpgradesGUI()</a></span> - Constructor for class com.massivecraft.factions.zcore.frame.fupgrades.<a href="../com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades">FUpgradesGUI</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/util/XMaterial.html#FURNACE">FURNACE</a></span> - com.massivecraft.factions.util.<a href="../com/massivecraft/factions/util/XMaterial.html" title="enum in com.massivecraft.factions.util">XMaterial</a></dt>
<dd>&nbsp;</dd>
+2 -2
View File
@@ -1528,9 +1528,9 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/nbtapi/utils/MethodNames.html#getTypeMethodName()">getTypeMethodName()</a></span> - Static method in class com.massivecraft.factions.zcore.nbtapi.utils.<a href="../com/massivecraft/factions/zcore/nbtapi/utils/MethodNames.html" title="class in com.massivecraft.factions.zcore.nbtapi.utils">MethodNames</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/Faction.html#getUpgrade(com.massivecraft.factions.zcore.fupgrades.UpgradeType)">getUpgrade(UpgradeType)</a></span> - Method in interface com.massivecraft.factions.<a href="../com/massivecraft/factions/Faction.html" title="interface in com.massivecraft.factions">Faction</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/Faction.html#getUpgrade(com.massivecraft.factions.zcore.frame.fupgrades.UpgradeType)">getUpgrade(UpgradeType)</a></span> - Method in interface com.massivecraft.factions.<a href="../com/massivecraft/factions/Faction.html" title="interface in com.massivecraft.factions">Faction</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/persist/MemoryFaction.html#getUpgrade(com.massivecraft.factions.zcore.fupgrades.UpgradeType)">getUpgrade(UpgradeType)</a></span> - Method in class com.massivecraft.factions.zcore.persist.<a href="../com/massivecraft/factions/zcore/persist/MemoryFaction.html" title="class in com.massivecraft.factions.zcore.persist">MemoryFaction</a></dt>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/zcore/persist/MemoryFaction.html#getUpgrade(com.massivecraft.factions.zcore.frame.fupgrades.UpgradeType)">getUpgrade(UpgradeType)</a></span> - Method in class com.massivecraft.factions.zcore.persist.<a href="../com/massivecraft/factions/zcore/persist/MemoryFaction.html" title="class in com.massivecraft.factions.zcore.persist">MemoryFaction</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="../com/massivecraft/factions/cmd/FCommand.html#getUsageTemplate(com.massivecraft.factions.cmd.CommandContext)">getUsageTemplate(CommandContext)</a></span> - Method in class com.massivecraft.factions.cmd.<a href="../com/massivecraft/factions/cmd/FCommand.html" title="class in com.massivecraft.factions.cmd">FCommand</a></dt>
<dd>&nbsp;</dd>
+1 -1
View File
@@ -218,7 +218,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor" id="i33">
<th class="colFirst" scope="row"><a href="com/massivecraft/factions/zcore/fupgrades/package-summary.html">com.massivecraft.factions.zcore.fupgrades</a></th>
<th class="colFirst" scope="row"><a href="com/massivecraft/factions/zcore/fupgrades/package-summary.html">com.massivecraft.factions.zcore.frame.fupgrades</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor" id="i34">
+1 -1
View File
@@ -28,7 +28,7 @@
<li><a href="com/massivecraft/factions/zcore/package-frame.html" target="packageFrame">com.massivecraft.factions.zcore</a></li>
<li><a href="com/massivecraft/factions/zcore/fperms/package-frame.html" target="packageFrame">com.massivecraft.factions.zcore.fperms</a></li>
<li><a href="com/massivecraft/factions/zcore/fperms/gui/package-frame.html" target="packageFrame">com.massivecraft.factions.zcore.fperms.gui</a></li>
<li><a href="com/massivecraft/factions/zcore/fupgrades/package-frame.html" target="packageFrame">com.massivecraft.factions.zcore.fupgrades</a></li>
<li><a href="com/massivecraft/factions/zcore/fupgrades/package-frame.html" target="packageFrame">com.massivecraft.factions.zcore.frame.fupgrades</a></li>
<li><a href="com/massivecraft/factions/zcore/nbtapi/package-frame.html" target="packageFrame">com.massivecraft.factions.zcore.nbtapi</a></li>
<li><a href="com/massivecraft/factions/zcore/nbtapi/utils/package-frame.html" target="packageFrame">com.massivecraft.factions.zcore.nbtapi.utils</a></li>
<li><a href="com/massivecraft/factions/zcore/persist/package-frame.html" target="packageFrame">com.massivecraft.factions.zcore.persist</a></li>
+4 -4
View File
@@ -113,7 +113,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<li><a href="com/massivecraft/factions/zcore/package-tree.html">com.massivecraft.factions.zcore</a>, </li>
<li><a href="com/massivecraft/factions/zcore/fperms/package-tree.html">com.massivecraft.factions.zcore.fperms</a>, </li>
<li><a href="com/massivecraft/factions/zcore/fperms/gui/package-tree.html">com.massivecraft.factions.zcore.fperms.gui</a>, </li>
<li><a href="com/massivecraft/factions/zcore/fupgrades/package-tree.html">com.massivecraft.factions.zcore.fupgrades</a>, </li>
<li><a href="com/massivecraft/factions/zcore/fupgrades/package-tree.html">com.massivecraft.factions.zcore.frame.fupgrades</a>, </li>
<li><a href="com/massivecraft/factions/zcore/nbtapi/package-tree.html">com.massivecraft.factions.zcore.nbtapi</a>, </li>
<li><a href="com/massivecraft/factions/zcore/nbtapi/utils/package-tree.html">com.massivecraft.factions.zcore.nbtapi.utils</a>, </li>
<li><a href="com/massivecraft/factions/zcore/persist/package-tree.html">com.massivecraft.factions.zcore.persist</a>, </li>
@@ -379,7 +379,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
</ul>
</li>
<li class="circle">com.massivecraft.factions.scoreboards.<a href="com/massivecraft/factions/scoreboards/FTeamWrapper.html" title="class in com.massivecraft.factions.scoreboards"><span class="typeNameLink">FTeamWrapper</span></a></li>
<li class="circle">com.massivecraft.factions.zcore.fupgrades.<a href="com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.fupgrades"><span class="typeNameLink">FUpgradesGUI</span></a> (implements org.bukkit.event.Listener)</li>
<li class="circle">com.massivecraft.factions.zcore.frame.fupgrades.<a href="com/massivecraft/factions/zcore/fupgrades/FUpgradesGUI.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades"><span class="typeNameLink">FUpgradesGUI</span></a> (implements org.bukkit.event.Listener)</li>
<li class="circle">com.massivecraft.factions.zcore.nbtapi.utils.<a href="com/massivecraft/factions/zcore/nbtapi/utils/GsonWrapper.html" title="class in com.massivecraft.factions.zcore.nbtapi.utils"><span class="typeNameLink">GsonWrapper</span></a></li>
<li class="circle">com.massivecraft.factions.util.<a href="com/massivecraft/factions/util/InventoryTypeAdapter.html" title="class in com.massivecraft.factions.util"><span class="typeNameLink">InventoryTypeAdapter</span></a> (implements com.google.gson.JsonDeserializer&lt;T&gt;, com.google.gson.JsonSerializer&lt;T&gt;)</li>
<li class="circle">com.massivecraft.factions.util.<a href="com/massivecraft/factions/util/InventoryUtil.html" title="class in com.massivecraft.factions.util"><span class="typeNameLink">InventoryUtil</span></a></li>
@@ -493,7 +493,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<li class="circle">com.massivecraft.factions.util.<a href="com/massivecraft/factions/util/EnumTypeAdapter.html" title="class in com.massivecraft.factions.util"><span class="typeNameLink">EnumTypeAdapter</span></a>&lt;T&gt;</li>
</ul>
</li>
<li class="circle">com.massivecraft.factions.zcore.fupgrades.<a href="com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html" title="class in com.massivecraft.factions.zcore.fupgrades"><span class="typeNameLink">UpgradesListener</span></a> (implements org.bukkit.event.Listener)</li>
<li class="circle">com.massivecraft.factions.zcore.frame.fupgrades.<a href="com/massivecraft/factions/zcore/fupgrades/UpgradesListener.html" title="class in com.massivecraft.factions.zcore.frame.fupgrades"><span class="typeNameLink">UpgradesListener</span></a> (implements org.bukkit.event.Listener)</li>
<li class="circle">com.massivecraft.factions.util.<a href="com/massivecraft/factions/util/UtilFly.html" title="class in com.massivecraft.factions.util"><span class="typeNameLink">UtilFly</span></a></li>
<li class="circle">com.massivecraft.factions.zcore.util.<a href="com/massivecraft/factions/zcore/util/UUIDFetcher.html" title="class in com.massivecraft.factions.zcore.util"><span class="typeNameLink">UUIDFetcher</span></a> (implements java.util.concurrent.Callable&lt;V&gt;)</li>
<li class="circle">com.massivecraft.factions.util.<a href="com/massivecraft/factions/util/VisualizeUtil.html" title="class in com.massivecraft.factions.util"><span class="typeNameLink">VisualizeUtil</span></a></li>
@@ -562,7 +562,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
<li class="circle">com.massivecraft.factions.zcore.util.<a href="com/massivecraft/factions/zcore/util/TagReplacer.html" title="enum in com.massivecraft.factions.zcore.util"><span class="typeNameLink">TagReplacer</span></a></li>
<li class="circle">com.massivecraft.factions.zcore.util.<a href="com/massivecraft/factions/zcore/util/TagReplacer.TagType.html" title="enum in com.massivecraft.factions.zcore.util"><span class="typeNameLink">TagReplacer.TagType</span></a></li>
<li class="circle">com.massivecraft.factions.zcore.util.<a href="com/massivecraft/factions/zcore/util/TL.html" title="enum in com.massivecraft.factions.zcore.util"><span class="typeNameLink">TL</span></a></li>
<li class="circle">com.massivecraft.factions.zcore.fupgrades.<a href="com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.fupgrades"><span class="typeNameLink">UpgradeType</span></a></li>
<li class="circle">com.massivecraft.factions.zcore.frame.fupgrades.<a href="com/massivecraft/factions/zcore/fupgrades/UpgradeType.html" title="enum in com.massivecraft.factions.zcore.frame.fupgrades"><span class="typeNameLink">UpgradeType</span></a></li>
<li class="circle">com.massivecraft.factions.util.<a href="com/massivecraft/factions/util/WarmUpUtil.Warmup.html" title="enum in com.massivecraft.factions.util"><span class="typeNameLink">WarmUpUtil.Warmup</span></a></li>
<li class="circle">com.massivecraft.factions.util.<a href="com/massivecraft/factions/util/XMaterial.html" title="enum in com.massivecraft.factions.util"><span class="typeNameLink">XMaterial</span></a></li>
<li class="circle">com.massivecraft.factions.util.<a href="com/massivecraft/factions/util/XMaterial.MinecraftVersion.html" title="enum in com.massivecraft.factions.util"><span class="typeNameLink">XMaterial.MinecraftVersion</span></a></li>
+1 -1
View File
@@ -13,7 +13,7 @@ com.massivecraft.factions.util.Particles
com.massivecraft.factions.zcore
com.massivecraft.factions.zcore.fperms
com.massivecraft.factions.zcore.fperms.gui
com.massivecraft.factions.zcore.fupgrades
com.massivecraft.factions.zcore.frame.fupgrades
com.massivecraft.factions.zcore.nbtapi
com.massivecraft.factions.zcore.nbtapi.utils
com.massivecraft.factions.zcore.persist
+42 -21
View File
@@ -4,7 +4,7 @@
<groupId>com.massivecraft</groupId>
<artifactId>Factions</artifactId>
<version>1.6.9.5-U0.2.1-2.2.2-BETA</version>
<version>1.6.9.5-2.4.1-RC</version>
<packaging>jar</packaging>
<name>SaberFactions</name>
@@ -41,6 +41,14 @@
<configuration>
<createDependencyReducedPom>false</createDependencyReducedPom>
<relocations>
<relocation>
<pattern>com.github.stefvanschie.inventoryframework</pattern>
<shadedPattern>com.massivecraft.factions.shade.stefvanschie.inventoryframework</shadedPattern>
</relocation>
<relocation>
<pattern>org.bstats</pattern>
<shadedPattern>com.massivecraft.factions.shade.org.bstats</shadedPattern>
</relocation>
<relocation>
<pattern>net.dv8tion</pattern>
<shadedPattern>com.massivecraft.factions.shade.net.dv8tion</shadedPattern>
@@ -91,16 +99,10 @@
<version>1.3</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.mojang</groupId>
<artifactId>brigadier</artifactId>
<version>1.0.14</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.github.stefvanschie.inventoryframework</groupId>
<artifactId>IF</artifactId>
<version>0.5.8</version>
<version>0.5.19</version>
</dependency>
<dependency>
<groupId>org.spigotmc</groupId>
@@ -130,11 +132,6 @@
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.ocpsoft.prettytime</groupId>
<artifactId>prettytime</artifactId>
<version>4.0.0.Final</version>
</dependency>
<dependency>
<groupId>net.milkbowl.vault</groupId>
<artifactId>VaultAPI</artifactId>
@@ -289,8 +286,12 @@
<scope>compile</scope>
<exclusions>
<exclusion>
<artifactId>gson</artifactId>
<groupId>com.google.code.gson</groupId>
<artifactId>*</artifactId>
<groupId>shaded</groupId>
</exclusion>
<exclusion>
<artifactId>*</artifactId>
<groupId>gson</groupId>
</exclusion>
</exclusions>
</dependency>
@@ -342,12 +343,6 @@
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.5</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>me.clip</groupId>
<artifactId>placeholderapi</artifactId>
@@ -385,6 +380,18 @@
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.mojang</groupId>
<artifactId>authlib</artifactId>
<version>1.5.21</version>
<scope>compile</scope>
<exclusions>
<exclusion>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>*</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>me.rayzr522</groupId>
<artifactId>jsonmessage</artifactId>
@@ -397,14 +404,28 @@
<version>2.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.bstats</groupId>
<artifactId>bstats-bukkit</artifactId>
<version>1.7</version>
<scope>compile</scope>
</dependency>
</dependencies>
<repositories>
<repository>
<id>CodeMC</id>
<url>https://repo.codemc.org/repository/maven-public</url>
</repository>
<repository>
<id>central</id>
<name>bintray</name>
<url>http://jcenter.bintray.com</url>
</repository>
<repository>
<id>mojang-repo</id>
<url>https://libraries.minecraft.net/</url>
</repository>
<repository>
<id>net.coreprotect</id>
<url>http://maven.playpro.com/</url>
+3
View File
@@ -0,0 +1,3 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json"
}
@@ -1,7 +1,6 @@
package com.massivecraft.factions;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableSet;
import com.massivecraft.factions.integration.dynmap.DynmapStyle;
import com.massivecraft.factions.util.XMaterial;
import com.massivecraft.factions.zcore.fperms.DefaultPermissions;
@@ -23,6 +22,7 @@ public class Conf {
public static final transient String DYNMAP_STYLE_HOME_MARKER = "greenflag";
public static final transient boolean DYNMAP_STYLE_BOOST = false;
public static List<String> baseCommandAliases = new ArrayList<>();
public static String serverTimeZone = "EST";
public static boolean allowNoSlashCommand = true;
// Colors
@@ -55,8 +55,8 @@ public class Conf {
public static boolean factionTagForceUpperCase = false;
public static boolean newFactionsDefaultOpen = false;
// when faction membership hits this limit, players will no longer be able to join using /f join; default is 0, no limit
public static int factionMemberLimit = 0;
public static int factionAltMemberLimit = 0;
public static int factionMemberLimit = 30;
public static int factionAltMemberLimit = 10;
// what faction ID to start new players in when they first join the server; default is 0, "no faction"
public static String newPlayerStartingFactionID = "0";
public static boolean showMapFactionKey = true;
@@ -87,7 +87,9 @@ public class Conf {
public static int factionBufferSize = 20;
public static boolean useCheckSystem = true;
public static boolean spawnerLock = false;
public static boolean gracePeriod = false;
public static boolean useGraceSystem = true;
public static boolean broadcastGraceToggles = true;
public static int gracePeriodTimeDays = 7;
public static boolean noEnderpearlsInFly = false;
public static boolean broadcastDescriptionChanges = false;
public static boolean broadcastTagChanges = false;
@@ -96,10 +98,38 @@ public class Conf {
public static double autoLeaveRoutineRunsEveryXMinutes = 5.0;
public static int autoLeaveRoutineMaxMillisecondsPerTick = 5; // 1 server tick is roughly 50ms, so default max 10% of a tick
public static boolean removePlayerDataWhenBanned = true;
public static String removePlayerDataWhenBannedReason = "Banned by admin.";
public static boolean autoLeaveDeleteFPlayerData = true; // Let them just remove player from Faction.
public static boolean worldGuardChecking = false;
public static boolean worldGuardBuildPriority = false;
//RADIUS CLAIMING
public static boolean useRadiusClaimSystem = true;
//FRIENDLY FIRE
public static boolean friendlyFireFPlayersCommand = false;
//Claim Fill
public static int maxFillClaimCount = 25;
public static int maxFillClaimDistance = 5;
public static boolean factionsDrainEnabled = false;
//RESERVE
public static boolean useReserveSystem = true;
//AUDIT
public static boolean useAuditSystem = true;
//INSPECT
public static boolean useInspectSystem = true;
//GUI's
public static boolean useDisbandGUI = true;
//SEALTH
public static boolean useStealthSystem = true;
//STRIKES
public static boolean useStrikeSystem = true;
//DISCORD
public static boolean useDiscordSystem = false;
@@ -116,7 +146,7 @@ public class Conf {
public static Boolean factionDiscordTags = false;
public static String factionTag = "(NAME) [FACTION]";
public static Boolean factionRoles = false;
public static List<Integer> factionRoleColor = new ArrayList<Integer>(){{
public static List<Integer> factionRoleColor = new ArrayList<Integer>() {{
add(25);
add(162);
add(203);
@@ -135,7 +165,6 @@ public class Conf {
public static boolean logPlayerCommands = true;
// prevent some potential exploits
public static boolean denyFlightIfInNoClaimingWorld = false;
public static boolean preventCreeperGlitch = true;
public static boolean handleExploitObsidianGenerators = true;
public static boolean handleExploitEnderPearlClipping = true;
public static boolean handleExploitInteractionSpam = true;
@@ -239,6 +268,7 @@ public class Conf {
public static boolean ownedMessageInsideTerritory = true;
public static boolean ownedMessageByChunk = false;
public static boolean pistonProtectionThroughDenyBuild = true;
public static Set<Material> loggableMaterials = EnumSet.noneOf(Material.class);
public static Set<Material> territoryProtectedMaterials = EnumSet.noneOf(Material.class);
public static Set<Material> territoryDenyUsageMaterials = EnumSet.noneOf(Material.class);
public static Set<Material> territoryProtectedMaterialsWhenOffline = EnumSet.noneOf(Material.class);
@@ -249,8 +279,8 @@ public class Conf {
/// Useful for HCF features.
/// </summary>
public static Set<Material> territoryBypassProtectedMaterials = EnumSet.noneOf(Material.class);
// Dependency check
public static boolean dependencyCheck = true;
public static boolean enableClickToClaim = true;
public static Set<Material> territoryCancelAndAllowItemUseMaterial = new HashSet<>();
public static Set<Material> territoryDenySwitchMaterials = new HashSet<>();
@@ -260,7 +290,7 @@ public class Conf {
public static boolean econEnabled = false;
public static String econUniverseAccount = "";
public static double econCostClaimWilderness = 30.0;
public static double econCostClaimFromFactionBonus = 30.0;
public static double econCostClaimFromFactionBonus = 0.0;
public static double econOverclaimRewardMultiplier = 0.0;
public static double econClaimAdditionalMultiplier = 0.5;
public static double econClaimRefundMultiplier = 0.7;
@@ -396,6 +426,10 @@ public class Conf {
public static HashMap<String, DefaultPermissions> defaultFactionPermissions = new HashMap<>();
public static HashSet<PermissableAction> lockedPermissions = new HashSet<>();
public static boolean useComplexFly = true;
public static boolean wildLoadChunkBeforeTeleport = true;
private static transient Conf i = new Conf();
static {
@@ -526,7 +560,6 @@ public class Conf {
territoryDenyUsageMaterials.add(Material.ARMOR_STAND);
}
territoryProtectedMaterialsWhenOffline.add(Material.BEACON);
territoryDenyUsageMaterialsWhenOffline.add(XMaterial.FIRE_CHARGE.parseMaterial());
@@ -544,7 +577,7 @@ public class Conf {
safeZoneNerfedCreatureTypes.add(EntityType.ENDERMAN);
safeZoneNerfedCreatureTypes.add(EntityType.GHAST);
safeZoneNerfedCreatureTypes.add(EntityType.MAGMA_CUBE);
safeZoneNerfedCreatureTypes.add(EntityType.PIG_ZOMBIE);
if (!FactionsPlugin.getInstance().mc116) safeZoneNerfedCreatureTypes.add(EntityType.PIG_ZOMBIE);
safeZoneNerfedCreatureTypes.add(EntityType.SILVERFISH);
safeZoneNerfedCreatureTypes.add(EntityType.SKELETON);
safeZoneNerfedCreatureTypes.add(EntityType.SPIDER);
@@ -572,7 +605,9 @@ public class Conf {
FactionsPlugin.getInstance().persist.save(i);
}
public static void saveSync() { FactionsPlugin.instance.persist.saveSync(i); }
public static void saveSync() {
FactionsPlugin.instance.persist.saveSync(i);
}
public enum Backend {
JSON,
@@ -22,7 +22,6 @@ public class FLocation implements Serializable {
worldBorderClassPresent = true;
} catch (ClassNotFoundException ignored) {
}
worldBorderSupport = worldBorderClassPresent;
}
@@ -45,7 +44,7 @@ public class FLocation implements Serializable {
}
public FLocation(Location location) {
this(location.getWorld().getName(), blockToChunk(location.getBlockX()), blockToChunk(location.getBlockZ()));
this(Objects.requireNonNull(location.getWorld()).getName(), blockToChunk(location.getBlockX()), blockToChunk(location.getBlockZ()));
}
public FLocation(Player player) {
@@ -152,6 +151,10 @@ public class FLocation implements Serializable {
return "" + x + "," + z;
}
public String formatXAndZ(String splitter) {
return chunkToBlock(this.x) + "x" + splitter + " " + chunkToBlock(this.z) + "z";
}
//----------------------------------------------//
// Misc Geometry
//----------------------------------------------//
@@ -178,9 +181,9 @@ public class FLocation implements Serializable {
}
public boolean isInChunk(Location loc) {
if (loc == null) {
return false;
}
if (loc == null) return false;
if (loc.getWorld() == null) return false;
Chunk chunk = loc.getChunk();
return loc.getWorld().getName().equalsIgnoreCase(getWorldName()) && chunk.getX() == x && chunk.getZ() == z;
}
@@ -192,18 +195,23 @@ public class FLocation implements Serializable {
* @return whether this location is outside of the border
*/
public boolean isOutsideWorldBorder(int buffer) {
if (!worldBorderSupport) {
return false;
}
if (!worldBorderSupport) return false;
WorldBorder border = getWorld().getWorldBorder();
Chunk chunk = border.getCenter().getChunk();
Location center = border.getCenter();
double size = border.getSize();
int lim = FLocation.chunkToRegion((int) border.getSize()) - buffer;
int diffX = chunk.getX() - x;
int diffZ = chunk.getZ() - z;
int bufferBlocks = buffer << 4;
return (diffX > lim || diffZ > lim) || (-diffX >= lim || -diffZ >= lim);
double borderMinX = (center.getX() - size / 2.0D) + bufferBlocks;
double borderMinZ = (center.getZ() - size / 2.0D) + bufferBlocks;
double borderMaxX = (center.getX() + size / 2.0D) - bufferBlocks;
double borderMaxZ = (center.getZ() + size / 2.0D) - bufferBlocks;
int chunkMinX = this.x << 4;
int chunkMaxX = chunkMinX | 15;
int chunkMinZ = this.z << 4;
int chunkMaxZ = chunkMinZ | 15;
return (chunkMinX >= borderMaxX) || (chunkMinZ >= borderMaxZ) || (chunkMaxX <= borderMinX) || (chunkMaxZ <= borderMinZ);
}
//----------------------------------------------//
@@ -213,10 +221,7 @@ public class FLocation implements Serializable {
double radiusSquared = radius * radius;
Set<FLocation> ret = new LinkedHashSet<>();
if (radius <= 0) {
return ret;
}
if (radius <= 0) return ret;
int xfrom = (int) Math.floor(this.x - radius);
int xto = (int) Math.ceil(this.x + radius);
int zfrom = (int) Math.floor(this.z - radius);
@@ -230,7 +235,6 @@ public class FLocation implements Serializable {
}
}
}
return ret;
}
@@ -246,13 +250,8 @@ public class FLocation implements Serializable {
@Override
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (!(obj instanceof FLocation)) {
return false;
}
if (obj == this) return true;
if (!(obj instanceof FLocation)) return false;
FLocation that = (FLocation) obj;
return this.x == that.x && this.z == that.z && (Objects.equals(this.worldName, that.worldName));
}
@@ -31,50 +31,73 @@ public interface FPlayer extends EconomyParticipator {
boolean hasNotificationsEnabled();
/**
* Determine if a player has enemies nearby based on the enemy check task in CmdFly
* NOTE: THIS VALUE IS ONLY UPDATED WHEN A USER IS USING FLY
*
* @return enemiesNearby as a boolean
*/
boolean hasEnemiesNearby();
/**
* Set if this FPlayer has an enemy nearby
*
* @param b enemiesNearby
*/
void setEnemiesNearby(Boolean b);
/**
* Get if a player has setup their Discord before
*
* @return if the player setup Discord as a boolean
*/
boolean discordSetup();
/**
* Get the players Discord user ID
*
* @return players Discord user ID as a String
*/
String discordUserID();
/**
* Set the players Boolean defining if the player has setup their Discord
*
* @param b Boolean for discordSetup to be defined to
*/
void setDiscordSetup(Boolean b);
/**
* Set the players Discord user ID
*
* @param s String for their user ID to be set to
*/
void setDiscordUserID(String s);
/**
* Get the players Discord user (If the player has not setup Discord it will return null!)
*
* @return User from players set Discord User ID
*/
User discordUser();
/**
* Used to check if this player should be served titles
*
* @return if this FPlayer has titles enabled as a boolean
*/
boolean hasTitlesEnabled();
/**
* Used to set if player should be served titles
*
* @param b Boolean to titlesEnabled to
*/
void setTitlesEnabled(Boolean b);
/**
* Used to determine if a player is in their faction's chest
*
* @return if player is in their faction's as a boolean
*/
boolean isInFactionsChest();
@@ -265,6 +288,11 @@ public interface FPlayer extends EconomyParticipator {
boolean hasMoney(int amt);
//Fplayer specific friendly fire.
boolean hasFriendlyFire();
void setFriendlyFire(boolean status);
//inspect Stuff
boolean isInspectMode();
@@ -364,6 +392,7 @@ public interface FPlayer extends EconomyParticipator {
// Actions
// -------------------------------
void leave(boolean makePay);
boolean canClaimForFaction(Faction forFaction);
@@ -11,7 +11,7 @@ import com.massivecraft.factions.util.LazyLocation;
import com.massivecraft.factions.zcore.fperms.Access;
import com.massivecraft.factions.zcore.fperms.Permissable;
import com.massivecraft.factions.zcore.fperms.PermissableAction;
import com.massivecraft.factions.zcore.fupgrades.UpgradeType;
import com.massivecraft.factions.zcore.frame.fupgrades.UpgradeType;
import org.bukkit.ChatColor;
import org.bukkit.Location;
import org.bukkit.entity.Player;
@@ -247,6 +247,8 @@ public interface Faction extends EconomyParticipator {
void setHome(Location home);
void deleteHome();
long getFoundedDate();
void setFoundedDate(long newDate);
@@ -441,4 +443,7 @@ public interface Faction extends EconomyParticipator {
void paypalSet(String paypal);
// -------------------------------
// Shields
// -------------------------------
}
@@ -4,13 +4,16 @@ import ch.njol.skript.Skript;
import ch.njol.skript.SkriptAddon;
import com.google.gson.GsonBuilder;
import com.google.gson.reflect.TypeToken;
import com.massivecraft.factions.cmd.CmdAutoHelp;
import com.massivecraft.factions.cmd.CommandContext;
import com.massivecraft.factions.cmd.FCmdRoot;
import com.massivecraft.factions.cmd.FCommand;
import com.massivecraft.factions.cmd.*;
import com.massivecraft.factions.cmd.audit.FChestListener;
import com.massivecraft.factions.cmd.audit.FLogManager;
import com.massivecraft.factions.cmd.audit.FLogType;
import com.massivecraft.factions.cmd.check.CheckTask;
import com.massivecraft.factions.cmd.check.WeeWooTask;
import com.massivecraft.factions.cmd.chest.AntiChestListener;
import com.massivecraft.factions.cmd.reserve.ListParameterizedType;
import com.massivecraft.factions.cmd.reserve.ReserveAdapter;
import com.massivecraft.factions.cmd.reserve.ReserveObject;
import com.massivecraft.factions.discord.Discord;
import com.massivecraft.factions.discord.DiscordListener;
import com.massivecraft.factions.integration.Econ;
@@ -18,41 +21,41 @@ import com.massivecraft.factions.integration.Worldguard;
import com.massivecraft.factions.integration.dynmap.EngineDynmap;
import com.massivecraft.factions.listeners.*;
import com.massivecraft.factions.missions.MissionHandler;
import com.massivecraft.factions.shop.ShopConfig;
import com.massivecraft.factions.struct.ChatMode;
import com.massivecraft.factions.struct.Relation;
import com.massivecraft.factions.struct.Role;
import com.massivecraft.factions.util.*;
import com.massivecraft.factions.util.Particles.ReflectionUtils;
import com.massivecraft.factions.util.adapters.*;
import com.massivecraft.factions.util.timer.TimerManager;
import com.massivecraft.factions.util.wait.WaitExecutor;
import com.massivecraft.factions.zcore.CommandVisibility;
import com.massivecraft.factions.zcore.MPlugin;
import com.massivecraft.factions.zcore.file.impl.FileManager;
import com.massivecraft.factions.zcore.fperms.Access;
import com.massivecraft.factions.zcore.fperms.Permissable;
import com.massivecraft.factions.zcore.fperms.PermissableAction;
import com.massivecraft.factions.zcore.fupgrades.*;
import com.massivecraft.factions.zcore.util.TextUtil;
import com.massivecraft.factions.zcore.frame.fupgrades.UpgradesListener;
import me.lucko.commodore.CommodoreProvider;
import net.milkbowl.vault.economy.Economy;
import net.milkbowl.vault.permission.Permission;
import org.bukkit.*;
import org.bstats.bukkit.Metrics;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.Location;
import org.bukkit.OfflinePlayer;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.ArmorStand;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.Player;
import org.bukkit.event.Listener;
import org.bukkit.event.player.AsyncPlayerChatEvent;
import org.bukkit.inventory.Inventory;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.ItemMeta;
import org.bukkit.plugin.Plugin;
import org.bukkit.plugin.RegisteredServiceProvider;
import java.io.*;
import java.lang.reflect.Modifier;
import java.lang.reflect.Type;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.*;
import java.util.concurrent.atomic.AtomicReference;
import java.util.logging.Level;
import java.util.stream.Collectors;
@@ -62,12 +65,12 @@ public class FactionsPlugin extends MPlugin {
// Our single plugin instance.
// Single 4 life.
public static FactionsPlugin instance;
public static boolean cachedRadiusClaim;
public static Permission perms = null;
// This plugin sets the boolean true when fully enabled.
// Plugins can check this boolean while hooking in have
// a green light to use the api.
public static boolean startupFinished = false;
public static Economy econ = null;
public boolean PlaceholderApi;
// Commands
public FCmdRoot cmdBase;
@@ -77,8 +80,10 @@ public class FactionsPlugin extends MPlugin {
public boolean mc112 = false;
public boolean mc113 = false;
public boolean mc114 = false;
public boolean mc115 = false;
public boolean mc116 = false;
public boolean useNonPacketParticles = false;
public boolean factionsFlight = false;
public List<String> itemList = getConfig().getStringList("fchest.Items-Not-Allowed");
SkriptAddon skriptAddon;
private FactionsPlayerListener factionsPlayerListener;
private boolean locked = false;
@@ -88,9 +93,11 @@ public class FactionsPlugin extends MPlugin {
private ClipPlaceholderAPIManager clipPlaceholderAPIManager;
private boolean mvdwPlaceholderAPIManager = false;
private Listener[] eventsListener;
public List<String> itemList = getConfig().getStringList("fchest.Items-Not-Allowed");
private Worldguard wg;
private FLogManager fLogManager;
private List<ReserveObject> reserveObjects;
private FileManager fileManager;
private TimerManager timerManager;
public FactionsPlugin() {
instance = this;
@@ -100,6 +107,10 @@ public class FactionsPlugin extends MPlugin {
return instance;
}
public FileManager getFileManager() {
return fileManager;
}
public boolean getLocked() {
return this.locked;
}
@@ -118,34 +129,20 @@ public class FactionsPlugin extends MPlugin {
this.setAutoSave(val);
}
public void playSoundForAll(String sound) {
for (Player pl : Bukkit.getOnlinePlayers()) {
playSound(pl, sound);
}
}
public void playSoundForAll(List<String> sounds) {
for (Player pl : Bukkit.getOnlinePlayers()) {
playSound(pl, sounds);
}
}
public void playSound(Player p, List<String> sounds) {
for (String sound : sounds) {
playSound(p, sound);
}
}
public void playSound(Player p, String sound) {
float pitch = Float.valueOf(sound.split(":")[1]);
sound = sound.split(":")[0];
p.playSound(p.getLocation(), Sound.valueOf(sound), pitch, 5.0F);
}
@Override
public void onEnable() {
log("==== Setup ====");
if (getServer().getPluginManager().getPlugin("Vault") == null) {
divider();
System.out.println("You are missing dependencies!");
System.out.println("Please verify [Vault] is installed!");
Conf.save();
Bukkit.getPluginManager().disablePlugin(instance);
divider();
return;
}
int version = Integer.parseInt(ReflectionUtils.PackageType.getServerVersion().split("_")[1]);
switch (version) {
case 7:
@@ -167,37 +164,38 @@ public class FactionsPlugin extends MPlugin {
FactionsPlugin.instance.log("Minecraft Version 1.14 found.");
mc114 = true;
break;
case 15:
FactionsPlugin.instance.log("Minecraft Version 1.15 found.");
mc115 = true;
break;
case 16:
FactionsPlugin.instance.log("Minecraft Version 1.16 found.");
mc116 = true;
break;
}
migrateFPlayerLeaders();
log("==== End Setup ====");
int pluginId = 7013;
Metrics metrics = new Metrics(this, pluginId);
if (!preEnable()) {
this.loadSuccessful = false;
return;
}
this.loadSuccessful = false;
if (!new File(this.getDataFolder() + "/config.yml").exists()) {
this.saveResource("config.yml", false);
this.reloadConfig();
}
//Attempt to generate a permission list
PermissionList.generateFile();
saveDefaultConfig();
this.reloadConfig();
//Start wait task executor
WaitExecutor.startTask();
// Load Conf from disk
Conf.load();
//Dependency checks
if (Conf.dependencyCheck && (!Bukkit.getPluginManager().isPluginEnabled("Vault") && !Bukkit.getPluginManager().isPluginEnabled("Essentials"))) {
divider();
System.out.println("You are missing dependencies!");
System.out.println("Please verify EssentialsX and Vault are installed!");
Conf.save();
Bukkit.getPluginManager().disablePlugin(instance);
divider();
return;
}
//Update their config if needed
// Updater.updateIfNeeded(getConfig());
RegisteredServiceProvider<Economy> rsp = FactionsPlugin.this.getServer().getServicesManager().getRegistration(Economy.class);
FactionsPlugin.econ = rsp.getProvider();
fileManager = new FileManager();
fileManager.setupFiles();
fLogManager = new FLogManager();
com.massivecraft.factions.integration.Essentials.setup();
hookedPlayervaults = setupPlayervaults();
FPlayers.getInstance().load();
@@ -210,20 +208,21 @@ public class FactionsPlugin extends MPlugin {
fPlayer.resetFactionData(false);
continue;
}
if (fPlayer.isAlt()) {
faction.addAltPlayer(fPlayer);
} else {
faction.addFPlayer(fPlayer);
}
if (fPlayer.isAlt()) faction.addAltPlayer(fPlayer);
else faction.addFPlayer(fPlayer);
}
Factions.getInstance().getAllFactions().forEach(Faction::refreshFPlayers);
if (getConfig().getBoolean("enable-faction-flight", true)) {
UtilFly.run();
}
Board.getInstance().load();
Board.getInstance().clean();
//Load command aliases
Aliases.load();
// Add Base Commands
this.cmdBase = new FCmdRoot();
this.cmdAutoHelp = new CmdAutoHelp();
@@ -238,17 +237,15 @@ public class FactionsPlugin extends MPlugin {
// start up task which runs the autoLeaveAfterDaysOfInactivity routine
startAutoLeaveTask(false);
cachedRadiusClaim = Conf.useRadiusClaimSystem;
if (version > 8) {
useNonPacketParticles = true;
log("Minecraft Version 1.9 or higher found, using non packet based particle API");
}
if (getConfig().getBoolean("enable-faction-flight")) {
factionsFlight = true;
}
if (getServer().getPluginManager().getPlugin("Skript") != null) {
log("Skript was found! Registering FactionsPlugin Addon...");
log("Skript was found! Registering SaberFactions Addon...");
skriptAddon = Skript.registerAddon(this);
try {
skriptAddon.loadClasses("com.massivecraft.factions.skript", "expressions");
@@ -257,20 +254,25 @@ public class FactionsPlugin extends MPlugin {
}
log("Skript addon registered!");
}
if (Conf.useCheckSystem) {
int minute = 1200;
this.getServer().getScheduler().runTaskTimerAsynchronously(this, new CheckTask(this, 3), 0L, (long) (minute * 3));
this.getServer().getScheduler().runTaskTimerAsynchronously(this, new CheckTask(this, 5), 0L, (long) (minute * 5));
this.getServer().getScheduler().runTaskTimerAsynchronously(this, new CheckTask(this, 10), 0L, (long) (minute * 10));
this.getServer().getScheduler().runTaskTimerAsynchronously(this, new CheckTask(this, 15), 0L, (long) (minute * 15));
this.getServer().getScheduler().runTaskTimerAsynchronously(this, new CheckTask(this, 30), 0L, (long) (minute * 30));
this.getServer().getScheduler().runTaskTimerAsynchronously(this, new CheckTask(this, 3), 0L, minute * 3);
this.getServer().getScheduler().runTaskTimerAsynchronously(this, new CheckTask(this, 5), 0L, minute * 5);
this.getServer().getScheduler().runTaskTimerAsynchronously(this, new CheckTask(this, 10), 0L, minute * 10);
this.getServer().getScheduler().runTaskTimerAsynchronously(this, new CheckTask(this, 15), 0L, minute * 15);
this.getServer().getScheduler().runTaskTimerAsynchronously(this, new CheckTask(this, 30), 0L, minute * 30);
this.getServer().getScheduler().runTaskTimer(this, CheckTask::cleanupTask, 0L, 1200L);
this.getServer().getScheduler().runTaskTimerAsynchronously(this, new WeeWooTask(this), 600L, 600L);
}
//Setup Discord Bot
new Discord(this);
ShopConfig.setup();
fLogManager.loadLogs(this);
this.timerManager = new TimerManager(this);
this.timerManager.reloadTimerData();
System.out.println("[SABER-FACTIONS] - Loaded " + timerManager.getTimers().size() + " timers into list!");
getServer().getPluginManager().registerEvents(factionsPlayerListener = new FactionsPlayerListener(), this);
@@ -280,19 +282,44 @@ public class FactionsPlugin extends MPlugin {
new FactionsEntityListener(),
new FactionsExploitListener(),
new FactionsBlockListener(),
new FUpgradesGUI(),
new UpgradesListener(),
new MissionHandler(this),
new FChestListener(),
new MenuListener(),
new AntiChestListener()
};
for (Listener eventListener : eventsListener)
getServer().getPluginManager().registerEvents(eventListener, this);
if (Conf.useGraceSystem) {
getServer().getPluginManager().registerEvents(timerManager.graceTimer, this);
}
this.getCommand(refCommand).setExecutor(cmdBase);
if (!CommodoreProvider.isSupported()) this.getCommand(refCommand).setTabCompleter(this);
reserveObjects = new ArrayList<>();
String path = Paths.get(this.getDataFolder().getAbsolutePath()).toAbsolutePath().toString() + File.separator + "reserves.json";
File file = new File(path);
try {
String json;
if (!file.exists()) {
file.getParentFile().mkdirs();
file.createNewFile();
}
json = String.join("", Files.readAllLines(Paths.get(file.getPath()))).replace("\n", "").replace("\r", "");
if (json.equalsIgnoreCase("")) {
Files.write(Paths.get(path), "[]".getBytes());
json = "[]";
}
reserveObjects = this.getGsonBuilder().create().fromJson(json, new ListParameterizedType(ReserveObject.class));
if (reserveObjects == null) reserveObjects = new ArrayList<>();
} catch (Exception e) {
e.printStackTrace();
}
if (getDescription().getFullName().contains("BETA")) {
divider();
System.out.println("You are using a BETA version of the plugin!");
@@ -308,10 +335,6 @@ public class FactionsPlugin extends MPlugin {
FactionsPlugin.startupFinished = true;
}
public SkriptAddon getSkriptAddon() {
return skriptAddon;
}
private void setupPlaceholderAPI() {
Plugin clip = getServer().getPluginManager().getPlugin("PlaceholderAPI");
@@ -349,7 +372,6 @@ public class FactionsPlugin extends MPlugin {
try {
BufferedReader br = new BufferedReader(new FileReader(fplayerFile));
System.out.println("Migrating old players.json file.");
String line;
while ((line = br.readLine()) != null) {
if (line.contains("\"role\": \"ADMIN\"")) {
@@ -381,9 +403,7 @@ public class FactionsPlugin extends MPlugin {
private boolean setupPermissions() {
try {
RegisteredServiceProvider<Permission> rsp = getServer().getServicesManager().getRegistration(Permission.class);
if (rsp != null) {
perms = rsp.getProvider();
}
if (rsp != null) perms = rsp.getProvider();
} catch (NoClassDefFoundError ex) {
return false;
}
@@ -408,6 +428,7 @@ public class FactionsPlugin extends MPlugin {
.registerTypeAdapter(LazyLocation.class, new MyLocationTypeAdapter())
.registerTypeAdapter(mapFLocToStringSetType, new MapFLocToStringSetTypeAdapter())
.registerTypeAdapter(Inventory.class, new InventoryTypeAdapter())
.registerTypeAdapter(ReserveObject.class, new ReserveAdapter())
.registerTypeAdapter(Location.class, new LocationTypeAdapter())
.registerTypeAdapterFactory(EnumTypeAdapter.ENUM_FACTORY);
}
@@ -420,24 +441,37 @@ public class FactionsPlugin extends MPlugin {
@Override
public void onDisable() {
// only save data if plugin actually completely loaded successfully
if (this.loadSuccessful) {
Conf.saveSync();
if (this.AutoLeaveTask != null) {
getServer().getScheduler().cancelTask(this.AutoLeaveTask);
this.AutoLeaveTask = null;
}
if (AutoLeaveTask != null) {
this.getServer().getScheduler().cancelTask(AutoLeaveTask);
AutoLeaveTask = null;
}
Conf.saveSync();
timerManager.saveTimerData();
DiscordListener.saveGuilds();
if (Discord.jda != null) Discord.jda.shutdownNow();
fLogManager.saveLogs();
try {
String path = Paths.get(getDataFolder().getAbsolutePath()).toAbsolutePath().toString() + File.separator + "reserves.json";
File file = new File(path);
if (!file.exists()) {
file.getParentFile().mkdirs();
file.createNewFile();
}
Files.write(Paths.get(file.getPath()), getGsonBuilder().create().toJson(reserveObjects).getBytes());
} catch (IOException e) {
e.printStackTrace();
}
super.onDisable();
}
public void startAutoLeaveTask(boolean restartIfRunning) {
if (AutoLeaveTask != null) {
if (!restartIfRunning) {
return;
}
if (!restartIfRunning) return;
this.getServer().getScheduler().cancelTask(AutoLeaveTask);
}
@@ -453,26 +487,9 @@ public class FactionsPlugin extends MPlugin {
Conf.save();
}
public ItemStack createItem(Material material, int amount, short datavalue, String name, List<String> lore) {
ItemStack item = new ItemStack(XMaterial.matchXMaterial(material.toString()).parseMaterial(), amount, datavalue);
ItemMeta meta = item.getItemMeta();
meta.setDisplayName(color(name));
meta.setLore(colorList(lore));
item.setItemMeta(meta);
return item;
}
public ItemStack createLazyItem(Material material, int amount, short datavalue, String name, String lore) {
ItemStack item = new ItemStack(material, amount, datavalue);
ItemMeta meta = item.getItemMeta();
meta.setDisplayName(color(FactionsPlugin.instance.getConfig().getString(name)));
meta.setLore(colorList(FactionsPlugin.instance.getConfig().getStringList(lore)));
item.setItemMeta(meta);
return item;
}
public Economy getEcon() {
RegisteredServiceProvider<Economy> rsp = FactionsPlugin.instance.getServer().getServicesManager().getRegistration(Economy.class);
RegisteredServiceProvider<Economy> rsp = getServer().getServicesManager().getRegistration(Economy.class);
return rsp.getProvider();
}
@@ -487,16 +504,6 @@ public class FactionsPlugin extends MPlugin {
return sender instanceof Player && FactionsPlayerListener.preventCommand(commandString, (Player) sender) || super.handleCommand(sender, commandString, testOnly);
}
@Override
public boolean onCommand(CommandSender sender, Command command, String label, String[] split) {
if (split.length == 0) {
return handleCommand(sender, "/f help", false);
}
// otherwise, needs to be handled; presumably another plugin directly ran the command
String cmd = Conf.baseCommandAliases.isEmpty() ? "/f" : "/" + Conf.baseCommandAliases.get(0);
return handleCommand(sender, cmd + " " + TextUtil.implode(Arrays.asList(split), " "), false);
}
// This method must stay for < 1.12 versions
@Override
@@ -504,12 +511,9 @@ public class FactionsPlugin extends MPlugin {
// Must be a LinkedList to prevent UnsupportedOperationException.
List<String> argsList = new LinkedList<>(Arrays.asList(args));
CommandContext context = new CommandContext(sender, argsList, alias);
String cmd = Conf.baseCommandAliases.isEmpty() ? "/f" : "/" + Conf.baseCommandAliases.get(0);
// String cmdValid = (cmd + " " + TextUtil.implode(context.args, " ")).trim();
List<FCommand> commandsList = cmdBase.subCommands;
FCommand commandsEx = cmdBase;
List<String> completions = new ArrayList<>();
// Check for "" first arg because spigot is mangled.
if (context.args.get(0).equals("")) {
for (FCommand subCommand : commandsEx.subCommands) {
@@ -534,16 +538,12 @@ public class FactionsPlugin extends MPlugin {
}
}
String lastArg = args[args.length - 1].toLowerCase();
completions = completions.stream()
.filter(m -> m.toLowerCase().startsWith(lastArg))
.collect(Collectors.toList());
return completions;
} else {
String lastArg = args[args.length - 1].toLowerCase();
for (Role value : Role.values()) completions.add(value.nicename);
for (Relation value : Relation.values()) completions.add(value.nicename);
// The stream and foreach from the old implementation looped 2 times, by looping all players -> filtered -> looped filter and added -> filtered AGAIN at the end.
@@ -556,113 +556,22 @@ public class FactionsPlugin extends MPlugin {
}
}
public void createTimedHologram(final Location location, String text, Long timeout) {
ArmorStand as = (ArmorStand) location.add(0.5, 1, 0.5).getWorld().spawnEntity(location, EntityType.ARMOR_STAND); //Spawn the ArmorStand
as.setVisible(false); //Makes the ArmorStand invisible
as.setGravity(false); //Make sure it doesn't fall
as.setCanPickupItems(false); //I'm not sure what happens if you leave this as it is, but you might as well disable it
as.setCustomName(FactionsPlugin.instance.color(text)); //Set this to the text you want
as.setCustomNameVisible(true); //This makes the text appear no matter if your looking at the entity or not
final ArmorStand armorStand = as;
Bukkit.getScheduler().scheduleSyncDelayedTask(FactionsPlugin.instance, () -> {
armorStand.remove();
getLogger().info("Removing Hologram.");
}
, timeout * 20);
}
// -------------------------------------------- //
// Functions for other plugins to hook into
// -------------------------------------------- //
// This value will be updated whenever new hooks are added
public int hookSupportVersion() {
return 3;
}
// If another plugin is handling insertion of chat tags, this should be used to notify Factions
public void handleFactionTagExternally(boolean notByFactions) {
Conf.chatTagHandledByAnotherPlugin = notByFactions;
}
// Simply put, should this chat event be left for Factions to handle? For now, that means players with Faction Chat
// enabled or use of the Factions f command without a slash; combination of isPlayerFactionChatting() and isFactionsCommand()
public boolean shouldLetFactionsHandleThisChat(AsyncPlayerChatEvent event) {
return event != null && (isPlayerFactionChatting(event.getPlayer()) || isFactionsCommand(event.getMessage()));
public FLogManager getFlogManager() {
return fLogManager;
}
// Does player have Faction Chat enabled? If so, chat plugins should preferably not do channels,
// local chat, or anything else which targets individual recipients, so Faction Chat can be done
public boolean isPlayerFactionChatting(Player player) {
if (player == null) {
return false;
}
FPlayer me = FPlayers.getInstance().getByPlayer(player);
return me != null && me.getChatMode().isAtLeast(ChatMode.ALLIANCE);
}
// Is this chat message actually a Factions command, and thus should be left alone by other plugins?
// TODO: GET THIS BACK AND WORKING
public boolean isFactionsCommand(String check) {
return !(check == null || check.isEmpty()) && this.handleCommand(null, check, true);
}
// Get a player's faction tag (faction name), mainly for usage by chat plugins for local/channel chat
public String getPlayerFactionTag(Player player) {
return getPlayerFactionTagRelation(player, null);
}
// Same as above, but with relation (enemy/neutral/ally) coloring potentially added to the tag
public String getPlayerFactionTagRelation(Player speaker, Player listener) {
String tag = "~";
if (speaker == null) {
return tag;
}
FPlayer me = FPlayers.getInstance().getByPlayer(speaker);
if (me == null) {
return tag;
}
// if listener isn't set, or config option is disabled, give back uncolored tag
if (listener == null || !Conf.chatTagRelationColored) {
tag = me.getChatTag().trim();
} else {
FPlayer you = FPlayers.getInstance().getByPlayer(listener);
if (you == null) {
tag = me.getChatTag().trim();
} else // everything checks out, give the colored tag
{
tag = me.getChatTag(you).trim();
}
}
if (tag.isEmpty()) {
tag = "~";
}
return tag;
}
// Get a player's title within their faction, mainly for usage by chat plugins for local/channel chat
public String getPlayerTitle(Player player) {
if (player == null) {
return "";
}
FPlayer me = FPlayers.getInstance().getByPlayer(player);
if (me == null) {
return "";
}
return me.getTitle().trim();
public void logFactionEvent(Faction faction, FLogType type, String... arguments) {
this.fLogManager.log(faction, type, arguments);
}
public String color(String line) {
@@ -672,59 +581,25 @@ public class FactionsPlugin extends MPlugin {
//colors a string list
public List<String> colorList(List<String> lore) {
for (int i = 0; i <= lore.size() - 1; i++) {
lore.set(i, color(lore.get(i)));
}
for (int i = 0; i <= lore.size() - 1; i++) lore.set(i, color(lore.get(i)));
return lore;
}
// Get a list of all faction tags (names)
public Set<String> getFactionTags() {
return Factions.getInstance().getFactionTags();
public List<ReserveObject> getFactionReserves() {
return this.reserveObjects;
}
// Get a list of all players in the specified faction
public Set<String> getPlayersInFaction(String factionTag) {
Set<String> players = new HashSet<>();
Faction faction = Factions.getInstance().getByTag(factionTag);
if (faction != null) {
for (FPlayer fplayer : faction.getFPlayers()) {
players.add(fplayer.getName());
}
}
return players;
}
// Get a list of all online players in the specified faction
public Set<String> getOnlinePlayersInFaction(String factionTag) {
Set<String> players = new HashSet<>();
Faction faction = Factions.getInstance().getByTag(factionTag);
if (faction != null) {
for (FPlayer fplayer : faction.getFPlayersWhereOnline(true)) {
players.add(fplayer.getName());
}
}
return players;
}
public boolean isHookedPlayervaults() {
return hookedPlayervaults;
}
public String getPrimaryGroup(OfflinePlayer player) {
AtomicReference<String> primaryGroup = new AtomicReference<>();
return perms == null || !perms.hasGroupSupport() ? " " : perms.getPrimaryGroup(Bukkit.getWorlds().get(0).toString(), player);
}
if (perms == null || !perms.hasGroupSupport()) return " ";
else {
Bukkit.getScheduler().runTaskAsynchronously(this, () -> primaryGroup.set(perms.getPrimaryGroup(Bukkit.getWorlds().get(0).toString(), player)));
return primaryGroup.get();
}
public TimerManager getTimerManager() {
return timerManager;
}
public void debug(Level level, String s) {
if (getConfig().getBoolean("debug", false)) {
getLogger().log(level, s);
}
if (getConfig().getBoolean("debug", false)) getLogger().log(level, s);
}
public FactionsPlayerListener getFactionsPlayerListener() {
@@ -735,7 +610,4 @@ public class FactionsPlugin extends MPlugin {
debug(Level.INFO, s);
}
public Worldguard getWg() {
return wg;
}
}
@@ -0,0 +1,156 @@
package com.massivecraft.factions.cmd;
import com.massivecraft.factions.FactionsPlugin;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
public class Aliases {
/**
* @author DroppingAnvil
*/
public static ArrayList<String> friendlyFire = new ArrayList<>(Arrays.asList("friendlyfire", "ff"));
public static ArrayList<String> notifications = new ArrayList<>(Arrays.asList("notifications", "notis"));
public static ArrayList<String> alts_alts = new ArrayList<>(Arrays.asList("alts", "alt"));
public static ArrayList<String> alts_list = new ArrayList<>(Arrays.asList("list", "l"));
public static ArrayList<String> alts_invite = new ArrayList<>(Collections.singletonList("invite"));
public static ArrayList<String> alts_kick = new ArrayList<>(Collections.singletonList("kick"));
public static ArrayList<String> audit = new ArrayList<>(Arrays.asList("audit", "log", "logs"));
public static ArrayList<String> check = new ArrayList<>(Arrays.asList("check"));
public static ArrayList<String> weewoo = new ArrayList<>(Collections.singletonList("weewoo"));
public static ArrayList<String> chest = new ArrayList<>(Arrays.asList("chest", "pv"));
public static ArrayList<String> claim_auto = new ArrayList<>(Collections.singletonList("autoclaim"));
public static ArrayList<String> claim_claim = new ArrayList<>(Collections.singletonList("claim"));
public static ArrayList<String> claim_at = new ArrayList<>(Collections.singletonList("claimat"));
public static ArrayList<String> claim_claimFill = new ArrayList<>(Arrays.asList("claimfill", "cf"));
public static ArrayList<String> claim_line = new ArrayList<>(Arrays.asList("claimline", "cl"));
public static ArrayList<String> claim_corner = new ArrayList<>(Arrays.asList("corner"));
public static ArrayList<String> delfHome = new ArrayList<>(Arrays.asList("delhome", "deletehome"));
public static ArrayList<String> unclaim_all_safe = new ArrayList<>(Arrays.asList("safeunclaimall", "safedeclaimall"));
public static ArrayList<String> unclaim_unclaim = new ArrayList<>(Arrays.asList("unclaim", "declaim"));
public static ArrayList<String> unclaim_all_unsafe = new ArrayList<>(Arrays.asList("unclaimall", "declaimall"));
public static ArrayList<String> unclaim_all_war = new ArrayList<>(Arrays.asList("warunclaimall", "wardeclaimall"));
public static ArrayList<String> money_money = new ArrayList<>(Arrays.asList("money", "bank"));
public static ArrayList<String> money_balance = new ArrayList<>(Arrays.asList("b", "balance"));
public static ArrayList<String> money_deposit = new ArrayList<>(Arrays.asList("d", "deposit"));
public static ArrayList<String> money_transfer_Ff = new ArrayList<>(Collections.singletonList("ff"));
public static ArrayList<String> money_transfer_Fp = new ArrayList<>(Collections.singletonList("fp"));
public static ArrayList<String> money_transfer_Pf = new ArrayList<>(Collections.singletonList("pf"));
public static ArrayList<String> money_withdraw = new ArrayList<>(Arrays.asList("w", "withdraw"));
public static ArrayList<String> grace = new ArrayList<>(Collections.singletonList("grace"));
public static ArrayList<String> logout = new ArrayList<>(Collections.singletonList("logout"));
public static ArrayList<String> points_balance = new ArrayList<>(Arrays.asList("balance", "bal"));
public static ArrayList<String> points_points = new ArrayList<>(Collections.singletonList("points"));
public static ArrayList<String> points_add = new ArrayList<>(Collections.singletonList("add"));
public static ArrayList<String> points_remove = new ArrayList<>(Collections.singletonList("remove"));
public static ArrayList<String> points_set = new ArrayList<>(Collections.singletonList("set"));
public static ArrayList<String> relation_ally = new ArrayList<>(Collections.singletonList("ally"));
public static ArrayList<String> relation_enemy = new ArrayList<>(Collections.singletonList("enemy"));
public static ArrayList<String> relation_neutral = new ArrayList<>(Collections.singletonList("neutral"));
public static ArrayList<String> relation_truce = new ArrayList<>(Collections.singletonList("truce"));
public static ArrayList<String> reserve = new ArrayList<>(Collections.singletonList("reserve"));
public static ArrayList<String> roles_demote = new ArrayList<>(Collections.singletonList("demote"));
public static ArrayList<String> roles_promote = new ArrayList<>(Collections.singletonList("promote"));
public static ArrayList<String> tnt_tnt = new ArrayList<>(Collections.singletonList("tnt"));
public static ArrayList<String> tnt_tntfill = new ArrayList<>(Collections.singletonList("tntfill"));
public static ArrayList<String> wild = new ArrayList<>(Collections.singletonList("wild"));
public static ArrayList<String> admin = new ArrayList<>(Arrays.asList("admin", "setadmin", "leader", "setleader"));
public static ArrayList<String> ahome = new ArrayList<>(Collections.singletonList("ahome"));
public static ArrayList<String> announce = new ArrayList<>(Arrays.asList("ann", "announce"));
public static ArrayList<String> help = new ArrayList<>(Arrays.asList("help", "h", "?"));
public static ArrayList<String> ban_ban = new ArrayList<>(Collections.singletonList("ban"));
public static ArrayList<String> ban_banlist = new ArrayList<>(Arrays.asList("banlist", "bans", "banl"));
public static ArrayList<String> banner = new ArrayList<>(Collections.singletonList("banner"));
public static ArrayList<String> boom = new ArrayList<>(Arrays.asList("noboom", "explosions", "toggleexplosions"));
public static ArrayList<String> bypass = new ArrayList<>(Collections.singletonList("bypass"));
public static ArrayList<String> chat = new ArrayList<>(Arrays.asList("chat", "c"));
public static ArrayList<String> chatspy = new ArrayList<>(Collections.singletonList("chatspy"));
public static ArrayList<String> checkpoint = new ArrayList<>(Arrays.asList("checkp", "checkpoint", "cpoint"));
public static ArrayList<String> coleader = new ArrayList<>(Arrays.asList("coleader", "setcoleader", "co", "setco"));
public static ArrayList<String> config = new ArrayList<>(Collections.singletonList("config"));
public static ArrayList<String> convert = new ArrayList<>(Collections.singletonList("convert"));
public static ArrayList<String> coords = new ArrayList<>(Arrays.asList("coords", "coord"));
public static ArrayList<String> create = new ArrayList<>(Collections.singletonList("create"));
public static ArrayList<String> debug = new ArrayList<>(Collections.singletonList("debug"));
public static ArrayList<String> deinvite = new ArrayList<>(Arrays.asList("deinvite", "deinv"));
public static ArrayList<String> deletefwarp = new ArrayList<>(Arrays.asList("delwarp", "dw", "deletewarp"));
public static ArrayList<String> description = new ArrayList<>(Arrays.asList("desc", "description"));
public static ArrayList<String> disband = new ArrayList<>(Collections.singletonList("disband"));
public static ArrayList<String> discord_discord = new ArrayList<>(Collections.singletonList("discord"));
public static ArrayList<String> drain = new ArrayList<>(Collections.singletonList("drain"));
public static ArrayList<String> global = new ArrayList<>(Arrays.asList("gchat", "global", "globalchat"));
public static ArrayList<String> fly = new ArrayList<>(Collections.singletonList("fly"));
public static ArrayList<String> focus = new ArrayList<>(Collections.singletonList("focus"));
public static ArrayList<String> warp = new ArrayList<>(Arrays.asList("warp", "warps"));
public static ArrayList<String> getvault = new ArrayList<>(Collections.singletonList("getvault"));
public static ArrayList<String> home = new ArrayList<>(Collections.singletonList("home"));
public static ArrayList<String> inspect = new ArrayList<>(Arrays.asList("inspect", "ins"));
public static ArrayList<String> invsee = new ArrayList<>(Arrays.asList("invsee", "inventorysee"));
public static ArrayList<String> invite = new ArrayList<>(Arrays.asList("invite", "inv"));
public static ArrayList<String> join = new ArrayList<>(Collections.singletonList("join"));
public static ArrayList<String> kick = new ArrayList<>(Collections.singletonList("kick"));
public static ArrayList<String> killholograms = new ArrayList<>(Collections.singletonList("killholos"));
public static ArrayList<String> leave = new ArrayList<>(Collections.singletonList("leave"));
public static ArrayList<String> list = new ArrayList<>(Arrays.asList("list", "ls"));
public static ArrayList<String> lock = new ArrayList<>(Collections.singletonList("lock"));
public static ArrayList<String> logins = new ArrayList<>(Arrays.asList("logins", "login", "logouts"));
public static ArrayList<String> lookup = new ArrayList<>(Collections.singletonList("lookup"));
public static ArrayList<String> lowPower = new ArrayList<>(Collections.singletonList("lowpower"));
public static ArrayList<String> map_map = new ArrayList<>(Collections.singletonList("map"));
public static ArrayList<String> map_height = new ArrayList<>(Arrays.asList("mapheight", "mh"));
public static ArrayList<String> mod = new ArrayList<>(Arrays.asList("mod", "setmod", "officer", "setofficer"));
public static ArrayList<String> modifyPower = new ArrayList<>(Arrays.asList("mp", "pm", "modpower", "modifypower"));
public static ArrayList<String> near = new ArrayList<>(Arrays.asList("near", "nearby"));
public static ArrayList<String> open = new ArrayList<>(Collections.singletonList("open"));
public static ArrayList<String> owner_owner = new ArrayList<>(Collections.singletonList("owner"));
public static ArrayList<String> owner_list = new ArrayList<>(Collections.singletonList("ownerlist"));
public static ArrayList<String> paypal_see = new ArrayList<>(Arrays.asList("paypal", "seepaypal"));
public static ArrayList<String> paypal_set = new ArrayList<>(Collections.singletonList("setpaypal"));
public static ArrayList<String> peaceful = new ArrayList<>(Collections.singletonList("peaceful"));
public static ArrayList<String> perm = new ArrayList<>(Arrays.asList("perm", "perms", "permission", "permissions"));
public static ArrayList<String> permanent_faction = new ArrayList<>(Collections.singletonList("permanent"));
public static ArrayList<String> permanent_power = new ArrayList<>(Collections.singletonList("permanentpower"));
public static ArrayList<String> titles = new ArrayList<>(Collections.singletonList("titles"));
public static ArrayList<String> power_power = new ArrayList<>(Arrays.asList("pow", "power"));
public static ArrayList<String> power_boost = new ArrayList<>(Collections.singletonList("powerboost"));
public static ArrayList<String> reload = new ArrayList<>(Collections.singletonList("reload"));
public static ArrayList<String> rules = new ArrayList<>(Arrays.asList("r", "rule", "rules"));
public static ArrayList<String> saveAll = new ArrayList<>(Arrays.asList("save", "saveall"));
public static ArrayList<String> scoreboard = new ArrayList<>(Arrays.asList("sb", "scoreboard"));
public static ArrayList<String> seeChunk = new ArrayList<>(Arrays.asList("sc", "seechunk"));
public static ArrayList<String> discord_see = new ArrayList<>(Collections.singletonList("seediscord"));
public static ArrayList<String> discord_set = new ArrayList<>(Collections.singletonList("setdiscord"));
public static ArrayList<String> setBanner = new ArrayList<>(Collections.singletonList("setbanner"));
public static ArrayList<String> setDefaultRole = new ArrayList<>(Arrays.asList("defaultrole", "def", "default", "defaultrank"));
public static ArrayList<String> setWarp = new ArrayList<>(Arrays.asList("sw", "setwarp"));
public static ArrayList<String> setHome = new ArrayList<>(Collections.singletonList("sethome"));
public static ArrayList<String> setMaxVaults = new ArrayList<>(Arrays.asList("smv", "setmaxvaults"));
public static ArrayList<String> show_show = new ArrayList<>(Arrays.asList("show", "who"));
public static ArrayList<String> show_claims = new ArrayList<>(Arrays.asList("showclaim", "showclaims"));
public static ArrayList<String> show_invites = new ArrayList<>(Collections.singletonList("showinvites"));
public static ArrayList<String> spawnerlock = new ArrayList<>(Arrays.asList("lockspawners", "spawnerlock"));
public static ArrayList<String> status = new ArrayList<>(Arrays.asList("s", "status"));
public static ArrayList<String> stealth = new ArrayList<>(Arrays.asList("stealth", "ninja"));
public static ArrayList<String> strikes_strikes = new ArrayList<>(Collections.singletonList("strikes"));
public static ArrayList<String> strikes_give = new ArrayList<>(Collections.singletonList("give"));
public static ArrayList<String> strikes_info = new ArrayList<>(Collections.singletonList("info"));
public static ArrayList<String> strikes_set = new ArrayList<>(Collections.singletonList("set"));
public static ArrayList<String> strikes_take = new ArrayList<>(Collections.singletonList("take"));
public static ArrayList<String> stuck = new ArrayList<>(Arrays.asList("stuck", "halp!"));
public static ArrayList<String> tag = new ArrayList<>(Arrays.asList("tag", "rename"));
public static ArrayList<String> title = new ArrayList<>(Collections.singletonList("title"));
public static ArrayList<String> toggleAllianceChat = new ArrayList<>(Arrays.asList("tac", "ac", "togglealliancechat"));
public static ArrayList<String> top = new ArrayList<>(Arrays.asList("t", "top"));
public static ArrayList<String> tpBanner = new ArrayList<>(Collections.singletonList("tpbanner"));
public static ArrayList<String> unban = new ArrayList<>(Collections.singletonList("unban"));
public static ArrayList<String> upgrades = new ArrayList<>(Arrays.asList("upgrades", "upgrade"));
public static ArrayList<String> vault = new ArrayList<>(Collections.singletonList("vault"));
public static ArrayList<String> viewChest = new ArrayList<>(Arrays.asList("viewchest", "viewpv"));
private static transient Aliases i = new Aliases();
public static void load() {
FactionsPlugin.getInstance().persist.loadOrSaveDefault(i, Aliases.class, "aliases");
}
}
@@ -14,7 +14,7 @@ public class CmdAHome extends FCommand {
public CmdAHome() {
super();
this.aliases.add("ahome");
this.aliases.addAll(Aliases.ahome);
this.requiredArgs.add("player");
@@ -4,11 +4,13 @@ import com.massivecraft.factions.FPlayer;
import com.massivecraft.factions.FPlayers;
import com.massivecraft.factions.Faction;
import com.massivecraft.factions.FactionsPlugin;
import com.massivecraft.factions.cmd.audit.FLogType;
import com.massivecraft.factions.event.FPlayerJoinEvent;
import com.massivecraft.factions.struct.Permission;
import com.massivecraft.factions.struct.Role;
import com.massivecraft.factions.zcore.util.TL;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
public class CmdAdmin extends FCommand {
@@ -18,10 +20,7 @@ public class CmdAdmin extends FCommand {
public CmdAdmin() {
super();
this.aliases.add("admin");
this.aliases.add("setadmin");
this.aliases.add("leader");
this.aliases.add("setleader");
this.aliases.addAll(Aliases.admin);
this.requiredArgs.add("player");
@@ -58,6 +57,10 @@ public class CmdAdmin extends FCommand {
return;
}
if (fyou.isAlt()) {
return;
}
// only perform a FPlayerJoinEvent when newLeader isn't actually in the faction
if (fyou.getFaction() != targetFaction) {
FPlayerJoinEvent event = new FPlayerJoinEvent(FPlayers.getInstance().getByPlayer(context.player), targetFaction, FPlayerJoinEvent.PlayerJoinReason.LEADER);
@@ -71,7 +74,7 @@ public class CmdAdmin extends FCommand {
// if target player is currently admin, demote and replace him
if (fyou == admin) {
targetFaction.promoteNewLeader();
promoteNewLeader(targetFaction);
context.msg(TL.COMMAND_ADMIN_DEMOTES, fyou.describeTo(context.fPlayer, true));
fyou.msg(TL.COMMAND_ADMIN_DEMOTED, context.player == null ? TL.GENERIC_SERVERADMIN.toString() : context.fPlayer.describeTo(fyou, true));
return;
@@ -79,20 +82,30 @@ public class CmdAdmin extends FCommand {
// promote target player, and demote existing admin if one exists
if (admin != null) {
admin.setRole(Role.COLEADER);
setRole(admin, Role.COLEADER);
}
fyou.setRole(Role.LEADER);
setRole(fyou, Role.LEADER);
context.msg(TL.COMMAND_ADMIN_PROMOTES, fyou.describeTo(context.fPlayer, true));
FactionsPlugin.instance.getFlogManager().log(targetFaction, FLogType.RANK_EDIT, context.fPlayer.getName(), fyou.getName(), ChatColor.RED + "Admin");
// Inform all players
for (FPlayer fplayer : FPlayers.getInstance().getOnlinePlayers()) {
fplayer.msg(TL.COMMAND_ADMIN_PROMOTED,
context.player == null ? TL.GENERIC_SERVERADMIN.toString() : context.fPlayer.describeTo(fplayer, true),
fyou.describeTo(fplayer), targetFaction.describeTo(fplayer));
if (FactionsPlugin.instance.getConfig().getBoolean("faction-leader-broadcast")) {
for (FPlayer fplayer : FPlayers.getInstance().getOnlinePlayers()) {
fplayer.msg(TL.COMMAND_ADMIN_PROMOTED, context.player == null ? TL.GENERIC_SERVERADMIN.toString() : context.fPlayer.describeTo(fplayer, true), fyou.describeTo(fplayer), targetFaction.describeTo(fplayer));
}
}
});
}
private void setRole(FPlayer fp, Role r) {
FactionsPlugin.getInstance().getServer().getScheduler().runTask(FactionsPlugin.instance, () -> fp.setRole(r));
}
private void promoteNewLeader(Faction f) {
FactionsPlugin.getInstance().getServer().getScheduler().runTask(FactionsPlugin.instance, (Runnable) f::promoteNewLeader);
}
public TL getUsageTranslation() {
return TL.COMMAND_ADMIN_DESCRIPTION;
}
@@ -18,8 +18,7 @@ public class CmdAnnounce extends FCommand {
public CmdAnnounce() {
super();
this.aliases.add("ann");
this.aliases.add("announce");
this.aliases.addAll(Aliases.announce);
this.requiredArgs.add("message");
@@ -13,9 +13,7 @@ public class CmdAutoHelp extends FCommand {
*/
public CmdAutoHelp() {
this.aliases.add("?");
this.aliases.add("h");
this.aliases.add("help");
this.aliases.addAll(Aliases.help);
this.setHelpShort("");
@@ -2,9 +2,11 @@ package com.massivecraft.factions.cmd;
import com.massivecraft.factions.FPlayer;
import com.massivecraft.factions.FactionsPlugin;
import com.massivecraft.factions.cmd.audit.FLogType;
import com.massivecraft.factions.event.FPlayerLeaveEvent;
import com.massivecraft.factions.struct.BanInfo;
import com.massivecraft.factions.struct.Permission;
import com.massivecraft.factions.util.CC;
import com.massivecraft.factions.zcore.fperms.PermissableAction;
import com.massivecraft.factions.zcore.util.TL;
import org.bukkit.Bukkit;
@@ -19,7 +21,7 @@ public class CmdBan extends FCommand {
public CmdBan() {
super();
this.aliases.add("ban");
this.aliases.addAll(Aliases.ban_ban);
this.requiredArgs.add("target");
@@ -79,6 +81,7 @@ public class CmdBan extends FCommand {
// Lets inform the people!
target.msg(TL.COMMAND_BAN_TARGET, context.faction.getTag(target.getFaction()));
FactionsPlugin.instance.logFactionEvent(context.faction, FLogType.BANS, context.fPlayer.getName(), CC.Green + "banned", target.getName());
context.faction.msg(TL.COMMAND_BAN_BANNED, context.fPlayer.getName(), target.getName());
}
@@ -19,9 +19,7 @@ public class CmdBanlist extends FCommand {
public CmdBanlist() {
super();
this.aliases.add("banlist");
this.aliases.add("bans");
this.aliases.add("banl");
this.aliases.addAll(Aliases.ban_banlist);
this.optionalArgs.put("faction", "faction");
@@ -19,8 +19,7 @@ public class CmdBanner extends FCommand {
*/
public CmdBanner() {
this.aliases.add("banner");
this.aliases.add("warbanner");
this.aliases.addAll(Aliases.banner);
this.requirements = new CommandRequirements.Builder(Permission.BANNER).playerOnly().memberOnly().build();
}
@@ -47,6 +46,7 @@ public class CmdBanner extends FCommand {
warBanner.setAmount(1);
context.player.getInventory().addItem(warBanner);
}
@Deprecated
public boolean hasMoney(FPlayer fme, int amt) {
Economy econ = FactionsPlugin.getInstance().getEcon();
@@ -56,6 +56,7 @@ public class CmdBanner extends FCommand {
fme.msg(TL.COMMAND_BANNER_NOTENOUGHMONEY);
return false;
}
@Deprecated
public void takeMoney(FPlayer fme, int amt) {
if (this.hasMoney(fme, amt)) {
@@ -12,9 +12,7 @@ public class CmdBoom extends FCommand {
public CmdBoom() {
super();
this.aliases.add("noboom");
this.aliases.add("explosions");
this.aliases.add("toggleexplosions");
this.aliases.addAll(Aliases.boom);
//this.requiredArgs.add("");
this.optionalArgs.put("on/off", "flip");
@@ -12,7 +12,7 @@ public class CmdBypass extends FCommand {
public CmdBypass() {
super();
this.aliases.add("bypass");
this.aliases.addAll(Aliases.bypass);
//this.requiredArgs.add("");
this.optionalArgs.put("on/off", "flip");
@@ -16,8 +16,7 @@ public class CmdChat extends FCommand {
public CmdChat() {
super();
this.aliases.add("c");
this.aliases.add("chat");
this.aliases.addAll(Aliases.chat);
//this.requiredArgs.add("");
this.optionalArgs.put("mode", "next");
@@ -12,7 +12,7 @@ public class CmdChatSpy extends FCommand {
public CmdChatSpy() {
super();
this.aliases.add("chatspy");
this.aliases.addAll(Aliases.chatspy);
this.optionalArgs.put("on/off", "flip");
@@ -2,7 +2,10 @@ package com.massivecraft.factions.cmd;
import com.massivecraft.factions.*;
import com.massivecraft.factions.struct.Permission;
import com.massivecraft.factions.struct.Role;
import com.massivecraft.factions.util.WarmUpUtil;
import com.massivecraft.factions.zcore.fperms.Access;
import com.massivecraft.factions.zcore.fperms.PermissableAction;
import com.massivecraft.factions.zcore.util.TL;
public class CmdCheckpoint extends FCommand {
@@ -13,16 +16,11 @@ public class CmdCheckpoint extends FCommand {
public CmdCheckpoint() {
super();
this.aliases.add("checkp");
this.aliases.add("checkpoint");
this.aliases.add("cpoint");
this.aliases.addAll(Aliases.checkpoint);
this.optionalArgs.put("set", "");
this.requirements = new CommandRequirements.Builder(Permission.CHECKPOINT)
.playerOnly()
.memberOnly()
.build();
this.requirements = new CommandRequirements.Builder(Permission.CHECKPOINT).playerOnly().memberOnly().build();
}
@Override
@@ -31,18 +29,39 @@ public class CmdCheckpoint extends FCommand {
context.msg(TL.COMMAND_CHECKPOINT_DISABLED);
return;
}
if (context.args.size() == 1) {
FLocation myLocation = new FLocation(context.player.getLocation());
Faction myLocFaction = Board.getInstance().getFactionAt(myLocation);
if (myLocFaction == Factions.getInstance().getWilderness() || myLocFaction == context.faction) {
context.faction.setCheckpoint(context.player.getLocation());
context.msg(TL.COMMAND_CHECKPOINT_SET);
return;
if (context.args.size() == 1 && context.args.get(0).equalsIgnoreCase("set")) {
if (context.fPlayer.getRole() == Role.LEADER) {
FLocation myLocation = new FLocation(context.player.getLocation());
Faction myLocFaction = Board.getInstance().getFactionAt(myLocation);
if (myLocFaction == Factions.getInstance().getWilderness() || myLocFaction == context.faction) {
context.faction.setCheckpoint(context.player.getLocation());
context.msg(TL.COMMAND_CHECKPOINT_SET);
return;
}
} else {
context.msg(TL.COMMAND_CHECKPOINT_INVALIDLOCATION);
return;
}
PermissableAction action = PermissableAction.SETWARP;
Access access = context.faction.getAccess(context.fPlayer, action);
if (access == Access.DENY) {
context.msg(TL.GENERIC_FPERM_NOPERMISSION, action.getName());
return;
} else {
FLocation myLocation = new FLocation(context.player.getLocation());
Faction myLocFaction = Board.getInstance().getFactionAt(myLocation);
if (myLocFaction == Factions.getInstance().getWilderness() || myLocFaction == context.faction) {
context.faction.setCheckpoint(context.player.getLocation());
context.msg(TL.COMMAND_CHECKPOINT_SET);
return;
} else {
context.msg(TL.COMMAND_CHECKPOINT_INVALIDLOCATION);
return;
}
}
}
if (context.faction.getCheckpoint() == null) {
context.msg(TL.COMMAND_CHECKPOINT_NOT_SET);
return;
@@ -59,8 +78,6 @@ public class CmdCheckpoint extends FCommand {
} else {
context.msg(TL.COMMAND_CHECKPOINT_CLAIMED);
}
}
@Override
@@ -3,6 +3,8 @@ package com.massivecraft.factions.cmd;
import com.massivecraft.factions.Conf;
import com.massivecraft.factions.FPlayer;
import com.massivecraft.factions.Faction;
import com.massivecraft.factions.FactionsPlugin;
import com.massivecraft.factions.cmd.audit.FLogType;
import com.massivecraft.factions.struct.Permission;
import com.massivecraft.factions.struct.Role;
import com.massivecraft.factions.zcore.util.TL;
@@ -17,10 +19,7 @@ public class CmdColeader extends FCommand {
public CmdColeader() {
super();
this.aliases.add("co");
this.aliases.add("setcoleader");
this.aliases.add("coleader");
this.aliases.add("setco");
this.aliases.addAll(Aliases.coleader);
this.optionalArgs.put("player name", "name");
@@ -56,6 +55,10 @@ public class CmdColeader extends FCommand {
return;
}
if (you.isAlt()) {
return;
}
if (context.fPlayer != null && context.fPlayer.getRole() != Role.LEADER && !permAny) {
context.msg(TL.COMMAND_COLEADER_NOTADMIN);
return;
@@ -81,6 +84,7 @@ public class CmdColeader extends FCommand {
you.setRole(Role.COLEADER);
targetFaction.msg(TL.COMMAND_COLEADER_PROMOTED, you.describeTo(targetFaction, true));
context.msg(TL.COMMAND_COLEADER_PROMOTES, you.describeTo(context.fPlayer, true));
FactionsPlugin.instance.getFlogManager().log(targetFaction, FLogType.RANK_EDIT, context.fPlayer.getName(), you.getName(), ChatColor.RED + "Co-Leader");
}
}
@@ -20,7 +20,7 @@ public class CmdConfig extends FCommand {
public CmdConfig() {
super();
this.aliases.add("config");
this.aliases.addAll(Aliases.config);
this.requiredArgs.add("setting");
this.requiredArgs.add("value");
@@ -225,7 +225,7 @@ public class CmdConfig extends FCommand {
if (!success.isEmpty()) {
if (context.sender instanceof Player) {
context.sendMessage(success);
FactionsPlugin.getInstance().log(success + TL.COMMAND_CONFIG_LOG.format((Player) context.sender));
FactionsPlugin.getInstance().log(success + TL.COMMAND_CONFIG_LOG.format(context.sender));
} else // using FactionsPlugin.getInstance().log() instead of sendMessage if run from server console so that "[Factions v#.#.#]" is prepended in server log
{
FactionsPlugin.getInstance().log(success);
@@ -14,7 +14,7 @@ public class CmdConvert extends FCommand {
*/
public CmdConvert() {
this.aliases.add("convert");
this.aliases.addAll(Aliases.convert);
this.requiredArgs.add("[MYSQL|JSON]");
this.requirements = new CommandRequirements.Builder(Permission.CONVERT)
@@ -13,8 +13,7 @@ public class CmdCoords extends FCommand {
public CmdCoords() {
super();
this.aliases.add("coords");
this.aliases.add("coord");
this.aliases.addAll(Aliases.coords);
this.requirements = new CommandRequirements.Builder(Permission.COORD)
.playerOnly()
@@ -1,12 +1,14 @@
package com.massivecraft.factions.cmd;
import com.massivecraft.factions.*;
import com.massivecraft.factions.cmd.reserve.ReserveObject;
import com.massivecraft.factions.discord.Discord;
import com.massivecraft.factions.event.FPlayerJoinEvent;
import com.massivecraft.factions.event.FactionCreateEvent;
import com.massivecraft.factions.integration.Econ;
import com.massivecraft.factions.struct.Permission;
import com.massivecraft.factions.struct.Role;
import com.massivecraft.factions.util.Cooldown;
import com.massivecraft.factions.util.MiscUtil;
import com.massivecraft.factions.zcore.util.TL;
import net.dv8tion.jda.core.entities.Member;
@@ -25,7 +27,7 @@ public class CmdCreate extends FCommand {
public CmdCreate() {
super();
this.aliases.add("create");
this.aliases.addAll(Aliases.create);
this.requiredArgs.add("faction tag");
@@ -52,6 +54,17 @@ public class CmdCreate extends FCommand {
return;
}
if (Cooldown.isOnCooldown(context.fPlayer.getPlayer(), "createCooldown") && !context.fPlayer.isAdminBypassing()) {
context.msg(TL.COMMAND_COOLDOWN);
return;
}
ReserveObject factionReserve = FactionsPlugin.getInstance().getFactionReserves().stream().filter(factionReserve1 -> factionReserve1.getFactionName().equalsIgnoreCase(tag)).findFirst().orElse(null);
if (factionReserve != null && !factionReserve.getName().equalsIgnoreCase(context.player.getName())) {
context.msg(TL.COMMAND_CREATE_ALREADY_RESERVED);
return;
}
ArrayList<String> tagValidationErrors = MiscUtil.validateTag(tag);
if (tagValidationErrors.size() > 0) {
context.sendMessage(tagValidationErrors);
@@ -85,7 +98,9 @@ public class CmdCreate extends FCommand {
// finish setting up the Faction
faction.setTag(tag);
if (factionReserve != null) {
FactionsPlugin.getInstance().getFactionReserves().remove(factionReserve);
}
// trigger the faction join event for the creator
FPlayerJoinEvent joinEvent = new FPlayerJoinEvent(FPlayers.getInstance().getByPlayer(context.player), faction, FPlayerJoinEvent.PlayerJoinReason.CREATE);
Bukkit.getServer().getPluginManager().callEvent(joinEvent);
@@ -96,6 +111,7 @@ public class CmdCreate extends FCommand {
// That way we don't have to mess up deleting more stuff.
// And prevent the user from being returned to NORMAL after deleting his old faction.
context.fPlayer.setRole(Role.LEADER);
Cooldown.setCooldown(context.fPlayer.getPlayer(), "createCooldown", FactionsPlugin.getInstance().getConfig().getInt("fcooldowns.f-create"));
if (FactionsPlugin.getInstance().getConfig().getBoolean("faction-creation-broadcast", true)) {
for (FPlayer follower : FPlayers.getInstance().getOnlinePlayers()) {
follower.msg(TL.COMMAND_CREATE_CREATED, context.fPlayer.getName(), faction.getTag(follower));
@@ -115,7 +131,9 @@ public class CmdCreate extends FCommand {
Discord.mainGuild.getController().setNickname(m, Discord.getNicknameString(context.fPlayer)).queue();
}
}
} catch (HierarchyException e) {System.out.print(e.getMessage());}
} catch (HierarchyException e) {
System.out.print(e.getMessage());
}
//End Discord
context.msg(TL.COMMAND_CREATE_YOUSHOULD, FactionsPlugin.getInstance().cmdBase.cmdDescription.getUsageTemplate(context));
if (Conf.econEnabled) Econ.setBalance(faction.getAccountId(), Conf.econFactionStartingBalance);
@@ -13,6 +13,7 @@ public class CmdDebug extends FCommand {
this.aliases.add("debug");
this.requirements = new CommandRequirements.Builder(Permission.DEBUG).build();
}
@Override
public void perform(CommandContext context) {
FactionsPlugin.getInstance().divider();
@@ -51,7 +52,9 @@ public class CmdDebug extends FCommand {
System.out.print("Emotes enabled: " + Discord.useEmotes);
System.out.print("Leader role null: " + (Discord.leader == null ? "True" : "False"));
System.out.print("Attempt Log:");
for (DiscordSetupAttempt d : Discord.setupLog) {System.out.print(d.getDifferentialFormatted() + " " + d.getSuccess() + " " + d.getReason());}
for (DiscordSetupAttempt d : Discord.setupLog) {
System.out.print(d.getDifferentialFormatted() + " " + d.getSuccess() + " " + d.getReason());
}
System.out.print("End Attempt Log");
System.out.print("----End Discord----");
System.out.print("--------End Debug Info--------");
@@ -3,10 +3,7 @@ package com.massivecraft.factions.cmd;
import com.massivecraft.factions.Conf;
import com.massivecraft.factions.FPlayer;
import com.massivecraft.factions.FPlayers;
import com.massivecraft.factions.FactionsPlugin;
import com.massivecraft.factions.struct.Permission;
import com.massivecraft.factions.struct.Role;
import com.massivecraft.factions.zcore.fperms.Access;
import com.massivecraft.factions.zcore.fperms.PermissableAction;
import com.massivecraft.factions.zcore.util.TL;
import mkremins.fanciful.FancyMessage;
@@ -20,59 +17,41 @@ public class CmdDeinvite extends FCommand {
public CmdDeinvite() {
super();
this.aliases.add("deinvite");
this.aliases.add("deinv");
this.aliases.addAll(Aliases.deinvite);
this.optionalArgs.put("player name", "name");
this.requirements = new CommandRequirements.Builder(Permission.DEINVITE)
.withAction(PermissableAction.INVITE)
.memberOnly()
.build();
}
@Override
public void perform(CommandContext context) {
if (context.args.size() == 0) {
FancyMessage msg = new FancyMessage(TL.COMMAND_DEINVITE_CANDEINVITE.toString()).color(ChatColor.GOLD);
for (String id : context.faction.getInvites()) {
FPlayer fp = FPlayers.getInstance().getById(id);
String name = fp != null ? fp.getName() : id;
msg.then(name + " ").color(ChatColor.WHITE).tooltip(TL.COMMAND_DEINVITE_CLICKTODEINVITE.format(name)).command("/" + Conf.baseCommandAliases.get(0) + " deinvite " + name);
}
context.sendFancyMessage(msg);
return;
FPlayer you = context.argAsBestFPlayerMatch(0);
if (you == null) {
FancyMessage msg = new FancyMessage(TL.COMMAND_DEINVITE_CANDEINVITE.toString()).color(ChatColor.GOLD);
for (String id : context.faction.getInvites()) {
FPlayer fp = FPlayers.getInstance().getById(id);
String name = fp != null ? fp.getName() : id;
msg.then(name + " ").color(ChatColor.WHITE).tooltip(TL.COMMAND_DEINVITE_CLICKTODEINVITE.format(name)).command("/" + Conf.baseCommandAliases.get(0) + " deinvite " + name);
}
context.sendFancyMessage(msg);
return;
}
FPlayer you = context.argAsBestFPlayerMatch(0);
if (!context.fPlayer.isAdminBypassing()) {
Access access = context.faction.getAccess(context.fPlayer, PermissableAction.INVITE);
if (access != Access.ALLOW && context.fPlayer.getRole() != Role.LEADER) {
context.msg(TL.GENERIC_FPERM_NOPERMISSION, "manage invites");
return;
}
}
if (you.getFaction() == context.faction) {
context.msg(TL.COMMAND_DEINVITE_ALREADYMEMBER, you.getName(), context.faction.getTag());
context.msg(TL.COMMAND_DEINVITE_MIGHTWANT, FCmdRoot.instance.cmdKick.getUsageTemplate(context));
return;
}
if (you == null) {
FancyMessage msg = new FancyMessage(TL.COMMAND_DEINVITE_CANDEINVITE.toString()).color(ChatColor.GOLD);
for (String id : context.faction.getInvites()) {
if (context.faction.getInvites().isEmpty()) return;
FPlayer fp = FPlayers.getInstance().getById(id);
String name = fp != null ? fp.getName() : id;
msg.then(name + " ").color(ChatColor.WHITE).tooltip(TL.COMMAND_DEINVITE_CLICKTODEINVITE.format(name)).command("/" + Conf.baseCommandAliases.get(0) + " deinvite " + name);
}
context.sendFancyMessage(msg);
return;
}
context.faction.deinvite(you);
if (you.getFaction() == context.faction) {
context.msg(TL.COMMAND_DEINVITE_ALREADYMEMBER, you.getName(), context.faction.getTag());
context.msg(TL.COMMAND_DEINVITE_MIGHTWANT, FactionsPlugin.getInstance().cmdBase.cmdKick.getUsageTemplate(context));
return;
}
you.msg(TL.COMMAND_DEINVITE_REVOKED, context.fPlayer.describeTo(you), context.faction.describeTo(you));
context.faction.deinvite(you);
you.msg(TL.COMMAND_DEINVITE_REVOKED, context.fPlayer.describeTo(you), context.faction.describeTo(you));
context.faction.msg(TL.COMMAND_DEINVITE_REVOKES, context.fPlayer.describeTo(context.faction), you.describeTo(context.faction));
context.faction.msg(TL.COMMAND_DEINVITE_REVOKES, context.fPlayer.describeTo(context.faction), you.describeTo(context.faction));
}
@Override
@@ -13,9 +13,7 @@ public class CmdDelFWarp extends FCommand {
public CmdDelFWarp() {
super();
this.aliases.add("delwarp");
this.aliases.add("dw");
this.aliases.add("deletewarp");
this.aliases.addAll(Aliases.deletefwarp);
this.requiredArgs.add("warp name");
this.requirements = new CommandRequirements.Builder(Permission.SETWARP)
@@ -0,0 +1,51 @@
package com.massivecraft.factions.cmd;
import com.massivecraft.factions.Conf;
import com.massivecraft.factions.FactionsPlugin;
import com.massivecraft.factions.struct.Permission;
import com.massivecraft.factions.zcore.fperms.PermissableAction;
import com.massivecraft.factions.zcore.util.TL;
/**
* Factions - Developed by Driftay.
* All rights reserved 2020.
* Creation Date: 3/24/2020
*/
public class CmdDelHome extends FCommand {
public CmdDelHome() {
this.aliases.addAll(Aliases.delfHome);
this.requirements = new CommandRequirements.Builder(Permission.DELHOME)
.memberOnly()
.withAction(PermissableAction.SETHOME)
.build();
}
@Override
public void perform(CommandContext context) {
FactionsPlugin.getInstance().getServer().getScheduler().runTaskAsynchronously(FactionsPlugin.instance, () -> {
//Check if homes are enabled
if (!Conf.homesEnabled) {
context.msg(TL.COMMAND_SETHOME_DISABLED);
return;
}
//If They Don't Have Home
if (!context.faction.hasHome()) {
context.msg(TL.COMMAND_HOME_NOHOME.toString());
context.msg(FactionsPlugin.getInstance().cmdBase.cmdSethome.getUsageTemplate(context));
return;
}
context.faction.deleteHome();
context.faction.msg(TL.COMMAND_DELHOME_SUCCESS, context.fPlayer.describeTo(context.faction, true));
});
}
@Override
public TL getUsageTranslation() {
return TL.COMMAND_DELHOME_DESCRIPTION;
}
}
@@ -4,9 +4,11 @@ import com.massivecraft.factions.Conf;
import com.massivecraft.factions.FPlayer;
import com.massivecraft.factions.FPlayers;
import com.massivecraft.factions.FactionsPlugin;
import com.massivecraft.factions.cmd.audit.FLogType;
import com.massivecraft.factions.struct.Permission;
import com.massivecraft.factions.zcore.util.TL;
import com.massivecraft.factions.zcore.util.TextUtil;
import org.bukkit.Bukkit;
public class CmdDescription extends FCommand {
@@ -16,8 +18,7 @@ public class CmdDescription extends FCommand {
public CmdDescription() {
super();
this.aliases.add("desc");
this.aliases.add("description");
this.aliases.addAll(Aliases.description);
this.requiredArgs.add("desc");
@@ -38,8 +39,9 @@ public class CmdDescription extends FCommand {
// since "&" color tags seem to work even through plain old FPlayer.sendMessage() for some reason, we need to break those up
// And replace all the % because it messes with string formatting and this is easy way around that.
context.faction.setDescription(TextUtil.implode(context.args, " ").replaceAll("%", "").replaceAll("(&([a-f0-9klmnor]))", "& $2"));
String desc = TextUtil.implode(context.args, " ").replaceAll("%", "").replaceAll("(&([a-f0-9klmnor]))", "& $2");
context.faction.setDescription(desc);
Bukkit.getScheduler().scheduleSyncDelayedTask(FactionsPlugin.instance, () -> FactionsPlugin.instance.logFactionEvent(context.faction, FLogType.FDESC_EDIT, context.fPlayer.getName(), desc));
if (!Conf.broadcastDescriptionChanges) {
context.msg(TL.COMMAND_DESCRIPTION_CHANGED, context.faction.describeTo(context.fPlayer));
context.sendMessage(context.faction.getDescription());
@@ -4,14 +4,16 @@ import com.massivecraft.factions.*;
import com.massivecraft.factions.event.FactionDisbandEvent.PlayerDisbandReason;
import com.massivecraft.factions.struct.Permission;
import com.massivecraft.factions.struct.Role;
import com.massivecraft.factions.util.UtilFly;
import com.massivecraft.factions.util.Cooldown;
import com.massivecraft.factions.zcore.fperms.Access;
import com.massivecraft.factions.zcore.fperms.PermissableAction;
import com.massivecraft.factions.zcore.frame.fdisband.FDisbandFrame;
import com.massivecraft.factions.zcore.util.TL;
import org.bukkit.Bukkit;
import org.bukkit.command.ConsoleCommandSender;
import java.util.HashMap;
import java.util.concurrent.TimeUnit;
public class CmdDisband extends FCommand {
@@ -20,23 +22,20 @@ public class CmdDisband extends FCommand {
* @author FactionsUUID Team
*/
private static HashMap<String, String> disbandMap = new HashMap<>();
public CmdDisband() {
super();
this.aliases.add("disband");
this.aliases.addAll(Aliases.disband);
this.optionalArgs.put("faction tag", "yours");
this.requirements = new CommandRequirements.Builder(Permission.DISBAND)
.build();
}
@Override
public void perform(CommandContext context) {
long time;
// The faction, default to your own.. but null if console sender.
Faction faction = context.argAsFaction(0, context.fPlayer == null ? null : context.faction);
if (faction == null) return;
@@ -44,9 +43,7 @@ public class CmdDisband extends FCommand {
boolean isMyFaction = context.fPlayer != null && faction == context.faction;
if (!isMyFaction) {
if (!Permission.DISBAND_ANY.has(context.sender, true)) {
return;
}
if (!Permission.DISBAND_ANY.has(context.sender, true)) return;
}
@@ -73,6 +70,26 @@ public class CmdDisband extends FCommand {
return;
}
if (Cooldown.isOnCooldown(context.fPlayer.getPlayer(), "disbandCooldown") && !context.fPlayer.isAdminBypassing()) {
context.msg(TL.COMMAND_COOLDOWN);
return;
}
boolean access = false;
if (context.fPlayer.getPlayer().hasMetadata("disband_confirm") && (time = context.fPlayer.getPlayer().getMetadata("disband_confirm").get(0).asLong()) != 0L && System.currentTimeMillis() - time <= TimeUnit.SECONDS.toMillis(3L)) {
access = true;
}
if (!access) {
if (Conf.useDisbandGUI && (!context.fPlayer.isAdminBypassing() || !context.player.isOp())) {
if (!disbandMap.containsKey(context.player.getUniqueId().toString())) {
new FDisbandFrame(context.faction).buildGUI(context.fPlayer);
return;
}
}
}
// check for tnt before disbanding.
if (!disbandMap.containsKey(context.player.getUniqueId().toString()) && faction.getTnt() > 0) {
context.msg(TL.COMMAND_DISBAND_CONFIRM.toString().replace("{tnt}", faction.getTnt() + ""));
@@ -84,21 +101,15 @@ public class CmdDisband extends FCommand {
String amountString = context.sender instanceof ConsoleCommandSender ? TL.GENERIC_SERVERADMIN.toString() : context.fPlayer.describeTo(follower);
if (follower.getFaction() == faction) {
follower.msg(TL.COMMAND_DISBAND_BROADCAST_YOURS, amountString);
if (!follower.canFlyAtLocation()) {
follower.setFFlying(false, false);
}
} else {
follower.msg(TL.COMMAND_DISBAND_BROADCAST_NOTYOURS, amountString, faction.getTag(follower));
}
}
context.fPlayer.setFFlying(false, false);
} else {
context.player.sendMessage(String.valueOf(TL.COMMAND_DISBAND_PLAYER));
}
faction.disband(context.player, PlayerDisbandReason.COMMAND);
if (!context.fPlayer.canFlyAtLocation()) {
context.fPlayer.setFFlying(false, false);
}
Cooldown.setCooldown(context.fPlayer.getPlayer(), "disbandCooldown", FactionsPlugin.getInstance().getConfig().getInt("fcooldowns.f-disband"));
}
}
@@ -6,14 +6,19 @@ import com.massivecraft.factions.zcore.util.TL;
import java.util.Random;
/**
* @author SaberTeam
*/
public class CmdDiscord extends FCommand {
public CmdDiscord() {
super();
this.aliases.add("discord");
this.aliases.addAll(Aliases.discord_discord);
this.requirements = new CommandRequirements.Builder(Permission.DISCORD)
.playerOnly()
.build();
}
@Override
public void perform(CommandContext context) {
if (context.fPlayer.discordSetup()) {
@@ -7,16 +7,15 @@ import com.massivecraft.factions.FactionsPlugin;
import com.massivecraft.factions.struct.Permission;
import com.massivecraft.factions.zcore.fperms.PermissableAction;
import com.massivecraft.factions.zcore.util.TL;
import org.bukkit.entity.Player;
import java.text.DecimalFormat;
/**
* @author Saser
*/
public class CmdDrain extends FCommand{
public CmdDrain(){
this.aliases.add("drain");
public class CmdDrain extends FCommand {
public CmdDrain() {
this.aliases.addAll(Aliases.drain);
this.requirements = new CommandRequirements.Builder(Permission.DRAIN)
.playerOnly()
.memberOnly()
@@ -34,12 +33,12 @@ public class CmdDrain extends FCommand{
double totalBalance = 0;
for(FPlayer fPlayer : context.faction.getFPlayers()) {
if(context.faction.getFPlayers().size() == 1){
for (FPlayer fPlayer : context.faction.getFPlayers()) {
if (context.faction.getFPlayers().size() == 1) {
context.fPlayer.msg(TL.COMMAND_DRAIN_NO_PLAYERS);
return;
}
if (FPlayers.getInstance().getByPlayer(context.player).equals(fPlayer)){
if (FPlayers.getInstance().getByPlayer(context.player).equals(fPlayer)) {
continue; // skip the command executor
}
double balance = FactionsPlugin.getInstance().getEcon().getBalance(fPlayer.getPlayer());
@@ -17,9 +17,7 @@ public class CmdFGlobal extends FCommand {
public CmdFGlobal() {
super();
this.aliases.add("gchat");
this.aliases.add("global");
this.aliases.add("globalchat");
this.aliases.addAll(Aliases.global);
this.requirements = new CommandRequirements.Builder(Permission.GLOBALCHAT)
.playerOnly()
@@ -3,9 +3,9 @@ package com.massivecraft.factions.cmd;
import com.massivecraft.factions.FPlayer;
import com.massivecraft.factions.FactionsPlugin;
import com.massivecraft.factions.struct.Permission;
import com.massivecraft.factions.util.FactionWarpsFrame;
import com.massivecraft.factions.util.WarmUpUtil;
import com.massivecraft.factions.zcore.fperms.PermissableAction;
import com.massivecraft.factions.zcore.frame.fwarps.FactionWarpsFrame;
import com.massivecraft.factions.zcore.util.TL;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
@@ -20,8 +20,7 @@ public class CmdFWarp extends FCommand {
public CmdFWarp() {
super();
this.aliases.add("warp");
this.aliases.add("warps");
this.aliases.addAll(Aliases.warp);
this.optionalArgs.put("warpname", "warpname");
this.optionalArgs.put("password", "password");
@@ -19,6 +19,7 @@ import java.util.concurrent.ConcurrentHashMap;
public class CmdFly extends FCommand {
public static final boolean fly = FactionsPlugin.getInstance().getConfig().getBoolean("enable-faction-flight");
/**
* @author FactionsUUID Team
*/
@@ -26,30 +27,26 @@ public class CmdFly extends FCommand {
public static ConcurrentHashMap<String, Boolean> flyMap = new ConcurrentHashMap<>();
public static BukkitTask particleTask = null;
public static BukkitTask flyTask = null;
public CmdFly() {
super();
this.aliases.add("fly");
this.aliases.addAll(Aliases.fly);
this.optionalArgs.put("on/off", "flip");
this.requirements = new CommandRequirements.Builder(Permission.FLY)
this.requirements = new CommandRequirements.Builder(Permission.FLY_FLY)
.playerOnly()
.memberOnly()
.build();
}
public static void startParticles() {
particleTask = Bukkit.getScheduler().runTaskTimerAsynchronously(FactionsPlugin.instance, () -> {
for (String name : flyMap.keySet()) {
Player player = Bukkit.getPlayer(name);
if (player == null) continue;
if (!player.isFlying()) continue;
if (!FactionsPlugin.getInstance().mc17) {
if (player.getGameMode() == GameMode.SPECTATOR) continue;
}
if (!FactionsPlugin.getInstance().mc17 && player.getGameMode() == GameMode.SPECTATOR) continue;
FPlayer fplayer = FPlayers.getInstance().getByPlayer(player);
fplayer.isVanished();
@@ -61,118 +58,73 @@ public class CmdFly extends FCommand {
}, 10L, 3L);
}
public static void startFlyCheck() {
flyTask = Bukkit.getScheduler().runTaskTimerAsynchronously(FactionsPlugin.instance, () -> {
checkTaskState();
if (flyMap.keySet().size() != 0) {
for (String name : flyMap.keySet()) {
if (name == null) {
continue;
}
Player player = Bukkit.getPlayer(name);
if (player == null
|| !player.isFlying()
|| player.getGameMode() == GameMode.CREATIVE
|| !FactionsPlugin.getInstance().mc17 && player.getGameMode() == GameMode.SPECTATOR) {
continue;
}
FPlayer fPlayer = FPlayers.getInstance().getByPlayer(player);
Faction myFaction = fPlayer.getFaction();
if (myFaction.isWilderness()) {
fPlayer.setFlying(false);
flyMap.remove(name);
continue;
}
if (player.hasPermission("factions.fly.bypassnearbyenemycheck") || fPlayer.checkIfNearbyEnemies()) {
continue;
}
FLocation myFloc = new FLocation(player.getLocation());
if (Board.getInstance().getFactionAt(myFloc) != myFaction) {
if (!checkBypassPerms(fPlayer, player, Board.getInstance().getFactionAt(myFloc))) {
Bukkit.getScheduler().runTask(FactionsPlugin.instance, () -> fPlayer.setFFlying(false, false));
flyMap.remove(name);
}
}
}
}
}, 20L, 20L);
}
public static boolean checkBypassPerms(FPlayer fme, Player me, Faction toFac) {
public static boolean checkBypassPerms(FPlayer fme, Player me, Faction toFac, boolean sendMessage) {
if (Conf.denyFlightIfInNoClaimingWorld && !Conf.worldsNoClaiming.isEmpty() && Conf.worldsNoClaiming.stream().anyMatch(me.getWorld().getName()::equalsIgnoreCase))
return false;
if (toFac != fme.getFaction()) {
if (!me.hasPermission(Permission.FLY_WILD.node) && toFac.isWilderness() || !me.hasPermission(Permission.FLY_SAFEZONE.node) && toFac.isSafeZone() || !me.hasPermission(Permission.FLY_WARZONE.node) && toFac.isWarZone()) {
fme.msg(TL.COMMAND_FLY_NO_ACCESS, toFac.getTag(fme));
if (!me.hasPermission(Permission.FLY_WILDERNESS.node) && toFac.isWilderness() || !me.hasPermission(Permission.FLY_SAFEZONE.node) && toFac.isSafeZone() || !me.hasPermission(Permission.FLY_WARZONE.node) && toFac.isWarZone()) {
if (sendMessage) fme.msg(TL.COMMAND_FLY_NO_ACCESS, toFac.getTag(fme));
return false;
}
Access access = toFac.getAccess(fme, PermissableAction.FLY);
if ((!(me.hasPermission(Permission.FLY_ENEMY.node) || access == Access.ALLOW)) && toFac.getRelationTo(fme.getFaction()) == Relation.ENEMY) {
fme.msg(TL.COMMAND_FLY_NO_ACCESS, toFac.getTag(fme));
if (sendMessage) fme.msg(TL.COMMAND_FLY_NO_ACCESS, toFac.getTag(fme));
return false;
}
if (!(me.hasPermission(Permission.FLY_ALLY.node) || access == Access.ALLOW) && toFac.getRelationTo(fme.getFaction()) == Relation.ALLY) {
fme.msg(TL.COMMAND_FLY_NO_ACCESS, toFac.getTag(fme));
if (sendMessage) fme.msg(TL.COMMAND_FLY_NO_ACCESS, toFac.getTag(fme));
return false;
}
if (!(me.hasPermission(Permission.FLY_TRUCE.node) || access == Access.ALLOW) && toFac.getRelationTo(fme.getFaction()) == Relation.TRUCE) {
fme.msg(TL.COMMAND_FLY_NO_ACCESS, toFac.getTag(fme));
if (sendMessage) fme.msg(TL.COMMAND_FLY_NO_ACCESS, toFac.getTag(fme));
return false;
}
if (!(me.hasPermission(Permission.FLY_NEUTRAL.node) || access == Access.ALLOW) && toFac.getRelationTo(fme.getFaction()) == Relation.NEUTRAL && !toFac.isSystemFaction()) {
fme.msg(TL.COMMAND_FLY_NO_ACCESS, toFac.getTag(fme));
if (sendMessage) fme.msg(TL.COMMAND_FLY_NO_ACCESS, toFac.getTag(fme));
return false;
}
return me.hasPermission(Permission.FLY.node) && (access != Access.DENY || toFac.isSystemFaction());
return me.hasPermission(Permission.FLY_FLY.node) && (access != Access.DENY || toFac.isSystemFaction());
}
return true;
}
public static void checkTaskState() {
if (flyMap.isEmpty()) {
flyTask.cancel();
flyTask = null;
}
}
public static void disableFlight(final FPlayer fme) {
fme.setFlying(false);
flyMap.remove(fme.getPlayer().getName());
}
public boolean isInFlightChecker(Player player) {
return flyMap.containsKey(player.getName());
}
@Override
public void perform(CommandContext context) {
// Disabled by default.
if (!FactionsPlugin.getInstance().getConfig().getBoolean("enable-faction-flight", false)) {
context.fPlayer.msg(TL.COMMAND_FLY_DISABLED);
return;
}
if (!context.fPlayer.isAdminBypassing()) {
List<Entity> entities = context.player.getNearbyEntities(16.0D, 256.0D, 16.0D);
FLocation myfloc = new FLocation(context.player.getLocation());
Faction toFac = Board.getInstance().getFactionAt(myfloc);
if (!checkBypassPerms(context.fPlayer, context.player, toFac)) return;
List<Entity> entities = context.player.getNearbyEntities(16.0D, 256.0D, 16.0D);
for (int i = 0; i <= entities.size() - 1; ++i) {
if (entities.get(i) instanceof Player) {
Player eplayer = (Player) entities.get(i);
FPlayer efplayer = FPlayers.getInstance().getByPlayer(eplayer);
if (efplayer.getRelationTo(context.fPlayer) == Relation.ENEMY && !efplayer.isStealthEnabled()) {
context.msg(TL.COMMAND_FLY_CHECK_ENEMY);
return;
for (int i = 0; i <= entities.size() - 1; ++i) {
if (entities.get(i) instanceof Player) {
Player eplayer = (Player) entities.get(i);
FPlayer efplayer = FPlayers.getInstance().getByPlayer(eplayer);
if (efplayer.getRelationTo(context.fPlayer) == Relation.ENEMY && !efplayer.isStealthEnabled()) {
context.msg(TL.COMMAND_FLY_CHECK_ENEMY);
return;
}
context.fPlayer.setEnemiesNearby(false);
}
}
}
FLocation myfloc = new FLocation(context.player.getLocation());
Faction toFac = Board.getInstance().getFactionAt(myfloc);
if (!checkBypassPerms(context.fPlayer, context.player, toFac, false)) {
context.fPlayer.sendMessage(TL.COMMAND_FLY_NO_ACCESS.format(toFac.getTag()));
return;
}
}
if (context.args.size() == 0) {
toggleFlight(context.fPlayer.isFlying(), context.fPlayer, context);
@@ -188,18 +140,11 @@ public class CmdFly extends FCommand {
return;
}
if (fme.canFlyAtLocation()) {
context.doWarmUp(WarmUpUtil.Warmup.FLIGHT, TL.WARMUPS_NOTIFY_FLIGHT, "Fly", () -> {
fme.setFlying(true);
flyMap.put(fme.getPlayer().getName(), true);
if (particleTask == null) {
startParticles();
}
if (flyTask == null) {
startFlyCheck();
}
if (particleTask == null) startParticles();
}, FactionsPlugin.getInstance().getConfig().getLong("warmups.f-fly", 0));
} else {
fme.msg(TL.COMMAND_FLY_NO_ACCESS, Board.getInstance().getFactionAt(fme.getLastStoodAt()).getTag());
@@ -13,7 +13,7 @@ public class CmdFocus extends FCommand {
*/
public CmdFocus() {
aliases.add("focus");
aliases.addAll(Aliases.focus);
requiredArgs.add("player");
@@ -0,0 +1,44 @@
package com.massivecraft.factions.cmd;
import com.massivecraft.factions.Conf;
import com.massivecraft.factions.struct.Permission;
import com.massivecraft.factions.zcore.util.TL;
/**
* Factions - Developed by Driftay.
* All rights reserved 2020.
* Creation Date: 4/6/2020
*/
public class CmdFriendlyFire extends FCommand {
public CmdFriendlyFire() {
super();
this.aliases.addAll(Aliases.friendlyFire);
this.requirements = new CommandRequirements.Builder(Permission.FRIENDLYFIRE)
.playerOnly()
.memberOnly()
.build();
}
@Override
public void perform(CommandContext context) {
if (!Conf.friendlyFireFPlayersCommand) {
context.msg(TL.GENERIC_DISABLED, "friendly fire");
return;
}
if (context.fPlayer.hasFriendlyFire()) {
context.fPlayer.setFriendlyFire(false);
context.msg(TL.COMMAND_FRIENDLY_FIRE_TOGGLE_OFF);
} else {
context.fPlayer.setFriendlyFire(true);
context.msg(TL.COMMAND_FRIENDLY_FIRE_TOGGLE_ON);
}
}
@Override
public TL getUsageTranslation() {
return TL.COMMAND_FRIENDLY_FIRE_DESCRIPTION;
}
}
@@ -2,10 +2,10 @@ package com.massivecraft.factions.cmd;
import com.massivecraft.factions.FactionsPlugin;
import com.massivecraft.factions.struct.Permission;
import com.massivecraft.factions.util.ItemBuilder;
import com.massivecraft.factions.zcore.util.TL;
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.inventory.Inventory;
import org.bukkit.inventory.ItemStack;
public class CmdGetVault extends FCommand {
@@ -16,7 +16,7 @@ public class CmdGetVault extends FCommand {
public CmdGetVault() {
super();
this.aliases.add("getvault");
this.aliases.addAll(Aliases.getvault);
this.requirements = new CommandRequirements.Builder(Permission.GETVAULT)
.playerOnly()
@@ -30,9 +30,13 @@ public class CmdGetVault extends FCommand {
context.fPlayer.msg(TL.GENERIC_DISABLED, "Faction Vaults");
return;
}
Location vaultLocation = context.faction.getVault();
ItemStack vault = FactionsPlugin.getInstance().createItem(Material.CHEST, 1, (short) 0, FactionsPlugin.getInstance().color(FactionsPlugin.getInstance().getConfig().getString("fvault.Item.Name")), FactionsPlugin.getInstance().colorList(FactionsPlugin.getInstance().getConfig().getStringList("fvault.Item.Lore")));
Location vaultLocation = context.faction.getVault();
ItemStack vault = new ItemBuilder(Material.CHEST)
.amount(1)
.name(FactionsPlugin.getInstance().getConfig().getString("fvault.Item.Name"))
.lore(FactionsPlugin.getInstance().getConfig().getStringList("fvault.Item.Lore"))
.build();
//check if vault is set
if (vaultLocation != null) {
@@ -40,34 +44,19 @@ public class CmdGetVault extends FCommand {
return;
}
//has enough money?
int amount = FactionsPlugin.getInstance().getConfig().getInt("fvault.Price");
if (!context.fPlayer.hasMoney(amount)) {
return;
}
if (!context.fPlayer.takeMoney(amount)) {return;}
//success :)
context.fPlayer.takeMoney(amount);
context.player.getInventory().addItem(vault);
context.fPlayer.msg(TL.COMMAND_GETVAULT_RECEIVE);
}
public boolean inventoryContains(Inventory inventory, ItemStack item) {
int count = 0;
ItemStack[] items = inventory.getContents();
for (int i = 0; i < items.length; i++) {
if (items[i] != null && items[i].getType() == item.getType() && items[i].getDurability() == item.getDurability()) {
count += items[i].getAmount();
}
if (count >= item.getAmount()) {
return true;
}
}
return false;
}
@Override
public TL getUsageTranslation() {
@@ -19,11 +19,10 @@ public class CmdHelp extends FCommand {
public ArrayList<ArrayList<String>> helpPages;
//TODO: Add Help GUI
public CmdHelp() {
super();
this.aliases.add("help");
this.aliases.add("h");
this.aliases.add("?");
this.aliases.addAll(Aliases.help);
//this.requiredArgs.add("");
this.optionalArgs.put("page", "1");
@@ -26,7 +26,7 @@ public class CmdHome extends FCommand {
public CmdHome() {
super();
this.aliases.add("home");
this.aliases.addAll(Aliases.home);
this.optionalArgs.put("faction", "yours");
this.requirements = new CommandRequirements.Builder(Permission.HOME)
@@ -1,5 +1,6 @@
package com.massivecraft.factions.cmd;
import com.massivecraft.factions.Conf;
import com.massivecraft.factions.struct.Permission;
import com.massivecraft.factions.zcore.util.TL;
@@ -11,9 +12,7 @@ public class CmdInspect extends FCommand {
public CmdInspect() {
super();
this.aliases.add("inspect");
this.aliases.add("ins");
this.aliases.addAll(Aliases.inspect);
this.requirements = new CommandRequirements.Builder(Permission.INSPECT)
.playerOnly()
.memberOnly()
@@ -23,6 +22,11 @@ public class CmdInspect extends FCommand {
@Override
public void perform(CommandContext context) {
if (!Conf.useInspectSystem) {
context.fPlayer.msg(TL.GENERIC_DISABLED, "Faction Inspection");
return;
}
if (context.fPlayer.isInspectMode()) {
context.fPlayer.setInspectMode(false);
context.msg(TL.COMMAND_INSPECT_DISABLED_MSG);
@@ -23,8 +23,7 @@ public class CmdInventorySee extends FCommand {
public CmdInventorySee() {
super();
this.aliases.add("invsee");
this.aliases.add("inventorysee");
this.aliases.addAll(Aliases.invsee);
this.requiredArgs.add("member name");
@@ -3,11 +3,12 @@ package com.massivecraft.factions.cmd;
import com.massivecraft.factions.Conf;
import com.massivecraft.factions.FPlayer;
import com.massivecraft.factions.FactionsPlugin;
import com.massivecraft.factions.cmd.audit.FLogType;
import com.massivecraft.factions.struct.Permission;
import com.massivecraft.factions.util.CC;
import com.massivecraft.factions.zcore.fperms.PermissableAction;
import com.massivecraft.factions.zcore.util.TL;
import mkremins.fanciful.FancyMessage;
import org.bukkit.ChatColor;
public class CmdInvite extends FCommand {
@@ -17,8 +18,7 @@ public class CmdInvite extends FCommand {
public CmdInvite() {
super();
this.aliases.add("invite");
this.aliases.add("inv");
this.aliases.addAll(Aliases.invite);
this.requiredArgs.add("player name");
@@ -59,20 +59,16 @@ public class CmdInvite extends FCommand {
// Send the invitation to the target player when online, otherwise just ignore
if (target.isOnline()) {
// Tooltips, colors, and commands only apply to the string immediately before it.
FancyMessage message = new FancyMessage(context.fPlayer.describeTo(target, true))
FancyMessage message = new FancyMessage(TL.COMMAND_INVITE_INVITEDYOU.toString()
.replace("%1$s", context.fPlayer.describeTo(target, true))
.replace("%2$s", context.faction.getTag())
.replaceAll("&", "§"))
.tooltip(TL.COMMAND_INVITE_CLICKTOJOIN.toString())
.command("/" + Conf.baseCommandAliases.get(0) + " join " + context.faction.getTag())
.then(TL.COMMAND_INVITE_INVITEDYOU.toString())
.color(ChatColor.YELLOW)
.tooltip(TL.COMMAND_INVITE_CLICKTOJOIN.toString())
.command("/" + Conf.baseCommandAliases.get(0) + " join " + context.faction.getTag())
.then(context.faction.describeTo(target)).tooltip(TL.COMMAND_INVITE_CLICKTOJOIN.toString())
.command("/" + Conf.baseCommandAliases.get(0) + " join " + context.faction.getTag());
message.send(target.getPlayer());
}
context.faction.msg(TL.COMMAND_INVITE_INVITED, context.fPlayer.describeTo(context.faction, true), target.describeTo(context.faction));
FactionsPlugin.instance.logFactionEvent(context.faction, FLogType.INVITES, context.fPlayer.getName(), CC.Green + "invited", target.getName());
}
@Override
@@ -1,24 +1,17 @@
package com.massivecraft.factions.cmd;
import com.massivecraft.factions.*;
import com.massivecraft.factions.discord.Discord;
import com.massivecraft.factions.event.FPlayerJoinEvent;
import com.massivecraft.factions.struct.Permission;
import com.massivecraft.factions.zcore.fupgrades.UpgradeType;
import com.massivecraft.factions.zcore.frame.fupgrades.UpgradeType;
import com.massivecraft.factions.zcore.util.TL;
import net.dv8tion.jda.core.entities.Member;
import net.dv8tion.jda.core.exceptions.HierarchyException;
import org.bukkit.Bukkit;
public class CmdJoin extends FCommand {
/**
* @author FactionsUUID Team
*/
public CmdJoin() {
super();
this.aliases.add("join");
this.aliases.addAll(Aliases.join);
this.requiredArgs.add("faction name");
this.optionalArgs.put("player", "you");
@@ -52,7 +45,7 @@ public class CmdJoin extends FCommand {
return;
}
if (Conf.factionMemberLimit > 0 && faction.getFPlayers().size() >= getFactionMemberLimit(faction)) {
if (!faction.altInvited(fplayer) && Conf.factionMemberLimit > 0 && faction.getFPlayers().size() >= getFactionMemberLimit(faction)) {
context.msg(TL.COMMAND_JOIN_ATLIMIT, faction.getTag(context.fPlayer), getFactionMemberLimit(faction), fplayer.describeTo(context.fPlayer, false));
return;
}
@@ -123,31 +116,20 @@ public class CmdJoin extends FCommand {
}
faction.deinvite(fplayer);
try {
context.fPlayer.setRole(faction.getDefaultRole());
if (Discord.useDiscord && context.fPlayer.discordSetup() && Discord.isInMainGuild(context.fPlayer.discordUser()) && Discord.mainGuild != null) {
Member m = Discord.mainGuild.getMember(context.fPlayer.discordUser());
if (Conf.factionRoles) {
Discord.mainGuild.getController().addSingleRoleToMember(m, Discord.createFactionRole(faction.getTag())).queue();
}
if (Conf.factionDiscordTags) {
Discord.mainGuild.getController().setNickname(m, Discord.getNicknameString(context.fPlayer)).queue();
}
}
} catch (HierarchyException e) {System.out.print(e.getMessage());}
context.fPlayer.setRole(faction.getDefaultRole());
if (Conf.logFactionJoin) {
if (samePlayer) {
FactionsPlugin.getInstance().log(TL.COMMAND_JOIN_JOINEDLOG.toString(), fplayer.getName(), faction.getTag());
FactionsPlugin.instance.log(TL.COMMAND_JOIN_JOINEDLOG.toString(), fplayer.getName(), faction.getTag());
} else {
FactionsPlugin.getInstance().log(TL.COMMAND_JOIN_MOVEDLOG.toString(), context.fPlayer.getName(), fplayer.getName(), faction.getTag());
FactionsPlugin.instance.log(TL.COMMAND_JOIN_MOVEDLOG.toString(), context.fPlayer.getName(), fplayer.getName(), faction.getTag());
}
}
}
private int getFactionMemberLimit(Faction f) {
if (f.getUpgrade(UpgradeType.MEMBERS) == 0) return Conf.factionMemberLimit;
return Conf.factionMemberLimit + FactionsPlugin.getInstance().getConfig().getInt("fupgrades.MainMenu.Members.Member-Boost.level-" + f.getUpgrade(UpgradeType.MEMBERS));
return Conf.factionMemberLimit + FactionsPlugin.getInstance().getConfig().getInt("fupgrades.MainMenu.Members.Members-Limit.level-" + f.getUpgrade(UpgradeType.MEMBERS));
}
@Override
@@ -4,9 +4,11 @@ import com.massivecraft.factions.Conf;
import com.massivecraft.factions.FPlayer;
import com.massivecraft.factions.Faction;
import com.massivecraft.factions.FactionsPlugin;
import com.massivecraft.factions.cmd.audit.FLogType;
import com.massivecraft.factions.event.FPlayerLeaveEvent;
import com.massivecraft.factions.struct.Permission;
import com.massivecraft.factions.struct.Role;
import com.massivecraft.factions.util.CC;
import com.massivecraft.factions.zcore.fperms.PermissableAction;
import com.massivecraft.factions.zcore.util.TL;
import mkremins.fanciful.FancyMessage;
@@ -22,7 +24,7 @@ public class CmdKick extends FCommand {
public CmdKick() {
super();
this.aliases.add("kick");
this.aliases.addAll(Aliases.kick);
this.optionalArgs.put("player name", "player name");
this.requirements = new CommandRequirements.Builder(Permission.KICK)
@@ -113,6 +115,7 @@ public class CmdKick extends FCommand {
toKickFaction.msg(TL.COMMAND_KICK_FACTION, context.fPlayer.describeTo(toKickFaction, true), toKick.describeTo(toKickFaction, true));
toKick.msg(TL.COMMAND_KICK_KICKED, context.fPlayer.describeTo(toKick, true), toKickFaction.describeTo(toKick));
if (toKickFaction != context.faction) {
context.fPlayer.msg(TL.COMMAND_KICK_KICKS, toKick.describeTo(context.fPlayer), toKickFaction.describeTo(context.fPlayer));
}
@@ -122,8 +125,12 @@ public class CmdKick extends FCommand {
if (toKick.getRole() == Role.LEADER) {
toKickFaction.promoteNewLeader();
}
FactionsPlugin.instance.logFactionEvent(toKickFaction, FLogType.INVITES, context.fPlayer.getName(), CC.Red + "kicked", toKick.getName());
toKickFaction.deinvite(toKick);
toKick.resetFactionData();
if (!CmdFly.checkBypassPerms(toKick, toKick.getPlayer(), toKickFaction, false)) {
CmdFly.disableFlight(toKick);
}
}
@Override
@@ -11,7 +11,7 @@ public class CmdKillHolograms extends FCommand {
public CmdKillHolograms() {
super();
this.aliases.add("killholos");
this.aliases.addAll(Aliases.killholograms);
this.requiredArgs.add("radius");
this.requirements = new CommandRequirements.Builder(Permission.KILLHOLOS)
@@ -1,9 +1,7 @@
package com.massivecraft.factions.cmd;
import com.massivecraft.factions.Conf;
import com.massivecraft.factions.struct.Permission;
import com.massivecraft.factions.zcore.util.TL;
import org.bukkit.ChatColor;
public class CmdLeave extends FCommand {
@@ -13,7 +11,7 @@ public class CmdLeave extends FCommand {
public CmdLeave() {
super();
this.aliases.add("leave");
this.aliases.addAll(Aliases.leave);
this.requirements = new CommandRequirements.Builder(Permission.LEAVE)
.playerOnly()
@@ -22,8 +22,7 @@ public class CmdList extends FCommand {
public CmdList() {
super();
this.aliases.add("list");
this.aliases.add("ls");
this.aliases.addAll(Aliases.list);
// default values in case user has old config
defaults[0] = "&e&m----------&r&e[ &2Faction List &9{pagenumber}&e/&9{pagecount} &e]&m----------";
@@ -43,76 +42,75 @@ public class CmdList extends FCommand {
// if economy is enabled, they're not on the bypass list, and this command has a cost set, make 'em pay
if (!context.payForCommand(Conf.econCostList, "to list the factions", "for listing the factions"))
return;
FactionsPlugin.getInstance().getServer().getScheduler().runTaskAsynchronously(FactionsPlugin.instance, () -> {
ArrayList<Faction> factionList = Factions.getInstance().getAllFactions();
factionList.remove(Factions.getInstance().getWilderness());
factionList.remove(Factions.getInstance().getSafeZone());
factionList.remove(Factions.getInstance().getWarZone());
ArrayList<Faction> factionList = Factions.getInstance().getAllFactions();
factionList.remove(Factions.getInstance().getWilderness());
factionList.remove(Factions.getInstance().getSafeZone());
factionList.remove(Factions.getInstance().getWarZone());
// remove exempt factions
if (context.fPlayer != null && context.fPlayer.getPlayer() != null && !context.fPlayer.getPlayer().hasPermission("factions.show.bypassexempt")) {
List<String> exemptFactions = FactionsPlugin.getInstance().getConfig().getStringList("show-exempt");
// remove exempt factions
if (context.fPlayer != null && context.fPlayer.getPlayer() != null && !context.fPlayer.getPlayer().hasPermission("factions.show.bypassexempt")) {
List<String> exemptFactions = FactionsPlugin.getInstance().getConfig().getStringList("show-exempt");
factionList.removeIf(next -> exemptFactions.contains(next.getTag()));
factionList.removeIf(next -> exemptFactions.contains(next.getTag()));
}
// Sort by total followers first
factionList.sort((f1, f2) -> {
int f1Size = f1.getFPlayers().size();
int f2Size = f2.getFPlayers().size();
if (f1Size < f2Size) {
return 1;
} else if (f1Size > f2Size) {
return -1;
}
// Sort by total followers first
factionList.sort((f1, f2) -> {
int f1Size = f1.getFPlayers().size();
int f2Size = f2.getFPlayers().size();
if (f1Size < f2Size) {
return 1;
} else if (f1Size > f2Size) {
return -1;
}
return 0;
});
// Then sort by how many members are online now
factionList.sort((f1, f2) -> {
int f1Size = f1.getFPlayersWhereOnline(true).size();
int f2Size = f2.getFPlayersWhereOnline(true).size();
if (f1Size < f2Size) {
return 1;
} else if (f1Size > f2Size) {
return -1;
}
return 0;
});
ArrayList<String> lines = new ArrayList<>();
factionList.add(0, Factions.getInstance().getWilderness());
final int pageheight = 9;
int pagenumber = context.argAsInt(0, 1);
int pagecount = (factionList.size() / pageheight) + 1;
if (pagenumber > pagecount) {
pagenumber = pagecount;
} else if (pagenumber < 1) {
pagenumber = 1;
}
int start = (pagenumber - 1) * pageheight;
int end = start + pageheight;
if (end > factionList.size()) {
end = factionList.size();
}
String header = FactionsPlugin.getInstance().getConfig().getString("list.header", defaults[0]);
header = header.replace("{pagenumber}", String.valueOf(pagenumber)).replace("{pagecount}", String.valueOf(pagecount));
lines.add(FactionsPlugin.getInstance().txt.parse(header));
for (Faction faction : factionList.subList(start, end)) {
if (faction.isWilderness()) {
lines.add(FactionsPlugin.getInstance().txt.parse(TagUtil.parsePlain(faction, FactionsPlugin.getInstance().getConfig().getString("list.factionless", defaults[1]))));
continue;
}
lines.add(FactionsPlugin.getInstance().txt.parse(TagUtil.parsePlain(faction, context.fPlayer, FactionsPlugin.getInstance().getConfig().getString("list.entry", defaults[2]))));
}
context.sendMessage(lines);
return 0;
});
// Then sort by how many members are online now
factionList.sort((f1, f2) -> {
int f1Size = f1.getFPlayersWhereOnline(true).size();
int f2Size = f2.getFPlayersWhereOnline(true).size();
if (f1Size < f2Size) {
return 1;
} else if (f1Size > f2Size) {
return -1;
}
return 0;
});
ArrayList<String> lines = new ArrayList<>();
factionList.add(0, Factions.getInstance().getWilderness());
final int pageheight = 9;
int pagenumber = context.argAsInt(0, 1);
int pagecount = (factionList.size() / pageheight) + 1;
if (pagenumber > pagecount) {
pagenumber = pagecount;
} else if (pagenumber < 1) {
pagenumber = 1;
}
int start = (pagenumber - 1) * pageheight;
int end = start + pageheight;
if (end > factionList.size()) {
end = factionList.size();
}
String header = FactionsPlugin.getInstance().getConfig().getString("list.header", defaults[0]);
assert header != null;
header = header.replace("{pagenumber}", String.valueOf(pagenumber)).replace("{pagecount}", String.valueOf(pagecount));
lines.add(FactionsPlugin.getInstance().txt.parse(header));
for (Faction faction : factionList.subList(start, end)) {
if (faction.isWilderness()) {
lines.add(FactionsPlugin.getInstance().txt.parse(TagUtil.parsePlain(faction, FactionsPlugin.getInstance().getConfig().getString("list.factionless", defaults[1]))));
continue;
}
lines.add(FactionsPlugin.getInstance().txt.parse(TagUtil.parsePlain(faction, context.fPlayer, FactionsPlugin.getInstance().getConfig().getString("list.entry", defaults[2]))));
}
context.sendMessage(lines);
}
@Override
@@ -16,13 +16,13 @@ public class CmdLock extends FCommand {
description: use the /f lock [on/off] command to temporarily lock the data files from being overwritten
default: op
*/
public CmdLock() {
super();
this.aliases.add("lock");
this.aliases.addAll(Aliases.lock);
this.optionalArgs.put("on/off", "flip");
this.requirements = new CommandRequirements.Builder(Permission.LOCK)
.noDisableOnLock()
.build();
}
@@ -11,10 +11,7 @@ public class CmdLogins extends FCommand {
public CmdLogins() {
super();
this.aliases.add("login");
this.aliases.add("logins");
this.aliases.add("logout");
this.aliases.add("logouts");
this.aliases.addAll(Aliases.logins);
this.requirements = new CommandRequirements.Builder(Permission.MONITOR_LOGINS)
.playerOnly()
@@ -18,7 +18,7 @@ public class CmdLookup extends FCommand {
public CmdLookup() {
super();
this.aliases.add("lookup");
this.aliases.addAll(Aliases.lookup);
this.requiredArgs.add("faction name");
this.requirements = new CommandRequirements.Builder(Permission.LOOKUP)
@@ -13,7 +13,7 @@ public class CmdLowPower extends FCommand {
public CmdLowPower() {
super();
this.aliases.add("lowpower");
this.aliases.addAll(Aliases.lowPower);
this.requirements = new CommandRequirements.Builder(Permission.POWER_ANY)
.playerOnly()
@@ -15,7 +15,7 @@ public class CmdMap extends FCommand {
public CmdMap() {
super();
this.aliases.add("map");
this.aliases.addAll(Aliases.map_map);
this.optionalArgs.put("on/off", "once");
this.requirements = new CommandRequirements.Builder(Permission.MAP)
@@ -12,8 +12,7 @@ public class CmdMapHeight extends FCommand {
public CmdMapHeight() {
super();
this.aliases.add("mapheight");
this.aliases.add("mh");
this.aliases.addAll(Aliases.map_height);
this.optionalArgs.put("height", "height");
this.requirements = new CommandRequirements.Builder(Permission.MAPHEIGHT)
@@ -4,6 +4,7 @@ import com.massivecraft.factions.Conf;
import com.massivecraft.factions.FPlayer;
import com.massivecraft.factions.Faction;
import com.massivecraft.factions.FactionsPlugin;
import com.massivecraft.factions.cmd.audit.FLogType;
import com.massivecraft.factions.struct.Permission;
import com.massivecraft.factions.struct.Role;
import com.massivecraft.factions.zcore.util.TL;
@@ -18,10 +19,7 @@ public class CmdMod extends FCommand {
public CmdMod() {
super();
this.aliases.add("mod");
this.aliases.add("setmod");
this.aliases.add("officer");
this.aliases.add("setofficer");
this.aliases.addAll(Aliases.mod);
this.optionalArgs.put("player name", "name");
@@ -33,51 +31,57 @@ public class CmdMod extends FCommand {
@Override
public void perform(CommandContext context) {
FPlayer you = context.argAsBestFPlayerMatch(0);
if (you == null) {
FancyMessage msg = new FancyMessage(TL.COMMAND_MOD_CANDIDATES.toString()).color(ChatColor.GOLD);
for (FPlayer player : context.faction.getFPlayersWhereRole(Role.NORMAL)) {
String s = player.getName();
msg.then(s + " ").color(ChatColor.WHITE).tooltip(TL.COMMAND_MOD_CLICKTOPROMOTE.toString() + s).command("/" + Conf.baseCommandAliases.get(0) + " mod " + s);
}
context.sendFancyMessage(msg);
return;
FPlayer you = context.argAsBestFPlayerMatch(0);
if (you == null) {
FancyMessage msg = new FancyMessage(TL.COMMAND_MOD_CANDIDATES.toString()).color(ChatColor.GOLD);
for (FPlayer player : context.faction.getFPlayersWhereRole(Role.NORMAL)) {
String s = player.getName();
msg.then(s + " ").color(ChatColor.WHITE).tooltip(TL.COMMAND_MOD_CLICKTOPROMOTE.toString() + s).command("/" + Conf.baseCommandAliases.get(0) + " mod " + s);
}
boolean permAny = Permission.MOD_ANY.has(context.sender, false);
Faction targetFaction = you.getFaction();
if (targetFaction != context.faction && !permAny) {
context.msg(TL.COMMAND_MOD_NOTMEMBER, you.describeTo(context.fPlayer, true));
return;
}
context.sendFancyMessage(msg);
return;
}
if (context.fPlayer != null && context.fPlayer.getRole() != Role.LEADER && !permAny) {
context.msg(TL.COMMAND_MOD_NOTADMIN);
return;
}
boolean permAny = Permission.MOD_ANY.has(context.sender, false);
Faction targetFaction = you.getFaction();
if (targetFaction != context.faction && !permAny) {
context.msg(TL.COMMAND_MOD_NOTMEMBER, you.describeTo(context.fPlayer, true));
return;
}
if (you == context.fPlayer && !permAny) {
context.msg(TL.COMMAND_MOD_SELF);
return;
}
if (you.isAlt()) {
return;
}
if (you.getRole() == Role.LEADER) {
context.msg(TL.COMMAND_MOD_TARGETISADMIN);
return;
}
if (context.fPlayer != null && context.fPlayer.getRole() != Role.LEADER && !permAny) {
context.msg(TL.COMMAND_MOD_NOTADMIN);
return;
}
if (you.getRole() == Role.MODERATOR) {
// Revoke
you.setRole(Role.NORMAL);
targetFaction.msg(TL.COMMAND_MOD_REVOKED, you.describeTo(targetFaction, true));
context.msg(TL.COMMAND_MOD_REVOKES, you.describeTo(context.fPlayer, true));
} else {
// Give
you.setRole(Role.MODERATOR);
targetFaction.msg(TL.COMMAND_MOD_PROMOTED, you.describeTo(targetFaction, true));
context.msg(TL.COMMAND_MOD_PROMOTES, you.describeTo(context.fPlayer, true));
}
if (you == context.fPlayer && !permAny) {
context.msg(TL.COMMAND_MOD_SELF);
return;
}
if (you.getRole() == Role.LEADER) {
context.msg(TL.COMMAND_MOD_TARGETISADMIN);
return;
}
if (you.getRole() == Role.MODERATOR) {
// Revoke
you.setRole(Role.NORMAL);
targetFaction.msg(TL.COMMAND_MOD_REVOKED, you.describeTo(targetFaction, true));
context.msg(TL.COMMAND_MOD_REVOKES, you.describeTo(context.fPlayer, true));
} else {
// Give
you.setRole(Role.MODERATOR);
targetFaction.msg(TL.COMMAND_MOD_PROMOTED, you.describeTo(targetFaction, true));
context.msg(TL.COMMAND_MOD_PROMOTES, you.describeTo(context.fPlayer, true));
FactionsPlugin.instance.getFlogManager().log(targetFaction, FLogType.RANK_EDIT, context.fPlayer.getName(), you.getName(), ChatColor.LIGHT_PURPLE + "Mod");
}
}
@Override
@@ -13,10 +13,7 @@ public class CmdModifyPower extends FCommand {
public CmdModifyPower() {
super();
this.aliases.add("pm");
this.aliases.add("mp");
this.aliases.add("modifypower");
this.aliases.add("modpower");
this.aliases.addAll(Aliases.modifyPower);
this.requiredArgs.add("name");
this.requiredArgs.add("power");

Some files were not shown because too many files have changed in this diff Show More