Commit Graph

886 Commits

Author SHA1 Message Date
Olof Larsson
1ec7842ed4 Removed the strange usage of selective saving and implemented a good simple one. 2011-10-24 03:15:08 +02:00
Olof Larsson
074be07510 Some dead code elimination 2011-10-24 03:02:25 +02:00
Olof Larsson
46161f61db Started to implement special faction behavior 2011-10-24 02:33:30 +02:00
Olof Larsson
e3821a8d4e REMOVED owned plots 2011-10-24 01:37:51 +02:00
Olof Larsson
958a1e0d9f Working permdelta parser 2011-10-23 23:38:26 +02:00
Olof Larsson
371261a07f Working on the faction perms as well now 2011-10-23 23:17:02 +02:00
Olof Larsson
21783ef9d4 Woop 2011-10-23 22:08:57 +02:00
Olof Larsson
ac6870b770 Merge with master 2011-10-23 20:53:56 +02:00
Olof Larsson
98c5230655 Wheeerp 2011-10-23 20:50:49 +02: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
Olof Larsson
842844969b Merged Relation and Role into one enum 2011-10-23 17:55:53 +02:00
Brettflan
46cae5a664 Updating help info a bit 2011-10-23 10:41:47 -05:00
Olof Larsson
e6ff84ad9a Merge branch 'master' into seven 2011-10-23 17:31:30 +02:00
Olof Larsson
d280f9409d In the middle of refactoring to merged role and relation as one enum 2011-10-23 17:30:41 +02: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
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
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
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
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
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
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
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
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
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
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
8aefae5679 changed namespace to com.massivecraft 2011-07-18 22:06:02 +02:00