Commit Graph

9975 Commits

Author SHA1 Message Date
Nate Mortensen
e1aeaa8714 Add damage metadata system to CombatLog and CustomDamageEvent
This adds a system whereby plugins can associate metadata with individual
damage events and then retrieve that metadata later from the CombatLog.
One example use case for this is Minestrike.  Players are rewarded according
to the weapon that they used to kill another player, however the weapons
are frequently renamed.  Minestrike can now associate a "gunType" key
to the name of the weapon used to kill the player, regardless of the skin
that the gun currently has applied to it.
2017-01-11 15:07:47 -06:00
Nate Mortensen
8384c47e53 Create Lifetime system for managing Listeners with a defined duration.
This commit introduces a Component system focused around Games, which is completely
backwards compatible, as well as designed to be flexible enough for later improvements
such as dependency injection. Each GameState is associated with a phase of the
PhasedLifetime that each Game has. Components can be registered with a specific phased
or the entirety of the Lifetime. Refer to the javadocs for Lifetime and PhasedLifetime
for more details.  Currently the main two Component types are ICommand and
ListenerComponent.

This commit includes the first refactoring into using this system, which is replacing
the Wizards minigame's usage of Miniplugin with a Lifetimed Component, allowing for
the shop to be appropriately registered and unregistered.  This change allows for
Wizards to be run more than once on the same server instance.  Previously, attempting
to register the Miniplugin twice would result in the minigame failing to start after
the initial registration.

This commit additionally includes slight refactoring within GameCreationManager as
required for the Lifetime system to function correctly.  These changes ensure that
Games are only disabled once, whereas before they could be repeatedly disabled.
The previous implementation of disable(), along with the classes that override it,
functioned correctly despite being called several times.

Finally, this commit adds in changes to the pom to allow for unit testing.
2017-01-11 15:07:47 -06:00
LCastr0
0a655932af IntelliJ removed an import after I commited last time 2017-01-11 15:50:53 -02:00
LCastr0
5e85f48c87 Fixed balloons still being added to chests 2017-01-11 01:54:53 -02:00
LCastr0
21473a7d82 Fixed merge conflict 2017-01-10 21:27:47 -02:00
LCastr0
d3e6a094e5 Removed balloons for now, will be in the next update
Updated cosmetics menu
Added weapon name to skin lore
2017-01-10 21:08:03 -02:00
Sam
64026f81ff Merge remote-tracking branch 'refs/remotes/origin/develop' into feature/gem-hunters 2017-01-08 21:12:28 +00:00
Sam
0218965bee Villager trading and loot upgrades 2017-01-08 15:44:04 +00:00
cnr
990c548e7b Disable Thanksgiving chickens 2017-01-06 01:06:10 -07:00
cnr
cbc5ed491c Check two-factor status for every player on login 2017-01-05 19:16:28 -07:00
cnr
96c15376aa Use default 2FA window size (3) 2017-01-05 15:20:10 -07:00
cnr
435abbba08 Allow builders to use 2FA 2017-01-05 10:48:56 -07:00
cnr
a2472f45b4 Cancel commands when authenticating with 2FA 2017-01-05 10:44:03 -07:00
cnr
fa6a60981c Return to normal hub type 2017-01-04 20:36:16 -07:00
cnr
f08068c717 Revert "Enable double XP + gems for the holidays"
This reverts commit d3bcc77e01.
2017-01-04 20:34:09 -07:00
cnr
3af401ee8f Implement two-factor authentication 2017-01-04 20:33:09 -07:00
Sam
571840e249 Lots more changes 2017-01-02 14:40:13 +00:00
LCastr0
17bdfe6814 Started on the flying mechanics stuff 2016-12-30 12:44:49 -02:00
LCastr0
1aca03b22d Added balloons to normal chests 2016-12-30 12:17:52 -02:00
LCastr0
ef7bbfe7eb Added Balloons to omega chest 2016-12-30 12:10:26 -02:00
LCastr0
9578864f8a Added display item 2016-12-29 21:49:20 -02:00
LCastr0
9ec8835374 Fixed block balloons! 2016-12-29 21:40:02 -02:00
LCastr0
16e40c2896 Added shotgun skin 2016-12-29 19:18:09 -02:00
LCastr0
fcec0399cd Added remaining skins to chest 2016-12-29 19:08:31 -02:00
LCastr0
5f0de2e5e3 Allows 2 chests to be opened and dupes for minestrike chest 2016-12-29 18:04:24 -02:00
LCastr0
c877f20031 Added other skins, forgot this on the last commit 2016-12-29 18:00:18 -02:00
LCastr0
025a43b519 Added ms skins to their own chest, and added chest to page 2016-12-29 17:58:48 -02:00
LCastr0
36303a0fe8 Added new minestrike skins (some, at least?) 2016-12-29 17:43:50 -02:00
LCastr0
8131656ae2 Changed RankReward to have Eternal rank 2016-12-29 17:06:07 -02:00
LCastr0
7f7f3b9954 Removed thanksgiving chickens 2016-12-29 17:01:30 -02:00
LCastr0
4c6298bb63 Merge branch 'develop' into update/cosmetics-balloons 2016-12-29 16:28:13 -02:00
LCastr0
6478656501 Fixed armorstand balloon types 2016-12-29 16:25:20 -02:00
Sam
0ba22f9201 Merge remote-tracking branch 'refs/remotes/origin/develop' into feature/gem-hunters 2016-12-28 22:33:04 +00:00
cnr
efea2b0c1d Merge branch 'feature/dinnerbone-morph' into develop 2016-12-28 15:19:06 -07:00
cnr
c7d5e149f8 Fix NullPointerException in speed builders 2016-12-28 15:18:59 -07:00
Sam
4f497a2025 Rank rewards 2016-12-28 18:48:19 +00:00
Sam
4c7f5c5716 Merge remote-tracking branch 'refs/remotes/origin/develop' into feature/gem-hunters 2016-12-27 18:59:03 +00:00
Sam
e114ab03b5 Chest spawning 2016-12-27 17:20:53 +00:00
Sam
3a6cef32a4 Add Gem Hunters as a catagory for the build server 2016-12-26 22:45:18 -07:00
cnr
d3bcc77e01 Enable double XP + gems for the holidays 2016-12-26 22:43:32 -07:00
cnr
0b4d217303 Reduce number of redis requests by communities 2016-12-26 22:34:09 -07:00
LCastr0
c685486086 Fixed some types of entities 2016-12-27 00:58:16 -02:00
LCastr0
5198d64ab8 Added all the balloons! 2016-12-27 00:29:48 -02:00
LCastr0
092cde9973 Renamed to BalloonData 2016-12-27 00:01:42 -02:00
LCastr0
cd70305afb Make leashes not break (WITHOUT packets ;)) 2016-12-26 23:17:04 -02:00
LCastr0
f25c592a6d Removed commented code 2016-12-26 22:20:23 -02:00
LCastr0
78510ffbbf Allows multiple balloons 2016-12-26 22:19:08 -02:00
LCastr0
5e420a20d8 Changed temporary display item so it doesn't bug with 1.11 2016-12-26 20:21:43 -02:00
LCastr0
d19d661c7d Modified pets so they don't make different sounds anymore :toot: 2016-12-26 19:02:35 -02:00
LCastr0
6712ad427b Added bat so players can use items in hand with the leash
Changed silence method so it works :toot:
2016-12-26 19:00:11 -02:00