Commit Graph

424 Commits

Author SHA1 Message Date
md_5
9e8ab747e4 Add JsonConfiguration support to bungeecord-config
Thanks @FelixKlauke for the idea in #2364, however this implementation was designed to mirror as much of the existing YamlConfiguration as possible and have Gson as an optional depend.
2020-02-03 13:25:47 +11:00
Mystiflow
cdacc0b1be #2498: Add ServerConnectRequest accessor in ServerConnectEvent.
- Make the timeout and retry status mutable so plugins can modify these values directly within the ServerConnectEvent.
2020-02-03 10:36:33 +11:00
markusmarkusz
b4b998b2e5 #2761: Add ClientConnectEvent 2020-02-02 10:48:22 +11:00
md_5
cf72c3a788 Show slow event times in milliseconds 2020-01-27 17:01:57 +11:00
Mystiflow
0a4b9b4984 #2752: Configurable connect and ping timeouts 2020-01-25 11:12:40 +11:00
Mystiflow
636c020772 #2753: Add configurable remote ping caching 2020-01-24 10:48:50 +11:00
md_5
4bb0fb67a8 Fix Javadoc in ServerInfo.getSocketAddress 2020-01-20 16:05:23 +11:00
md_5
b70cb01413 Add beta support for binding bungee to unix socket addresses 2020-01-16 10:36:13 +11:00
md_5
2f547f73f7 Fix some javadoc warnings 2020-01-05 11:17:11 +11:00
md_5
4cccf53775 Minecraft 1.15 support 2019-12-11 08:00:00 +11:00
md_5
af10f82d14 Apply and enforce import ordering rules 2019-04-23 15:23:40 +10:00
md_5
3f01748d75 Minecraft 1.14-pre5 support 2019-04-23 12:00:00 +10:00
md_5
771f1735e5 Clearer message for illegal IP addresses 2019-03-18 13:26:10 +11:00
md_5
e2bc7ed797 Misc formatting fixes 2019-02-26 13:11:05 +11:00
Simon Chuu
3889f8683d #2578: Add easy way to get proxy command iff it is enabled for that sender 2019-01-20 20:00:26 +11:00
md_5
712a60ffd2 Remove improperly exposed getters from AsyncEvent 2019-01-09 10:19:31 +11:00
Virizion
8b5a89bf12 #2576: Allow plugins to register multiple intents for async events 2019-01-09 10:19:31 +11:00
md_5
4fa1d82b81 #2572: Add additional APIs regarding server restriction 2019-01-03 16:35:32 +11:00
md_5
a12bb4cead Clarify boolean of connect callback 2018-12-29 13:01:53 +11:00
md_5
a47b803385 #2568: Check permissions for inject_commands 2018-12-21 09:50:54 +11:00
md_5
02a65e34cf #2479: Allow injection of BungeeCord commands to 1.13 with inject_commands option 2018-12-20 10:41:18 +11:00
NayXegp
6c44ccd597 #2527: Minor cosmetic cleanups to imports etc
Please see https://github.com/SpigotMC/BungeeCord/pull/2527
2018-11-02 18:06:56 +11:00
md_5
ed6b03d24a Always use root locale for case conversions 2018-10-28 12:10:34 +11:00
NayXegp
27f926cfc7 #2539: Optimize dash free UUID parse 2018-10-28 12:05:50 +11:00
NayXegp
cb4108c1b4 #2539: Regex free command split 2018-10-27 18:19:58 +11:00
NayXegp
9886021428 #2521: Using replace instead of replaceAll 2018-09-05 07:51:23 +10:00
Mystiflow
4c47549253 #2497: Incorrect defaults in ServerConnectRequest 2018-08-12 09:43:57 +10:00
Mystiflow
715ec07a28 #2447: Add API for fluent server connect requests
API allows for more control over callback to see why the callback was performed whilst maintaining backwards compatibility
2018-07-30 12:37:34 +10:00
md_5
c9f22868b3 Revert "#2447: Add API for fluent server connect requests"
This reverts commit 7ce9ae50e7.
2018-07-22 20:13:30 +10:00
Mystiflow
7ce9ae50e7 #2447: Add API for fluent server connect requests
API allows for more control over callback to see why the callback was performed whilst maintaining backwards compatibility
2018-07-22 18:04:43 +10:00
md_5
b1cc72e212 Minecraft 1.13-pre7 support 2018-07-15 10:00:00 +10:00
md_5
c416c44f43 Deprecate not API ProxyServer.start method 2018-07-09 09:59:33 +10:00
Rincewind34
ff42394bdb #2427: [Trivial] Fix small mistake in Title documentation 2018-07-08 17:55:45 +10:00
md_5
730715e68b #2437: Behave more like underlying servers and don't send no permission messages during tab completion 2018-06-21 12:52:03 +10:00
md_5
cbfdf64a15 Add missing javadoc from previous commit 2018-04-02 12:49:47 +10:00
Mystiflow
7241eb37c9 #2376 Add ServerConnectEvent Reason API 2018-04-01 09:34:27 +10:00
games647
272258cf5a #2372: Add SettingsChangedEvent for client-side settings 2018-03-15 20:47:08 +11:00
Senmori
a3b44aa612 #2342: Add score and selector components to chat API 2018-02-19 11:48:22 +11:00
md_5
6b88b63941 #2335: Clarify JavaDoc for methods in PendingConnection 2018-01-28 10:20:03 +11:00
Foorack
dbf20957a9 Expand API to get all player sent settings 2017-08-09 16:38:03 +10:00
Mystiflow
2ae8ba0afc Various scoreboard improvements. (#2204)
- Correctly remove objectives that use heart type.
- Also sends remove score packets on server switch.
- Players are only removed if Team packet mode is 4.
2017-08-04 16:10:10 +10:00
md_5
daac8d85e2 Add support for PROXY protocol 2017-07-01 09:38:27 +10:00
md_5
16d261553c Minecraft 1.12-pre2 Support 2017-05-14 12:00:00 +10:00
Gabscap
ea6680281f Allow cancelling LoginEvents with component reasons.
Ultimately this PR was selected as it better matched the existing code in terms of using lombok and not adding incomplete interfacing.
If for some reason a common interface is required, this can be implemented later.

Thanks to yawkat also for the PR in #1336 -- it was difficult for the merger to compromise between this and #1957
2016-12-01 10:12:54 +11:00
md_5
9ecdde2292 Add support for Minecraft 1.11
Improve QueryHandler session handling as suggested by IchBinJoe
2016-11-15 02:40:46 +11:00
md_5
1ad81564ad Fix Javadoc in Plugin#init 2016-11-06 11:51:52 +11:00
md_5
d6772cf1e4 #1933: Exclude favicon from ServerPing#toString 2016-08-13 14:24:50 +10:00
Cory Ory
b5121db886 Exclude data from PluginMessageEvent.toString 2016-07-18 13:33:48 +10:00
md_5
e3869fea18 #1893: Alter definition of slow event 2016-06-20 20:05:07 +10:00
md_5
6f6cb58d8b Make warning message better... 2016-06-20 09:25:29 +10:00
PunKeel
3fe72154a3 Fix slow event detection
Time moves forward, so the second call to nanoTime returns a bigger number than
the first one, giving a negative elapsed time … defeating the whole purpose of
this code. :-(
2016-06-20 08:46:53 +10:00
md_5
e4cf010bda Update to Minecraft 1.10 2016-06-09 11:44:06 +10:00
md_5
80b3135a93 Fix formatting 2016-04-24 22:31:04 +10:00
md_5
f53e66e2c0 Check all plugins have a name and main. 2016-03-12 12:00:56 +11:00
Joshua Küpper
0294fc5f20 Manually add the setDescriptionComponent(BaseComponent)
Lombok won't generate because of the overloading of setDescription(String).
2016-03-02 16:06:49 +00:00
Thinkofdeath
7926230682 #1765: Fix ServerInfo.ping to handle chat components. 2016-03-01 12:38:19 +11:00
md_5
05de455a9c Update to Minecraft 1.9 2016-03-01 09:31:12 +11:00
md_5
219819b738 Replace default/fallback servers with a server priority list. 2016-03-01 09:31:12 +11:00
md_5
e556fd7150 Add Connection.isConnected()Z API.
Idea from kamcio96 in #1693
2016-02-05 10:09:47 +11:00
md_5
1182affa09 Rewrite host parsing to account for IPv6. 2016-01-14 09:52:16 +11:00
xxyy
ba448b5670 Add configurable proxy command logging.
This commit adds a config switch that allows users to turn off
 the logging of proxy commands. It is set to off by default to
 prevent unwanted log spam and keep current behaviour.
Log proxy commands

This commit changes the PluginManager to print a message to
console and the log when a proxy command is executed.
This may assist with debugging and miscellaneous
investigations.
2015-10-26 20:59:53 +11:00
md_5
7ec1a1aa4e Fix / clarify behaviour of matchPlayer. 2015-09-05 13:42:33 +10:00
Marc Baloup
a3a31fd2dd Correct handling of command's parameters for tab completion
Hi :)

There is some problem with TabExecutor and I think I found the problem.

Exemple :
/send <playerName|all|current> <targetServer>
When I write "/send " (with trailing space) and press Tab, I don't have any suggestion. But when I wrote the first character of an online player, it suggest all players which start with this same character (expected behavior)

The problem is the same when I wrote "/send marcbal " (with trailing space). When I press Tab key, I have "marcbal" suggested instead of servers suggestion. (the result is "/send marcbal marcbal"). But when i wrote the first character of a server name, it suggest all servers which start with this same character (expected behavior)

other exemple : there is 2 players online in the same server : me (marcbal) and marcbaleeee (for exemple)
when I wrote "/send marcbal " (with trailing space) and I press Tab key, I have the suggestion of the 2 player names.

I deduced that the onTabComplete() don't care about the trailing space of the command string (exemple : "/send marcbal ") and probably a problem when splitting (removing last trailing empty args), so, the onTabComplete method try to complete the first argument "marcbal" instead of the second empty argument.

To split the command line, you use the method Pattern.split(CharSequence) that remove trailing empty strings http://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html#split(java.lang.CharSequence)
So, we should use the other split() method, with a second argument which has to be a negative integer value. (see Javadoc)

PS : Sorry for my bad english x)
2015-07-10 12:28:26 +10:00
minecraftshamrock
9cf57ca929 Fix AsyncEvent callback triggering.
Before this, two concurrent postCall() and completeIntent() calls might
cause the callback to be called more than once.
2015-05-18 20:22:32 +10:00
portalBlock
3973c511f5 Show the no permission message even if the command is a TabExecutor but the command was not dispatched by the tab completer. 2015-03-22 13:54:05 +11:00
Thinkofdeath
bd2eaf6879 Add missing scoreboard positions (Fixes #1397) 2015-03-12 16:42:01 +00:00
md_5
61cee2d27c Fix formatting in a bunch of files. 2015-02-14 18:36:58 +11:00
md_5
2055c98ebe Add reason for stopping and extra arguments. 2015-02-14 18:33:49 +11:00
Joshua Rodriguez
415d5860e4 Allow setting a connections uuid when in offline mode 2015-02-14 18:33:28 +11:00
md_5
cf722de1d2 #1130: Add scheduler unit tests and make more robust. 2015-01-18 12:09:38 +11:00
Daniel Naylor
28496e0471 Add API for getting whether the user is a Forge user.
For Minecraft+Forge 1.8 we can detect whether the user is a Forge user before we get the mod list, due to the changes to the initial (not FML|HS) handshake that are now made (which is for vanilla client support). Bungee can exploit this to detect FML clients from the off, but it still does not tell us what the mod list is. Thus, creating this API method for users who simply need to know whether the user is connected via FML is no longer a duplication of the getModList api method.
2015-01-12 19:23:07 +11:00
xxyy
5091515f0b Add TabCompleteResponseEvent 2015-01-12 11:53:28 +11:00
md_5
52b75cd18b Don't nuke command on tab complete if no args specified. 2015-01-12 11:07:43 +11:00
Minecrell
f19cc7fe4f Add chat position API. 2014-11-22 09:17:37 +11:00
Minecrell
772c8d7f2b Improve legacy client ping support. 2014-11-15 10:18:40 +00:00
elmo92
c21275b877 Don't send no permission message on tab completion.
Instead returns the empty completions.
2014-11-08 10:08:42 +11:00
Daniel Naylor
cfad2c65d4 Implement Support for MinecraftForge / FML 1.7.10
Additional implementation help provided by @jk-5 and @bloodmc.
2014-09-27 19:38:28 +10:00
md_5
cbb190cfd3 Fix a few import ordering issues. 2014-09-26 10:11:16 +10:00
md_5
57a07dc2e2 Update Depend Versions:
Guava 17.0 -> 18.0
Lombok 1.12.6 -> 1.14.8
Gson 2.2.4 -> 2.3
SnakeYaml 1.13 -> 1.14
2014-09-25 11:05:21 +10:00
md_5
0a0146b68a [#1219] Fix Title#reset javadoc link 2014-09-25 10:30:52 +10:00
md_5
ca2227bad4 [#1212] Clarify Javadoc of ServerConnectEvent 2014-09-25 10:23:52 +10:00
Minecrell
4e353e9277 Add Title API. 2014-09-07 09:30:57 +01:00
Minecrell
d6b7157c1c Add player list header / footer API. 2014-09-07 09:26:52 +01:00
Steve Anton
bc48ab3fb8 Make ProxyPingEvent async 2014-09-07 12:03:55 +10:00
md_5
2cec5f344a Update versions to 1.8... oops 2014-09-01 16:56:03 +10:00
md_5
faa284c8fc Move chat API into own submodule. 2014-08-31 18:56:03 +10:00
Thinkofdeath
26521cf2ff Add support for Minecraft 1.8.x
This commit allows BungeeCord to support Minecraft clients both of versions 1.7.x and of 1.8.x. There should be no breakages to any other support, however following their deprecation and uselessness within 1.8, the Tab list APIs have been removed.

Please report any issues to GitHub and be sure to mention client, server and BungeeCord versions.

When used with an appropriate server jar (such as multi protocol Spigot), this will allow clients of many versions to concurrently be connected to the same set of servers.
2014-08-31 09:03:12 +01:00
md_5
19b48672af Fix longstanding forward typo 2014-08-31 10:13:50 +10:00
md_5
87797ef719 Fix slight JavaDoc formatting issue. 2014-08-31 09:27:59 +10:00
Thinkofdeath
e573f7b89c Correct toLegacyText the same way toPlainText was previously 2014-08-17 18:50:28 +01:00
Minecrell
664c66fb97 Ignore unknown entries in plugin description files.
Fixes #955.
2014-08-17 19:58:15 +10:00
Tux
5e0aa2e60d Finalize the ServerDisconnectEvent target field.
There is no good reason for it to be mutable in the first place, considering that the event instance is not used after the method is called.
2014-08-17 09:34:06 +10:00
md_5
3188d946b3 Fix javadoc 2014-08-04 16:15:46 +10:00
md_5
ee3efd75d7 Change a few aspects from last PR 2014-08-03 18:12:44 +10:00
Jonas Konrad
b544bb34cb Add ServerInfo method to send plugin message only if server is online 2014-08-03 18:10:38 +10:00
Thinkofdeath
74f5ffd08b Duplicate any extra components when duplicated 2014-07-25 13:22:58 +01:00
Joshua Küpper
9fc862cb74 Make ComponentBuilder clonable 2014-07-25 13:22:54 +01:00
md_5
0d174b51c5 Clarify PreLoginEvent 2014-07-22 20:27:46 +10:00
md_5
1b18e64fb2 Handle objective value changes. Although the client *shouldn't* be using this for any sort of keying, it may indeed be. Closes #1116 awaiting testing. 2014-07-22 20:24:38 +10:00
md_5
949f150ea0 Fix some out of style formatting. 2014-07-12 19:50:56 +10:00