Commit Graph

1295 Commits

Author SHA1 Message Date
Nick Porillo
44542261ae Variable overhaul and configurable /f show 2015-05-12 21:34:00 -04:00
Nick Porillo
dbba8c055c Adds Faction founding date
..but does not implement it. Future commit will need to add this to /f
show.
2015-05-12 12:20:11 -04:00
Nick Porillo
362bb55a0f Fix relation limit glitch
Hand merged from HCF. Fixes issue where factions could exceed the max
relation setting in config.
2015-05-12 12:13:30 -04:00
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
vemacs
ffa7872145 fix plugin loading 2015-03-07 06:13:50 -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
korikisulda
1da7dbd25f Fix Dynmap soft-dependency 2015-02-13 18:51:43 -06: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
drtshock
125a8c2050 Add default American English translation file. 2014-12-11 10:01:05 -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
korikisulda
24e7873892 Removed contents of lang file. It's outdated, and they're automatically populated anyway. 2014-12-09 23:24:37 +00: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
eueln
7f2ef4cbd5 Improve Team prefix performance
This change vastly improves performance for faction team prefix update
operations.
2014-10-30 23:26:23 -04:00
Byteflux
90e57740a2 Allow default prefix customization from lang file 2014-10-30 23:26:22 -04:00
drtshock
33bd9f7e81 Allow prefix to be configurable. 2014-10-30 23:26:22 -04:00
eueln
947f82cb2f Don't repeatedly copy the Set<FPlayer> of Faction members 2014-10-30 23:26:22 -04:00
eueln
157d98d4b0 Store FScoreboards by FPlayer instead of Player 2014-10-30 23:26:21 -04:00
drtshock
e739ea0bf6 Add brackets in faction tag. U0.1.7 2014-10-30 23:26:21 -04:00
eueln
49babcd4e8 Add player to faction team when they log in 2014-10-30 23:26:21 -04:00
eueln
c049768e21 Add faction tag to team prefix 2014-10-30 23:26:20 -04:00
Byteflux
51f1ceee14 Show power next to member names in /f show 2014-10-30 23:26:20 -04:00
drtshock
ad1439f431 Add check to prevent scoreboards merging. 2014-10-30 23:26:19 -04:00
drtshock
4929e5dd18 Limit block changes sent in seechunk to prevent client freezing. Use prettier blocks. 2014-10-30 23:26:19 -04:00
Byteflux
5569e5076a Add /f seechunk command for visualizing a chunk 2014-10-30 23:26:19 -04:00
Byteflux
81fc029736 Support modded enums in gson using custom EnumTypeAdapter. Resolves carbon breaking materials in issue #90. 2014-10-30 23:26:18 -04:00
eueln
7ada15992b Refactor scoreboard issue. Resolves issue #80. 2014-10-30 23:26:13 -04:00
eueln
25696f32aa Refactor scoreboard usage
In preparation for team colors, we need to unify scoreboard usage into a
single scoreboard per player.

Rather than creating a new scoreboard for each desired sidebar
objective, we provide an interface FSidebarProvider that allows
implementation-agnostic retrieval of the title and lines of the desired
sidebar, along with appropriate methods in the new implementation of
FScoreboard.

The new FScoreboard implementation manages the currently-visible
sidebar, with methods to set default (non-timed, with update interval)
and temporary (timed, no update interval) sidebars.

Temporary sidebars are replaced with the default sidebar upon
expiration.
2014-10-30 23:26:04 -04:00
drtshock
bed6fe0741 Add faction announcements to send to all players and show to players when they login if they were not online when it was first sent as requested in issue #82. 2014-10-18 03:54:45 -05:00
drtshock
e290ac0320 Add new permissions to plugin.yml and permission kits. Set scoreboards to enabled per player by default. 2014-10-16 13:35:21 -05:00
drtshock
e20995464e Toggling of scoreboards now affects the default board. 2014-10-15 20:58:37 -05:00
drtshock
aee7092b09 Add a scoreboard that can be given to people by default when they join as specified in issue #79.
This was hacked together as I wanted more functionality. Should probably make this prettier and better later.
2014-10-15 19:56:02 -05:00
drtshock
525d31c2b2 Be friendly to other plugins that show scoreboards. Adds #74. 2014-10-15 16:21:27 -05:00
drtshock
4f3310d88f Reload the config.yml on /f reload. 2014-10-15 15:45:20 -05:00
drtshock
2fc17c62b5 Properly persist scoreboard toggles. Fixes issue #61 2014-10-15 15:29:04 -05:00
blha303
9baf297ff7 Add /f status command, closes #70 2014-10-15 12:30:03 -05:00
drtshock
a170a0f4ad /f showinvites for ability to see pending invites for current faction. Adds feature in ticket #76 2014-10-14 13:30:05 -05:00
drtshock
bfc904332a Fix spelling error. 2014-10-13 16:25:32 -05:00
drtshock
04fd18f17a Add tooltips and commands for f invite command as specified in issue #73. 2014-10-13 14:10:18 -05:00
drtshock
272c35cda6 Add cooldown for auto showing f map to players. Fixes issue #64. 2014-10-09 11:04:11 -05:00
drtshock
49e69b74c8 Add radiable as an option for the scoreboard. 2014-10-06 09:48:28 -05:00
Ihaveaporpoise
8e248c9ea7 Make reload command only call configuration file. Fixes issue #59 2014-10-05 00:28:00 -05:00
Ihaveaporpoise
eceb10c185 Prevent players in peaceful factions from damaging with harmful potions. Fixes issue #50. 2014-09-30 19:11:51 -05:00
drtshock
bf6a3c2a4b Version U0.1.5 2014-09-25 13:44:35 -05:00
drtshock
39e0380570 Add patch for interact event. Fixes issue #53. Thanks @swifteh 2014-09-25 13:39:22 -05:00
drtshock
b444b25bc1 Add config toggle for Info scoreboard. 2014-09-01 14:56:32 -05:00
VirtualByte
09d6102798 Fixed economy issues 2014-09-01 13:06:35 -05:00
drtshock
0f88e8535d Limit length of f show messages. Fixes issue #44.
Clients could crash if the messages were too long so we'll limit it here. Thanks to @mccore for the method here.
2014-08-26 13:05:54 -05:00
drtshock
ddf054330a First implementation of scoreboards.
Boards can be toggled with /f sb. Toggles are persistent in a yml file.
Also fix some small spelling and format things that were really bugging me.
2014-08-05 10:17:27 -05:00
drtshock
c735053bc3 Refix chat handling. 2014-08-02 18:19:56 -05:00
drtshock
30f4fdf6c6 Properly replace chat. Hardcoding never helped anyone.
Fixes issue #30.
Use ternaries where possible.
2014-08-02 17:37:48 -05:00
drtshock
957f8a209d Don't apply chat tags twice. 2014-08-02 16:32:25 -05:00
drtshock
5938a4987e Make bare /f command show help.
Just making the plugin think they actually executed the help command because the help pages are built inside of that class and I'd rather not worry about moving them out of there or easily accessible.
2014-07-12 15:50:56 -05:00
drtshock
3298183fdf Add missing javadocs. 2014-07-09 14:01:53 -05:00
drtshock
4d5278b079 Improve and document event system. Deprecate duplicate methods. 2014-07-09 14:00:16 -05:00
drtshock
7604b4455b Don't allow players to be kicked from wilderness faction for whatever reason. Somewhat fixes issue #29. 2014-07-09 13:38:19 -05:00
drtshock
7f1b2d73ad Make sure damage modification is commented out. 2014-07-09 13:20:38 -05:00
drtshock
484a8cc233 Merge branch '1.6.x' of https://github.com/hintss/Factions into hintss-1.6.x 2014-07-09 13:18:50 -05:00
drtshock
1fa7e28ffd Comment out territory shield because modifying the damage just doesn't want to work. 2014-07-08 13:54:22 -05:00
drtshock
0d0085f423 Use double for multiplying damage. Fixes issue #25. 2014-07-05 23:52:07 -05:00
drtshock
3c2f48d582 Remove metrics. 2014-07-05 13:21:10 -05:00
drtshock
d968b9878c Listen to commands to see if they should be allowed. Fixes issue #26. 2014-07-05 13:20:07 -05:00
drtshock
526734b9f6 Update to use async chat event. 2014-07-03 13:04:17 -05:00
Henry Ammermann
97bc72e4f8 intellij autofixes! 2014-07-01 23:37:42 -07:00
Henry Ammermann
95899e7ab9 make Flocation's getCircle not use a square root 2014-07-01 14:51:39 -07:00
drtshock
8a6a97cc90 Reformat 2014-07-01 15:10:18 -05:00
drtshock
5066934a95 More reformatting 2014-07-01 14:52:40 -05:00
drtshock
dc54f78cc1 Some reformat 2014-07-01 14:49:42 -05:00
drtshock
955958ce61 Remove mac stuff. 2014-07-01 13:47:22 -05:00
drtshock
672e115d8b Update default factions description and tags if changed in the lang file. 2014-07-01 13:46:30 -05:00
drtshock
cd65375bd9 Add TL file. Use CommandExecutor to properly handle commands instead of using the preprocess listener and breaking other plugins. 2014-07-01 13:19:36 -05:00
drtshock
753c32785d Fix flocation owner showing as uuid instead of name. Fixes issue #18 2014-06-30 13:41:52 -05:00
drtshock
ee96e330b7 U0.1.2. Attempt to hook chat tags. 2014-06-27 14:57:18 -05:00
drtshock
024e88a35b Fix metrics call to getOnlinePlayers 2014-06-27 13:43:12 -05:00
Trent
a47caa4ff6 Merge pull request #16 from Scyntrus/1.6.x
Re added get function with Player parameter for PlayerEntityCollection
2014-06-17 02:22:22 -05:00
ediTv2
1d13121407 Fix for Issue #6 (Arrow Entity Damage) 2014-06-16 22:54:50 -07:00
Steven Timotius
b3a37576cd Re added get function with Player parameter for PlayerEntityCollection for backwards compatibility 2014-06-03 21:02:24 -07:00
drtshock
a8e3b3c1e2 Add Metrics. Disable opting out because we want to know. Increment version to U0.1.1 2014-05-23 00:46:35 -05:00
drtshock
997d0c5a43 Offline players will not be null. This was interfering with faction invites for some reason. 2014-05-20 16:45:13 -05:00
drtshock
b10e31acbb Remove some unneeded files. 2014-05-19 13:08:37 -05:00
drtshock
28afd6530c Fix f who issue with looking up offline players. Fixes issue #8 2014-05-19 13:03:26 -05:00
drtshock
5d50dc9971 Add this. 2014-05-19 11:45:45 -05:00
drtshock
024336d717 Readd essentials teleport cooldown hook. Fixes issue #5 2014-05-19 11:44:15 -05:00
drtshock
7107829446 Fix missed diff when removing Spout compatibility. Fixes issue #11. 2014-05-19 11:14:55 -05:00
CoOwner/Developer for @ArkhamNetwork - Java, PHP, Redis, LAMP
1a9a2f65c0 Replace getName with hasPlayedBefore as offlineplayer will never be null. This fixes quite a few command bugs. 2014-05-16 17:48:59 +01:00
gravitylow
51ac5d2cb2 Update commands to search by UUID 2014-04-16 23:15:14 -04:00
gravitylow
bad3d779c5 Lookup by player instead of name/id 2014-04-16 22:29:38 -04:00
gravitylow
76be9f16f7 Update block usage to use UUIDs 2014-04-16 22:22:32 -04:00
gravitylow
da16b662b4 Update faction storage to use UUID 2014-04-16 21:10:12 -04:00
gravitylow
43d5c32bad Update block usage player lookups 2014-04-16 18:35:55 -04:00
gravitylow
91e7b1587f Update command player lookups, fixes #3 2014-04-16 18:35:36 -04:00
CoOwner/Developer for @ArkhamNetwork - Java, PHP, Redis, LAMP
2c13dd463c Fix getting the wrong faction from player
This fixes factions getting the wrong faction from a player. Before it was returning a wrong faction and the player could not build in his/her own land.
2014-04-16 20:07:08 +01:00
gravitylow
e2f5548a5f Offline player name hotfix until I can write a good threaded use of OfflinePlayer 2014-04-16 13:55:22 -04:00
drtshock
402b3b0d07 Always attempt to return a name before a uuid. 2014-04-16 12:28:57 -05:00
drtshock
9d73339e14 Ternary 2014-04-16 12:12:18 -05:00
gravitylow
d93a0b16cc Nullcheck name for offline player support 2014-04-16 13:07:14 -04:00
gravitylow
1736f34fc8 Show player name instead of UUID when requesting name.. 2014-04-16 12:33:24 -04:00
gravitylow
0f4bd48817 Create player backups before converting and save data straight away 2014-04-15 21:29:45 -04:00
gravitylow
f9074c0f59 Start re-versioning this fork 2014-04-15 19:09:17 -04:00
gravitylow
b73736b03b Update conversion process to look for dead entries and properly save responses 2014-04-15 18:54:13 -04:00
gravitylow
61c64a94db Update UUIDFetcher to handle more requests 2014-04-15 18:53:38 -04:00
gravitylow
6c4cfd337e Java 6 compatible 2014-04-15 15:19:00 -04:00
gravitylow
8453ab3e76 Convert old player configs 2014-04-15 15:08:25 -04:00
gravitylow
e3c0f6376f More housekeeping 2014-04-15 13:42:09 -04:00
gravitylow
68d3145c7d Let's clean up this config.. 2014-04-15 13:23:18 -04:00
gravitylow
255549099f Store and lookup from UUID 2014-04-15 13:18:13 -04:00
drtshock
eb770edd7a Push pending stuff. 2014-04-13 16:31:10 -04:00
drtshock
b50cebcdb6 COMPILES 2014-04-05 17:25:15 -05:00
drtshock
a73f2b0174 Update to newer API. 2014-04-05 17:00:33 -05:00
drtshock
c4f7d6b756 Remove spout features, add worldguard and worldedit. 2014-04-05 15:42:01 -05:00
drtshock
d9b7cf7058 Remove spout, update pom for lwc. Still need lots of dependencies. 2014-04-04 14:35:35 -05:00
drtshock
814e439705 Reformat before I go crazy. 2014-04-04 13:55:21 -05:00
drtshock
0c3ea377dd Remove mac crap. 2014-04-04 13:54:22 -05:00
drtshock
c3983d3b96 Mavenize 2014-04-04 13:53:42 -05:00
Brettflan
d7ad010d2f Updated TNT explosion protection to cover TNT minecarts
Added trapped chest, hopper, and dropper to default territoryProtectedMaterials and territoryProtectedMaterialsWhenOffline lists

Existing users will need to update their config to add these, like so:
/f config territoryProtectedMaterials TRAPPED_CHEST
/f config territoryProtectedMaterials DROPPER
/f config territoryProtectedMaterials HOPPER
/f config territoryProtectedMaterialsWhenOffline TRAPPED_CHEST
/f config territoryProtectedMaterialsWhenOffline DROPPER
/f config territoryProtectedMaterialsWhenOffline HOPPER

Also cleaned up some leftover code
2013-04-23 08:52:39 -05:00
Brettflan
cec9422a13 AutoLeaveTask is now throttled to only spend a certain amount of time per server tick on removing inactive players, to prevent it from potentially choking very large servers. This amount of time can be specified by the new setting "autoLeaveRoutineMaxMillisecondsPerTick" (default 5ms, ~10% of a tick).
Also some very minor improvements to the config command.
2013-04-21 20:26:19 -05:00
Brettflan
63837691ce Additional safety check to make sure EntityCollection.saveToDisc() can't run multiple iterations simultaneously; this might have been the cause of some reports of corrupted data 2013-04-18 03:24:23 -05:00
Brettflan
f7d57efe0b Made SaveTask routine's repeat rate configurable through new setting "saveToFileEveryXMinutes" (default 30.0, as it was previously hardcoded). Routine can be disabled by setting it to 0 or lower.
Also added in flag to make sure the routine doesn't try to run more than one iteration simultaneously if a previous iteration is still running.
2013-04-18 03:02:40 -05:00
Brettflan
d8564a050f Additional Exception catching for errors which might occur when loading JSON files 2013-04-18 02:08:41 -05:00
Brettflan
8487bafac0 Many possible sync related problems with 1.6.x chat handling; switching back to using deprecated PlayerChatEvent instead of AsyncPlayerChatEvent. Not the best solution, but since 1.6.x is only really maintained for compatibility and bugfixes at this point... 2013-04-18 02:03:21 -05:00
Brettflan
a4e06db112 made "worldGuardBuildPriority" apply in Wilderness and WarZone, not just SafeZone 2013-04-12 11:59:33 -05:00
Brettflan
96dafe4327 New permission factions.claim.radius (granted to all players by default), which is now required in order to specify a radius with the claim command. 2013-01-29 19:21:32 -06:00
Brettflan
19178d2875 (by jastice) Handle EconomyResponse objects from Vault on all transactions.
Vault's EconomyResponse was ignored for some cases, such as money transfers and deposits.
This would cause money to get lost if a transfer failed. This change refunds the initiatior of a transfer and notifies them of the failure.

Failing transfers can happen often when using economy plugins based on physical currency, such as Gringotts, for example when no space is available in an account.
2013-01-04 09:54:00 -06:00
Brettflan
7a8fa0266a tiny performance optimization to last commit 2013-01-04 09:13:28 -06:00
Brettflan
fc6e80ecbe Update to our obsidian generator exploit prevention code (via config option "handleExploitObsidianGenerators") to address newer method involving tripwire strings instead of redstone 2013-01-04 09:06:57 -06:00
Brettflan
e6dcfcdb38 Release 1.6.9.4 beta
and sneaking in a typo fix
2012-12-19 06:43:24 -06:00
Brettflan
214b87edd8 (by alkarinv) Added a new Factions event for power loss named PowerLossEvent. PowerLossEvent happens after each player death.
Backported from 1.7 branch.
2012-12-19 06:18:56 -06:00
Brettflan
98db1ee2c4 Release 1.6.9.3
Also fix for improper message being sent to person who changes a faction description if "broadcastDescriptionChanges" is disabled
2012-11-30 20:14:30 -06:00
Brettflan
9e4cc676ea fix for /f list command throwing an error if an invalid page number was specified (ex. 5 pages available and they run /f list 6) 2012-11-30 19:43:01 -06:00
mbax
98d3b8cf0d How about we declare async commands as async 2012-11-25 00:38:44 -05:00
Brettflan
1e9cf01e23 Fix for pistons being able to push blocks into protected territory through water or lava 2012-11-11 13:05:59 -06:00
Brettflan
8aa9e18be6 New setting "broadcastDescriptionChanges" (default false) which can be enabled to have faction description changes broadcast to everyone on the server. Previously description changes were always broadcast.
Also added witch and wither boss to monster list, missed that for last release.
2012-11-09 18:22:41 -06:00
Brettflan
25cf3b5bbc Update deprecated PlayerPreLoginEvent to PlayerLoginEvent; backported from main branch 2012-11-08 00:07:53 -06:00
Brettflan
ade3c6b320 Fix for crop trampling and pressure plates not being protected due to bug introduced in recent performance overhaul 2012-11-06 15:01:34 -06:00
Brettflan
c11d9b03a3 Fix for slashless commands triggering errors in CraftBukkit on rare occasions due to being run async 2012-11-06 14:23:16 -06:00
Brettflan
8288cfc44a minor cleanup of hanging explosion protection code 2012-11-06 12:35:48 -06:00
Brettflan
a71e1bf8b2 Wither boss second stage will no longer be able to destroy blocks in territory which has fireball protection; a bit crude just using fireball protection for Wither boss too, but I'd rather not add in a whole new set of xxxBlockWitherExplosion settings 2012-11-06 11:58:16 -06:00
Brettflan
7a31fb8217 updated known badPotionEffects to include wither potion 2012-11-06 11:04:10 -06:00
Brettflan
165fbe03a1 fix for economy check that made sure player/faction could afford specific commands not working correctly; thanks to spaceemotion for pointing out the problem and fix 2012-11-06 11:01:21 -06:00
Brett Flannigan
5ad6886d46 Merge pull request #179 from Tahkeh/1.6.x-fix
Protecting Beacon and Anvil use by default and protecting Hanging entities from explosions
2012-11-06 07:54:44 -08:00
Brettflan
30d9bbf138 Performance overhaul sponsored by rockxz3, using his large server's data for reference to help with testing and tuning. Timing numbers below are based on this data set.
* PlayerMoveEvent performance boost (from 0.047ms to 0.015ms in testing, ~313% as fast): now more thrifty in determining whether player has actually moved between chunks before doing anything else; important since this event triggers extremely quickly
* PlayerInteractEvent performance boost (from 0.068ms to 0.034ms in testing, ~200% as fast): now ignores left-clicks for interaction checks, since in CraftBukkit 1.4 left-clicks no longer open doors or activate buttons/levers/etc.; not as important as above, but still triggers quite often as people are digging or interacting with blocks
* "/f list" command performance boost (from 234ms to 30ms in testing, ~780% as fast): code was getting information for all factions, narrowed it down to only getting info for displayed page range
* "/f show" command performance boost (from 132ms to 28ms in testing, ~470% as fast): tweaked the ally & enemy listing code used
2012-11-06 09:43:30 -06:00
John Veres
dce2e7d266 Added config protection defaults for Beacon and Anvil. Added Hanging
protection for explosions.
2012-11-04 01:52:33 -05:00
Brettflan
ee6c7c07d2 Updated old painting events to new hanging events so that item frames are also protected.
Added wither boss initial explosion to our fireball explosion protection (only needed in 1.6 branch).

Also updated CraftBukkit lib and (hopefully) further clarified error message for GSON libs not being found in CB 1.3.2+ location.
2012-10-31 16:16:19 -05:00
Brettflan
1707582e80 Wither skull explosions are now blocked by fireball explosion protection (territoryBlockFireballs etc.)
only needed in 1.6.x branch since 1.7 branch handles all explosions the same
2012-10-29 19:24:31 -05:00
Brettflan
c7b4184e1d Backups are now created of bad factions.json and players.json files if they fail to load due to a JSON parse error; same as we already do for bad conf.json 2012-10-19 01:50:36 -05:00
Brettflan
1a4286c379 Update to "handleExploitTNTWaterlog" method to not destroy Ender chests or portals; sadly there's still no method provided by Bukkit to get a block's blast resistance, so we have to go by a list of block type IDs which are supposed to be TNT-proof 2012-10-19 00:11:37 -05:00
Brettflan
ea2da7ea9f Fix for crash on startup if Worldguard integration is enabled ("worldGuardChecking" or the new "worldGuardBuildPriority") but Worldguard plugin isn't loaded on server
Also updated SpoutPlugin lib
2012-10-09 17:36:59 -05:00
Brett Flannigan
6c5e9cbdc8 Merge pull request #169 from flatbmx/1.6.x
Allow users to build/destroy in safezone if they can build in a worldguard region.
2012-10-09 15:19:23 -07:00
FlyingPikachu
de258a529d Removed spammy "boardclearat / clearclaim" message
Pretty straightforward. Factions broadcasted pointless message whenever LWC locks were reset.
2012-10-07 15:19:23 -03:00
flatbmx
909f605343 fixed default build if there was no region at location. 2012-09-08 11:22:18 -05:00
flatbmx
774d013cd0 Added WorldGuard region building overriding safezone build rules if enabled. 2012-09-08 11:02:36 -05:00
Brettflan
1751702dc1 re-release of 1.6.9.1: added some (apparently absolutely necessary) idiot-proofing for CB version support due to changed GSON lib package name; we were getting a flood of invalid error reports because of it 2012-09-05 03:43:39 -05:00
Brettflan
e8b66ac8cd Fix for players being able to use /f sethome for other factions when they shouldn't be able to 2012-08-26 18:28:48 -05:00
Brettflan
f99e1b0e89 Partial backport of Olof's file handling changes made in the main 1.7.x branch. Reworked a bit to use older file handling methods which don't require Java 1.7.
Main change is that files as a whole are read into (and written from) an array of bytes, which is converted to/from UTF-8 encoded text. Previously files were read line-by-line as text from a BufferedReader.

Surprisingly, this seems to vastly speed up startup time. I tested on a ~2 MB data set which is now loading in just over 1 second where it was previously loading in ~95 seconds.
2012-08-26 04:44:55 -05:00
Brettflan
3bcdb87bf3 The latest CraftBukkit builds have changed their compiled-in GSON lib's package name. Rather than us switching back to using a separate GSON lib again (with two effectively identical copies of GSON ending up loaded and wasting server resources), I'm simply switching Factions to point to CraftBukkit's refactored GSON package name instead.
In line with that, I've removed the Bukkit and GSON libs and added in CraftBukkit as a lib.
2012-08-26 01:02:21 -05:00
Brettflan
5841106bea (by ammaraskar) Fixes an ender pearl clipping exploit with blocks that occupy less than 1 block in width or length 2012-08-07 22:32:34 -05:00
Brettflan
d29c7f22fa Update version to 1.6.9_pre, fix for invalid comparison 2012-08-07 21:58:46 -05:00
Brettflan
6059ee0b0b Update for remaining old PlayerChatEvents, update EssentialsChat libs and integration accordingly 2012-08-07 21:51:31 -05:00
Brettflan
5a558a2f0f Merge branch '1.6.x' of github.com:MassiveCraft/Factions into 1.6.x 2012-08-05 19:57:11 -05:00
Brettflan
ca61860d7b Switch PlayerChatEvent to AsyncPlayerChatEvent for bleeding-edge 1.3.1 Bukkit builds to prevent persistent nag from Bukkit, update Bukkit lib
UNTESTED, please confirm working... looks like chat event cancellation might be bugged in Bukkit at the moment but will hopefully be fixed soon if so
2012-08-05 19:56:07 -05:00
basicsensei
e18cfb4529 fix evil bug with getPlayer matching online players
if the offline player had similar name with the online player
ie. online "s2", offline "s", then "s" would show as online because
getPlayer("s") will return getPlayer("s2")
this is why getPlayerExact should be used
2012-07-16 18:25:31 +02:00
Brettflan
73898673f6 Release 1.6.8 - one final minor detail, default position for Spout territory faction display is now in upper left since Spoutcraft client now has minimap in upper right 2012-05-16 23:06:16 -05:00
Brettflan
ba16a202ba fix for rare case where faction home location's world being removed or renamed (world with specified name not existing) could lead to NPE 2012-05-08 14:25:18 -05:00
Brettflan
66a7685bf7 /f show|who command will no longer reveal players as online if they are hidden from the viewer by the Vanish API 2012-04-26 08:08:10 -05:00
Brettflan
dd0789cda1 Relation commands will now cancel out if the same relation is already set with the target faction. 2012-04-06 13:27:21 -05:00
Brettflan
dcee1f5232 fix for /f power command used on self incorrectly also requiring factions.power.any permission 2012-04-06 13:23:05 -05:00
Brettflan
e71a09b6e2 New setting "handleExploitTNTWaterlog" (default false/disabled) which, if enabled, will cause TNT which explodes in liquid to actually destroy a single adjacent block in all 6 directions. This will only apply to blocks which can be destroyed by TNT normally, specifically anything other than air, bedrock, water, lava, obsidian, and enchanting tables. The destruction of these blocks will be handled as if they had been mined, dropping the appropriate item.
TNT in water/lava doesn't normally destroy any surrounding blocks, which is usually desired behavior. That's the reason this setting is disabled by default. However, it is available because it provides a method to get through waterwalls with enough persistence, and it makes cheap (non-obsidian) TNT cannons require minor maintenance between shots. Both are useful things for my server.
2012-03-19 11:18:40 -05:00
Brettflan
0eaffd7aef Double-space (or more) after command alias is no longer accepted, i.e. "f--home" (replace "-" with " " since GitHub is combining multiple spaces). Otherwise, command prevention routines (in Factions itself and in other plugins) can be bypassed. For example, preventing the "f-home" command wouldn't prevent anyone from using "f--home" or "f-----home" instead. 2012-03-19 08:24:01 -05:00
Brettflan
d31bac8da8 New setting "handleExploitInteractionSpam" (defaults to true). If enabled, players will begin to take injury if they rapidly try interacting with anything in another faction's territory. This is to prevent people from spam-clicking on doors and chests and such in the hopes that they'll get one through. After 10 rapid interaction attempts in a row, every click will cause them damage; the damage amount is a half heart of damage for every 10 clicks (up to 1 heart at 20 clicks, 1.5 hearts at 30, etc.). After the player has stopped trying for 2 seconds, their failed interaction counter will reset.
Also removed our old workaround fix code for the bug where half-step placement wasn't detected, since the Bukkit team fixed that in 1.1-R4.
2012-03-19 07:59:44 -05:00
Brettflan
03b0a2bb5f Optional prevention of a couple of exploits.
1. Obsidian generator exploit, which converts redstone wire to obsidian. New setting "handleExploitObsidianGenerators" (enabled by default) to determine whether it's prevented or not. Some servers might want to disable this prevention, to keep it as a viable obsidian creation method. Thanks to ObGenBlocker and WorldGuard plugins for the prevention method.
2. Ender pearl exploit, which could be used to clip through doors, glass, and probably a few other things if just the right spot was targeted. New setting "handleExploitEnderPearlClipping" (enabled by default) to determine whether it's prevented or not.

Also removed our TNT exploit prevention code, since they did get it fully fixed in 1.1-R4 and it doesn't look to be coming back from the dead again like it did when they released 1.1-R2.
2012-03-19 06:54:59 -05:00
Brettflan
500a3d2819 Add fireball/"fire charge" to default territoryDenyUseageMaterials list, to prevent them from being used to set things on fire like flint&steel 2012-03-19 04:19:05 -05:00
Brettflan
67fce0b6ca Should finally completely fix problem where player location world changes in the middle of the /f home smoke effect, triggering an error from trying to calculate distance between worlds
also updated Spout API lib
2012-03-19 01:28:10 -05:00
Brettflan
68f1319a98 Faction homes should no longer be lost if their target world isn't already loaded when Factions loads at server startup. This is done using a new lazy-load Location container class which only initializes the Location when it's actually needed. 2012-03-14 13:06:50 -05:00
Brettflan
2dbaee836b Ability to pay for commands (through economy) is now checked before firing events which can be canceled, and actual payment made after making sure the event isn't canceled.
Added Econ.hasAtLeast(EconomyParticipator ep, double delta, String toDoThis) method to check if an account has at least a specified amount of money in it. Also added related FCommand.canAffordCommand(double cost, String toDoThis).
2012-03-13 09:48:31 -05:00
Brettflan
30c2eaeac3 (donington) Fixes for compiler warnings & minor .gitignore enhancement, completed the last of the creatureType/entityType renaming (a few imports and functions) 2012-03-13 08:43:55 -05:00
Brettflan
03fe63cda0 Cleaning sweep, mainly for various stray "4 spaces" indentions to tabs 2012-03-13 08:26:54 -05:00
Brettflan
554a7a42c6 (patrickfreed) (bladedpenguin) (donington) Custom Event System - custom events are provided for other developers to hook into to create their own plugins based around Factions! Check the factions/event folder for the currently implemented events. 2012-03-13 07:58:51 -05:00
Brettflan
47756a9216 Remake of radius claim method. It now starts in the current chunk and spirals outward, in a repeating task designed to keep from overloading the server. The old method tried to put together a list of chunks, and then tried to claim them immediately starting from one corner of the overall area.
New setting "radiusClaimFailureLimit" (default 9). If claims are unsuccessful that many times in a row during a radius claim, the task will cancel out. There is no longer a limit to the specified radius since the process should no longer cause major server stress, and due to the process canceling out after several failures as just described.

Added some new methods to FLocation to quickly convert between block/chunk/region positions, and rewrote the FLocation hashCode() method to make it faster.
2012-03-13 05:54:51 -05:00
Brettflan
90e9f35fea Fix for "econClaimUnconnectedFee" not working correctly 2012-03-11 22:44:39 -05:00
Brettflan
4db904182e New setting "playersWhoBypassAllProtection" (default empty), which is a list of player names that should always bypass normal faction protections such as block destruction and placement. This is primarily for use with other plugins/mods which use a fake player to take action, which shouldn't necessarily be subject to protections provided by Factions. Note that case is important; you must preserve the exact capitalization of the name.
As with every other setting, you are advised to use /f config to modify it. Example: /f config playersWhoBypassAllProtection fakePluginPlayerName  - add/remove the specified player name

Also switched several HashSets in Conf.java to LinkedHashSets. LinkedHashSets do have slower insertion and deletion than HashSets, but importantly they have faster lookup speed (at least until you get up to several hundred entries).
2012-03-11 13:36:07 -05:00
Brettflan
6931b3e204 Connected standard command handler getCommand("f"), for it to work with other plugins which directly execute commands using that interface. 2012-03-11 11:41:56 -05:00
Brettflan
b51ea3020d Removed dependence on external GSON lib in lib/gson.jar, since GSON 2.1 is now embedded in CraftBukkit itself, used by their auto-updater added shortly before 1.1-R5 was released:
0ed1d1fdbb
2012-03-11 07:39:31 -05:00
Brettflan
fbfdf8fe23 (donington) Consolidated chat event listeners into a single chat listener class.
(Brettflan) Fixed slashless commands not being logged if player was in faction chat or alliance chat mode. Also cleaned up chat code a bit, nothing major.
2012-03-09 21:24:58 -06:00
Brettflan
d7f5ee581e New setting "logPlayerCommands" (default true) which can be disabled to prevent player commands from being logged. 2012-03-09 19:26:42 -06:00
Brettflan
a999f50966 Replaced deprecated CreatureType references with EntityType 2012-03-09 14:46:46 -06:00
Brettflan
2aca034c8c If plugin failed to load correctly for various reasons, it could end up wiping the board or faction list. This should now be prevented.
An example: if you loaded 1.6.6 (not 1.6.6b) on CB 1.1-R6 or newer, it would trigger an exception at startup and cause this problem.
2012-03-09 14:44:18 -06:00
Brettflan
460c382699 Fix for fatal error at startup in CraftBukkit 1.1-R5 and above
Updated Bukkit lib
2012-03-01 09:40:29 -06:00
Brettflan
e1a3d8bffb Final attempt to fix rare non-fatal NPE from Player ending up returning null while updating Spout appearance features 2012-03-01 09:38:46 -06:00
Brettflan
a4ee13ebbe Release 1.6.6
Also I'm sneaking in another minor fix for the coloring of the faction limit error message
2012-02-26 21:34:56 -06:00
Brettflan
e86b436c60 fix for faction limit error message 2012-02-26 20:49:50 -06:00
Brettflan
84ee922ac1 "autoLeaveAfterDaysOfInactivity" routine now runs only once every few minutes instead of running every time a player logs in. New setting "autoLeaveRoutineRunsEveryXMinutes" (default 5 minutes) to determine just how often the routine is run.
The routine is also slightly more careful about how it calculates how long a player has been offline.
2012-02-26 16:55:57 -06:00
Brettflan
cbd2507676 (Olof) Added command logging for commands used by players 2012-02-26 16:42:12 -06:00
Brettflan
7138e8d5f8 Added possibility to specify a player in the /f join command (/f join <faction> [player=you]), to make a player other than yourself join the specified faction. The new permission factions.join.others (added to factions.kit.mod and above) is required to be able to specify a different player.
Note that the player cannot currently already be in another faction; if they are, you'll need to /f kick them first. Also note that if the faction isn't open (with no invitation required), the player isn't invited, and you don't have the factions.join.any permission or have admin bypass mode on, the attempt will also fail.

Also, added new log method which accepts arguments (like the msg method) and cleaned up /f permanent text a little.
2012-02-26 12:29:46 -06:00
Brettflan
503233b916 UNTESTED: fix for chatspy not working with CAPI chat integration
If it's still not working correctly, let me know
2012-02-25 04:44:26 -06:00
Brettflan
c1f5475d0c New setting factionMemberLimit (default 0, no limit), which will prevent players from joining any faction that has reached this membership limit. 2012-02-24 06:30:18 -06:00
Brettflan
967870a582 Damage protection is now extended to being set on fire (by flaming arrows, for instance) and receiving harmful splash potion effects. Beneficial splash potion effects are unaffected, and prevention of harmful splash potion effects is handled on a player-by-player basis, so you can still be harmed if you're not careful where you throw them. 2012-02-23 00:09:19 -06:00
Brettflan
3ff3e61dd9 Hopeful fix for rare errors where location world somehow changes in the middle of trying to show a smoke effect 2012-02-22 23:52:38 -06:00
Brettflan
02fa6ab2c1 (Olof) (backported from 1.7 branch) New setting "homesTeleportCommandEssentialsIntegration" (default true) which, if enabled, will integrate /f home teleports with the Essentials plugin's teleport handler if Essentials is on the server. This provides teleport cooldown and/or delay to /f home based on your Essentials configuration. 2012-02-22 13:41:47 -06:00
Brettflan
5452a7cf91 Clean up integration methods with other plugins a bit 2012-02-22 11:43:56 -06:00
Brettflan
11a4162981 Updated SpoutAPI, handled deprecated Spout AppearanceManager code, updated Spout event listener to new Bukkit event system 2012-02-20 17:03:43 -06:00
Brettflan
639dc16bf5 Compatibility with upcoming CB 1.1-R5 and above: updated Enderman block monitors to use EntityChangeBlockEvent, removed register event convenience methods from MPlugin (no longer working or needed)
Updated Bukkit lib to newest dev version
2012-02-20 16:59:18 -06:00
Brettflan
af85f0f503 (Olof) Using latest CAPI for integration 2012-02-20 16:53:10 -06:00
Brettflan
56de98f049 update default GSON jar version to 2.1 2012-02-19 08:32:47 -06:00
Brettflan
03d32ec5b0 Fix for potential NPE in CraftBukkit caused by LWC location world returning null 2012-02-19 08:23:09 -06:00
Brettflan
ff56162c12 fix for command prevention routine (used by territoryEnemyDenyCommands and such) not properly covering commands with uppercase letters in them 2012-02-19 08:21:03 -06:00
Brettflan
f182f70371 Update our MCore event handlers to use the newer Bukkit event system 2012-02-07 17:02:53 -06:00
Brettflan
3ed879ca18 "worldsIgnorePvP" setting no longer ignores PvP damage in SafeZones and PvP damage done by players who just logged in, no matter the world it happens in 2012-02-07 15:04:20 -06:00
Brettflan
225471e530 Fix for error when disbanding faction from server console with economy enabled 2012-02-07 14:57:03 -06:00
Brettflan
5ef1c1a15e Release 1.6.5c: Most TNT explosions were being prevented due to a mistake on my part when I re-implemented our TNT+redstone exploit workaround fix, sorry about that. That's fixed, and the X/Z coordinates for such prevented attempts are no longer sent to players, only sent to the server console/log. 2012-02-04 16:22:55 -06:00
Brettflan
eec60b2d5c Release 1.6.5b - re-enabled WorldGuard support. It actually was working, who knew? I don't use WorldGuard, and I'd only seen multiple failure reports lately and not a single indication from anyone that the integration was actually working for them, so... 2012-02-03 00:15:35 -06:00
Brettflan
32da53f459 Preemptive EssentialsChat 3.x support, since they'll be removing the old local chat integration method; new implementation will need improvement to support relation coloring, but for now it otherwise works.
When chat event hits an UnknownFormatConversionException which requires better chat configuration, the quick dirty fix of setting chatTagInsertIndex to 0 is now automatically applied.
2012-02-02 19:31:34 -06:00
Brettflan
5e14a4b1c7 WorldGuard integration is now disabled, since it has been broken for quite some time now and nobody who used it has been interested enough to actually fix it.
The code is left in though, just in case somebody finally decides to fix it. We'll probably strip the code out eventually if it remains unfixed.
2012-02-02 15:20:40 -06:00
Brettflan
487a3457f2 Adding TNT exploit workaround fix back; they finally fixed the exploit in CraftBukkit 1.1-RC1, but broke it again in 1.1-RC3. :( 2012-02-02 15:13:53 -06:00
Brettflan
a124ac6e35 (by first4ever) Added a "claimedLandsMax" option (default 0, no limit), which prevents normal factions from being able to claim more land once they've reached this limit. 2012-02-02 13:12:54 -06:00
Brettflan
784895c779 Workaround fix for EssentialsChat integration not working on Essentials 2.8+. "chatTagReplaceString" setting now defaults to "[FACTION]" instead of "{FACTION}" since Essentials now converts curly-braces to square-braces for any tags specified in their chat format setting which Essentials doesn't recognize.
For those using Essentials 2.8.x, this should hopefully be handled automatically.
2012-02-02 07:28:56 -06:00
Brettflan
7a38ee42a7 zero-value economy gains/losses are now skipped over ("X gained 0.0 for claiming this land" and similar is a bit odd)
CLeaned up warning given for UnknownFormatConversionException chat exception; the debug info is no longer useful for us, and a distraction for users.
2012-01-31 11:07:48 -06:00
Brettflan
b41b3c8d2c Protection against radius claim attempts which might overload the server 2012-01-31 10:58:25 -06:00
Brettflan
700f244304 Removed direct Permissions and PermissionsEx plugin support. Problems with PermissionsEx integration had been reported.
Now permissions are solely handled directly through Bukkit's built-in "superperms" permission system, since all modern permission plugins should be interfacing through that at this point.
2012-01-31 10:52:32 -06:00
Brettflan
3d8f4419ed Delayed Vault economy integration not necessary after all; reverting added delay 2012-01-29 23:11:40 -06:00
Brettflan
e4a58c12f4 Fix for storing player data in factions.json unnecessarily, and FPlayer add/remove methods are now marked as protected 2012-01-28 12:11:29 -06:00
Brettflan
58e7e5e3f1 New command /f powerboost <p|f|player|faction> <name> <#>, which will apply a permanent power bonus/penalty to a specified player or faction. When applied to a player, it will affect their max power and min power. When applied to a faction, it will be applied to current and max power levels. Whether it is a bonus or a penalty depends on whether the number you specify is positive or negative.
New permission factions.powerboost which is required to use the above command. This permission is added to the factions.kit.mod permission kit.

example usage:
/f powerboost p Player1 1.5  (give player "Player1" a bonus of 1.5 power)
/f powerboost f SomeFaction -6  (give faction "SomeFaction" a penalty of -6 power)
2012-01-28 11:58:18 -06:00
Brettflan
ff91cdfed7 Players no longer regain power while dead; no more waiting to respawn in order to regain power
Also added AuthDB to softdepend list, so it has first shot at Factions commands in case it needs to cancel one
2012-01-28 05:59:10 -06:00
Brettflan
7c8e25fb8f Fix for Vault economy integration bugging out if the target economy plugin loaded after Factions (really seems like a Vault issue, but we'll work around it)
Fix for users who have Vault but don't use economy getting an NPE
2012-01-28 05:24:36 -06:00
Brettflan
fc04e0a446 Update to new Bukkit Event system
Also remove leftover TNT exploit prevention code which I missed earlier
2012-01-28 04:37:55 -06:00
Brettflan
84e137049e removed TNT exploit handling code, since they did finally fix the bug in the CraftBukkit 1.1-RC1 release 2012-01-28 04:07:23 -06:00
Brettflan
84b6278529 Workaround fix for half-step placement on existing half-steps not being prevented; it's caused by a CraftBukkit bug:
https://bukkit.atlassian.net/browse/BUKKIT-646

Fix for a potential NPE in FPlayer autoLeaveOnInactivityRoutine.

Added CaptureThePoints and CombatTag to our softdepend list so they can potentially cancel Factions commands.
2012-01-28 03:16:28 -06:00
Brettflan
5c986109f8 (patrickfreed) Fixed NPE in LWCFeatures
Fixed problem described here: http://forums.bukkit.org/threads/sec-fun-factions-1-6-3-guilds-war-and-user-controlled-antigrief-1-1-r1.19063/page-83#post-928744
2012-01-26 22:19:12 -06:00
Brettflan
da1fb45ea0 Fix for error when deleting a faction if Vault wasn't present;
Fix for slashless Factions commands not working for player in faction chat or alliance chat modes
2012-01-20 11:19:35 -06:00
Brettflan
5fd5be6bf5 Release 1.6.3
Also, removed extra /f claim alias ("claim" was in there twice)
2012-01-19 00:59:46 -06:00
Brettflan
03b368e9c4 New conf.json setting "permanentFactionMemberDenyCommands" (list, default empty), which can be used to prevent members of permanent factions from using specific commands.
Also, a minor fix for the help page regarding faction banks being shown if "bankEnabled" setting was enabled but "econEnabled" setting was false (economy as a whole disabled).
2012-01-18 23:31:37 -06:00
Brettflan
90d91180af fix for factions-specific commands not being prevented properly if they were in "territoryNeutralDenyCommands" or "territoryEnemyDenyCommands"
also got rid of a command preprocess listener which is now unnecessary
2012-01-18 22:42:56 -06:00
Brettflan
2d83f6f764 fix for /f config not accepting values with spaces in them (i.e. "/f config territoryEnemyDenyCommands f home") 2012-01-18 22:24:09 -06:00
Brettflan
db382acc17 New conf.json setting "permanentFactionsDisableLeaderPromotion" (default false) which, if enabled, will circumvent the promotion routine for permanent factions so that they can exist without a faction admin, only regular members and/or moderators. 2012-01-18 21:21:30 -06:00
Brettflan
dde10168ae New conf.json setting "econClaimUnconnectedFee" (default 0.0), which can be set as an additional economic cost for claiming land which is not connected to existing claims. This additional cost is only added if the faction has at least 1 existing claim somewhere in the current world, and is added to the cost after all other calculations are done.
This fee is not refunded from unclaiming land or even considered in actual land values.
2012-01-18 21:10:40 -06:00
Brettflan
edcb681210 Server admins can now promote or demote any member of any faction to/from faction admin or moderator using the existing /f admin and /f mod commands, which can now also be used from the server console. Two new permissions are added to allow that. A third permission is also added to allow server admins or moderators to join any faction without the need of /f bypass mode.
Also, a couple more minor bugfixes are included for /f home payment giving the wrong message, player/faction descriptions being wrong for console messages, and potential NPE in new faction admin promotion routine if faction was permanent with no current admin.

New permissions:
factions.admin.any - allows use of /f admin on any player in any faction
factions mod.any - allows use of /f mod on any player in any faction
factions.join.any - allows player to join any faction, bypassing invitation process for closed factions (the same as players with /f bypass enabled can do)
2012-01-18 06:01:29 -06:00
Brettflan
a44336ff04 self-inflicted damage (such as ender pearl usage) is no longer prevented with a message like "you cannot hurt you" 2012-01-17 02:56:22 -06:00
Brettflan
9534a72d44 improved TNT exploit prevention
Now, canceled exploit attempts don't injure players or mobs as if the TNT had successfully exploded, and if it's the case of an existing TNT block which a redstone torch is attempted to be placed next to, it no longer drops a free TNT item. In that case, the existing TNT block is still destroyed itself, but... oh well, it's close enough to perfect.
2012-01-17 01:57:25 -06:00
Brettflan
a5e2a62eac Economy integration is now handled through Vault instead of Register. You will need to download and install the Vault plugin now if you want to use any Economy-related features. If you're not using the Register plugin for anything other than Factions, it should be safe to remove it from your server.
Vault: http://dev.bukkit.org/server-mods/vault/

Note: for proper faction bank support in iCo5 and EssentialsEco, I recommend waiting for Vault 1.2.5 to be released which addresses faction account creation issues.
2012-01-16 19:36:32 -06:00
Brettflan
1a4dfd8409 (oloflarsson) Added radius claim
backported from 1.7 branch
2012-01-15 12:50:13 -06:00
Brettflan
f5d2ac5aec minor changes to LWC integration 2012-01-15 12:17:21 -06:00
Brett Flannigan
8321a3ec70 Merge pull request #77 from patrickfreed/1.6.x
LWC Chest Protection Integration

When a claimed territory is captured by another Faction, all LWC chests that are not occupied by members of the person who is claiming the territory's faction lose their protection.
2012-01-15 10:07:54 -08:00
Patrick
44266f14bf Updated config usage, added Faction.isNormal() 2012-01-15 12:53:00 -05:00
Brettflan
336edd85be when redstone torches or TNT were attempted to be placed in protected territory but prevented, it could previously still trigger a TNT explosion due to a longstanding unfixed CraftBukkit exploit. A workaround is now in place to prevent this, and any such attempts are logged and announced to everyone on the server.
For reference: https://bukkit.atlassian.net/browse/BUKKIT-89

also, added missed new java file for chat spy
2012-01-15 11:41:13 -06:00
Brettflan
fb32fc7f51 (courtesy of eXeC64) Added chat spy feature for admins 2012-01-15 01:42:56 -06:00
Brettflan
64f47b01fb Errors loading conf.json are handled better now, allowing Factions to continue loading the board instead of losing it
Also, the bad conf.json file is backed up to conf.json_bad so it can potentially be recovered
2012-01-13 05:47:14 -06:00
Brettflan
8b5a724c03 Optimization: Factions (as objects) now maintain a list of FPlayers in the faction for faster lookup 2012-01-13 03:38:25 -06:00
Brettflan
22e1b6d225 updated the map orientation to match the new compass north orientation 2012-01-13 03:19:14 -06:00
Brettflan
3e7d1d028b /f list sorting method performance boost 2012-01-11 19:11:31 -06:00
Brettflan
bf69f6fd01 Updated /f map compass to use new official north 2012-01-11 18:18:41 -06:00
Patrick
c2f0f5ad51 Added unclaim and disband chest resets to LWC 2012-01-10 19:09:15 -05:00
Brettflan
bb8ae0a99c Merge branch '1.6.x' of github.com:MassiveCraft/Factions into 1.6.x 2012-01-09 21:38:57 -06:00
Brettflan
aa88c974fd Players auto-removed due to inactivity or due to being banned now have their data deleted immediately; this should fix the log spam of the same players repeatedly being marked for deletion 2012-01-09 21:38:00 -06:00
Patrick
1d0ba04336 LWC integration 2012-01-07 18:27:03 -05:00
Brettflan
c91703ac68 fix for potential infinite loop when cleaning data
As reported:
at com.massivecraft.factions.Factions.get(Factions.java:99)
at com.massivecraft.factions.FPlayer.getFaction(FPlayer.java:43)
at com.massivecraft.factions.integration.SpoutFeatures.updateSingle(SpoutFeatures.java:218)
at com.massivecraft.factions.integration.SpoutFeatures.updateAppearances(SpoutFeatures.java:154)
at com.massivecraft.factions.FPlayer.resetFactionData(FPlayer.java:188)
at com.massivecraft.factions.FPlayer.resetFactionData(FPlayer.java:194)
at com.massivecraft.factions.FPlayers.clean(FPlayers.java:45)
<repeat>
2012-01-07 15:56:34 -06:00
Brettflan
b3796c31f2 Added soil to the default "territoryProtectedMaterials" and "territoryProtectedMaterialsWhenOffline" settings, so people who aren't in your faction won't be able to trample crops in your territory (soil trampling is handled as an Interact event, for whatever reason)
For servers updating from older versions of Factions, you should use these commands to update your configuration:
f config territoryProtectedMaterials SOIL
f config territoryProtectedMaterialsWhenOffline SOIL
2011-12-18 08:39:52 -06:00
Brettflan
281021ce46 When a faction admin is kicked from his faction for whatever reason (not logging in for too long, a server admin running the /f kick command on him, the player being banned from server), another player will now be promoted to faction admin in his place. If the faction has at least one moderator, one of them will be chosen. Otherwise, a normal member will be promoted. If the faction admin was the last/only member, the faction will of course be disbanded. 2011-12-18 07:47:15 -06:00
Brettflan
e32660c188 New conf.json setting "powerPlayerStarting" (default 0.0) for the power level which new players will now start at; previously new players would start with max power, now it's configurable 2011-12-18 07:26:10 -06:00
Brettflan
fc5d45d8c4 New conf.json setting "removePlayerDataWhenBanned" (default true), which can be disabled to prevent Factions from deleting player data for players when they are banned from the server 2011-12-18 02:47:56 -06:00
Brettflan
7539d3f9a4 Added jukebox, brewing stand, enchantment table, and cauldron to default territoryProtectedMaterials and territoryProtectedMaterialsWhenOffline settings 2011-12-18 01:45:10 -06:00
Brettflan
5dc332691b Hopefully fix a couple of economy integration problems 2011-12-18 01:36:36 -06:00
Brettflan
54ba4473a2 Fix for disabled "bankEnabled" setting being ignored in some cases
Data is no longer stored for players with full power but not in a faction
2011-12-18 01:33:34 -06:00
Brettflan
a9146ac27f Improved fix for players being able to inject colors into faction descriptions, usable to spoof server messages and such 2011-12-18 01:25:42 -06:00
Brettflan
a7aa0d1aea fix for Spout's questionable new "no default height" warning for variable-sized text labels 2011-12-16 00:31:59 -06:00
Brettflan
e66e71f36b fix for Spout faction labels not updating for players who have /f map on 2011-12-16 00:31:23 -06:00
Brettflan
8ec0173eae Added Blaze, EnderDragon, and MagmaCube to safeZoneNerfedCreatureTypes list 2011-12-16 00:30:43 -06:00
Brettflan
22fe84f32c Fix for rare SpoutPlayer exception when player logs off while spout features related to them are updating 2011-12-16 00:29:53 -06:00
Brettflan
86f80f0421 Economy payments for command usage no longer ignores "bankEnabled" setting 2011-12-16 00:24:55 -06:00
Brettflan
5ca330ad11 Wilderness, SafeZone, and WarZone can no longer be disbanded 2011-12-16 00:22:36 -06:00
Brettflan
ac34c535b3 When Faction descriptions are being set, they no longer display in purple like server messages 2011-12-16 00:21:16 -06:00
Brettflan
e0aaa395a7 1.6.1 stuff 2011-12-16 00:19:41 -06:00
Brettflan
d44ccda211 autoclaim will now cancel beforehand if player isn't able to claim land for the specified faction 2011-10-25 01:27:58 -05:00
Brettflan
136b69b07f Swapping money commands back to using EconomyParticipator instead of Faction/FPlayer 2011-10-23 13:14:51 -05:00
Brettflan
f8f3704cd4 Additional logging, with new conf.json settings to enable/disable logging of specific events:
"logFactionCreate": true,  - log faction creation
"logFactionDisband": true,  - log factions being disbanded, by command or by circumstance
"logFactionJoin": true,  - log player joining a faction
"logFactionKick": true,  - log player being kicked from a faction
"logFactionLeave": true,  - log player leaving a faction
"logLandClaims": true,  - log land being claimed (including safe zone and war zone)
"logLandUnclaims": true,  - log land being unclaimed (including safe zone and war zone)
"logMoneyTransactions": true,  - log money being deposited, withdrawn, and otherwise transferred in relation to faction banks

Also a fix for a potential NPE from players logging out and Spout appearance handler referencing them afterwards
2011-10-23 12:50:02 -05:00
Brettflan
46cae5a664 Updating help info a bit 2011-10-23 10:41:47 -05:00
Brettflan
83f690c9c5 Fix for unclaimall command not working if Economy was disabled 2011-10-23 10:04:36 -05:00
Brettflan
9710ec911e Further improved safe zone and war zone auto-rename process courtesy of Olof 2011-10-23 09:36:37 -05:00
Brettflan
2e34079a8e Fix for nonworking war zone and safe zone renaming 2011-10-23 09:11:37 -05:00
Brettflan
3e8faad156 Updated Spout features to improve consistency (of code, and of displayed information) 2011-10-23 09:03:28 -05:00
Brettflan
a9b1aad956 Existing safe zones and war zones are now renamed to remove the extra " " if they have it, mainly for better /f claim compatibility but also to comply with the modified default names 2011-10-23 08:12:09 -05:00
Olof Larsson
4f7fd6dd96 Possibly solved the faction creation issue. Changed the best id match to something more reasonable 2011-10-23 12:07:20 +02:00
Olof Larsson
32624e0339 Fixing a string format error and possibly solving a money rights issue 2011-10-23 02:43:25 +02:00
Olof Larsson
2ac96f4278 Added a permanent power command 2011-10-22 18:12:15 +02:00
Olof Larsson
7ebed6db9c Improving the faction tag matching 2011-10-22 17:42:13 +02:00
Olof Larsson
75cd9b5e18 Indentation fixes and comment cleanup 2011-10-22 17:18:44 +02:00
Olof Larsson
a78a4dff98 Managed to get rid of some commands. This needs to be rethought even more though. 2011-10-22 17:03:49 +02:00
Olof Larsson
45d6a6628a Claim command refactoring in progress. 2011-10-22 16:00:24 +02:00
Olof Larsson
5bf38ab0aa Adding match mode for id search to MassiveCraftCore and improving the faction argument readers. 2011-10-22 14:39:01 +02:00
Olof Larsson
e6d45a6aa2 Spout overlay support is missing for the new relation coloring. Otherwise done. 2011-10-21 20:08:54 +02:00
Olof Larsson
89b53a577a Missed one 2011-10-21 19:23:05 +02:00
Olof Larsson
46f5849f9f Moving over to the use of describeTo. 2011-10-21 19:20:33 +02:00
Olof Larsson
51161bbb55 Adding a couple of admin bypass commands. 2011-10-21 18:20:31 +02:00
Olof Larsson
f42fb8e8bf Removing some old code and try to read colors in the listeners. 2011-10-21 18:14:04 +02:00
Brettflan
38e128010c Fix for /f permanent and /f peaceful commands giving an NPE if run from console
Fix for rare NPE when Spout territory info update is run and affected player disconnects at precisely that moment
Clarified "cannot attack neutral faction" messages to indicate enemy status is needed
Updated Bukkit lib to correspond with CB 1337
2011-10-20 18:08:55 -05:00
Brettflan
e3284a5ee1 Fix for /f money command not being shown in help, and some other minor cleanup 2011-10-16 09:11:29 -05:00
Brettflan
0b04c95990 Merge branch 'master' of github.com:MassiveCraft/Factions 2011-10-16 08:26:09 -05:00
Brettflan
1c02b35193 Fix for "allianceChatFormat" not actually being used, updated default format for it 2011-10-16 08:25:56 -05:00
Olof Larsson
aad9819ae9 herp 2011-10-16 12:12:49 +02:00
Olof Larsson
3d33088f47 Merge branch 'master' of github.com:MassiveCraft/Factions 2011-10-16 11:58:21 +02:00
Brettflan
f5450886f1 Fix for Bukkit "unknown command" error when using console commands
handling for extra commas in "baseCommandAliases" in conf.json adding null values
2011-10-16 04:02:29 -05:00
Brettflan
61bd37c99b A bit of command help menu cleanup 2011-10-15 12:46:44 -05:00
Brettflan
3981ca4dde Added fence gates to default "territoryProtectedMaterials" list.
Existing users should run these commands to add it to an existing config, if desired:
/f config territoryProtectedMaterials FENCE_GATE
/f config territoryProtectedMaterialsWhenOffline FENCE_GATE

Also changed first letter of "canLeaveWithNegativePower" setting to lowercase, to fit with Java standards. If you had previously changed this setting to false, you'll need to do so again.
2011-10-15 12:46:09 -05:00
Olof Larsson
3de70b6db8 Changes to the default configuration 2011-10-14 23:45:39 +02:00
Olof Larsson
04074bc2b4 Minor changes 2011-10-14 15:40:03 +02:00
Olof Larsson
00f6f4ab05 Support for the CAPI plugin. 2011-10-14 15:03:23 +02:00
Olof Larsson
3967579884 Merge branch 'master' of github.com:MassiveCraft/Factions 2011-10-13 22:49:52 +02:00
Olof Larsson
618c5fceed Fixed a bug with the smoke effect for the faction home and one NPE. 2011-10-13 22:49:41 +02:00
Brettflan
358186764d Territory owner list was not being shown to people who aren't running the Spoutcraft client, when Spout was hooked... fixed 2011-10-13 14:30:47 -05:00
Brettflan
d7a2a88f95 Merge branch 'master' of github.com:MassiveCraft/Factions 2011-10-13 14:10:04 -05:00
Brettflan
1a38007d64 With Spout, the territory indicator now also has an ownership indicator below it (but only if the current territory has any owners set), and a larger centered territory notice below which goes away after a couple of seconds.
These effectively replace the related chat notices if enabled.
Also, updated libs.
2011-10-13 14:09:47 -05:00
Olof Larsson
88fe43d600 Using PEX 1.15 and only as superpermsmanager to allow for use of the parent permission. Also changed the handling of money on faction leave as last player. 2011-10-13 19:47:37 +02:00
Olof Larsson
98260c75de Bugfixes and awesome probably complete money commands. 2011-10-13 16:07:07 +02:00
Olof Larsson
0888e027ad Econ messages improved. All money commands is now under the money parent command. 2011-10-13 14:41:07 +02:00
Olof Larsson
0039370f05 Some effect for the f home teleport command 2011-10-13 12:17:23 +02:00
Brettflan
73ea2b75e0 Spout name-over-head modification seems to bug out for players viewing themselves, their name ends up over the head of some other mob in the world... so, it now skips doing that when viewer = viewed. Capes thankfully don't have the same problem, though a caped creeper might actually look pretty cool. 2011-10-13 04:23:00 -05:00
Brettflan
4ec086e4fa Fix for faction creation sometimes causing an NPE; hopefully a fix for the cause of the null value as well, from an ID clash in the entity collection of factions
Fix for disband command causing an NPE if run from the console
Additionally, disband command use is now logged
2011-10-13 04:10:29 -05:00
Brettflan
cace4aa955 Fix for faction not being disbanded properly when last player leaves
Fix for some NoClassDefFoundErrors when Register plugin isn't present and certain economy functions are used
2011-10-12 23:44:59 -05:00
Brettflan
329cef6465 Fix for messed up ownership protection handling in regards to ally/enemy status
In the process, removed the separate painting handling and made it use the standard block place/destroy checking routine, and otherwise cleaned up the related code a bit
2011-10-12 22:31:18 -05:00
Olof Larsson
f575ad6bc0 Factions are not removed properly... this needs to be sorted out before release 2011-10-12 21:54:38 +02:00
Olof Larsson
f25daa228a Some of the bugs are fixed. 2011-10-12 18:48:47 +02:00
Olof Larsson
2566edfd8c Merged some changes 2011-10-12 17:28:00 +02:00
Olof Larsson
b202acb685 Almost finished money refactoring 2011-10-12 17:25:01 +02:00
Brettflan
0326a6e938 Fixed ownerlist command (though not sure just why it was failing as written, I need to investigate further), working on restructuring and fixing ownership handling for block placement/destruction/interaction/usage. Will finish that up in the next day or two. 2011-10-11 20:14:59 -05:00
Olof Larsson
b0e31eb837 Supressed warnings in eclipse 2011-10-11 13:03:33 +02:00
Olof Larsson
6ab7e10d1f Merge branch 'master' of github.com:MassiveCraft/Factions 2011-10-11 13:01:12 +02:00
Olof Larsson
d07639e7ee Added a register event convenience method 2011-10-11 13:00:53 +02:00
Brettflan
1d8e06796f fix for /f config not working due to extra blank required parameter 2011-10-10 21:46:59 -05:00
Brettflan
f5190db257 Moved some Spout code out to a separate listener, for slightly better organization and more importantly to prevent NoClassDefFoundErrors on servers not running Spout
The text scale (size) can now be set for the territory display using conf.json setting "spoutTerritoryDisplaySize" (default 1.0), and "spoutTerritoryDisplayShowDescription" (default true) can be disabled to have only the faction tag/name displayed and not the description as well
2011-10-10 21:09:58 -05:00
Brettflan
7d85a478a8 Update to allow the project to compile in Netbeans, as per:
http://stackoverflow.com/questions/314572/bug-in-eclipse-compiler-or-in-javac
Also added license files, for building into JAR file
2011-10-10 20:48:23 -05:00
Olof Larsson
7b5124529a Added some extra blocked commands 2011-10-10 22:45:15 +02:00
Olof Larsson
80d132af70 Added forgotten type adapters. 2011-10-10 14:21:22 +02:00
Olof Larsson
1d44aa0c9c Renamed sendMessageParsed to msg 2011-10-10 13:40:24 +02:00
Olof Larsson
aceeea8b0e Fixed better color handling system 2011-10-10 13:31:25 +02:00
Olof Larsson
e402797c54 Removing the small ugly language file 2011-10-10 01:59:36 +02:00
Olof Larsson
27c45bf7f3 Fixed who command and detatched the argument reading a bit. 2011-10-10 01:43:21 +02:00
Olof Larsson
3cc7766fa7 Some bugs fixed. 2011-10-10 01:21:05 +02:00
Olof Larsson
a5c8e2de49 glerp 2011-10-09 21:57:43 +02:00
Olof Larsson
3cdd5764d3 derp 2011-10-09 20:10:19 +02:00
Olof Larsson
a0c8fd8d7d herp... 2011-10-09 18:35:39 +02:00
Olof Larsson
10f535e637 Halfway through refactoring of commands and permissions 2011-10-09 14:53:38 +02:00
Olof Larsson
227d54dc5f Converting the command structure 2011-10-08 23:22:02 +02:00
Olof Larsson
0ce9cce9d3 In progress: Using MassiveCraftCore and Allman indentation style and minor refactoring. 2011-10-08 22:03:44 +02:00
Olof Larsson
61998f459d Merge branch 'master' of github.com:MassiveCraft/Factions 2011-10-08 18:45:08 +02:00
Olof Larsson
ba5d7a3981 Working on permissions handling 2011-10-08 18:44:47 +02:00
Brettflan
77a7b2d85c New Spout feature, for Spoutcraft client users only: current territory info will now be permanently shown at top of screen, instead of being echoed out to chat as you move around
New conf.json setting "spoutTerritoryDisplayPosition" to set the screen position at which the current territory is shown. 0 = disabled, 1 = top left, 2 = top center, 3 (default) = top right.
Moved all integration code to separate package, ofr better code organization. Also moved EssentialsChat integration code out to separate file in there, allowing us to safely remove our copy IEssentialsChatListener.java file (which is otherwise needed to prevent a nasty NoClassDefFoundError).
2011-10-05 05:13:54 -05:00
Brettflan
d64ed374f1 missed from last commit 2011-10-05 02:14:07 -05:00
Brettflan
149257f154 When a player is kicked from their faction by the autoLeaveAfterDaysOfInactivity routine, the rest of their stored data is now dropped as well
When a player is banned from the server, they will now be kicked from their faction and have their stored data removed (only works on CB 1240 or newer)
2011-10-05 00:33:15 -05:00
Brettflan
7c249e1884 Added 3 new hookable functions to main Factions class, for use by other plugins:
boolean isPlayerAllowedToBuildHere(Player player, Location location)
boolean isPlayerAllowedToInteractWith(Player player, Block block)
boolean isPlayerAllowedToUseThisHere(Player player, Location location, Material material)
Also update Bukkit lib for new RB.
2011-10-04 22:46:11 -05:00
Brettflan
58d97076b8 New conf.json setting "territoryDenyEndermanBlocksWhenOffline" (default true). As might be expected, this will prevent Enderman from removing or placing blocks in the territory of a faction which has no members online. "territoryDenyEndermanBlocks" of course now only applies when a faction has members online. 2011-10-01 06:16:53 -05:00
Brettflan
ce0559cda9 Autoclaim mode is now disabled when a player is removed from a faction (whether leaving, being kicked, or whatever)
Also the new permission I missed in the last commit
2011-10-01 06:10:49 -05:00
Brettflan
feac58c6d6 Some tweaking of the faction bank code...
The new help page with bank related commands will now only be shown if banks are enabled and the Economy is enabled and hooked in.
Shortened a couple of command descriptions to fit on one line.
Made Deposit, Pay, and Withdraw commands additionally log to the server console/log.
When bank is given to person disbanding a faction, it now lets them know and logs it to the server log.
Added commands to commandDisable list in plugin.yml, along with "permanent" command which I'd missed adding before
Added new permission node factions.viewAnyFactionBalance (granted by default if using superperms), which is required to view the bank balance of other factions

For reference, about the faction bank addition as a whole...
New conf.json settings:
"bankEnabled": true,  - enable faction banks
"bankMembersCanWithdraw": false,  - have to be at least moderator to withdraw or pay money to another faction, unless this is set to true
"bankFactionPaysCosts": true,  - if true, payments for faction command costs are charged to faction bank
"bankFactionPaysLandCosts": true,  - if true, payments for land claims are charged to faction bank

New commands:
/f balance *<faction tag> - Shows the bank balance of a specified faction (if permission checks out), or the player's faction if none is specified
/f deposit <amount> - Deposit money into your faction's bank
/f pay <faction tag> <amount> - Pay money from your faction bank to another faction (requires moderator or admin status)
/f withdraw <amount> - Withdraw money from your faction's bank (requires moderator or admin status, unless "bankMembersCanWithdraw" is set to true)

New permission node:
factions.viewAnyFactionBalance - Allows the player to view the faction bank balance of all factions (default)
2011-10-01 05:59:09 -05:00
Brettflan
4cab42ec6e Merge branch 'banks' of git://github.com/eXeC64/Factions 2011-10-01 03:45:28 -05:00
Brettflan
3d62676168 Merge branch 'alliancechat' of git://github.com/eXeC64/Factions 2011-09-30 20:40:34 -05:00
Brettflan
9e73681125 Merge branch 'master' of github.com:MassiveCraft/Factions 2011-09-30 20:30:54 -05:00
Brettflan
9c1cd8c85a Added senderIsConsole boolean to FBaseCommand to simplify checking whether sender is console or player
Fix for /f disband indicating a random player if command came from console
Fix for factions being able to potentially set relations with safe zone or war zone (though it didn't do anything, of course)
2011-09-30 20:17:47 -05:00
Brettflan
3627996dc6 Updated SpoutAPI lib, added forgotten setPermanent permission to plugin.yml, added endermen and cave spiders and silverfish to no-spawn list for safe zones 2011-09-30 19:44:53 -05:00
Harry Jeffery
5eaf9c6835 Fixed autoclaim 2011-09-26 22:11:07 +01:00
Harry Jeffery
d718e8bddc Fixed error when no parameter given to f balance. 2011-09-26 17:18:37 +01:00
Harry Jeffery
9f8f125a92 f balance now accepts an optional <faction name> parameter. f who now shows balance of the faction. 2011-09-26 16:44:20 +01:00
Harry Jeffery
b1ee58a2b6 Fixed alliance chat still being purple. 2011-09-24 21:22:23 +01:00
Harry Jeffery
f4d56d4796 Alliance chat is now white, with ally-colour names. 2011-09-24 20:30:15 +01:00
Harry Jeffery
ea8310c695 Fixed bug where you could not create factions if they cost money. 2011-09-24 18:08:18 +01:00
Harry Jeffery
46abcadf93 Added alliance only chat mode. 2011-09-24 11:04:49 +01:00
Harry Jeffery
2b23f93fba Added faction banks. 2011-09-24 02:22:53 +01:00
Harry Jeffery
28f86548c8 Moderators can now affect themselves. 2011-09-24 02:21:24 +01:00
Brettflan
31937b6756 Bugfix release 1.5.1 2011-09-22 16:15:13 -05:00
Brettflan
60abb61cb9 Fix for "territoryEnemyProtectMaterials" and "territoryAllyProtectMaterials" not working correctly, and wrong protection message being sent to neutral players. Re-jiggered the related code a bit which handles such things based on enemy/ally/member/neutral status. 2011-09-22 16:12:35 -05:00
Brettflan
8e074fb5ac Release 1.5.0. 2011-09-22 06:55:23 -05:00
Brettflan
28e881d905 Players now lose power over time while they are offline. New conf.json setting "powerOfflineLossPerDay" (default 1.0) is how much power they lose; note that this power loss actually occurs frequently in very tiny amounts as time passes, not just once per day. New conf.json setting "powerOfflineLossLimit" (default 0.0) which will stop offline power loss once a player's power drops to the specified amount.
As an example, the default 1.0 power loss per day offline is roughly 0.0417 power loss per hour, 0.00695 per minute, and so forth.
2011-09-22 06:33:34 -05:00
Brettflan
fa21358a23 When players enable/disable admin bypass mode (/f bypass), it is now logged to the server console/log. 2011-09-22 06:23:25 -05:00
Brettflan
34e4afee2c Four new conf.json settings to prevent Endermen from removing or placing blocks.
"territoryDenyEndermanBlocks" (default true) for claimed territory.
"safeZoneDenyEndermanBlocks" (default true) for Safe Zones.
"warZoneDenyEndermanBlocks" (default true) for War Zones.
"wildernessDenyEndermanBlocks" (default false) for unclaimed wilderness areas.
2011-09-22 06:22:01 -05:00
Brettflan
492d983464 Support for iConomy 6 and other economy plugins added through Register support (with new conf.json setting "econRegisterEnabled", defaults to false); you will need to have the Register plugin on your server 2011-09-22 04:22:24 -05:00
Brettflan
2aa51a4781 Added some quick and dirty fix notes for people who get a specific chat formatting error 2011-09-16 01:50:25 -05:00
Brettflan
538b387f2f Fix for players being able to hurt members of their own faction while in their own land if the "enablePVPAgainstFactionlessInAttackersLand" option is enabled 2011-09-16 01:45:23 -05:00
Brettflan
443e083f23 Bugfix release 1.4.9: material protection (interaction with doors, chests, etc.) was being incorrectly triggered in wilderness, war zones, and safe zones 2011-09-15 09:12:24 -05:00
Brettflan
584d6f2eb9 Release 1.4.8 2011-09-15 00:00:47 -05:00
Brettflan
43fdc8ae14 New command to set a faction as permanent: /f permanent <faction tag> (requires new admin-level permission "factions.setPermanent"). Permanent factions will not be deleted if they have no members, and faction admins of such factions are allowed to leave without a replacement available. Faction admins are also unable to disband their own faction if it is Permanent; only those with the admin-level "factions.disband" permission can disband such a faction while it is set as Permanent. 2011-09-13 13:14:09 -05:00
Brettflan
249846d6ae New conf.json setting "newPlayerStartingFactionID" which can be used to have new players start out in a specific faction 2011-09-12 22:46:20 -05:00
Brettflan
877cfe914d Added note when player tries to use faction chat when it's disabled, moved disband command in the Help listing out of the server-admin-only section since it can now be used by faction admins on their own factions 2011-09-12 22:36:59 -05:00
Brett Flannigan
f40b241bc4 Merge pull request #35 from dotblank/chat
Add an option to disable faction only chat
2011-09-12 20:33:47 -07:00
Brettflan
632e2b2d1c Faction admins can now disband their own faction using /f disband; note that use of /f disband with another faction specified (/f disband <faction tag>) still requires the factions.disband permission, but the permission is not required for faction admins disbanding their own faction 2011-09-12 22:23:44 -05:00
Elias Woods
a5a0125195 Add an option to disable faction only chat 2011-09-10 00:26:15 -04:00
Brettflan
120039b07f minor cleanup and tweaks to WorldGuard code
added/updated libs
2011-09-08 06:24:55 -05:00
Brett Flannigan
f9cb5014dc Merge pull request #33 from spathizilla/master
Worldguard region checking
2011-09-08 04:00:38 -07:00
Brettflan
b5a1151178 fix for arrow damage not being properly detected and prevented (when needed) which was broken by Bukkit's recent deprecation of EntityDamageByProjectileEvent 2011-09-08 03:20:55 -05:00
Brettflan
c89db2c4d6 Fix for allies bypassing ownership if Ally options allowed them to build/interact/use in allied territory
Also consolidated some Conf lookups into new functions for Relations, to simplify and de-uglify the code a bit
2011-09-06 16:35:43 -05:00
Spathi
61e7667010 Spout always shows displaynames even with factionless players 2011-09-06 03:31:15 +01:00
Spathi
106944ba86 Fixing code indents 2011-08-31 02:14:46 +01:00
Spathi
c5f88fe716 Reworked entire chunk checking + code cleanup 2011-08-31 02:13:16 +01:00
Spathi
445d10afb7 Optional disabling of WG checks 2011-08-29 04:59:49 +01:00
Spathi
8be43164d2 Worldguard region checking 2011-08-29 04:50:45 +01:00
Andy "Spathi" F
a7cce7e428 Changed checkForRegions to be checkForRegionsInChunk 2011-08-29 15:06:34 +02:00
Andy "Spathi" F
5ea055a260 WorldGuard regions will block factions claiming them 2011-08-29 14:54:04 +02:00
Brettflan
55c9067e34 Factionless players now have nothing extra shown over their heads, instead of "Factionless"
Also added AuthMe to softdepend list to have it load first
2011-08-28 18:24:05 -05:00
Brettflan
c512f80866 Release 1.4.7: bugfix for exception triggered by blank cape URL 2011-08-23 21:49:49 -05:00
Brettflan
a87d4b1f71 Release 1.4.6 2011-08-23 18:52:53 -05:00
Brettflan
9fd79d5588 more hookable functions for use by other plugins, these for getting a list of all factions and for listing players in a specified faction 2011-08-23 17:34:40 -05:00
Brettflan
82db1624c9 Added new "Ally" related protection options to complement the "Enemy" ones (added thanks to donation from BeTrayed) 2011-08-23 17:12:17 -05:00
Brettflan
83d1e52be3 point default cape image URLs to GitHub 2011-08-23 12:49:32 -05:00
Brettflan
ef465dfcf4 New conf.json setting "worldsNoWildernessProtection", for worlds in which you don't want wilderness protections to apply 2011-08-23 00:37:31 -05:00
Brettflan
72bf1492c3 Merge branch 'master' of github.com:MassiveCraft/Factions 2011-08-22 23:49:08 -05:00
Brettflan
e970c02808 Capes were not applying properly to players when added at login (at least as seen by existing connected clients), so a slight delay has been added there to fix it 2011-08-22 23:48:18 -05:00
Brettflan
e573895d8a Added owner list display for faction members when moving between to/from claimed chunks which have owners set (code by Zidkon) 2011-08-22 23:31:37 -05:00
Brett Flannigan
ba1d3cee42 Merge pull request #30 from sp1ky/master
Allow Factions to defend their territory from Factionless PVP protected players
2011-08-22 13:16:09 -07:00
Brettflan
409f98e1e6 Changed ownership mapping from HashMap to ConcurrentHashMap to hopefully take care of reported ConcurrentModificicationException error; bugfix for faction admin not being able to bypass ownership if "ownedAreaModeratorsBypass" was set 2011-08-22 15:13:12 -05:00
Brettflan
697e0cf466 Added Spout features, with Spout client required for all: relation-colored faction tags over players' heads via option "spoutFactionTagsOverNames", player's faction title over their head via option "spoutFactionTitlesOverNames", and relation-colored capes shown on faction admins and/or moderators via "spoutFactionAdminCapes" and "spoutFactionModeratorCapes" (all new settings default to true)
When a faction is disbanded or has peaceful status added or removed, all online players are now notified
Added further debug output if an UnknownFormatConversionException is triggered during relational chat messages, to help track down cause
2011-08-19 20:36:23 -05:00
Brettflan
62f80a607b minor cleanup 2011-08-19 19:41:28 -05:00
sp1ky
b2ad4b43e4 Allow PVP vs. Factionless in attacker's faction territory 2011-08-12 16:08:11 +01:00
Brettflan
4e7aa893a3 Move economy plugin setup process over to the Econ class 2011-08-08 04:51:06 -05:00
Brettflan
b45224fff0 Added handling for potential null strings in "territoryNeutralDenyCommands" and "territoryEnemyDenyCommands" 2011-08-05 14:06:35 -05:00
Brettflan
ce7fa7fae4 Release 1.4.5 2011-08-05 04:57:21 -05:00
Brettflan
f29bba29d5 Added to default "territoryEnemyDenyCommands": /home, /sethome, and /spawn 2011-08-05 03:51:35 -05:00
Brettflan
68e1313776 New "peaceful" status for factions which can only be set by server admins/moderators. Members of peaceful factions cannot deal or receive PvP damage (unless in a war zone which has friendly fire enabled), cannot claim land from another faction and likewise can't have their land claimed, and cannot be considered as ally or enemy of any other faction. Faction admins and moderators of peaceful factions can enable/disable all explosions inside their faction's territory at will. The main purpose of this is to provide a way for more peaceful players who don't want to take part in faction wars (or just want to take a break from them) to still have fun on the server. It is also meant to allow groups of players to make protected buildings, monuments, grand constructions, and so forth without having to worry about another faction destroying them.
New conf.json settings:
"peacefulTerritoryDisablePVP" (default true) prevents PvP damage for anyone inside a peaceful faction's territory
"peacefulTerritoryDisableMonsters" (default false) provides protection against monsters spawning or attacking inside a peaceful faction's territory
"peacefulMembersDisablePowerLoss" (default true) which keeps members of peaceful factions from suffering power loss when they die.

New commands:
/f peaceful [faction tag] - toggle the indicated faction's "peaceful" status
/f noboom - enable/disable explosions inside your faction's territory; only available to faction admin and faction moderators for peaceful factions

New permission nodes:
factions.setPeaceful - ability to use the /f peaceful command (admins)
factions.peacefulExplosionToggle - ability to use /f noboom (everyone)
2011-08-05 03:50:47 -05:00
Brettflan
4ad9829fd4 Removing /f worldnoclaim and /f worldnopowerloss commands; they're redundant now that you can use /f config worldsnoclaim [world name] and /f config worldsnopowerloss [world name] respectively to set those options. Also removing factions.worldOptions permission node since it was only used for those commands. 2011-08-04 02:35:48 -05:00
Brettflan
523d3216c5 /f config [setting] [value] command now accepts setting names which are inside quotation marks, to prevent confusion since they're also in quotation marks in conf.json 2011-08-04 02:27:58 -05:00
Brettflan
e6ac1c0f98 Economy integration now works for EssentialsEco as well 2011-08-04 02:25:12 -05:00
Brettflan
100a1ffb1e improved command prevention from last commit to also monitor slashless Faction commands, for full coverage 2011-08-04 00:34:52 -05:00
Brettflan
699c22f655 New conf.json settings "territoryNeutralDenyCommands" and "territoryEnemyDenyCommands", which can have lists of commands added to them that will be denied while in the territory of a neutral or enemy faction. It is recommended you use /f config to add/remove such commands, for example /f config territoryEnemyDenyCommands spawn would prevent players from using /spawn in enemy territory. You can add the slash to the command string or not, it will work either way. If the used command starts with one of your denied commands, it will be prevented. For example, if you deny "time", both "/time night" and "/time day" will be prevented. However, if you deny "time n", /time night will be prevented but /time day won't. (thanks for some code contribution from Cal27) 2011-08-04 00:07:38 -05:00
Brettflan
7d3cdfdc20 removed need for "is it initialized" checks done on claimOwnership by simply making sure it's initialized with the class instance 2011-08-03 23:53:10 -05:00
Brettflan
2900bf372f changed findFactions() method to try matching faction tags before trying to match player names, instead of the other way around 2011-08-03 21:49:11 -05:00
Brettflan
f9d39271c0 Modified locutus' Pain feature so that all conf.json settings related to it default to false, so that the damage amount can be specified through "actionDeniedPainAmount" in conf.json, and so that DenyBuild doesn't override PainBuild but instead both will be used if both are enabled 2011-08-03 21:47:49 -05:00
Brett Flannigan
e02abf3380 Merge pull request #29 from bladedpenguin/master
PainBuild
2011-08-03 16:13:42 -07:00
Brettflan
a38267fe74 Error handling for user entering non-integer value for radius of safeclaim and warclaim, along with usage info 2011-08-03 15:38:54 -05:00
locutus
51a05a1e86 Added Territory Pain Protection
added options
ownedAreaPainBuild
territoryPainBuild
territoryPainBuildWhenOffline
territoryEnemyPainBuild
territoryEnemyPainBuildWhenOffline

Signed-off-by: locutus <bladedpenguin@gmail.com>
2011-08-03 02:29:51 -04:00
Brettflan
3bcfd5cff5 Release 1.4.4 2011-08-01 21:09:45 -05:00
Brettflan
92448ca4d2 New conf.json setting "worldsIgnorePvP" as a list of worlds which you don't want Factions to pay any attention to PvP in. No new command has been added to set this, since we now have the /f config command. So, to add/remove worlds, simply use /f config worldsIgnorePvP [YourWorldHere]. 2011-08-01 20:22:16 -05:00
Brettflan
f38651ca94 New conf.json settings "showNeutralFactionsOnMap" and "showEnemyFactionsOnMap" (both default to true) which, if disabled, will hide neutral and enemy factions on the faction map. However, if a player is standing inside territory claimed by a neutral or enemy faction, all of that faction's nearby claims will be shown on the faction map regardless. 2011-08-01 19:59:48 -05:00
Brettflan
ad2bb5f4d0 "disablePVPForFactionlessPlayers" is now overridden if "warZoneFriendlyFire" is enabled and the PvP is occurring inside a War Zone 2011-08-01 18:28:34 -05:00
Brettflan
2154b89005 Added basic support for iConomy, where most Factions commands can be made to cost (or give) money. For claiming land, there are some extra features. Each additional land claimed by default costs more than the last, with the multiplier being configurable. For example, the first claim might cost $30, the 2nd $45, the third $60, and so forth. When land is claimed from a weakened faction, there is a configurable bonus amount of money deducted from the cost of claiming the land, as an incentive; this number can be changed to a negative value to instead make it cost more to claim such land. When land is unclaimed, a configurable percentage of the cost of claiming the land can be refunded (defaults to 70% of the cost). The total value of a faction's claimed land is now shown in the info given by /f who [faction tag], along with the depreciated (refund) value. 2011-08-01 18:05:01 -05:00
Brettflan
c0676c3548 Fix for error that could occur when unclaiming land 2011-08-01 17:54:05 -05:00
Brettflan
3f6dc590d4 Release 1.4.3 2011-07-30 20:33:32 -05:00
Brettflan
508f953ce9 Faction admins can now mark already claimed areas as owned by specific faction members. Ownership can include multiple members. New command /f owner *[player name], to set/remove ownership. This command is only available to the faction admin and optionally the faction moderators. If no player name is specified, it will either set ownership to the player running the command (if no owner is currently set) or completely clear ownership of the territory. New command /f ownerlist, to view a list of owners for the current area. Only works inside your own faction's territory. New conf.json options "ownedAreasEnabled", "ownedAreasModeratorsCanSet", "ownedAreaModeratorsBypass", "ownedAreaDenyBuild", "ownedAreaProtectMaterials", and "ownedAreaDenyUseage" (all defaulting to true) to determine whether faction moderators can set or bypass ownership (faction admin always can), and what sort of protection these owned areas have against normal members of the faction (members other than the owner(s), faction admin, and probably faction moderators). New conf.json option "ownedAreasLimitPerFaction" to limit how many owned areas can be set. New permission node "factions.ownershipBypass" which allows a player to bypass ownership protection, but only within the person's own faction.
various little tweaks and improvements to other code
moderate speed boost to FLocation code
made commandDisable permissions work for any command alias of a command, instead of just the first one
2011-07-30 20:17:00 -05:00
Brettflan
63ab41f933 New conf.json option "safeZonePreventAllDamageToPlayers" (default false) which will prevent all damage to players while they're in a Safe Zone; note that attack damage from other players and monsters is still prevented regardless 2011-07-29 06:39:20 -05:00
Brettflan
e3cb829e6b If "autoLeaveAfterDaysOfInactivity" is set to 0.0 or a negative number, it's now effectively disabled
Renamed "disablePVPBetweenNeutralFaction" to "disablePVPBetweenNeutralFactions" because the grammar nazi in me calls for it
a couple of minor optimizations
finally, include gson.jar in the lib folder
2011-07-29 05:12:14 -05:00
Amrac
aaa56ec40a New setting in conf.json:
"disablePVPBetweenNeutralFaction":
false whether PvP damage will be
disabled between neutral
faction

Change-Id: I08eee177fbe69d1466a267e67ec3fd0389f83499
2011-07-28 16:04:11 +02:00
Olof Larsson
ee0fc3b47b space to tabs 2011-07-27 23:03:16 +02:00
Olof Larsson
6e9fd72612 Soon to be used JarLoader. 2011-07-27 22:56:45 +02:00
Brettflan
71922b7be3 Release 1.4.1 2011-07-25 13:58:31 -05:00
Brettflan
06f8082599 New conf.json option claimsRequireMinFactionMembers (defaults to 1, effectively disabled) which can be increased to prevent small (potentially one player) factions from claiming land until they have more members 2011-07-25 13:16:32 -05:00
Brettflan
080ea3363b New command /f power [player name] to check either your own power (if no name is specified) or another player's power (if a player name is specified). The ability for a player to view their own power is based on the standard factions.participate permission, but to check the power of other players, the new permission node factions.viewAnyPower needs to be granted. If you aren't using a Permissions plugin (instead defaulting to the built-in Bukkit permission system), the factions.viewAnyPower permission is granted by default. Otherwise, you'll need to configure your Permissions plugin to grant the new permission as needed. 2011-07-25 13:16:14 -05:00
Brettflan
b97eaf175e When adding relational colored faction tags to chat, Factions now pays better attention to whether the recipient list has been altered by another plugin 2011-07-24 17:38:58 -05:00
Brettflan
066415e752 "claimsMustBeConnected" land claim requirement is now ignored for players who have enabled bypass mode 2011-07-24 06:12:01 -05:00
Brettflan
bc56ff6651 new conf.json option "powerFactionMax" (default 0) for maximum power limit for all factions. If set to anything above 0, factions will have their power capped at this amount. As a result, any players adding power beyond the faction's limit will effectively just be adding a buffer of sorts. (feature added thanks to donation from Magesblood) 2011-07-24 06:10:48 -05:00
Brettflan
c3f57d5105 added a secondary low priority event listener for chat events, to try and make sure Factions is able to handle slashless commands and faction chat before other plugins do anything 2011-07-24 06:09:58 -05:00
Brettflan
c818ddff99 New command /f config [setting] [value] which can be used to change any conf.json setting. This is mainly for people who have trouble editing the file manually, for whatever reason. It even fixes any capitalization errors, and saves the conf.json file immediately after an option is changed. Can be run by player or from server console. Uses new permission node "factions.config". 2011-07-22 07:25:12 -05:00
Brettflan
5dc6dcd9ed Bugfix Release 1.4.0 2011-07-20 19:32:13 -05:00
Brettflan
bd5d7e185e Well, this is an odd and kludgy fix... only thing I can find that allows the integration to work correctly and not give an error whether EssentialsChat is present or not 2011-07-20 19:31:28 -05:00
Brettflan
b650387dbc Release 1.3.9 2011-07-20 16:24:11 -05:00
Brettflan
1e9c83decc New permission nodes to disable any command, factions.disableCommand.<command>, along with factions.disableCommand.none node which forcibly makes none disabled (for * permission users or similar); for <command>, you must use the first command alias given in the /f help information (for example, "show" instead of "who" for that particular command) 2011-07-20 16:22:54 -05:00
Brettflan
5b73ebc456 New conf.json option "homesTeleportIgnoreEnemiesIfInOwnTerritory" (default true). If disabled, players will no longer be able to teleport to their faction home while close to an enemy even if they are in their own territory 2011-07-20 15:45:36 -05:00
Brettflan
66bc427454 Added optional faction tag entry to /f sethome command to set the home of any faction, which is only allowed if the user has adminBypass permission 2011-07-20 15:42:51 -05:00
Brettflan
0b8a33e44a Added diodes to the default "territoryProtectedMaterials" and "territoryProtectedMaterialsWhenOffline" lists. 2011-07-20 14:59:10 -05:00
Brettflan
16053d0008 New conf.json option "claimsCanBeUnconnectedIfOwnedByOtherFaction" (default true) which, will allow claims to bypass the "claimsMustBeConnected" option if the attempted claim is vulnerable land controlled by another faction 2011-07-20 14:45:18 -05:00
Brettflan
5686c4db9d Piston movement is now prevented if it encroaches across into territories which have the relevant DenyBuild option set (whether faction territory, safe zone, or war zone). This covers piston extension if it pushes across unacceptable borders or even if the piston head itself would cross over, and also prevents sticky pistons from pulling blocks back across such borders.
There is also a new conf.json option "pistonProtectionThroughDenyBuild" (default true) which can be disabled to turn off piston protection. This option is available due to the (untested) potential that a world with many pistons constantly repeatedly firing could result in additional lag from these piston protection events
2011-07-20 12:22:03 -05:00
Brettflan
c79692940e Update to new integration method for EssentialsChat; needs up-to-date Essentials (2.5.1 or newer)
NOTE: if Essentials is too old, this error will occur at server startup (sadly impossible to catch or otherwise handle due to how Bukkit loads plugins):
java.lang.NoClassDefFoundError: com/earth2me/essentials/chat/IEssentialsChatListener
2011-07-20 08:48:14 -05:00
Olof Larsson
bf8e3b361d Releasing 1.3.8 2011-07-18 22:36:51 +02:00
Olof Larsson
fc1d6af824 forgot the namespace in plugins.yml 2011-07-18 22:16:19 +02:00