8912 Commits

Author SHA1 Message Date
Dylan K. Taylor
acd7c9b336 Permission: Throw exception on unknown values in getByName()
Previously, writing wrong values into plugin.yml for permission defaults would cause the permission to be silently denied to everyone.
2018-12-01 15:56:44 +00:00
Dylan K. Taylor
206f913d2b Merge branch 'release/3.4' 2018-12-01 10:10:52 +00:00
Dylan K. Taylor
75482124f2 Merge branch 'release/3.3' into release/3.4 2018-12-01 10:09:46 +00:00
Dylan K. Taylor
288599cbe7 3.3.5 is next 2018-12-01 10:00:59 +00:00
Dylan K. Taylor
aa7206126a Release 3.3.4 3.3.4 2018-12-01 10:00:38 +00:00
Dylan K. Taylor
1a6db1c7ce DataPacket: add missing field
this must have been missing for how many years now? thanks @shoghicp

this is why we don't do releases on friday night... in my defence my device had the beta installed...
2018-12-01 09:29:53 +00:00
Dylan K. Taylor
f1c071ce7f Release 3.3.3 3.3.3 2018-11-30 19:41:36 +00:00
Dylan K. Taylor
e2f46a4358 Remove unused import... 2018-11-30 19:40:35 +00:00
Dylan K. Taylor
c46475ac4a Merge branch 'release/3.4' 2018-11-30 19:28:06 +00:00
Dylan K. Taylor
36c0c350a7 Merge branch 'release/3.3' into release/3.4 2018-11-30 18:37:28 +00:00
Dylan K. Taylor
4c08a05fae Barf on trying to read/write nonexisting fields of packets
this should make it easier to debug problems when content of packets changes during protocol updates.
2018-11-30 18:36:28 +00:00
Dylan K. Taylor
16006f9175 Make Tile constructors non-dependent on NBT 2018-11-30 17:05:36 +00:00
Dylan K. Taylor
a2253e9e7d Flatten still liquid blocks into a liquid block property 2018-11-30 16:06:35 +00:00
Dylan T
6295ef8a81
Add language option to server.properties (#2531)
This allows to save the language without rewriting pocketmine.yml. Since this is a "standard" config option (something that the user might want to directly modify) it's reasonable to put it in server.properties. pocketmine.yml is generally reserved for more advanced configuration options.
2018-11-30 13:25:04 +00:00
Dylan K. Taylor
ed531c0009 Merge branch 'release/3.4' 2018-11-29 19:57:35 +00:00
Dylan K. Taylor
05dba61a69 Merge branch 'release/3.3' into release/3.4 2018-11-29 19:47:28 +00:00
Dylan K. Taylor
b473ffdedc Remove async playerdata saving, closes #2515
this technically involves non-breaking API changes which should happen on a patch release, but I can't be bothered with the dust cleanup, so we'll just blow it away now. It doesn't hurt anyone anyway.
2018-11-29 19:47:15 +00:00
Dylan K. Taylor
60dddcd12a Painting: clean up guard checks, remove unnecessary checks 2018-11-29 19:29:10 +00:00
Dylan K. Taylor
790ef0325c Merge branch 'release/3.4' 2018-11-29 18:47:25 +00:00
Dylan K. Taylor
c010ef45ed Merge branch 'release/3.3' into release/3.4 2018-11-29 18:46:00 +00:00
Dylan K. Taylor
93c26a0b0c Living: Suspend effects ticking on death
This was the cause of a bug with regeneration which caused players taking fatal damage under regeneration not to die correctly. On the server side they would die and immediately regenerate some health, which would cause the next attribute sync to not report the health drop to zero, which made the client unaware that it was dead.

Perhaps attributes should be forcibly synced in some circumstances, but nonetheless regeneration shouldn't apply post-death.
2018-11-29 18:45:46 +00:00
Dylan K. Taylor
c3063ccc44 Remove useless CustomInventory class 2018-11-29 14:40:15 +00:00
Dylan K. Taylor
650a2eee4b Tile: remove unused import 2018-11-27 20:04:47 +00:00
Dylan K. Taylor
5024713291 Fixed population artifacts always generating in the bottom subchunk, closes #2538 2018-11-26 14:29:06 +00:00
Dylan K. Taylor
20f0e344d6 Merge branch 'release/3.4' 2018-11-26 14:02:59 +00:00
Dylan K. Taylor
08ec021f78 Merge branch 'release/3.3' into release/3.4 2018-11-26 14:02:32 +00:00
Dylan K. Taylor
545ec9c881 Updated PreProcessor submodule 2018-11-26 14:02:23 +00:00
Dylan K. Taylor
328ee40d5d Bring back support for all-sided logs, properly this time 2018-11-25 19:52:45 +00:00
Dylan K. Taylor
c809365c39 Make RedstoneRail class abstract 2018-11-25 19:22:00 +00:00
Dylan K. Taylor
8fe3f6ef1b Player now drops the contents of temporary inventories
these inventories are just glorified crafting tables.
2018-11-25 17:13:35 +00:00
Dylan K. Taylor
a9a647855b Remove useless Recipe interface 2018-11-25 17:08:09 +00:00
Dylan K. Taylor
2ef91f6e2e Merge branch 'release/3.4' 2018-11-25 16:36:46 +00:00
Dylan K. Taylor
b0060caaf7 Config: don't catch-all in save() 2018-11-25 16:35:59 +00:00
Dylan K. Taylor
d0e2cdb54c Tile: remove server field
it would be nice to get rid of the server dependency entirely... perhaps craftingmanager should be a singleton? it's contextless after all...
2018-11-25 15:58:24 +00:00
Dylan K. Taylor
d8ea8fa0f0 Use Block objects more instead of legacy ID/meta crap 2018-11-25 14:55:12 +00:00
Dylan K. Taylor
7399e9036a Block: add method isSameState() to allow black-box comparison of blockstates 2018-11-25 14:53:57 +00:00
Dylan K. Taylor
4698c723bd Merge branch 'release/3.4' 2018-11-25 14:36:20 +00:00
Dylan K. Taylor
c90d1faa81 Merge remote-tracking branch 'origin/release/3.3' into release/3.4 2018-11-25 14:35:45 +00:00
Dylan T
d5a1961e6b
Force minimum uptime to be >= 120 seconds if a crash occurs (#2534)
This is an incremental improvement over 4a6841a5a465c791b512517394241f0ac0b38739. This change works better because it also reduces disk spam of crashdumps.

This will now sleep if the server uptime was less than 120 seconds before crashing. If unattended, this will clamp down on automated crashdump spam. If attended, the user can simply press CTRL+C to abort the process and skip the delay.
2018-11-25 14:35:35 +00:00
Dylan K. Taylor
7ddcd2941b More AxisAlignedBB::one() usages 2018-11-24 19:49:15 +00:00
Dylan K. Taylor
fcd81ada04 Make Thin use dynamic state properties 2018-11-24 19:44:32 +00:00
Dylan K. Taylor
0fec58730b Level: fixed recursion bug when reading dynamic states
calculating dynamic states in some cases requires getting properties from neighbouring blocks, but getting these blocks also causes their dynamic states to be calculated, leading to a bouncing recursion.
This change allows retrieving blocks without calculating dynamic state information, if the call was generated by calculating dynamic state information.
Since these blocks are incomplete, they should not be cached and are only used to allow another adjacent block to complete its state. It is therefore not possible for a block's dynamic states to depend on another block's dynamic states.

This recursion bug was observable by running /gc and walking into a door, which would cause the server to freeze and crash.
2018-11-24 19:44:31 +00:00
Dylan K. Taylor
d426d18b77 Add dynamic shape property for stairs 2018-11-24 19:44:31 +00:00
Dylan K. Taylor
1170b66fd5 Automate creation of tiles when they are used to store block properties 2018-11-24 19:44:31 +00:00
Dylan K. Taylor
3f3bdaeba5 Use dynamic state detection to localize stateinfo stored in tiles (hack) 2018-11-24 19:43:02 +00:00
Dylan K. Taylor
3af293f024 Added a mechanism for blocks to detect dynamic state properties from surroundings 2018-11-24 19:43:02 +00:00
Dylan K. Taylor
b2201c8c59 Further cleanup to general AABB handling 2018-11-24 19:17:03 +00:00
Dylan K. Taylor
d5ae4ad141 Sync Math dependency 2018-11-24 18:34:49 +00:00
Dylan K. Taylor
101de7adda Update Math dependency, obliterate some nasty code from Block 2018-11-23 19:41:52 +00:00
Dylan K. Taylor
4c848bb4c1 docs fixes 2018-11-22 17:07:36 +00:00