Commit Graph

348 Commits

Author SHA1 Message Date
Nick Porillo
cb0043600d Adds LiquidFlow exploit handling
“hand” merged from HCF. Adds option in conf.json that defaults to false
which if enabled will prevent liquid from flowing between into other
factions if it shouldn’t.
2015-05-12 12:08:42 -04:00
drtshock
2b0638f54f Pull out null check because console can have null faction. Fixes #375. 2015-05-07 10:39:04 -05:00
drtshock
8af57197ce Remove errant format specifier. Resolves #301.
Bumping to .16-SNAPSHOT so I can post this to spigot and then not deal with this anymore.
2015-05-02 21:04:35 -05:00
drtshock
57c0c9fd09 Only clear warps if faction is normal and not null. 2015-04-26 00:03:35 -05:00
drtshock
9076e780cf Add method to get all claims for a given faction. 2015-04-26 00:02:30 -05:00
drtshock
d0b514eff6 Fix some lag with f show. Remove offline permission lookups.
The lookup was locking up my server on almost any f show executions. It's just not worth it.
2015-04-25 19:15:54 -05:00
drtshock
41d0195c9e Remove unused value. 2015-04-25 14:25:17 -05:00
drtshock
c3ac0cf1ea Permission for not losing power while offline. 2015-04-22 08:33:43 -05:00
eueln
8354c95a14 Use getOfflinePlayer(UUID) when retrieving groups. Fixes #361
We were previously using getOfflinePlayer(String), which was not only
blocking, but also being rate limited
2015-04-14 15:44:14 -04:00
Evan Lindsay
7b522be2c7 Remove duplicate message for land/power/maxpower 2015-03-31 03:14:20 -07:00
Evan Lindsay
f5b3628bc4 Fix IllegalStateException due to creating a FancyMessage with no args constructor resulting in first MessagePart having no text. 2015-03-31 02:43:05 -07:00
Evan Lindsay
3c23e1078d Check if vault has group support in case no permission plugin is found or used permission plugin does not support groups 2015-03-30 21:01:23 -05:00
drtshock
ced36df08f Null check when sending scoreboard. Resolves #328. 2015-03-18 08:29:36 -05:00
drtshock
c3452c97aa Add null check before toggling scoreboard. 2015-03-09 23:44:34 -05:00
drtshock
981822f89d Merge branch 'fix/vault-perms' of https://github.com/mrlolethan/Factions into 1.6.x 2015-03-06 16:44:39 -07:00
drtshock
6d6b63ba19 Merge branch '1.6.x' of https://github.com/vemacs/Factions into vemacs 2015-03-06 16:35:19 -07:00
drtshock
3933e135c1 Don't set sidebar visibility if scoreboard is disabled in the config. Resolves #298. 2015-03-06 16:24:21 -07:00
vemacs
1ea6dbe12d Fix one type checking warning 2015-03-05 00:16:57 -05:00
vemacs
7fd590fc75 Add ToggleAllianceChat command (sorry I couldn't think of a shorter name, but this is extremely useful for YouTubers) 2015-03-04 23:55:46 -05:00
vemacs
50e0bd87a6 Merge remote-tracking branch 'upstream/1.6.x' into 1.6.x 2015-03-04 23:37:39 -05:00
mrlolethan
74fb2c8b7d Check for null rsp when loading Vault perms.
Also replace tabs with spaces.
2015-03-02 17:54:46 -03:30
mrlolethan
e10239f686 Fix NoClassDefFoundError being thrown on enable when Vault isn't loaded. 2015-03-01 13:14:10 -03:30
drtshock
607be6b8fb Merge t00ths branch. 2015-02-26 08:59:00 -06:00
vemacs
4484eae5b8 add API to ignore alliance chat 2015-02-25 07:38:03 -07:00
mrlolethan
d88332c06a Remove unused territoryShieldFactor in Conf.json. 2015-02-23 16:07:49 -03:30
mrlolethan
c7d9e6b92c Cleanup unnecessary in-house Cancellable#isCancelled checks.
Use the ignoreCancelled EventHandler annotation parameter instead.
2015-02-23 16:03:23 -03:30
eueln
1daf79c6c3 Fix MemoryBoard#hasFactionWithin implementation
It was previously only checking for factions diagonally within the
designated radius
2015-02-20 17:08:29 -06:00
eueln
2b4e1a1947 Gracefully handle the absence of WorldBorder
Additionally move `isOutsideWorldBorder` to FLocation, because it
doesn't belong in Board/MemoryBoard.
2015-02-20 17:01:52 -06:00
Nick Porillo
0aea7c6b9d Remove redundant messaging. Fixes #276
When informing faction members, if the command sender is part of the
faction, do not send another message to him because he has already been
informed.
2015-02-20 12:47:48 -06:00
korikisulda
1d00a0aa54 Yet more TL. Hi @Bonkozorus 2015-02-19 09:10:42 -06:00
Nick Porillo
d69f9e5688 Handle buffers 2015-02-19 08:59:28 -06:00
Nick Porillo
5a9112ad37 Add WorldBorder support
- Uses API in spigot to get world border
- Blocks faction claims that are outside the world border

Improved border detection

This is the updated border detection, this method is extremely accurate
and does not over partition claim space like before.

Takes the border and divides by two, and then converts the block
distance into a chunk distance.
Ex. Border = 100, Chunks = 6 vertically, 6 horizontally.

We get the absolute value difference between the center chunk and the
claim chunk, for both X and Z. We add both diffs, and if they are
greater than the limit, then we know the chunk is outside the border!
2015-02-19 08:58:20 -06:00
xTDKx
e6aa3116ac Allow variables to be use in the default sidebar (like it says in the config) 2015-02-15 19:30:15 -05:00
drtshock
a94b3cb6b7 Update to 1.8 Spigot-API. Breaks servers before 1.7.9-R0.3 2015-02-12 09:21:17 -06:00
Nick Porillo
0e76bc05fb Add getLastDeath method
Also makes lastDeath a private field, since it is not accessed anywhere
else in the plugin,.
2015-02-11 23:01:13 -05:00
drtshock
63d6d69224 Remove ~ from sendFactionhere message. People can add it in if they want via TL. 2015-02-06 09:17:17 -06:00
drtshock
5579005714 Add buffer zone for areas between Faction claims. Adds #233. 2015-01-29 09:39:56 -06:00
drtshock
559695d103 Fix check for over claiming. Resolves #230. 2015-01-29 08:30:20 -06:00
eueln
fc0b2a1041 Fix path for Relation translations (singular) 2015-01-28 19:58:21 -06:00
drtshock
1636708cef Adds DTR freeze functionality from #229. 2015-01-28 10:13:23 -06:00
drtshock
8fdcb51183 Add option to not delete FPlayer data on auto leave.
This allows servers to only have the player leave the faction. Also prevents players from staying offline until their power resets.
2015-01-27 11:17:43 -06:00
drtshock
d888b320db Add DTR (deaths til raidable) option for f show.
Will show 0 if they are raidable to prevent a negative number from showing.
2015-01-27 11:07:55 -06:00
drtshock
f92d59e5c6 Add HCF raidable functionality.
This will allow players to break blocks in factions that are raidable (power < claims) as well as open chests. It can also disable over claiming.
2015-01-27 11:02:16 -06:00
drtshock
147a051fee Add max relation type. Adds HCF feature from #169.
If used, max relation should be set to -1 for the default relation.
2015-01-27 09:34:22 -06:00
drtshock
092d4b352c Add ability to display if Faction is raidable. Resolves #167. 2015-01-27 09:06:18 -06:00
eueln
3c0c835160 Fix TL path for /f save success message 2015-01-23 19:48:49 -06:00
korikisulda
5ea8392fd5 Even moar TL 2015-01-23 15:09:47 -06:00
drtshock
0c2253ef73 Iterate over correct Faction for balance. 2015-01-23 09:17:16 -06:00
drtshock
3e6bd4e88a Add f top command functionality. Resolves #71.
Gives the ability to see top Factions on the server sorted by certain criteria:
Balance: sorts by faction bank balance and all faction member balances.
Power: total power.
Land: total land claimed.
Online: members currently online.
Members: total members, online and offline.

Future criteria can be added of course.
2015-01-23 09:07:18 -06:00
drtshock
ebf00ccf0d Add claim line. Resolves #142. 2015-01-22 22:38:46 -06:00
drtshock
bee36f5ba0 Add warzoneDenyCommands. 2015-01-22 20:41:05 -06:00
drtshock
a4a11e7045 Allow f show to be executed by non players. 2015-01-22 20:31:26 -06:00
drtshock
8c2f08b694 Truces.
Add chat channel functionality. Essentially the same as Allies except it's a different word.
2015-01-22 20:30:40 -06:00
eueln
a943f47abb Init built-in factions after loading from disk 2015-01-21 19:45:49 -06:00
korikisulda
7e6aa4fc25 Even more TL. Fixes command description issues. 2015-01-21 19:25:45 -06:00
korikisulda
1cc544db64 moar translatify :3
Add some missing TL nodes
Remove Lang class
You can now into changing command descriptions
2015-01-20 13:58:38 -06:00
korikisulda
3d52704c5d Changed TL to use numbered strings 2015-01-20 13:52:44 -06:00
Joshua Popoff
355e1f58b0 Add warmups for /f home and /f warp 2015-01-19 15:59:15 -08:00
drtshock
a7adb1d9d7 Default chat tag insert index should be 0. Resolves #100 sorta. 2015-01-16 10:01:26 -06:00
drtshock
102d13a3f6 Update to Worldguard 6.x. Resolves #214.
This is a breaking change for anyone using Worldguard 5.x
2015-01-15 13:29:14 -06:00
drtshock
4d13c9cada Change command syntax for radius claiming.
Syntax was confusing and people wanted change. Resolves #215.
2015-01-15 13:27:11 -06:00
drtshock
b7c34840cd Fix exploit. 2015-01-15 13:24:33 -06:00
eueln
c1752477c7 Save last-known FPlayer names
Instead of performing a lookup each time FPlayer#getName() is called,
save the player's name as s/he logs in
2015-01-13 16:37:59 -06:00
eueln
1d4ca46ebe Don't update prefixes for Wilderness 2015-01-11 16:14:07 -06:00
eueln
6d6a04e383 Don't do perform economy actions on nameless offline players
An offline player is nameless if the player has not played on the server
before.

Unfortunately, all of the major economy plugins don't UUID-based
transactions, and instead forward all of the UUIDs through
Bukkit.getOfflinePlayer(UUID).getName()
2015-01-10 15:12:06 -06:00
eueln
b52805f7a4 Initialize online players when Factions is enabled 2015-01-10 14:42:52 -06:00
eueln
2955370c9e Fix misleading error in CmdKick
The error was shown to a player when s/he tried to kick someone who
didn't belong to a faction, and incorrectly asserted that something had
"went wrong".
2015-01-10 11:32:56 -06:00
eueln
561ab22924 Remove most mentions of getOfflinePlayer(String)
Faction bank accounts will need to be migrated to use UUID identifiers
before we can remove the remaining getOfflinePlayer(String) calls.
2015-01-09 11:44:15 -06:00
mrlolethan
dc3e7e953b Fix "No player found" message in CmdKick
When `/f kick` was used with zero arguments, an ugly message was sent to
the player regarding a missing player match for "null"
2015-01-07 18:14:27 -06:00
drtshock
8103f953eb Allow chat spying to persist. 2015-01-06 16:08:58 -06:00
drtshock
8300b2ff2b Allow players to monitor joins and leaves of their faction members.
Larger servers tend to have join and leave messages disabled for the entire server. A few have requested to allow faction members to monitor join and leave messages of their own members.
2015-01-06 16:06:46 -06:00
eueln
d36e88f2c0 Correctly remove faction warps in unclaimed land 2015-01-06 11:59:15 -06:00
eueln
5799a0480b Fix String-related bugs
The result of a call to String#toLowerCase() was ignored, and two
Strings were being compared with ==
2015-01-06 11:59:15 -06:00
drtshock
f411b4e014 Remove unneeded permissions class. 2015-01-05 10:40:35 -06:00
eueln
d6bbea7244 Add missing early return in CmdMod 2015-01-05 10:00:51 -06:00
drtshock
0a80b79321 Check for relation when a player tries to create a destination portal in claimed land. Adds #204. 2015-01-05 09:58:32 -06:00
t00thpick1
37565463ad A few optimizations. 2015-01-02 19:33:34 -05:00
t00thpick1
44dc04e3e1 There are lots of unfactioned players, but we shouldn't care about them. 2015-01-02 19:19:57 -05:00
drtshock
91f9d1d8db Remove tooltips for f show and f list.
Tooltips were causing a lot of issues on larger servers. Constructing them as well as the lookups required to display them caused significant lag.

Resolves #197, #164.
2015-01-02 13:38:35 -06:00
Tibo442
2209090783 Different message for own faction and for other factions when faction not found.
Still weird for faction-less players to do /f show <other faction-less player>
2014-12-30 10:07:35 -06:00
t00thpick1
3f949e18cc Lets not do hundreds of object clones when they are nearly never needed. 2014-12-30 00:31:36 -05:00
eueln
c4c5bd9df9 Don't perform /f who for players without a faction 2014-12-29 22:02:18 -06:00
eueln
190c2d793f Use rounded value to match format in /f powerboost 2014-12-24 04:15:16 -06:00
eueln
4703f08027 Fix /f create TL; Save TL nodes on first launch 2014-12-20 20:17:56 -06:00
Tibo442
0d75b1164a Changed FancyMessage.command() to accept command aliases.
Also adds support for servers where slash-less commands are disabled.
2014-12-19 13:51:24 +01:00
Tibo
728b6b0fbc Fix /f enemy/neutral/ally's message of sender's faction 2014-12-19 13:11:38 +01:00
eueln
3c2e51e8ed Make LandUnclaimAllEvent Cancellable 2014-12-17 20:50:28 -06:00
eueln
3733539077 Add cancellable FactionRelationWishEvent
This event is called before a faction relation wish is applied by a
player using `/f relation`
2014-12-17 20:31:21 -06:00
eueln
1ada19b02e Properly split FancyMessages for /f show 2014-12-14 17:24:25 -06:00
eueln
6d2ca16002 Initialize FTeamWrapper if it doesn't exist. Fixes #179 2014-12-14 16:15:25 -06:00
korikisulda
10fd3f082a Fixed phantom section. Accursed underscores. 2014-12-14 13:39:45 -06:00
drtshock
9aecd5f439 Reformat. 2014-12-11 10:05:04 -06:00
korikisulda
1ce1eb51d4 Add Japanese translation 2014-12-11 09:46:06 -06:00
drtshock
8788778d05 Expose loadLang as public and reload from disk on /f reload. 2014-12-11 09:16:12 -06:00
drtshock
fa4154a0ce Allow f show to be sent to non-players.
Fanciful will remove the json formatting to send a readable message.
2014-12-10 22:36:46 -06:00
drtshock
c9433d0cf3 Send f show messages all at once to remove delay. 2014-12-10 22:32:47 -06:00
eueln
a70cfdaf71 Fix /f {set,del,}warp transactions 2014-12-09 17:16:42 -06:00
drtshock
a01d79ef78 Allow the default relation between Factions to be configurable. 2014-12-09 16:01:20 -06:00
korikisulda
1230803cfb Add TL for commands. Resolves #162. Supercedes #97. 2014-12-08 19:47:19 -06:00
eueln
bd8f572cbf Revert reformat on Conf.java 2014-12-08 15:00:20 -06:00
eueln
a6585e6f5c Fix /f warp on Java 6 and 7
Covariance on ConcurrentHashMap#keySet() in Java 8 was to blame.
2014-12-07 21:59:59 -06:00
eueln
e4bafcf072 Clean board on startup 2014-12-07 15:15:42 -06:00
drtshock
caa6f0f0f0 Reformat 2014-12-07 14:26:13 -06:00
korikisulda
a1ab22554c Added dynmap integration. Glory to Arstotzka! Addresses #109 2014-12-07 14:22:29 -06:00
t00thpick1
b8f742a588 Remove players from internal map immediately.
Should resolve #117
2014-12-07 14:59:44 -05:00
eueln
e9b0a4d67c Check projectile shooter's type before casting. Fixes #158 2014-12-07 13:20:48 -06:00
eueln
5e676bdd50 Order /f show by rank. Adds #150 2014-12-06 21:44:00 -06:00
korikisulda
6107e9502e Truncate excessively long online/offline player messages in /f show/who. Resolves #154. 2014-12-06 21:23:19 -06:00
eueln
0487ca77e5 Add spigot constraint for 48-char sidebar text
Spigot has a method `addEntry(String)` for Teams that doesn't block,
unlike the OfflinePlayer option. If the server doesn't have this method,
lines are limited to 16 characters as usual.
2014-12-05 15:58:00 -06:00
eueln
ff2e32feff Fix format in CmdModifyPower message. Fixes #145 2014-11-29 16:29:29 -06:00
drtshock
edfe465ad5 Add missing return statements. 2014-11-17 14:30:41 -06:00
Tibo
356842ab41 Fix clients getting kicked from too many allies/enemies. 2014-11-17 20:16:58 +01:00
Tibo
b970755cb1 Fix spaces with ", "
Fixes #134
2014-11-17 19:32:34 +01:00
eueln
4b6ccc7967 Don't invisibly update faction prefixes when they're disabled 2014-11-17 01:22:12 -06:00
eueln
3af4c9a616 Store OfflinePlayers in FTeamWrapper instead of looking them up 2014-11-15 16:54:16 -06:00
drtshock
8910de367c Require players to be in a faction to promote. 2014-11-14 14:13:51 -06:00
drtshock
bad874495b Add command to modify a player's power specified in #133.
use /f modpower name number
2014-11-14 13:27:23 -06:00
drtshock
104f90c1db Send invite message to correct player. Fixes issue #132 2014-11-14 13:03:51 -06:00
drtshock
54d486cc84 Add tooltips and click commands to f deinvite and show invites. 2014-11-14 10:08:18 -06:00
drtshock
2aa7d7f98d Add tooltips and click commands to f deinvite. 2014-11-14 10:03:57 -06:00
drtshock
03b8f11646 Add tooltips and click commands to f mod. 2014-11-14 09:59:36 -06:00
drtshock
b895fa1e99 Add tooltips and click commands to f kick. 2014-11-14 09:56:13 -06:00
drtshock
656dc90b33 Add tooltips and ability to click to warp when you list faction warps. 2014-11-14 09:46:28 -06:00
drtshock
c4f4036e1d Add tooltips for f show.
Refactor tooltip methods to be shared across command classes.
2014-11-13 13:49:13 -06:00
drtshock
43826d986f Add colors to /f list 2014-11-13 12:52:21 -06:00
drtshock
64e234144e /f list tool tips 2014-11-13 12:45:57 -06:00
drtshock
e585ab57a9 Remove unused f list code. 2014-11-13 09:12:34 -06:00
drtshock
201d10ada5 Add economy option for f warps from #126. 2014-11-11 09:28:53 -06:00
eueln
fdce32e04c Correct FTeamWrapper faction disband detection 2014-11-09 21:27:03 -06:00
eueln
00045b0186 Don't repeatedly update FTeamWrapper for the same faction 2014-11-09 21:12:42 -06:00
drtshock
81182dccaa Add option to completely disable pistons in faction territory.
This is a preemptive method to block new things like http://i.gyazo.com/6a1a31222e58a5d60ff341c13f6a8404.gif
2014-11-08 19:07:42 -06:00
drtshock
ccd8720b09 Fix keySetView issue on non java8 servers. 2014-11-08 14:59:45 -06:00
eueln
917c442b59 Correct implementation of FTeamWrapper::updatePrefix 2014-11-07 13:13:54 -06:00
eueln
29836a9183 Remove faction team prefixes when disbanded 2014-11-07 12:55:59 -06:00
eueln
ea8bb9e24f Remove ghost FInfoBoard.java file 2014-11-07 12:51:18 -06:00
drtshock
77e3fd90b4 Don't assume Essentials is running. 2014-11-07 12:38:45 -06:00
drtshock
962f92496c Don't allow vanished players to block others from teleporting. Fixes #111. 2014-11-07 12:08:57 -06:00
drtshock
8b64b4bfe1 Adds per faction warps functionality from #72.
Default max warps per faction is 5. It can be changed in the config.yml.
You can now use {warps} in the info board to show how many warps a faction has when you walk into their territory.
Only faction mods+ can set faction warps.
2014-11-07 11:49:54 -06:00
drtshock
35813c7210 Reformat. 2014-11-05 18:36:47 -06:00
drtshock
27bf2008f1 Have factions return as 0 instead of null. 2014-11-05 18:36:13 -06:00
drtshock
b66c9ad078 Add missing command help to help command. Resolves #101. 2014-11-05 11:34:46 -06:00
drtshock
11ae51a6ca Check if FTeamWrapper exists for faction. Fixes #107 2014-11-05 11:06:15 -06:00
eueln
2e1a43c228 Make MemoryFactions::load non-abstract.
MemoryFactions::load was incorrectly marked as abstract, which wouldn't
have been possible if not for an erroneous semicolon.

Additionally, we need to call MemoryFactions::load from subclasses.

Fixes #105
Fixes #106
2014-11-02 13:00:01 -06:00
eueln
99c582dda8 Fix issues in CmdOpen
A formatted message was missing a format argument, and comparison on
Strings was being performed with ==
2014-11-02 01:10:41 -05:00
eueln
6c70a7d105 Properly handle player kick before PlayerJoinEvent
Fixes #104
2014-10-31 13:23:22 -05:00
t00thpick1
3e15189c11 Ensure that even if fields are missing from save file, that fields are instantiated. 2014-10-31 10:47:59 -04:00
t00thpick1
ee52016a87 Abstract Data storage method for future implementations. Thanks to Ryan from Reactive MC
Also included:
-Heavily optimized loading process
-Optimizations for various commands.
2014-10-30 23:59:59 -04:00
eueln
17a95fc786 Use older version of Bukkit
For players on versions earlier than 1.7.10, our usage of
getOnlinePlayers() currently throws a NoSuchMethodError.
2014-10-30 23:26:24 -04:00
eueln
79c989bfc8 Remove erroneous comment 2014-10-30 23:26:24 -04:00
eueln
653f918a1b Add support for Glowstone
Glowstone doesn't yet support PlayerMoveEvent nor Scoreboards, so
functionality is unfortunately limited.
2014-10-30 23:26:23 -04:00