Dylan K. Taylor
6f54b53f7a
thanks for being useless PhpStorm
...
these problems didn't show up in any inspections until I opened the fucking files...
2019-03-17 15:53:59 +00:00
Dylan K. Taylor
7d72b8e756
leveldb: use writebatch for chunk saving (faster I/O)
...
i don't know why this wasn't already using a writebatch, but it should have been.
2019-03-15 16:45:47 +00:00
Dylan K. Taylor
9205bbaa42
... why is this not saved on provider close...?
2019-03-15 04:43:19 -04:00
Dylan K. Taylor
a91f49220c
Chunk: Do not mark as changed on lighting updates
...
Since we don't save light to disk anymore, we don't need to care if a light update took place. This improves I/O performance.
2019-03-14 16:34:14 +00:00
Dylan K. Taylor
62185d476b
RegionLoader: Fixed performance issue converting huge worlds
...
I was big nub when i wrote this code.
2019-03-14 15:22:44 +00:00
Dylan K. Taylor
1e0f1e5b1a
RegionLoader: Stop unnecessarily writing location header on close
...
Any time a region is modified, the location header is written anyway, so this is entirely unnecessary.
2019-03-14 15:06:13 +00:00
Dylan K. Taylor
d080d3bae0
RegionLoader: Write location table changes when deleting chunks
2019-03-14 15:02:15 +00:00
Dylan K. Taylor
41d13b6f06
Player: remove dead condition
...
this can't be reached because the only place it's called is from Level->actuallyDoTick(), where it won't appear until long after the player is logged in.
2019-03-14 14:47:20 +00:00
Dylan K. Taylor
a1ffaffa7f
Don't record player on stats until they actually exist
2019-03-14 14:46:19 +00:00
Dylan K. Taylor
ebfe9caca3
Move too-early-send check to NetworkSession
2019-03-14 14:45:30 +00:00
Dylan K. Taylor
26a5d97499
Some cleanup to player net session handling for connect/disconnect
2019-03-14 14:32:43 +00:00
Dylan K. Taylor
34758e3bc6
RegionLevelProvider: clean up coordinate extraction, fixed a stupid bug
2019-03-13 17:35:09 +00:00
Dylan K. Taylor
08c399529d
RegionLevelProvider: Unload regions when finished scanning them, fixes running out of file descriptors during conversion
2019-03-13 17:32:34 +00:00
Dylan K. Taylor
ad19696364
Make Effect and Enchantment functions less verbose
2019-03-13 15:26:21 +00:00
Dylan K. Taylor
01904adf49
Improve enum implementations, move some components to traits
...
The reason this uses a trait is because `self` refers to the including class in a trait, which offers a small amount of automatic type safety.
If we had templates or generics, this would be a generic class instead.
2019-03-13 15:10:31 +00:00
Dylan K. Taylor
7f4b76aa86
Implemented blue ice
2019-03-12 19:38:03 +00:00
Dylan K. Taylor
0e1a88f7e5
Armor: Implement right-click to equip, closes #2641
2019-03-12 19:01:36 +00:00
Dylan K. Taylor
8b9eeb0b7f
Clean up Armor classes
2019-03-12 18:53:51 +00:00
Dylan K. Taylor
48427290c9
Regenerated BlockFactory TODOs
2019-03-10 19:53:55 +00:00
Dylan K. Taylor
437750785f
Implemented barrier block
2019-03-10 19:53:55 +00:00
Dylan K. Taylor
c2a069afd3
Implemented a bunch of new wood blocks
2019-03-10 19:53:24 +00:00
Dylan K. Taylor
84bbd14a21
fixed wrong generator being set on converted worlds
2019-03-10 19:53:24 +00:00
Dylan K. Taylor
85e1b77cae
fix crash in getHighestBlockAt()
2019-03-10 19:53:24 +00:00
Dylan K. Taylor
18e16f8615
Fixed blockID truncation
2019-03-10 19:53:24 +00:00
Dylan K. Taylor
7aa4c18afa
Fixed assert failure in SubChunk
2019-03-10 19:53:24 +00:00
Dylan K. Taylor
a858103e6b
Support paletted subchunks, drop all formats except leveldb
2019-03-10 19:53:24 +00:00
Dylan K. Taylor
dfc26395e2
Fixed missing logger injection
2019-03-10 19:53:23 +00:00
Dylan K. Taylor
8cb24547ff
Goodbye McRegion o/
2019-03-10 19:53:23 +00:00
Dylan K. Taylor
8d83d59cf0
Work around collisions in backup names
2019-03-10 19:53:23 +00:00
Dylan K. Taylor
a0a8026cba
Implemented automatic world format conversion
2019-03-10 19:53:23 +00:00
Dylan K. Taylor
ae9f57ac28
Revert "Remove hacks for triggering adjacent light refill"
...
This reverts commit 1dca9074d5f087d15f8d30d2941150fe51617489.
This change introduced performance issues with transparent blocks.
2019-03-10 19:50:35 +00:00
Dylan T
c266f86b1b
ItemEntity: introduce controls for despawn timers ( #2769 )
...
This opts _not_ to expose item "age" a la #2753 because "age" is a misleading term for it. In addition, further inspection of the problem led me to realize that exposing control of that AND despawn timeout was more complicated than simply having a despawn delay timer exactly like the pickup delay one. Everyone knows a countdown timer stops at 0, so this way we don't need any method to control the limit.
Closes #2667
Closes #2753
2019-03-10 12:05:21 +00:00
Dylan K. Taylor
b9208eb1fb
Merge branch '3.6'
2019-03-09 19:04:37 +00:00
Dylan K. Taylor
414104851a
LevelDB: Mark chunks as changed when upgraded from an older chunk format
2019-03-09 19:02:34 +00:00
Dylan K. Taylor
6fe366e1ac
Added some missing block properties
2019-03-09 16:49:37 +00:00
Dylan T
8f1bc5d497
Flatten wall_banner and wall_sign into single blocks ( #2798 )
...
This comes with some problems, but the problems are more bearable than the previous code.
2019-03-08 16:37:26 +00:00
Dylan K. Taylor
bb718faa2e
Merge branch '3.6'
2019-03-08 13:57:32 +00:00
Dylan K. Taylor
c68ee1d9d9
LevelDB: Mark chunks as changed when upgraded from an older chunk format
2019-03-08 13:55:56 +00:00
Thunder33345
c0bed03a2a
Update PlayerRespawnEvent.php ( #2797 )
...
removed obsolete comment
2019-03-05 16:28:58 +00:00
Dylan K. Taylor
2b6a62be77
Fixed BlockFactory corruption with signs and banners
2019-03-05 15:32:06 +00:00
Dylan K. Taylor
3f66600271
RegionLoader: Extract location table validation to separate function
2019-03-05 13:28:56 +00:00
Dylan K. Taylor
f2404804d7
RegionLoader: clean up lastSector handling
2019-03-05 13:18:14 +00:00
Dylan K. Taylor
07a9c35ee2
RegionLoader: Use objects instead of arrays
2019-03-05 13:10:17 +00:00
Dylan K. Taylor
4d9b074641
Merge branch '3.6'
2019-03-05 12:10:16 +00:00
Dylan K. Taylor
d25c84acff
Fixed RegionLoader corrupting location table when too-large chunks are discovered
...
this was making the location table point to an offset that did not yet exist, which caused the region header consistency check to discard the region as corrupted the next time it was loaded.
2019-03-05 12:09:27 +00:00
Dylan K. Taylor
e31603fc45
Merge branch '3.6'
2019-03-05 11:21:55 +00:00
Dylan K. Taylor
55994e08db
RegionLoader: make some error messages more detailed
2019-03-05 11:18:02 +00:00
Dylan K. Taylor
6f5d4d6b80
RegionLoader: fixed handling of invalid chunk coordinates
2019-03-05 10:52:36 +00:00
Dylan K. Taylor
2795ad674b
add boilerplate code to check for generator validity
...
perhaps we should use an enum for this...?
2019-03-05 09:36:22 +00:00
Dylan K. Taylor
2cad7166b1
GeneratorManager::getGeneratorName() now throws InvalidArgumentException on unregistered generator classes
...
the old behaviour allowed a bug in the world converter to go unnoticed.
2019-03-05 09:30:22 +00:00