Commit Graph

121 Commits

Author SHA1 Message Date
fbfe3221d7 Fix fast schematic reader/writer
- Have both sponge and fast r/w available but default to "fast"
 - Correctly "offset" entities in the schematic, and add a legacy mode for loading old FAWE schematics with entities required.
 - Lazily reading means it's read in order of appearance in the inputstream so we need to read schematic version first (skip past everything) and then reset the stream. Fixes #740
 - Add an FAWEVersion to the metadata
 - Correctly actually return a BlockArrayClipboard when required. Fixes #454
2021-01-01 15:01:35 +00:00
e4709eb6dc idk why I did &3
half fixes #769
2020-12-16 12:34:54 +00:00
ff7c972ea6 Don't try to be clever with bitwise
Fixes #769
2020-12-11 12:55:38 +00:00
c6ef1bc1de Full support for 3D biomes (#714)
* Full support for 3D biomes
Since we're only supporting 1.15+ there's no need to try anything other than compatibility

* this is not part of the PR

* Clipboards should still always be y 0 for biomes
(this "bug" has existed for ages)
2020-10-22 22:18:16 +01:00
f5a42c63a7 Better logger support 2020-10-06 14:44:33 -04:00
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
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
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
d00899e177 More support for 3D biomes (#608)
* More support for 3D biomes

* Resolved merge conflicts
2020-09-12 15:31:42 +02:00
ce078aad70 Updated many exception classes 2020-08-24 21:29:34 -04:00
3bc692ff11 Part 1 of upstream merge and format 2020-07-13 22:50:59 -04:00
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
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
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
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
8a70f97445 Mask and Pattern modifications 2020-03-17 23:05:52 -04:00
50ceb4d715 More cleanup 2020-03-05 16:10:38 -05:00
0bf0848758 Started refactoring Clipboards 2020-02-27 21:35:59 -05:00
020c674c01 Revert migration of FaweCache to Kotlin 2020-01-29 15:01:38 -05:00
e0f6869573 Revert "More code quality fixes"
This reverts commit 2d6957ce
2020-01-23 14:41:57 -05:00
2d6957ce1c More code quality fixes 2020-01-22 21:15:52 -05:00
88359f0215 More Kotlin 2020-01-21 14:30:13 -05:00
2d5a8ce573 Cleaned up a lot of code and introduced Kotlin to the project 2020-01-14 19:44:09 -05:00
05760c49cd Fixed compile issues and disabled plotsquared hook 2020-01-03 16:05:25 -05:00
f3e0109be2 A lot of small changes 2020-01-03 15:38:30 -05:00
cfb6e3bca4 Various debugging and cleaning 2020-01-03 12:02:18 -05:00
f37bc9417c Merge branch 'merge' into 1.15 2019-12-19 19:05:27 +01:00
6a49b71cf2 Fix compile 2019-12-19 16:19:46 +00:00
6ddeb2ebf5 Various minor
refactor some region dependencies
swithc masking extent to a filter (so it can be parallelized)
Some unfinished refactoring of the filters
remove piston messages from strings.json
2019-12-16 09:07:51 +00:00
54f62e689b WIP level dat for MCAWorld 2019-11-14 19:20:35 +00:00
a23a4e5496 misc changes. 2019-11-11 16:02:28 -05:00
7aa0d9c122 Various minor
Disable P2's we region restrictions (so that it uses FAWE's)
Fix extent binding
Fix filtering on null sections
2019-11-11 16:49:13 +00:00
59897dea11 Update MCAFile.java 2019-11-10 14:19:36 +00:00
ac6455db5d use FaweCache for MCAFile 2019-11-10 11:38:45 +00:00
82f5c4ebed Fix compile 2019-11-07 10:28:17 +00:00
5f4af7958f MCAFile is chunk based extent 2019-11-06 10:38:36 +00:00
240b2de90c Update to PlotSquared-we branch 2019-11-06 09:29:20 +00:00
32d837414b static blocktype initialization
instead of using hacky reflection
2019-11-02 20:35:51 +01:00
df9e9e510a Limit processing 2019-11-02 12:13:42 +01:00
0b2bd862a0 Update MCAFile.java 2019-11-02 08:40:11 +01:00
ed7df341b4 Make mca file reusable 2019-11-02 08:07:40 +01:00
2f3c6769c8 Legacy clipboards 2019-11-02 07:15:56 +01:00
c2cb463dae Fix schem load 2019-11-01 23:48:52 +01:00
88b6d60f8e schem v2 biomes 2019-11-01 22:09:50 +01:00
3e00ce36d2 Add barebones Anvil API
not anvil commands, just the core of the api
could do with some optimization
2019-11-01 19:11:05 +01:00
1ad040f7d0 fix compile 2019-11-01 18:36:40 +01:00
f0ab1d5f18 finish overhaul of NBT stream api 2019-11-01 18:29:13 +01:00
9cf02fe654 WIP Anvil API 2019-10-31 21:04:02 +01:00
b533408022 wip clipboard migration 2019-10-31 14:12:23 +01:00
0296d566ed wip remove faweclipboard 2019-10-31 04:04:15 +01:00