Commit graph

2063 Commits

Autor SHA1 Nachricht Datum
MattBDev
f5a42c63a7 Better logger support 2020-10-06 14:44:33 -04:00
Hannes Greule
f71ca32140
Reimplement biome pattern (#681)
* Reimplement biome pattern

* Improve suggestions and messages
2020-10-05 20:00:35 +01:00
Matt
96dcb95b7c
Javadoc and Formatting fixes. (#619)
Javadoc and Formatting fixes.

Also, extremely minor code changes which have been tested.
This commit is only part one of two commits that aim to fix problems with formatting in our project. In part two I will modify the Google Java Style Guide (since it closely matches our code style) for our project so there is guidance on how to format and document. 

* Updated PlotSquared URL
* Removed plugin acronyms
* Fixed a typo
* Fixed grammar
* Use modern block id's
* Update YouTube video URL
2020-10-05 13:41:41 -04:00
dordsor21
b06d943f7c
There's no need to duplicate everything when copying the intersection masks, as the Set and array should be the same. (#680)
* There's no need to duplicate everything when copying the intersection masks, as the Set and array should be the same.

* do the same for Union mask
2020-10-04 19:49:45 +02:00
dordsor21
fc606ff5ff
use concurrent hashmap for thread processor cache 2020-10-04 18:34:15 +01:00
N0tMyFaultOG
9f232a9690 Enhance debugpaste information 2020-10-04 16:52:43 +02:00
dordsor21
1f02287caa
trim get where chunk SET is remembered from a previous session 2020-10-03 15:53:49 +01:00
NotMyFault
346762d93b
Add heightmapinterface alias 2020-10-02 17:28:49 +02:00
dordsor21
40717c23c4
If extent is world when pasting clipboard, cretae editsession
fixes #583
2020-10-01 15:02:34 +01:00
dordsor21
318eca364d
We ought to always clear (close) the clipboard on logout
Fixes #672
2020-09-30 10:56:07 +01:00
dordsor21
6332b8c965
This ought to be false by default for now 2020-09-28 11:18:16 +01:00
dordsor21
82bcc0e9a5
Allow "post processing" of chunks (#658)
* begin allowing "post processing" of chunks
 - restores legacy capability to continue saving edits in the background after sending the chunks
 - speeds up the edit clientside
 - nail in the coffin of the terrible and staticly coded coreedit
 - We should totally make IronGolem work so Core* is no longer used by anyone

* begin allowing background history saving

* Handle post processors in queues properly

* Use futures for postprocessing so we're not waiting for them needlessly

* better use of closed boolean

* Reword
2020-09-28 11:13:02 +01:00
dordsor21
bd4a3a3efd
Fix inconsistency with legacy regarding loading schematics from URL 2020-09-26 22:20:47 +01:00
dordsor21
68deed1469
schematics are just fun 2020-09-26 21:56:38 +01:00
dordsor21
1766c62278
Attempt to recover from incorrectly-extensioned schematic reads (#660)
* Attempt to recover from incorrectly-extensioned schematic reads
 - Should help avoid #605 (I'm assuming this is the issue)
 - Possible issues with the InputStream being closed/pre-read or so? Thoughts:?

* more verbose checking in the first place
2020-09-25 15:15:00 +01:00
dordsor21
65747bf8f8
accessing clipboards should not be synchronized to LocalSession (#653)
* accessing clipboards should not be synchronized to LocalSession
I believe this may be the issue causing thread locks when wrapping new players. If we're attempting to run a synchronised method within the LocalSesison when initialising it, it may go wrong..?

* nullcheck within synchronisation
2020-09-25 15:02:09 +01:00
dordsor21
855389c785
Allow parallelisation of masks (#636)
* Allow parallelisation of masks
Increasing performance improvement with increased masking complexity and edit size.

* Address comments
 - Rename Mask#clone to Mask#copy
 - Rename Mask2D#copy to Mask2D#copy2D
 - Correct formatting

* cx -> centerX

* Make various operations relying on a single SingleThreadQueueExtent instance (mainly brushes) thread safe
2020-09-25 15:00:42 +01:00
Aurora
3f1e8fa4d4
Fixes unsafe memory access using cross server clipboards (#651)
Co-authored-by: wea_ondara <wea_ondara@alpenblock.net>
2020-09-24 18:10:43 +01:00
dordsor21
5e67c1b658
Squash errors and debug to aid fixing #652 properly 2020-09-22 11:34:45 +01:00
dordsor21
3b660756f6
Fix #647 2020-09-21 17:10:33 +01:00
Aurora
3b2fe2ffde
Fix toggle permission (#644)
* Fixes #529
* fix superperms perm toggling

Co-authored-by: @weaondara <wea_ondara@alpenblock.net>
2020-09-21 17:07:35 +02:00
Aurora
806916d6e8
Fix entity rotation (#642)
* fix entity rotation
fixes #577 
Co-authored-by: wea_ondara <wea_ondara@alpenblock.net>
2020-09-20 16:33:07 +02:00
dordsor21
845c32bd18
Fix #639
looks like we too speedy
2020-09-19 20:46:46 +01:00
dordsor21
be0e33746c
Ensure the block actually can be waterlogged when checking for waterlogged status.
Fixes #632
Fixed #633
2020-09-19 16:54:42 +01:00
dordsor21
aed6807eb2
comment 2020-09-18 18:54:14 +01:00
dordsor21
cf750ba00c
Correct tag name for writing and add compatibilty for created corrupt schematics 2020-09-18 18:31:42 +01:00
dordsor21
9c34702a47
Correct tag name for tile entities 2020-09-18 18:29:36 +01:00
dordsor21
218f570cb1
Fix LimitExtent and processing of Plot regions
Fixes #627
Fixes #609
2020-09-18 17:40:55 +01:00
dordsor21
fc91c3b56e
Clone mutable regions given to clipboards
Fixes #630
2020-09-18 15:02:25 +01:00
dordsor21
8e8bd810b5
Relight after completing P2 operations
teporarily fix #629
2020-09-18 12:38:17 +01:00
dordsor21
7375827844
implement getBiome(BlockVector3)
fixes #622
2020-09-18 11:52:49 +01:00
Matt
2e73746abe
Remove Kotlin (#625)
Shrinks the jar size since we no longer must bundle the Kotlin library. The downside is that some classes grew in size compared to their Kotlin versions.
Many contributors didn't care for Kotlin either.
2020-09-17 16:31:55 -04:00
NotMyFault
4f6c904615
Merge pull request #617 from IronApollo/vault-fix
Fix vault, remove 1.14 and DummyFawe
2020-09-16 18:06:57 +02:00
N0tMyFaultOG
241e85e491 Strip 1.14 2020-09-16 16:01:49 +02:00
IronApollo
f5f5a55b4c Fix limits 2020-09-16 14:11:26 +01:00
dordsor21
07a5ef5ab4
Fix incorrect x/y/z stuff;
Fixes #616
Fixes #614
2020-09-14 20:17:55 +01:00
dordsor21
3d2052b0c8
Better skylight handling and fix opacity on materials 2020-09-14 18:33:35 +01:00
dordsor21
d6c9a887ac
Fixlighting now also calculates heightmaps
Fixes #386 and #438 seems fixed, but that might be something else that fixed?
2020-09-14 14:19:23 +01:00
Hannes Greule
0685881f64
Implement SupplyingExtent (#613) 2020-09-14 11:20:26 +01:00
dordsor21
4243e8e86b
Begin working on improved lighting to better match 1.14's "new" light… (#611)
* Begin working on improved lighting to better match 1.14's "new" lighting engine
I guess the "new" lighting engine is somewhat old now lol
Also implement the remove first stuff to fixlight

* And then make it work
2020-09-13 15:36:36 +01:00
Matt
d00899e177
More support for 3D biomes (#608)
* More support for 3D biomes

* Resolved merge conflicts
2020-09-12 15:31:42 +02:00
Matt
de199a0e59
More work on masks (#607)
* Add a #air mask, the opposite of #existing (#1511)

(cherry picked from commit 84fa2bbbc63de7bece01f41c0d5cb7d85cf129e6)

* Remove unused methods in Mask.java

* Remove `test(Extent, BlockVector3)` from Masks.

This was a poorly planned idea. This should save some memory too.

Authored-by: Matthew Miller <mnmiller1@me.com>
2020-09-11 21:13:31 +02:00
IronApollo
1fa0777d3b Fix erosion and pull brushes
Fixes #559
2020-09-11 20:58:27 +02:00
Josh Knight
4a18147125
Merge pull request #600 from IronApollo/mask-work
Reimplement Masks + Fixes
2020-09-08 16:21:20 -04:00
MattBDev
2fcf4bdf7e Updated Gradle 2020-09-08 15:34:53 -04:00
IronApollo
dc465f7d3c Reformat, fix RichParser suggestions 2020-09-07 21:46:54 -04:00
IronApollo
7929320611 Merge branch '1.16' of https://github.com/IntellectualSites/FastAsyncWorldEdit into mask-work 2020-09-07 21:45:05 -04:00
Aurora
ddff407f18 Fix convert function in AbstractDirectionConverter 2020-09-07 20:18:31 +02:00
IronApollo
6807ccd960 Reimplement Masks + Fixes
Masks Reimplemented:
    - Adjacent (~): Adjacent to a specific number of other blocks.
        - Example: ~[oak_log][1][4]
    - Extrema (#extrema): Restrict to near specific terrain extrema. The "-o" flag will only overlay existing terrain.
        - Example: #extrema[0d][45d][-o]
    - ROC Angle (#roc): Restrict to near specific terrain slope rate of change. The "-o" flag will only overlay existing terrain.
        - Example: #roc[0d][45d][-o]
    - Surface (#surface): Restrict to surfaces (any solid block touching air).
        - Example: #surface
    - Wall (#wall): Restrict to walls (any block n,e,s,w of air).
        - Example: #wall

Other Changes:
    - Minor logic change to angle mask's overlay.
    - Fixed negating air mask.
    - Added overlay flag to angle (/) mask.
2020-09-06 18:42:43 -04:00
Octavia Togami
1d05da75d8 Regenerate list classes from MCUtils
(cherry picked from commit da4d70fab5c5e5efe242260b5d09ca273f944c55)
2020-09-03 12:46:17 +01:00
Octavia Togami
f7e1f70e19 Replace BlockStates reading with new 1.16 logic (#1413)
* Replace BlockStates reading with new 1.16 logic

* Account for running on older platforms

Splits out the new reading to AnvilChunk16, uses data version to detect
the appropriate version.

* Move data versions to Constants

Also fixes some logic hiccups that become obvious with the new names.

* Fix LegacyMapper DFU handling

* Fix factor indexing

(cherry picked from commit 8c171f0929e8530aab1731d122649adc58c5161f)
2020-09-02 11:25:50 -04:00
Octavia Togami
28767d6e0f Officially propagate GPL downwards to all files
(cherry picked from commit f2ce020da059718e34342c149172944dfd02b775)
2020-09-01 16:30:43 -04:00
MattBDev
eeb02d3937 Update gradle and kotlin 2020-08-24 22:53:29 -04:00
MattBDev
8a6db57433 Removed useless functionality 2020-08-24 22:19:07 -04:00
MattBDev
a9d37fc6e5 Added BiomeMask.java and updated minor parts of miscellaneous files 2020-08-24 22:04:56 -04:00
MattBDev
02886b0387 Updated the WorldEdit license using find and replace 2020-08-24 21:31:47 -04:00
MattBDev
ce078aad70 Updated many exception classes 2020-08-24 21:29:34 -04:00
MattBDev
75a18b9d5b Update BukkitImplLoader 2020-08-24 21:20:18 -04:00
MattBDev
fd8cf1ebba Merge branch '1.16' of https://github.com/IntellectualSites/FastAsyncWorldEdit into 1.16 2020-08-24 21:17:53 -04:00
N0tMyFaultOG
c0dee5caee Fixes #579 2020-08-24 21:39:41 +02:00
MattBDev
fd336feb46 Upstream merge of TranslationManager and ResourceLoader 2020-08-24 12:38:30 -04:00
N0tMyFaultOG
6cb8352686 1.16.2
- My IJ is broke but this should work. Dunno if I got all nms changes, but we will see.
2020-08-23 17:18:29 +02:00
NotMyFault
1e070b3a71
Merge pull request #518 from aurorasmiles/fixEntities
start reimplementing entities
2020-08-21 18:27:25 +02:00
NotMyFault
75cbae8261
Merge pull request #568 from HazelTheWitch/fix-spline-sweep
Fixed NullPointerException in Spline and Sweep brush
2020-08-21 18:25:09 +02:00
NotMyFault
c8a9919c63
Merge pull request #569 from IntellectualSites/feature/better-noise
Feature/better noise
2020-08-21 18:20:30 +02:00
Hazel Trinity
c725dd0b18 Uses setDirection
SweepBrush.java should be correct
2020-08-19 10:13:41 -07:00
aurorasmiles
947871281f
Fix styling issues 2020-08-19 11:08:59 +02:00
MattBDev
49f1658f0b Merge remote-tracking branch 'origin/1.16' into 1.16 2020-08-18 15:50:00 -04:00
MattBDev
79b5612311 Upstream merge of the region package and things that may have broken with it. 2020-08-18 15:48:31 -04:00
MattBDev
de34047365 Upstream merge of the registry package 2020-08-18 13:46:14 -04:00
MattBDev
72a4bb3552 Upstream merge of the scripting package 2020-08-18 13:43:18 -04:00
Hazel Trinity
73d70527f3 Signed angles 2020-08-16 16:05:09 -07:00
Hazel Trinity
5a482f4d38 Fixed argument exception
If someone knows better please tell
2020-08-16 15:40:53 -07:00
Aurora
e74cb33847
comment biome change output back in 2020-08-16 17:05:09 +02:00
Aurora
3aa041aa7e Merge remote-tracking branch 'upstream/1.16' into fixEntities 2020-08-16 17:01:45 +02:00
Hazel Trinity
054e60729b Slightly better angle calculation 2020-08-16 02:15:05 -07:00
Hazel Trinity
5c32cc17a2 Used Reparameterized Interpolation 2020-08-16 01:11:12 -07:00
Hazel Trinity
e5f092c3ef Updated ClipboardSpline paste 2020-08-16 01:10:51 -07:00
Hazel Trinity
cd0dac813c Incorrectly rounding results. 2020-08-15 23:39:30 -07:00
Hazel Trinity
e51f6e562d Sweep brush semi-fix 2020-08-15 14:20:47 -07:00
N0tMyFaultOG
5f2d60deb3 Remove dead translations, Crowdin ftw 2020-08-15 19:51:15 +02:00
Hazel Trinity
da9c4ad543 Handle null case in equality checking BlockVector3+DFSNode 2020-08-15 09:28:39 -07:00
Hannes Greule
da9d85e427 Point out API usage of RandomCollection 2020-08-15 18:05:26 +02:00
Hannes Greule
6fb202443b Clean up RandomCollection architecture 2020-08-15 13:18:14 +02:00
Hannes Greule
bb05bd24d9 Implement more noise patterns 2020-08-15 13:17:44 +02:00
Hazel Trinity
b7e9547cd5 Fixed NullPointerException in Spline and Sweep brush 2020-08-14 19:04:11 -07:00
MattBDev
4041b2aa1d Updated Math package with upstream and formatted code 2020-08-14 20:49:59 -04:00
MattBDev
69e547688b Updated WNA package with upstream 2020-08-14 20:25:21 -04:00
MattBDev
0a07599abf Update build files and NOTICE.txt 2020-08-14 15:29:15 -04:00
N0tMyFaultOG
bbff5c60b2 Fix metrics 2020-08-14 15:04:06 -04:00
Hannes Greule
dcdb42eadb Fix NPE on AbstractRegion#equals 2020-08-06 23:53:24 +02:00
wea_ondara
b582d3f70d fix compile error 2020-08-03 17:43:36 +02:00
wea_ondara
1097ac7889 remove entity properly 2020-08-03 17:35:53 +02:00
wea_ondara
9b95343601 keep original constructor to not break plugin that use the api 2020-08-03 17:34:06 +02:00
wea_ondara
629a237fb5 set forge uuid values 2020-08-03 17:27:08 +02:00
NotMyFault
3b7f7237b8
Improve debugpaste declaration 2020-08-01 23:30:48 +02:00
N0tMyFaultOG
7704ec5cd4 Fix paste service interacting with EH's paste service
We need to differ here between our own and EH or we break pastes from WorldGuard or any other EH software.
2020-08-01 13:52:54 +02:00
N0tMyFaultOG
b01e1be21b Add more information to the debugpaste 2020-07-31 20:16:01 +02:00
wea_ondara
bf09d6922c fix //move -e 2020-07-30 14:19:04 +02:00
wea_ondara
3c70cdc9fd more cleanup 2020-07-29 22:47:47 +02:00
wea_ondara
ae95ad8fe7 cleanup 2020-07-29 22:45:55 +02:00
wea_ondara
ae23794b43 fix //cut -e 2020-07-29 22:43:52 +02:00
wea_ondara
26110d336b cleanup 2020-07-27 23:54:41 +02:00
wea_ondara
24fbd21ff1 added missing entity functions; all or nothing; and nothing did not work 2020-07-27 23:51:26 +02:00
wea_ondara
84d2c8f2ce fix redo exception; fix positioning of entities in redo 2020-07-26 19:52:03 +02:00
wea_ondara
51cdd66c62 fix imports 2020-07-26 19:08:35 +02:00
wea_ondara
f24ad69f8f fix entity paste location offsets 2020-07-26 19:05:32 +02:00
Aurora
b411ea9af4 Merge branch '1.16' of https://github.com/IntellectualSites/FastAsyncWorldEdit into fixEntities 2020-07-26 19:03:46 +02:00
wea_ondara
a38c82304a fix rotation of entities in clipboard 2020-07-26 18:26:21 +02:00
wea_ondara
950f343339 fix entity undo; amend constants 2020-07-26 15:54:02 +02:00
wea_ondara
50971ee311 fix entity undo 2020-07-26 15:52:51 +02:00
MattBDev
99745b8e59 Fix piston breaking 2020-07-15 13:05:55 -04:00
MattBDev
db3718e092 Merge remote-tracking branch 'origin/1.16' into 1.16 2020-07-14 19:18:06 -04:00
Hannes Greule
eb74c7307c Fix blob brush doing weird things due to mutable vectors 2020-07-14 21:32:16 +02:00
MattBDev
3bc692ff11 Part 1 of upstream merge and format 2020-07-13 22:50:59 -04:00
MattBDev
204de7eab5 Add new annotations from upstream 2020-07-13 15:02:35 -04:00
MattBDev
1e80c0429a Merge remote-tracking branch 'origin/1.16' into 1.16 2020-07-13 13:09:55 -04:00
N0tMyFaultOG
da96365504 Updating a few links 2020-07-13 13:13:43 +02:00
Hannes Greule
11e762f07a Add basic angle mask suggestions
Mask suggestions are a bit broken in general so this doesn't change much
2020-07-13 11:15:01 +02:00
Hannes Greule
7198c03cd3 Reimplement angle mask parsing 2020-07-13 02:25:30 +02:00
Hannes Greule
8e33ff9549 Make mask parsing actually working 2020-07-13 02:18:05 +02:00
Octavia Togami
4c299bc0b8 Replace setPosition with trySetPosition (#1403)
Allows cancellation information to be fed back into the ascend/descend
algorithms.

(cherry picked from commit 71e104bcb187a5313e88dda5df79059c8ffbc1fe)
2020-07-10 13:22:48 -04:00
NotMyFault
c82fec931a
Update discord link at debugpaste 2020-07-09 23:43:48 +02:00
dordsor21
33b2b634ac
Allow specific P2 queue hooks to be disabled 2020-07-09 22:14:24 +01:00
MattBDev
6d6de61560 Updated missing biomes, entities, and categories. 2020-07-06 23:54:55 -04:00
Matthew Miller
39439fb405 fix: require extent for mask parsing (#1373)
(cherry picked from commit 1ced57c301bc1c98667a260fd8b6aa128675f0d2)
2020-07-06 23:47:33 -04:00
Octavia Togami
c0bfe06e4b Set ES6 compat flag for Rhino
(cherry picked from commit 849a515d4a5c02c083e5ab343db40d7eb05b2f51)
2020-07-06 23:45:28 -04:00
Hannes Greule
6fb10c3879 Make surface brush not replacing the whole world 2020-07-06 02:30:08 +02:00
Hannes Greule
ed6f3e7b4a Implement simplex mask (fixes #437) 2020-07-05 11:19:48 +02:00
dordsor21
704e76eb6d
Fixes #519
Use regex for finding colour codes
Merge styles rather than replacing and undoing our work sometimes.
2020-07-04 14:15:49 +01:00
Hannes Greule
11373c865a Fix BlockCategoryMasks not working 2020-07-03 21:57:30 +02:00
Hannes Greule
9da4bbef5f Fix scatter/splatter brush 2020-07-03 20:43:34 +02:00
aurorasmiles
05ef46994e
Update IChunkExtent.java
fix Indentation
2020-07-03 20:03:34 +02:00
Aurora
bc45a112ee Merge branch '1.16' of https://github.com/IntellectualSites/FastAsyncWorldEdit into fixEntities 2020-07-03 19:54:08 +02:00
Aurora
94b1233d98
implement entities in paste -e 2020-07-03 19:52:55 +02:00
dordsor21
77204df3f0
prevent players being teleported down a single block after some edits 2020-07-03 16:56:20 +01:00
dordsor21
e2ab87cc07
lazy //deform AIOOB fix.
Fixes #495
2020-07-03 16:45:28 +01:00
dordsor21
f7d375c76c
Lazy heightmap range fix 2020-07-03 16:29:27 +01:00
dordsor21
9e25c736a0
Add new blocks to BlockTypes 2020-07-03 14:12:43 +01:00
dordsor21
2812841481
Add -p flag to //drain to allow kelp and watergrass to be removed.
properly fixed #464
2020-07-03 14:01:16 +01:00
dordsor21
ea7897934f
Implement ability to use -w flag on //drain
fixes #464
2020-07-03 13:49:17 +01:00
dordsor21
fae528ab64
add a couple more changes++
Fixes #508
2020-07-03 13:18:09 +01:00
dordsor21
f1d4104480
Bunch of changes to help masks 2020-07-02 22:09:12 +01:00
dordsor21
18c9da372c
GetBlocks should default to air not reserved 2020-07-02 18:16:15 +01:00
dordsor21
d3afc9c65d
Update to p2 5.12.2 and implement clear pipeline 2020-07-02 14:34:05 +01:00
MattBDev
ac314fcedb Gradle update 2020-07-01 20:06:59 -04:00
Aurora
34298f7dee
Add back the getEntity Stuff since it seems to work fine 2020-07-01 19:28:38 +02:00
MattBDev
0fb564be0c Merge branch '1.16' of https://github.com/IntellectualSites/FastAsyncWorldEdit into 1.16
 Conflicts:
	worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/wrapper/AsyncWorld.java
	worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/wrapper/state/AsyncDataContainer.java
2020-07-01 12:48:12 -04:00
Aurora
9fc2387f11
Revert "start reimplementing entities"
This reverts commit aac02ceea1.
2020-07-01 14:54:11 +02:00
Aurora
b96d45e4e6
merge 1.16 2020-07-01 14:46:25 +02:00
dordsor21
efc1a888d8
update links, versions, etc 2020-07-01 13:17:19 +01:00
Hannes Greule
0bb6bc3563
Start reimplementation of simplex pattern (#520)
* Start reimplementation of simplex pattern

* Fix suggestions

* Allow nested weighted patterns

* Add documentation and improve error handling

* Remove unnecessary code and obsolete TODOs
2020-07-01 13:01:39 +01:00
dordsor21
3b19738ea0
Merge branch '1.15' into 1.16
# Conflicts:
#	worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/adapter/mc1_16_1/BukkitGetBlocks_1_16_1.java
#	worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/wrapper/AsyncWorld.java
#	worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/wrapper/state/AsyncDataContainer.java
2020-07-01 12:47:04 +01:00
dordsor21
3f3c49c0a8
Looks like working block setting and removal 2020-07-01 12:41:20 +01:00
dordsor21
f84958957c
Fix various lighting issues
fixes #496
possibly fixes #497
2020-06-30 13:44:26 +01:00
Octavia Togami
d232dc28e3 Cherry-pick WNA, minor changes. 1.16 VERY WIP
First noticed incident of operations ruining ChunkSections. Do not build and use this unless you're testing.

Rushed some of the changes, gotta sleep. Would be nice to get a review of this one from @mattbdev and @dordsor21
2020-06-29 22:08:16 -04:00
Matthew Miller
4604aa5920 Additional work towards 1.16 compatibility
- Very basic implementation of the SideEffects system. Will definitely need fine tuning for it to be functional, but is not considered a priority in my opinion.
- Minor changes to the World interface and World implementations related to the SideEffects system. Shouldn't be the cause of any new bugs but be on the lookout.
- Included debug in BukkitImplLoader.java to assist contributors in understanding what needs to be implemented for the adapter to load properly.

Still very WIP but we're a few steps closer. So far, this is coming along better than I anticipated. Hopefully we can keep the momentum.
2020-06-29 22:08:16 -04:00
Octavia Togami
b59b95c282 Cherry-pick WNA, minor changes. 1.16 VERY WIP
First noticed incident of operations ruining ChunkSections. Do not build and use this unless you're testing.

Rushed some of the changes, gotta sleep. Would be nice to get a review of this one from @mattbdev and @dordsor21
2020-06-29 22:05:41 -04:00
MattBDev
2517aca66f Removed some unnecessary code. 2020-06-28 17:31:13 -04:00
Matthew Miller
82adab77b4 Additional work towards 1.16 compatibility
- Very basic implementation of the SideEffects system. Will definitely need fine tuning for it to be functional, but is not considered a priority in my opinion.
- Minor changes to the World interface and World implementations related to the SideEffects system. Shouldn't be the cause of any new bugs but be on the lookout.
- Included debug in BukkitImplLoader.java to assist contributors in understanding what needs to be implemented for the adapter to load properly.

Still very WIP but we're a few steps closer. So far, this is coming along better than I anticipated. Hopefully we can keep the momentum.
2020-06-26 22:14:19 -04:00
MattBDev
b7debce4d4 1.16.1 Prep work 2020-06-25 20:29:09 -04:00
Aurora
aac02ceea1
start reimplementing entities 2020-06-25 22:13:34 +02:00
NotMyFault
3d40336045
Fixes #500, Fixes #513 2020-06-19 09:12:58 +02:00
MattBDev
437d5a2a43 Minor image brush changes 2020-06-17 22:34:55 -04:00
IronApollo
33c3cb2f33 Revert portion of "Minor cleanup" to fix history bugs 2020-06-13 14:54:07 -04:00
IronApollo
238c56a3c6 Revert "Revert matt's changes"
This reverts commit bfcc6184ad.
2020-06-13 14:41:36 -04:00
N0tMyFaultOG
bfcc6184ad Revert matt's changes
Let's not break Fawe, thanks
2020-06-13 18:48:57 +02:00
MattBDev
8105088d60 Minor cleanup 2020-06-12 21:45:49 -04:00
MattBDev
1eacb91267 Make extent public (unsafe) 2020-06-12 21:45:49 -04:00
MattBDev
8a5899459f Use Integer.compare() instead of if statements. 2020-06-12 21:45:49 -04:00
MattBDev
9ce4a415cb Fix errors while using the broken commands 2020-06-12 21:45:49 -04:00
MattBDev
35c2a74c52 Implement more masks 2020-06-12 21:45:49 -04:00
Matthew Miller
33adba4a6f Use a long to refer to the volume of a region to prevent overflow (#1350)
* Use a long to refer to the volume of a region, and rename the method to getVolume

* Fixed issues noted in review

* Forgot to floor

* Fixed review notes

* Can use a long here rather than BigDecimal

* Improve javadocs

* style

(cherry picked from commit 328030fd6281e58a4ea1d0cdd0a2e274da90afbe)
2020-06-12 21:45:49 -04:00
Octavia Togami
a23b182de5 Fix vector gen, always enable BlockMap tests
The BlockMap tests got much faster, so there's no need to hide them
behind a flag.

(cherry picked from commit 1e2496af552891e3b43c5703bda8dc4129bbcc5d)
2020-06-12 21:45:49 -04:00
Octavia Togami
8d6db82764 Add licenses for test files
(cherry picked from commit 300aad3530400124d88c0416afa6c5ddb715d717)
2020-06-12 21:45:49 -04:00
Octavia Togami
518f52ea6e Test more of the math/collections, fix VectorPList
Fixes #1291

(cherry picked from commit e0346ff53b8629a368cdbf62cbd347caecfae5fd)
2020-06-12 21:45:49 -04:00
MattBDev
63b81b801b Implement remove on set/iter views of BlockMap
Fixes #1354.

(cherry picked from commit 637da62e34e676015aa7fbad490cf6f033e55b89)
2020-06-12 21:45:48 -04:00
MattBDev
9f6e0ebd5c Minor changes to NMS logic 2020-06-12 21:45:48 -04:00
MattBDev
3caf53987f Minor upstream changes 2020-06-12 21:45:48 -04:00
Aurora
5602b33b78
Fix a few links 2020-05-30 09:17:21 +02:00
dordsor21
bdc14c10c7
Fix relight and removelight (#475)
* Start work on lighting engine (does not build)

* Implement getLighting

* Setting, flushing light etc works. Getting light should be working..?

* Better queue/chunk handling

* Use correct location for lighting update

* Correct set location, remove debug

* cleanup a little

* Fix fixlight

* Apply to all versions for the numpties

* Remove lighting extent if not using

* Actually bitmask blocks when setting in chunks

* Initialise Maps and Dequeues with inital size

* format

* Documentation maybe
2020-05-27 11:45:08 +01:00
dordsor21
1ff5e7761b Comment out not working and add TODO 2020-05-27 11:39:23 +01:00
Aurora
255c20f4ad Fix recursivePickaxe 2020-05-27 11:39:23 +01:00
Aurora
2de45458d4 Compare using BlockType, not Block for AreaPickaxe, fixes #436 2020-05-25 14:36:58 +01:00
Aurora
e23c76511d correclty implement findFreePosition and setOnGround to fix navigation wand teleport issues 2020-05-24 20:01:28 +01:00
NotMyFault
8fa493cf9f
Update IncendoPaster.java 2020-05-21 18:30:59 +02:00
NotMyFault
35c4de3484
Fixes #427 2020-05-20 11:41:36 +02:00
dordsor21
b1b591f288 PlotSquared-Core again 2020-05-20 09:49:38 +01:00
dordsor21
9085365165 Override P2's /plot set 2020-05-20 09:44:59 +01:00
N0tMyFaultOG
ebf3cd0837 Remove duplicated translation strings 2020-05-19 14:38:53 +01:00
Orlaando
fb06c3bf39 Update SuperPickaxeCommands.java 2020-05-19 13:29:37 +01:00
NotMyFault
10ec476239
Set debug to false by default
No need to enable it unless you are actually debugging something
2020-05-18 21:50:03 +02:00
NotMyFault
5fabd15caf
Fix superpickaxe // 2020-05-18 19:39:53 +02:00
dordsor21
5be11c541b Put the synchronisation higher up the food chain 2020-05-14 22:32:32 +01:00
dordsor21
bdc129cf7b Update to latest p2 v5
(implement FAWE biome setting)
2020-05-14 16:20:17 +01:00
IronApollo
34d40cb856 Merge branch '1.15' of https://github.com/IntellectualSites/FastAsyncWorldEdit-1.13 into 1.15 2020-05-13 17:45:17 -04:00
IronApollo
376bbe1bdb Edit change count to default to 0 instead of -1
Why was it ever defaulted to -1?
2020-05-13 17:45:11 -04:00
dordsor21
2ccda85772 Fix #468
That's not how it works
2020-05-13 22:36:08 +01:00
MattBDev
1183c7c957 Fixes #466 2020-05-13 10:23:38 -04:00
dordsor21
32c30f45fe don't read __reserved__ 2020-05-12 11:00:54 +01:00
dordsor21
999b063762 Don't write reserved to schematics 2020-05-12 10:58:43 +01:00
NotMyFault
44c5ab164c
Remove whitespace
Regarding fc537b92e0
2020-05-12 11:11:24 +02:00
MattBDev
0848e68b9f Merge branch '1.15' of https://github.com/IntellectualSites/FastAsyncWorldEdit into 1.15 2020-05-11 17:46:55 -04:00
MattBDev
7c35477b8c Remove Empcraft messages 2020-05-11 17:46:41 -04:00
NotMyFault
74f9b37a39
Fix missing space 2020-05-11 18:47:14 +02:00
dordsor21
be58cd42ac Add option to disable ticking existing blocks when not fastmode 2020-05-11 16:09:31 +01:00
dordsor21
0b30ca9dcc Merge branch '1.15' of https://github.com/IntellectualSites/FastAsyncWorldEdit into 1.15 2020-05-11 15:36:56 +01:00
dordsor21
36faf107e6 Allow fastmode to be used in a lot more places
- Option to stop fastmode from bothering to fix existing ticking blocks
2020-05-11 15:36:52 +01:00
NotMyFault
31da111e1e
Fix anvil translation string 2020-05-11 15:07:47 +02:00
dordsor21
8c38ac0fbc Fix #460 2020-05-11 13:38:06 +01:00
NotMyFault
4f2b0e6f4e
Fix missing space 2020-05-09 21:08:14 +02:00
NotMyFault
73f8f1a0a7
Fix wrong translation key 2020-05-09 20:58:47 +02:00
dordsor21
cb20cef0e6 Fix loading schematic from URLs 2020-05-09 16:45:42 +01:00
dordsor21
42d7419b4b Fixes #402
- Similar to previous commit. If the chunksection was empty, then __reserved__ was parsed to the clipboard, and then not correctly identified as air
- Now assume all __reserved__ is air when writing to clipboards
2020-05-09 13:56:41 +01:00
dordsor21
ffa25b1d9a Fixes #452
- ChunkSections containing only air are technically null according to NMS Chunks
- Therefore if we're replacing air, we should ignore the result of get.hasSection(layer) by using "full = true" as it returns false if the chunksection is only air
- We also then need to ensure that the masks correctly identify that the block is "air"
2020-05-09 13:39:41 +01:00
dordsor21
c757b01803 By default only allow existing blocks to tick.
- Revert back to default FAWE behaviour where placed blocks do not tick by default (until a restart, or another edit is done in the same chunksection without changing the block)
2020-05-08 16:16:08 +01:00
dordsor21
56972ee40b
Trim performance (#451)
* Increase performance slightly when trimming.
If the chunk section is all one blocks (common in plotworlds) it'll be a nice little boost.

* Cache whether blocks are ticking or not. Greatly reduces the time required to create a palette

* collapse 5 lines to 2.

* Also apply to 14 and 15 for the numpties

* Cleanup
Actually ignore the exception - remove my debug print.
Remove double semi-colon

* Apparently 1.14/15 matter too still.
2020-05-07 23:00:13 +01:00
dordsor21
a2b0a5e622 Fix offset mask (< and >) 2020-05-07 19:38:42 +01:00
IronApollo
8b1a0bbc34 Fix #417
This commit aims to fix existing issues regarding the "0/-1 blocks affected" bug. Introducing the new LinkedFilter class allows us to use multiple filters for single-filter operations, e.g. applying a pattern to blocks while also counting the amount of blocks applied to. SetFilter.java was also removed due to not being used.
2020-05-07 12:29:18 -04:00
dordsor21
afba834b83 Don't commit murder to console or log files 2020-05-06 20:55:30 +01:00
dordsor21
0c539b4e84 Fix replace patterns
Fixes #445 #440 #372
2020-05-06 15:50:57 +01:00
dordsor21
3abf964620 Better logic for selecting schematic format.
- You had to specifically use //schem load <schematic>.schematic mcedit to load legacy schematics, now if you're loading .schematic it assumes you're wanting mcedit format
 - If you end up attempting to load an mcedit schematic with the sponge reader it now throws an exception.
2020-05-05 16:16:27 +01:00
IronApollo
6dec0ab2ba Override #equals method in AbstractRegion.java
This is an attempt to fix CPU spikes which do not reduce and continue mounting until the server reaches ~300%-500% usage. This override should allow prompt equality checks for regions based on the world, the minimum point, the maximum point, and area covered by the region.

Issues found regarding this change should be quickly reported so this can be reverted and replaced with another appropriate solution.
2020-05-03 19:51:48 -04:00
dordsor21
a6f2cd0fb5 add // to mask and range 2020-05-02 18:34:49 +01:00
MattBDev
ef3642d521 Small spring cleaning
I changed really small bits and pieces of code. If you have questions just comment and I'll answer them.
2020-04-30 16:26:52 -04:00
dordsor21
508d595b8d Merge branch '1.15' of https://github.com/IntellectualSites/FastAsyncWorldEdit into 1.15 2020-04-29 21:30:28 +01:00
dordsor21
847d22f7d6 This seems to fix #429
- the undo remove or add block removal adding thing.
2020-04-29 21:30:15 +01:00
IronApollo
aae760c625 Merge branch '1.15' of https://github.com/IntellectualSites/FastAsyncWorldEdit-1.13 into 1.15 2020-04-29 14:17:48 -04:00
IronApollo
8247f78e9d Override hashCode method in AbstractRegion
This commit fixes the PlotSquared issue where running a PlotSquared command could result in intense lag on the main thread. This was mainly seen with running the /p info command on an extremely large plot.

Since #world can be null, the uniqueness of this hashCode is not the best, but since it's essentially just a collection of BlockVector3's, I don't believe this change will break anything. If it does, please let me know! Feedback on the uniqueness of this is welcomed.
2020-04-29 14:17:05 -04:00
Pierre Grimaud
f9a40599fb
Fix typos 2020-04-29 19:36:34 +02:00
dordsor21
fda7d00747 A more verbose fix to #329 and similar issues.
- Re-read chunksections the first time they're "loaded" for an operation
 - Reset the chunksection if there are block changes when setting blocks via reflection
 - These are maybe gonna affect performance a bit? Idk. Seems to be alright for me
 - These are maybe gonna make more issues? Yeah maybe, but I couldn't find any
2020-04-29 18:17:21 +01:00
MattBDev
6faa93f3d4 Merge remote-tracking branch 'origin/1.15' into 1.15 2020-04-29 10:58:57 -04:00
MattBDev
d9829614f2 Fixes #408
The issue seems to be that a some upstream code was removed for likely "performance" reasons. Obviously, wrong since it broke stuff.
2020-04-28 22:26:16 -04:00
dordsor21
058990f6fe schem.intellectualsites.com (points to athion.net but cnamed) 2020-04-28 11:25:24 +01:00
Octavia Togami
4307e3a671 Transpile using Babel
This is pretty slow right now, but works as a proof-of-concept.
2020-04-27 23:18:21 -04:00
Octavia Togami
4f8ac056ab Correct typo in region selector docs
(cherry picked from commit 9a11c57846ab2e18faad4572d8f4655b617d9260)
2020-04-27 23:15:07 -04:00
MattBDev
aeb2820d89 Add debug message to addProcessor 2020-04-27 19:17:23 -04:00
MattBDev
b13dea19c5 Add debug messages 2020-04-27 19:04:20 -04:00
MattBDev
491be025cc Minor changes to urls and todo's 2020-04-27 17:35:04 -04:00
dordsor21
004a60d145 allow parallel threads to be changed.
- Interesting behaviour with forwardextendcopy stuff (move, stack etc) though.
2020-04-25 11:57:59 +01:00
Octavia Togami
864d160102 Update Piston to fix bugs
Closes #1292 via Piston fixes.

(cherry picked from commit dc56b602c0367fbd24f954de2b8be4e864add59f)
2020-04-24 16:05:15 -04:00
Octavia Togami
3426e0103b Make the null-result case visible to the user
Fixes #1303.

(cherry picked from commit 83438644dcdc470517f67c0d55ff4889f71cc435)
2020-04-24 15:57:34 -04:00
wizjany
ee3a30d582 Don't suggest default namespaces.
This just ends adding a lot of `minecraft:` to otherwise short commands.

(cherry picked from commit d2601851835201d11e5805250ecffc703d0b0cd6)
2020-04-24 15:57:07 -04:00
chickeneer
396b03edf7 Add compatibility handlers for beds and banners for MCEdit Schematics (#561)
* Add compatibility handlers for beds and banners

* IntTag#getValue does not return null so do not check that

(cherry picked from commit 53ac21aa8723d71040d580902cfeae551a9cabf6)
2020-04-24 15:56:22 -04:00
MattBDev
77a2f1bc41 Remove unneeded repository
PlotSquared 4 and PlotSquared 5 are both on the same maven repo
2020-04-24 15:54:40 -04:00
dordsor21
820ae19dc2 Read processors in reverse order.
- EditSessionBuilder always assigns the history processors before the limit extents, meaning the limit did not get properly flushed to history, but because spigot is notified of the changes after the processes have taken place, the correct edit was displayed to the player and placed into the world.
 - This might break other stuff...
2020-04-23 23:46:43 +01:00
dordsor21
69bd0274dd Fix undo for stack, move
- Most/anything using ForwardCopyExtent basically
2020-04-23 17:07:34 +01:00
dordsor21
29b82d4e51 Remove a load of soft errors in EditSession. 2020-04-23 17:07:01 +01:00
dordsor21
c714e26f68 Reformat paste in ClipboardCommands because it was ugly 2020-04-23 17:01:17 +01:00
dordsor21
8bde932354 Add p2 v4 compat.
Anyone that hasn't built FAWE before won't be able to build it again as the v4 repo doesn't exist - it relies on local gradle cache.
2020-04-22 08:10:17 +01:00
NotMyFault
9636f35e45
Fix typo 2020-04-21 16:43:25 +02:00
dordsor21
952aaf8b43 Fix p2 compatibility and replace empcraft.com/maven2 2020-04-21 11:39:42 +01:00
dordsor21
330fc39dde Further non-standard selection fixes as per #393
- Fix incorrect usage of initChunk (it's run in the right place now)
 - Fix poorly implemented //sel sphere "improvements"
2020-04-19 19:46:41 +01:00
dordsor21
b52fc46f19 Regarding #393
- Fix CharFilterBlock not being properly created (the chunk X and Z were never set)
 - Replace BlockVector3#divide with bitshift because you can't divide down and then bitshift back up with the correct results for negative values
2020-04-19 13:56:02 +01:00
dordsor21
7b9a64e9a6 add a bunch of // aliases for commands 2020-04-19 11:43:30 +01:00
Octavia Togami
415e91b519 Re-apply 374ad99
Accidentally fixed the EntryMaker issue before I pulled 374ad99. Should reflect upstream now.
2020-04-16 20:41:59 -04:00
IronApollo
8b97a11fa4 Merge branch '1.15' of https://github.com/IntellectualSites/FastAsyncWorldEdit-1.13 into 1.15 2020-04-16 20:27:47 -04:00
IronApollo
e1ba16b699 Fix #403 2020-04-16 20:27:38 -04:00
Octavia Togami
ff47e6f717 Cherry-pick to fix EntryMaker issue 2020-04-16 20:26:55 -04:00
dordsor21
97d73889cc Remove _ from tree type as easy fix for actually typing the correct tree type 2020-04-16 17:22:22 +01:00
mrlasagne
cba7c21ce5
Fix special masks issue
This fixes the issue where masks other than SimpleBlock masks (like Offset mask or negate mask) would not work.

The issue was caused by parseFromListInput() who would throw SuggestInputParseException if the input was not a valid block definition.
But as the parser was catching NoMatchException only, this was causing an error and the MaskFactory was broken.
2020-04-13 22:34:15 +02:00
Octavia Togami
735a37ffd0 Use custom radix sort for ordering blocks (#1277)
* Use custom radix sort for ordering blocks

* Licenses :P

* Fix ordering, add test for it

* Grant Gradle more memory (thx Fabric)

* Increase (?) / Specify memory for core tests

* Many attempts at fixing OOM

(cherry picked from commit bb013aa89b8457c4649e2546eef0aa94b9fc4020)
2020-04-10 13:42:27 -04:00
Octavia Togami
374ad992a2 Properly close all files when dealing with archives (#1274)
* Properly close all files when dealing with archives

* Move file utils to SafeFiles class

* Licenses

(cherry picked from commit a600266d41151eec4f2239cf90e202bb99fa3a8b)
2020-04-10 13:38:14 -04:00
MattBDev
092bf98ea5 Odd sort-of fix for allowing //stack to be undone 2020-04-10 13:25:27 -04:00
MattBDev
5cc7a09769 Fixes #366
That issue was actually a NoSuchElementException.
2020-04-02 15:51:55 -04:00
MattBDev
dded68e071 Add missing code to SpongeSchematicReader 2020-04-02 15:49:45 -04:00
MattBDev
b2752a511a Add logging messages for CPU checking. 2020-04-01 13:10:25 -04:00
MattBDev
e223f77825 Merge remote-tracking branch 'origin/1.15' into 1.15 2020-04-01 13:09:15 -04:00
MattBDev
dbd3cfbef6 Add logging messages for CPU checking. 2020-04-01 13:08:16 -04:00
IronApollo
755ea09797 Fix #390
Turns out the FilterBlock's getOrdinal value is from the "get", and does not share the same reference as setOrdinal, whose value is from the "set", would modify.

Because of this, even if #getOrdinal returns 0, we still must update the set with 0 by #setOrdinal.
2020-04-01 00:26:11 -04:00
IronApollo
110347214e Update SingleThreadQueueExtent.java 2020-03-31 20:29:03 -04:00
MattBDev
56395534fa Remove useless messages 2020-03-31 19:28:21 -04:00
wizjany
2ea85ab004 Make //size text color consistent.
(cherry picked from commit eb8fcdcd5b797a7ec1db0c53c3602f79d4f971bf)
2020-03-31 00:33:43 -04:00
dordsor21
318e367cf0 Correctly unregister player on quit and close clipboard if using disk. 2020-03-30 17:41:41 +01:00
dordsor21
3cd30ebbff Fix DiskOptimisedClipboard not closing 2020-03-30 17:00:41 +01:00
dordsor21
76efbed4b2 Fix rotation breaking NBT data:
- Don't only copy NBT over if the original block had a Rot tag
2020-03-30 16:01:50 +01:00
dordsor21
3d8303a227 Remove my debug 2020-03-30 12:13:39 +01:00
dordsor21
5197ed04ec Fix MemoryOptimizedClipboard 2020-03-30 12:06:15 +01:00
dordsor21
45e0d37889 Clipboards paste biomes 2020-03-30 10:27:03 +01:00
Josh Knight
5f3d6cdc79
Merge pull request #384 from xCykrix/1.15
Correct JVM Architecture Detection
2020-03-29 19:33:37 -04:00
Samuel J Voeller
63d594a069
Fix #355 2020-03-29 17:47:32 -05:00
Marco
1d562c7cc3 Fixing wrong translation keys 2020-03-29 12:41:10 +02:00
IronApollo
8c7d4c0cc5 Fix #377
- Added comments to help explain some of the logic of the Region/CuboidRegion filtering
2020-03-28 20:51:53 -04:00
dordsor21
8ffdd8a9e9 Better reading of schematic biomes.
Use biomes in the P2 schematic handler and save as a .schem not .schematic (when it's enabled again)
2020-03-28 10:44:51 +00:00
MattBDev
6275e9298e Modify Tests 2020-03-27 19:09:26 -04:00
MattBDev
9c3fea6567 Remove poorly implemented biomes in MCEdit schematics 2020-03-27 19:09:01 -04:00
MattBDev
62165250ce Remove FAWE language option in config 2020-03-27 19:08:32 -04:00
MattBDev
7db61be075 Started stripping apart EditSessionBuilder 2020-03-26 22:26:11 -04:00
MattBDev
e648b35b95 Small code quality changes 2020-03-24 12:32:36 -04:00
MattBDev
1577ef61d4 Upstream merge 2020-03-23 20:59:56 -04:00
MattBDev
b2e3d40be2 Rename uploadAnonymous to upload 2020-03-23 20:48:58 -04:00
MattBDev
e7df3177cc Upstream merge 2020-03-23 20:47:30 -04:00
Octavia Togami
692caeea8a Read WE version from manifest ourselves
(cherry picked from commit 947775b5e54aa9dd89d68ee0b382939796301902)
2020-03-23 19:31:56 -04:00
MattBDev
752a2624f8 Added warnings in DiskOptimizedClipboard to help resolve non-closed file issue 2020-03-23 18:45:23 -04:00
MattBDev
221500e7db Remove assetpacks 2020-03-23 18:38:07 -04:00
wizjany
dabba81902 Allow expand to be used by console. (#1264)
* Allow expand to be used by console.

Also fix direction converter requiring a player.

* Revert exception.

(cherry picked from commit b4d2db3dee01d6af4f49d6ee1ea015dbd685839c)
2020-03-23 16:47:04 -04:00
MattBDev
1fd4d7c27e Update draw.js 2020-03-22 15:46:02 -04:00
MattBDev
ae57dd5d61 fixed compile errors 2020-03-20 21:39:40 -04:00
MattBDev
45ac55185f Merge remote-tracking branch 'origin/1.15' into 1.15 2020-03-20 21:19:37 -04:00
MattBDev
2f8c4ab6f2 Update to debugpaste command 2020-03-20 21:12:11 -04:00