Commit Graph

440 Commits

Author SHA1 Message Date
Andrew
84572a1cb2 Nah. Revert that 2013-11-07 03:57:56 +13:00
Andrew
3b57326d3b Don't notify them of a update everytime it does a update check 2013-11-07 03:57:30 +13:00
Andrew
04c35b67f1 Released 7.6.8 2013-11-06 22:28:16 +13:00
Andrew
ccf1f47979 Added deprecated methods for the removed methods in watchers 2013-11-06 22:27:21 +13:00
Andrew
f6113cb774 Change potioneffect to potioneffecttype. Fix not having it in displayed opens. 2013-11-06 22:23:46 +13:00
Andrew
7a9dd70990 Released 7.6.7 2013-11-06 22:16:31 +13:00
Andrew
dd6b0e491f Fixed potential blow up from paintings with idiotic users 2013-11-06 22:15:32 +13:00
Andrew
3f6b6aea19 Fix paintings not appearing right away 2013-11-06 22:11:39 +13:00
Andrew
a0f96778e9 Sort by name 2013-11-06 22:11:31 +13:00
Andrew
b47d5e8b5f Fixed itemframes. Tho they are still stupid 2013-11-06 21:54:01 +13:00
Andrew
331d254641 Added null sanity checks in the flagwatcher 2013-11-06 21:48:15 +13:00
Andrew
897d6410d2 Cleaned up the code slightly to be smaller 2013-11-06 21:30:14 +13:00
Andrew
9b8279e981 Read desc
Added option types profession, ocelot type, potion effect, horse style,
horse color and related help commands
2013-11-06 21:28:35 +13:00
Andrew
b4c7f8e30d Fixed disguising a pig to a horse crashing 2013-11-06 21:22:55 +13:00
Andrew
3c5c3c958a Deprecated potioneffect to potioneffecttype as they don't expire naturally. 2013-11-06 21:05:35 +13:00
Andrew
62cd0f2832 Changed setType to setTypeId for ocelot 2013-11-06 21:05:11 +13:00
Andrew
31074f93a7 Added get/set owner name, set color/style id to horse watcher 2013-11-06 21:05:00 +13:00
Andrew
86169422a7 SetType(int) added to ocelot 2013-11-06 21:02:53 +13:00
Andrew
2843022f6c Added itemstack to enderman watcher 2013-11-06 20:04:32 +13:00
Andrew
f5c9d4e29e Think I fixed wither skull not being blue 2013-11-06 19:56:53 +13:00
Andrew
f5355bfc98 Renamed getName to getOwner and added setOwner 2013-11-06 19:54:45 +13:00
Andrew
cd24514ec6 Fixed a error when setting up a itemstack watcher before it spawns in 2013-11-06 19:46:09 +13:00
Andrew
dd035980e7 Added hasValue 2013-11-06 19:44:53 +13:00
Andrew
5f41841135 Changed setfuse to setFused 2013-11-06 19:29:27 +13:00
Andrew
37bef1c1ff Fixed typos with breed being bred in horse 2013-11-06 19:21:05 +13:00
Andrew
f202fb7f52 Sorted the methods and renamed them 2013-11-06 19:02:31 +13:00
Andrew
03dcdb9c61 Read desc
Added animal colors to the list of settable options.
Added itemstack and itemstack[] to the list of settable options
Added /disguisehelp colors to get the list of usable colors
Colored in the errors when constructing a disguise options
2013-11-06 19:01:31 +13:00
Andrew
9b72086796 Quick update before release. Fixes not returning if event cancelled 2013-11-06 06:32:37 +13:00
Andrew
c79c0067bf Fix some minor inv problems 2013-11-06 06:11:55 +13:00
Andrew
ef7d1e936f Self disguises now behave when riding something 2013-11-06 06:09:44 +13:00
Andrew
acd2da49f8 Fixed comments never being visible 2013-11-06 06:05:10 +13:00
Andrew
adcca1558b Changed ViewDisguises to ViewSelfDisguises 2013-11-06 06:01:52 +13:00
Andrew
e8d821619c Cleaned up classes 2013-11-06 05:53:53 +13:00
Andrew
48029b8849 Don't remember committing this 2013-11-06 05:53:33 +13:00
Andrew
414ba24363 Fixed the code not liking the _ non checking 2013-11-06 05:44:54 +13:00
Andrew
90e670c4a5 Help now includes the disguisetype when displaying back 2013-11-06 05:42:34 +13:00
Andrew
09e353213e Changed the disguisetype fetching to try without _ as well 2013-11-06 05:41:34 +13:00
Andrew
d84121c4eb Fixed up the flagwatchers .clone and fixed playerdisguise not .clone working 2013-11-06 05:37:10 +13:00
Andrew
fb38bcd99f Made the disguise class abstract, the same for the clone class 2013-11-06 05:36:18 +13:00
Andrew
eb6d158ad4 Added more names 2013-11-06 05:35:59 +13:00
Andrew
abbdf4232a Removed .equals for all the good it does to remove it .-. 2013-11-06 05:08:16 +13:00
Andrew
d4ae115d19 Added toReadable to disguisetype 2013-11-06 05:05:04 +13:00
Andrew
0dff3706cd Translate the string to color codes 2013-11-06 04:57:58 +13:00
Andrew
f431b619fe Fixed casting issues and more boolean issues 2013-11-06 04:56:23 +13:00
Andrew
a48db82eb9 Fix a bug in the setting a adult 2013-11-06 04:51:01 +13:00
Andrew
4596752c29 Make it easier to read the options 2013-11-06 04:50:54 +13:00
Andrew
4a40ac6ec1 Sort the options 2013-11-06 04:40:41 +13:00
Andrew
742b072c2b Fixed up the option checking codes 2013-11-06 04:34:38 +13:00
Andrew
ff5426ffb8 Added some name checking code 2013-11-06 04:33:40 +13:00
Andrew
352c53c96e Fixed is assignable for the disguise options 2013-11-06 04:24:07 +13:00
Andrew
8b3b01ea03 Added disguisehelp command 2013-11-06 04:16:46 +13:00
Andrew
19ab6ec9b6 Change the int to a integer 2013-11-06 04:10:27 +13:00
Andrew
2ccac87531 Convert disguises commands to use a commonly shared method to parse a string to a disguise including options 2013-11-06 04:06:15 +13:00
Andrew
969fd5e9bf Fixed potential crash 2013-11-06 03:55:04 +13:00
Andrew
941f536f5c Improved the cloning of flagwatcher, and now saves backups as a backup value 2013-11-06 03:54:57 +13:00
Andrew
fb5dc6836a Improved the .clone of the disguises 2013-11-06 03:53:30 +13:00
Andrew
8b26ab7f2a Opps. Same thing/ 2013-10-22 07:19:50 +13:00
Andrew
0ca3c26ba1 Clone the armor when the flagwatcher is cloned 2013-10-22 07:18:17 +13:00
Andrew
6c9db19f3c Sorted members. Idiotic bug with riding still exists. It will live. 2013-10-18 14:11:35 +13:00
Andrew
d82ce55ff7 Solved bed crashes 2013-10-18 13:58:05 +13:00
Andrew
eb01397c7d Did a hackish fix for duplicate damage sounds in self disguises 2013-10-18 13:34:53 +13:00
Andrew
3f2be04de7 Inventory listener should work fully now. Some sanity checks added for updating disguises when configs change 2013-10-18 12:53:56 +13:00
Andrew
58f39401d2 Did more work, but its not going to be done soon. So doing a release with it disabled 2013-10-08 05:56:47 +13:00
Andrew
8869354b46 Revert "Revert "Another test commit.""
This reverts commit e809196bfc.
2013-10-04 21:21:26 +13:00
Andrew
782f4b9bc0 Revert "Revert "Test Commit""
This reverts commit fed5641931.
2013-10-04 21:21:24 +13:00
Andrew
a5a7f5ab5f Revert "3rd test"
This reverts commit 7b8a7c8011.
2013-10-04 21:21:22 +13:00
Andrew
bfed741262 Revert "4th test"
This reverts commit cf590e07ff.
2013-10-04 21:21:19 +13:00
Andrew
fc3614ce80 Revert "GAH. FIX YOURSLF"
This reverts commit 61a3242390.
2013-10-04 21:21:16 +13:00
Andrew
28be265b9d Revert "Fixed? Fixed."
This reverts commit cbf729325f.
2013-10-04 21:21:13 +13:00
Andrew
c6d1d6520c Revert "Another damn"
This reverts commit 7cc872f467.
2013-10-04 21:21:11 +13:00
Andrew
4fb1f6d452 Revert "Fix to stupid git/windows"
This reverts commit b0a2b92606.
2013-10-04 21:21:07 +13:00
Andrew
b0a2b92606 Fix to stupid git/windows 2013-10-04 13:00:01 +13:00
Andrew
7cc872f467 Another damn 2013-10-04 12:59:38 +13:00
Andrew
cbf729325f Fixed? Fixed. 2013-10-04 12:58:57 +13:00
Andrew
61a3242390 GAH. FIX YOURSLF 2013-10-04 12:58:45 +13:00
Andrew
cf590e07ff 4th test 2013-10-04 12:57:07 +13:00
Andrew
7b8a7c8011 3rd test 2013-10-04 12:56:56 +13:00
Andrew
fed5641931 Revert "Test Commit"
This reverts commit d230962e19.
2013-10-04 12:52:56 +13:00
Andrew
e809196bfc Revert "Another test commit."
This reverts commit 19605701fe.
2013-10-04 12:52:43 +13:00
Andrew
19605701fe Another test commit. 2013-10-04 12:51:49 +13:00
Andrew
d230962e19 Test Commit 2013-10-04 12:51:29 +13:00
Andrew
9b9829073c Fixed being unable to cast watchers, maybe fixed unconfirmed issue with babys.. 2013-10-01 23:51:21 +13:00
Andrew
628c3544d9 Resend self disguise when it goes below 0 health 2013-10-01 17:14:16 +13:00
Andrew
17094fdeca Fix potential infinite loop 2013-10-01 02:47:40 +13:00
Andrew
f25117e461 Clean up the flagwatcher converting code 2013-10-01 02:34:39 +13:00
Andrew
2a0f2fe4aa Fixed bug where it didn't save new settings 2013-09-29 13:32:26 +13:00
Andrew
5c29463b6d Disguises should no longer crash the eye of the beholder when the creeper slips into bed 2013-09-29 11:15:12 +13:00
Andrew
0dbd43eed0 Released 7.6.3 2013-09-26 03:03:29 +12:00
Andrew
80fa5fe7f6 Renamed the packages to follow naming conventions 2013-09-26 02:49:24 +12:00
Andrew
fb4ad42cfe Fixed mob disguise adult code 2013-09-22 19:33:23 +12:00
Andrew
f4a88a6ee7 Fixed error.. 2013-09-20 22:15:39 +12:00
Andrew
c6936d064c Fixed player doing no death sound? Updated strings to official sounds. 2013-09-20 16:06:02 +12:00
Andrew
c16c62bff8 Update to 1.6.4 2013-09-20 15:59:28 +12:00
Andrew
5215025ffa added * perms for disguise commands 2013-09-19 08:19:39 +12:00
Andrew
a49f4d41ec Check for update every 6 hours 2013-09-18 09:38:36 +12:00
Andrew
30c6266749 Fixed being unable to set the disguise as a baby 2013-09-18 09:30:58 +12:00
Andrew
5fe3f03622 Don't send the packets if you are not the correct disguise!! 2013-09-06 17:41:17 +12:00
Andrew
2df5aee8fe Check if the entity exists before attempting to get the entity when sending item packet 2013-09-06 17:39:27 +12:00
Andrew
75ea90d27c Fix up typo? 2013-08-21 00:17:56 +12:00
Andrew
9b4e9b4b62 Let exp orbs be a little bit nicer 2013-08-20 05:45:25 +12:00
Andrew
505f996b46 Read desc
Now send a look packet for Wither skull to prevent it looking up.
Send the velocity packets if this criteria is meet (Send when on ground)
2013-08-20 05:02:55 +12:00
Andrew
1b93903bbd Modify the Y value of spawns. Let things spawn more logically. Read desc
Bat now spawns at your head.
Entitys which are otherwise unseeable or would 'break' now spawn higher
to prevent this
2013-08-20 05:01:30 +12:00
Andrew
83750309c7 WitherSkull's can turn blue. Who knew? 2013-08-20 04:58:45 +12:00
Andrew
8ebd632363 Setting viewSelfDisguise on the disguise now updates it 2013-08-15 08:57:30 +12:00
Andrew
f152c677c6 Fix the disguises only refreshing theirselves 2013-08-13 22:05:13 +12:00
Andrew
2b2f5d4aed Rename discard() to removeDisguise(). Make the disguise reusable 2013-08-13 21:57:21 +12:00
Andrew
448c227303 Read desc
Added discard() to disguise
Renamed methods and added comments to make it easier to understand
Moved old calls to use the discard() instead
2013-08-13 21:44:54 +12:00
Andrew
76a0949c30 Rename internal methods 2013-08-13 20:29:25 +12:00
Andrew
01597b4f5d Read desc
Moved packet listeners to PacketsManager
Fixed a bug with FlagWatcher setting values it shouldn't
Cleaned up api calls
Cleaned up code
Added commenting
2013-08-13 15:19:50 +12:00
Andrew
1e8206baa5 Let them get the event. But just don't let cancel do anything 2013-08-12 07:25:48 +12:00
Andrew
ec96bdd962 Read desc
Disguises can now have velocity sent toggled indivially
Disguises can also have self view toggled
Disguises can also have self hearing toggled.
Changed when the undisguise event is fired so its only fired when you
can cancel it
Disguises now undisguise only when the entity is no longer valid - Its
not in the world
Fixed small bugs
2013-08-12 07:24:52 +12:00
Andrew
41d5b60ffe Changed events to have a better naming system. 2013-08-12 06:32:51 +12:00
Andrew
18d97c0077 Remove public watcher constructor and construct it internally 2013-08-11 09:12:01 +12:00
Andrew
0ae9a0a77a The disguiser is a pervert sometimes too ;D Let him see some action 2013-08-09 23:16:23 +12:00
Andrew
6b58c8ef5f Added getProfessionId() and setProfessionId(int id) 2013-08-09 09:15:28 +12:00
Andrew
66be1f8fa9 Sort by name 2013-08-09 09:14:44 +12:00
Andrew
e80523c59f Fixed error 2013-08-09 05:56:13 +12:00
Andrew
ea5547a6c6 Add a sanity check 2013-08-07 22:51:55 +12:00
Andrew
1d5bcebce9 Add method to disguise next entity. Use entity ID's not entitys. 2013-08-07 22:51:42 +12:00
Andrew
7d5b72b9c5 Add another check for sending data 2013-08-07 22:51:14 +12:00
Andrew
fc9337504c Make dem entity constructors Deprecated cos they look ugly 2013-08-07 22:50:52 +12:00
Andrew
d74fed7e39 Fix bad stance, you can now disguise based on a entitytype 2013-08-07 22:50:27 +12:00
Andrew
cd11dc3572 Don't throw a error if tracker not found. Just run again later 2013-08-06 00:22:04 +12:00
Andrew
9f7b3620ca Add missing break, remove boolean and just continue 2013-08-06 00:21:47 +12:00
Andrew
e19af33a47 Fixed a missing break in a switch statement 2013-08-06 00:08:53 +12:00
Andrew
15b4d2cbfb Why give a error when protocollib not found. It will never be thrown. 2013-08-06 00:04:43 +12:00
Andrew
e3c83482d8 Configuration should now update. Doesn't keep comments -.- 2013-08-06 00:04:01 +12:00
Andrew
fd3903f311 Fixed mentioned bug 2013-08-05 17:31:05 +12:00
Andrew
333cbded13 Disguises should now appear at the right location for entity sizes. But sometimes it disappears 2013-08-05 17:26:56 +12:00
Andrew
c2fdb3c201 Removed sanity checks and idiot checks 2013-08-01 21:19:50 +12:00
Andrew
60246748a2 Can now add items to disguises. 2013-08-01 20:29:04 +12:00
Andrew
5375edc14c Added disguise constructors using entitytype 2013-08-01 19:57:14 +12:00
Andrew
0981a0a88a Player is no longer invisible to himself when undisguising 2013-08-01 19:56:27 +12:00
Andrew
47d84ed794 Removed RedisguisedEvent 2013-07-31 19:39:16 +12:00
Andrew
f15966a0f2 More config options. Added hearing yourself disguised option 2013-07-31 17:46:24 +12:00
Andrew
fa9a350106 Read desc
Now throws a error when disguising when the player logs in right away -
Informational
Packet 44 is now using the ProtocolLib accepted id.
2013-07-31 17:12:39 +12:00
Andrew
f3f451a9c6 Fix crashes 2013-07-30 15:31:07 +12:00
Andrew
6af89013c5 Read desc
Lots of code cleaned up
Added viewing yourself as a disguise - It can be laggy..
2013-07-30 12:44:00 +12:00
Andrew
cf5ec6d722 Fixed up the yaw some moar 2013-07-29 15:25:36 +12:00
Andrew
95256f8d6f Stop with the checks for yaw. Useless. 2013-07-29 15:04:19 +12:00
Andrew
af51d15d59 Make flagwatcher constructor public 2013-07-29 15:03:49 +12:00
Andrew
b3f2fcaed2 Read desc
Cleaned up the main packet listener.
Fixed a problem with facing direction. Stupid me only accounted for
living entitys. Forgot this problem extended to disguised non-living
Added some commenting
2013-07-29 14:56:47 +12:00
Andrew
957cf83e67 Cleaned up minor stuff 2013-07-29 14:53:32 +12:00
Andrew
9284990ae1 FlagWatcher no longer wants a JavaPlugin to be constructed 2013-07-29 11:21:42 +12:00
Andrew
57ebeacdd6 Read desc
Moved packet constructing out of Disguise class.
Fixed datawatcher error.
Fixed datawatcher screwup where I was setting the wrong values
2013-07-29 11:21:25 +12:00
Andrew
53b5be001d Sort by name 2013-07-29 11:19:59 +12:00
Andrew
293b4f7de1 Fix bug and change Values to use switch statement 2013-07-28 12:05:47 +12:00
Andrew
b80eecfc63 Fixed typo 2013-07-28 11:55:59 +12:00
Andrew
2b0df513e1 Clean it up some more 2013-07-28 11:20:13 +12:00
Andrew
15c2ee6305 Move calls elsewhere and rename some methods and remove old code. 2013-07-28 11:01:09 +12:00
Andrew
e659875347 Allow devs to change the sounds of disguises 2013-07-28 11:00:43 +12:00
Andrew
cd44c50f2e Fetch the watcher that it will use. And stop using empty watchers 2013-07-28 11:00:29 +12:00
Andrew
593f3f492b Store the type of watcher this disguise will use 2013-07-28 10:59:49 +12:00
Andrew
e755ed24db Let developers construct the watcher themselves 2013-07-28 10:58:21 +12:00
Andrew
4c81ea1b95 Added new constructor for mob disguise 2013-07-24 15:57:16 +12:00
Andrew
384a20ab6e Fixed a error when custom name longer then 64, fixed derp with a method return 2013-07-24 15:57:05 +12:00
Andrew
1e511bede0 Added ability to check kind of Disguise 2013-07-24 15:56:41 +12:00
Andrew
b809790ea3 Add events 2013-07-24 12:16:54 +12:00
Andrew
a0892c56c1 Clean up code 2013-07-24 12:16:47 +12:00
Andrew
29ec18fe03 Fixed the wrong boolean being returned 2013-07-23 06:44:27 +12:00
Andrew
18ea8e079c Fixed entity damage sounds and check if entity can age before modifying pitch 2013-07-23 06:38:54 +12:00
Andrew
dbffa801c7 Don't try to use the watcher if the watcher doesnt exist 2013-07-23 06:38:29 +12:00
Andrew
bc08c933ca Fix Bat watcher 2013-07-23 06:38:16 +12:00
Andrew
2ca0dbbc28 Add fall sounds for things that shouldn't fall 2013-07-23 06:37:50 +12:00
Andrew
114a0fd285 Add method to see if the disguise ages 2013-07-23 06:37:15 +12:00
Andrew
573e307d19 Fixed bat sound bug. Fixed unable to check if the sound is baby/adult 2013-07-23 05:15:45 +12:00
Andrew
b34033d942 Sort by name 2013-07-23 02:18:34 +12:00
Andrew
6ae7d703b0 Fix a npe 2013-07-23 02:06:19 +12:00
Andrew
af6e6a1aa9 Added villager sounds and witch sounds (Which don't work) 2013-07-23 02:04:42 +12:00
Andrew
a74465157b Read desc
Play damage sound even if the damaged doesn't play the sound
Change pitch depending on the disguise and the disguised.
Change volume depending on the sound + previous volume
2013-07-23 01:33:58 +12:00
Andrew
efede32c9b Added .equals and fixed up velocitys to look better for worse pings 2013-07-23 01:32:29 +12:00
Andrew
890e17ba36 Set the sound strength when loading the entitys 2013-07-23 01:32:05 +12:00
Andrew
3e0b557d14 Change sounds to store a string instead, added horse types sounds. Added sound strength for hurt/death 2013-07-23 01:31:11 +12:00
Andrew
67e9aec7d1 Add break for DisguiseType switch statement 2013-07-23 01:30:40 +12:00
Andrew
ad47108567 Allowed .equals() to be used on disguises and watcher 2013-07-23 01:30:21 +12:00
Andrew
0898c3c387 Set the disguise radius in config if not set 2013-07-22 22:36:38 +12:00
Andrew
e7f283dc25 Read desc
Don't disguise the command sender when doing a radius
Fixed saying a incorrect entity count when undisguising
2013-07-22 22:36:24 +12:00
Andrew
709f07e610 Added more/better/worse checkin for cross referencing data types 2013-07-21 22:19:10 +12:00
Andrew
0128452069 Read desc
Fixed vechile spawn packets looking strange
Fixed item frame crash
Fishing hook semi-fixed. Can't fix completely.
Fixed a safety check (Wasn't really needed tho)
All disguises should now float in the air
Tnt is fixed.
Fireworks is fixed
2013-07-21 18:23:52 +12:00
Andrew
85ee40384a Set the bat to flying 2013-07-21 17:03:25 +12:00
Andrew
0888f33d1d Added the disguise types which don't need vectors 2013-07-21 15:37:29 +12:00
Andrew
3f85f0f45a Use switches instead of ifs 2013-07-21 15:19:47 +12:00
Andrew
285f8f51fd Read desc
Now set data which is different type then expected.
Added scheduler
2013-07-21 15:19:33 +12:00
Andrew
59588f5270 Read desc
Now use Entitys completely for the disguising.
Now removes the disguise when the entity isn't valid.
Deprecated the methods using a object.
Added methods to set and get velocity - If packets should be sent.
2013-07-21 15:17:21 +12:00
Andrew
a1ff8e6db9 Send the metadata to only the players who can see it 2013-07-21 15:15:28 +12:00
Andrew
3e4a9b9f15 Moved update checking to the listener 2013-07-21 15:14:59 +12:00
Andrew
ff8542c80a Use Disguise instead of entity id in watcher 2013-07-21 15:14:40 +12:00
Andrew
dcb8bc427e Fixed sending the wrong data when modifying data 0 2013-07-17 13:55:30 +12:00
Andrew
2138c7bc4f Read desc
Removed duplicate horse watchers
All applicable disguisetypes are now the same names as entity type.
Fixed bug where it sometimes didnt return disguisetype when fed
entitytype
Added zombie_villager disguisetype even tho its not that big a
disguise..
Changed the entitytype I store to the bukkit's version. Should work the
same.. Untested ofc.
Hopefully broke peoples plugins :)
2013-07-16 23:42:35 +12:00
Andrew
20a7ed15da nvrm. cloning her hitler waz bad idea! 2013-07-16 22:42:52 +12:00
Andrew
996fe4a31e Clone de watcher her hitler! 2013-07-16 22:31:16 +12:00
Andrew
5eca9c9d12 Now able to set the max radius for disguiseradius and undisguiseradius 2013-07-16 18:53:39 +12:00
Andrew
8afc336fd1 Fixed ANOTHER typo 2013-07-16 17:57:14 +12:00
Andrew
472d114474 Fixed another typo 2013-07-16 17:37:31 +12:00
Andrew
ddf3650675 Fixed perm typo 2013-07-16 17:36:06 +12:00
Andrew
6034ae612a Fixed adult problems. tehehe 2013-07-16 17:23:53 +12:00
Andrew
823914d626 Added clone() for the disguises, clones it auto. Fixes potential bug 2013-07-16 17:23:38 +12:00
Andrew
0e43fb481d Fixed some typos in the commands 2013-07-16 17:23:11 +12:00
Andrew
2d34be3276 Fixed setting the adult and disguising non-living to living 2013-07-16 17:05:44 +12:00
Andrew
0ddec96d24 Added todo for disguise sounds 2013-07-16 17:01:46 +12:00