9289 Commits

Author SHA1 Message Date
Dylan K. Taylor
3037f45a0c Implement new dye types, split bonemeal and cocoa beans into their own classes 2019-02-22 11:43:48 +00:00
Dylan K. Taylor
2bfcd25848 Fixed typo in Repeater name 2019-02-21 18:41:04 -05:00
Dylan K. Taylor
fd4a441f3a Level: add unregisterChunkListenerFromAll()
it's not expected for chunk listeners to have to track all the chunks they are listening to under normal circumstances.
2019-02-21 14:51:16 +00:00
Dylan K. Taylor
f9da0f3ece Sapling: remove dead TODO 2019-02-21 13:09:05 +00:00
Dylan K. Taylor
eabd8ce026 Fixup pressure plate hierarchy 2019-02-21 13:06:08 +00:00
Dylan K. Taylor
28d01025b0 Improve consistency of handling coloured and wooden blocks
this is ugly, but less ugly than the earlier version.
2019-02-21 12:13:21 +00:00
Dylan K. Taylor
0120585aee Block: name is no longer nullable 2019-02-21 11:37:21 +00:00
Dylan K. Taylor
e063c567be Merge remote-tracking branch 'origin/master' into block-id-object 2019-02-21 10:41:25 +00:00
Dylan K. Taylor
6ab171d629 Fixed unit tests 2019-02-21 10:41:06 +00:00
Dylan K. Taylor
635fb5dde4 Clean up ID flattening hacks 2019-02-21 10:38:29 +00:00
Dylan K. Taylor
3d1502c9ad Apparently yaml_parse_file() doesn't respect access protocol 2019-02-20 17:11:26 -05:00
Dylan K. Taylor
89fce7712a Block: Clean up internal constructor inconsistencies
I don't dare look how big this commit is or how many bugs it introduced...
2019-02-20 19:21:51 +00:00
Dylan K. Taylor
e93464f318 SnowLayer: fixed 8x layers being replaceable
this also fixes some placement bugs.
2019-02-20 16:29:34 +00:00
Dylan K. Taylor
5fac5c7281 Move core permissions to default_permissions.yml
this is one of the few things that is actually better suited to a YAML file than code
closes #2594
2019-02-20 16:22:45 +00:00
Dylan K. Taylor
7aa263d320 PermissionParser: add emitPermissions() 2019-02-20 16:21:25 +00:00
Dylan K. Taylor
efc2d72d5f Move permission parsing to dedicated PermissionParser class 2019-02-20 16:20:48 +00:00
Dylan K. Taylor
58cafc853f s/level/world (strings only)
we should look at doing this for code too, but for now I'm not planning to break everyone's plugins.
2019-02-20 15:33:46 +00:00
Dylan K. Taylor
9354929cad added a whole bunch of tests for enchantment handling 2019-02-20 14:43:57 +00:00
Dylan K. Taylor
7170d9009d Enchantment: more static getters, firehose magic numbers
This is similar in nature to 646fea5a4ecbbdf3f0cbfc590d874dedc1a7bfc0.

On a side note: Migrating this way is a pain in the ass due to lack of types. What the heck is int supposed to mean?!?!?!?! At least if we wanted to go _back_ to magic numbers, it would be easy to locate everything with an Enchantment typehint...
2019-02-20 13:45:50 +00:00
Dylan K. Taylor
646fea5a4e Effect: Introduce a bunch of static getters, change a bunch of API to use objects
This introduces static getters for every currently-known effect type. At some point in the near future, the magic number constants (which are really network IDs, by the way) will disappear.

Migrating:
- If you used constants (like any sensible person would): for the most part it's just a case of adding a () anywhere you used an Effect constant.
- If you hardcoded magic numbers: ... well, have fun fixing your code, and I reserve the right to say "I told you so" :)

This achieves multiple goals:
1) creating an EffectInstance for application is much less verbose (see diff for examples, especially the Potion class)
2) plugin devs cannot use magic numbers to apply effects anymore and are forced to use type-safe objects. :)

This is a warning shot for plugin devs who use magic numbers. More changes like this are coming in the not-too-distant future.
2019-02-20 12:05:17 +00:00
Dylan K. Taylor
15d4201c3a Fixed tests broken by 88c4b836f09278a2d81a14356ff3c29ce465de1d 2019-02-20 11:16:08 +00:00
Dylan K. Taylor
2c8a065b94 Standardise SNAKE_CASE for surrogate enums 2019-02-20 11:14:07 +00:00
Dylan K. Taylor
36e9db4c07 Generate methods for surrogate enums, nip stupidity in the bud
this also allows changing the internal implementation later without breaking plugins.
2019-02-20 11:09:22 +00:00
Dylan K. Taylor
88c4b836f0 Make factory register methods less verbose 2019-02-20 10:24:44 +00:00
Dylan K. Taylor
f351a86653 Flatten double slabs into Slab pseudo-variant 2019-02-19 11:14:06 +00:00
Dylan K. Taylor
18f765338c Slab: fixed replacing $blockReplace not creating double slab when not clicking on the replaced block itself 2019-02-19 11:09:11 +00:00
Dylan K. Taylor
bf71ddb0b5 Snow layers now fall as expected 2019-02-19 10:01:57 +00:00
Dylan K. Taylor
a4c3ee20b2 Extract Fallable into trait + interface
Traits are inferior to components in pretty much every aspect imaginable :(
2019-02-19 09:58:10 +00:00
Dylan K. Taylor
6174f1e0ae Pumpkin: fix BC issue, fix lit pumpkin rotation 2019-02-18 20:02:23 +00:00
Dylan K. Taylor
6f4cec6465 add some blocks introduced in 1.9 2019-02-18 20:01:50 +00:00
Dylan K. Taylor
a95ecb3ff9 FenceGate: implement in-wall checks 2019-02-18 19:00:58 +00:00
Dylan K. Taylor
6f7c63e2a8 ItemFrame: add has-map bit
this makes the frame appear to cover the full block instead of the usual size.
2019-02-18 17:41:15 +00:00
SalmonDE
8f26c3a2d4 Fix bonemeal count not reduced by CocoaBlock (#2773) 2019-02-18 16:31:07 +00:00
Dylan K. Taylor
12dd6adfcc Block: Derive light filter level based on isTransparent() return
this might be dynamic.
2019-02-18 13:27:22 +00:00
Dylan K. Taylor
6cdd716c34 Merge branch '3.6' 2019-02-18 13:12:29 +00:00
Dylan K. Taylor
6b51bf4a80 Merge branch '3.5' into 3.6 2019-02-18 13:11:16 +00:00
Dylan K. Taylor
cba8d86c4f Fixed Fire Aspect not working on TNT 2019-02-18 13:11:08 +00:00
Dylan K. Taylor
b8adfd6948 edu: implement coloured and underwater torches 2019-02-18 11:37:57 +00:00
Dylan K. Taylor
cd733c658b Implement hard glass & hard glass pane 2019-02-18 10:50:29 +00:00
Dylan K. Taylor
ab58d46a7f Merge branch '3.6' 2019-02-17 16:12:21 -05:00
Dylan K. Taylor
2e834c8f5c Merge branch '3.5' into 3.6 2019-02-17 16:10:47 -05:00
Dylan K. Taylor
f9873e9108 ItemFrame: fixed hardness 2019-02-17 16:10:21 -05:00
Dylan K. Taylor
00b92eaa40 BlockFactory: Sort entries lexicographically ascending 2019-02-17 19:44:48 +00:00
SOFe
1bc6483608 Fixed Dockerfile permission issues 2019-02-17 18:10:40 +00:00
Dylan K. Taylor
9b372f8435 Merge branch 'master' of https://github.com/pmmp/pocketmine-mp 2019-02-17 17:09:13 +00:00
Dylan K. Taylor
3bbc0b5d5f Merge branch '3.6' 2019-02-17 17:08:44 +00:00
Dylan K. Taylor
074baf7e1c Merge branch '3.5' into 3.6 2019-02-17 17:08:15 +00:00
Dylan K. Taylor
2e0dd574e0 Set default health attribute value when changing max health, closes #2771 2019-02-17 17:06:32 +00:00
SOFe
9137eb0757 Added Dockerfile 2019-02-18 00:52:52 +08:00
Dylan K. Taylor
c2735286ab Merge branch '3.6' 2019-02-17 11:35:07 +00:00