645 Commits

Author SHA1 Message Date
Dylan K. Taylor
fbbb6f3beb Merge branch 'release/3.1' 2018-07-14 10:39:34 +01:00
Dylan K. Taylor
fe7ad7a5b3 Merge branch 'release/3.0' into release/3.1 2018-07-14 10:39:28 +01:00
Dylan K. Taylor
7bfe487ee5 ConcretePowder: fixed a missed usage of Block::get() 2018-07-14 10:35:05 +01:00
Dylan K. Taylor
25022b3144 Merge branch 'release/3.1' 2018-07-13 12:38:41 +01:00
Dylan K. Taylor
24f749a933 Merge branch 'release/3.0' into release/3.1 2018-07-13 12:36:10 +01:00
Dylan K. Taylor
d8cf835f92 BlockFactory: better handling for dodgy IDs
I thought I'd already dealt with this, but it seems not.
2018-07-13 12:31:22 +01:00
Dylan K. Taylor
884ebe632d Merge branch 'release/3.1' 2018-06-23 13:04:20 +01:00
Dylan K. Taylor
7ba6e92b6c Merge branch 'release/3.0' into release/3.1 2018-06-23 13:04:05 +01:00
Dylan K. Taylor
860c20109b TNT can now be ignited by burning arrows 2018-06-23 12:54:21 +01:00
Dylan K. Taylor
dd6b5902a6 EmeraldOre: fixed not dropping XP on break 2018-06-22 21:35:58 +01:00
Dylan K. Taylor
87852f2fe1 EmeraldOre: remove excess indentation 2018-06-22 21:31:22 +01:00
Dylan K. Taylor
78aa1ee22e Merge branch 'release/3.1' 2018-06-22 13:42:29 +01:00
Dylan K. Taylor
641a5a5e23 fixed damaged anvils dropping the wrong items
they changed this in 1.2.13 to use regular masks instead of bitshifts. The item was fixed, but not the block.
2018-06-22 09:57:39 +01:00
Dylan K. Taylor
0948c65276 Merge branch 'release/3.x' 2018-06-22 09:13:49 +01:00
Dylan K. Taylor
ebacb8525f SignPost: fixed possible field read on null 2018-06-22 09:12:48 +01:00
Dylan K. Taylor
eddd626461 Trapdoor: fixed condition for side checking 2018-06-21 20:13:26 +01:00
Dylan K. Taylor
99a0c2a188 Block: Make recalculation of BB non-dependent on block position
This now computes BBs relative to 0,0,0 and then offsets them as appropriate. This requires less boilerplate code and also furthers the goal of separating block types from instances.
2018-06-21 19:58:28 +01:00
Dylan K. Taylor
31c187f366 Bed: fixed recursion when setting state to something it already is
fixes #2236
2018-06-13 04:16:52 -04:00
Dylan K. Taylor
05af87e1d4 Strip empty lines at the end of classes 2018-06-11 13:19:23 +01:00
Dylan K. Taylor
e867427f71 Leaves: remove useless $check parameter
this is only written to and never read from.
2018-06-10 17:20:34 +01:00
Dylan K. Taylor
c4c6c58615 Added some missing typehints 2018-06-10 17:18:55 +01:00
Dylan K. Taylor
41a179e6e1 BlockFactory: fix bug in light filters which could result in negative light levels (and therefore wraparounds) 2018-06-05 18:12:45 +01:00
Dylan K. Taylor
7b7917939a Cleaned up Container lock handling 2018-06-03 13:42:04 +01:00
Dylan K. Taylor
6aaaaefd2f Make tiles less dependent on runtime NBT, use properties instead
This will ultimately culminate in the complete removal of runtime NBT, so plugins should also follow these steps if they have custom data.
2018-06-03 12:50:16 +01:00
Dylan K. Taylor
ec28612a12 BlockFactory: partial revert of 515e4aabc45c057e215e5f695a94a7bd7b0e1094
it's necessary to register these to fill the static property arrays. Someday these won't be necessary I hope...
2018-06-01 17:08:58 +01:00
Dylan K. Taylor
d535fe20a3 BlockFactory: split up static ID mapping registration from other things
this is actually HUGELY WASTEFUL on memory. An average of 3 MB is wasted per AsyncWorker on this.
2018-06-01 10:28:53 +01:00
Dylan K. Taylor
515e4aabc4 BlockFactory: minor reduction in memory usage
removing useless array and don't pre-populate with UnknownBlock objects
2018-06-01 10:15:20 +01:00
Dylan K. Taylor
619390c5b7 Sapling: Account for light level when trying to grow on random ticks 2018-05-11 09:53:03 +01:00
Dylan K. Taylor
b21572774a Tool: cleanup durability handling, closes #379
long overdue... this isn't quite as extensible as the original api3/blocks system was, but this is primarily intended to replace Item->useOn(). If plugins want to use it it can be extended later on.
2018-05-10 19:48:51 +01:00
Muqsit
e7c5d14af3 Fix DoubleSlab name (#2177) 2018-05-09 21:17:35 +01:00
Dylan K. Taylor
532269a484 Implemented block break XP drops 2018-04-15 19:03:18 +01:00
Dylan K. Taylor
46cbcb0c42 Fixed fire with no nearby flammable blocks burning for too long 2018-04-10 10:07:14 +01:00
Dylan K. Taylor
af9b0b019d Added BlockBurnEvent 2018-04-10 10:04:11 +01:00
Dylan K. Taylor
7db8845375 Fire has a 1/3 chance of aging on a random or scheduled tick 2018-04-10 09:59:54 +01:00
Dylan K. Taylor
9a1d3aec6b Flammable blocks adjacent to fire now burn away
There are some strange bugs with blockupdating causing invisible client-side-only fires that need to be investigated.
2018-04-10 09:59:10 +01:00
Dylan K. Taylor
670a53ba3b Fire: fixed logic of extinguishing 2018-04-10 09:58:58 +01:00
Dylan K. Taylor
f22ad14c67 Block: added isFlammable() 2018-04-10 09:58:35 +01:00
Dylan K. Taylor
64540f36be Block: added burnsForever() 2018-04-10 09:58:21 +01:00
Dylan K. Taylor
e66b1953de Block: added flame encouragement and flammability properties 2018-04-10 09:58:08 +01:00
Dylan K. Taylor
aa6666872a BlockFactory: added a hack for weird air blocks with non-zero damage values
I don't know what causes this to occur, but they should never have non-zero damage values, so we discard the metadata.
2018-04-09 16:35:31 +01:00
Dylan K. Taylor
5b7b2dd0e2 Merge changes from ALPHA11 for 1.2.13 2018-04-04 11:31:39 +01:00
Dylan K. Taylor
a1cf5dbd1e fix doc inconsistency 2018-04-04 11:01:14 +01:00
Dylan K. Taylor
c86132028e BlockFactory: add new "dynamic" fake runtime IDs for unknown legacy ID/meta combinations
This is basically how blockstate discovery would actually work in the full-blown system. This maps blocks with unrecognized blockstates to static runtimeIDs not known to the client.

This means that all blocks which don't have corresponding runtimeIDs in the new system will translate to update! blocks instead.

Mojang do this differently: they try to a) match id+meta, if that fails b) match id+0, and if that fails, then replace with update! block runtime ID. I can't do that here because I need to be able to convert both ways. They only need to be able to convert from legacy -> new.
2018-04-04 11:00:58 +01:00
Dylan K. Taylor
5ce55bd3b0 duct tape for block ID remapping 2018-04-04 11:00:39 +01:00
Dylan K. Taylor
1d5978df98 Fixed falling blocks getting moved by currents, closes #2080 2018-03-30 12:20:59 +01:00
Dylan K. Taylor
5d32587cf7 DeadBush: match placement condition with break condition, fixes #2116 2018-03-30 11:54:57 +01:00
Dylan K. Taylor
1f4f8ab3f0 Inventory: Removed BigCraftingGrid, allow arbitrary size parameter
This is more flexible and requires less classes.
2018-03-29 11:24:28 +01:00
Dylan K. Taylor
a4c50d3204 Remove unused imports 2018-03-24 11:59:15 +00:00
Dylan K. Taylor
1648fff916 Replaced Position->getLevel() null checks with isValid() 2018-03-20 11:10:36 +00:00
Dylan K. Taylor
ac5a91b67e Cleaned up bool comparison mess 2018-03-19 14:10:55 +00:00