495fdbd19f
Move block and network namespaces away from PluginManager->callEvent()
...
the original step that wasn't supposed to cause conflicts, caused messy conflicts... so I might as well do this part too
2018-10-05 18:22:49 +01:00
86eee429bb
Block: Split onUpdate() into several functions, removed Level::BLOCK_UPDATE_* constants
...
This allows the removal of lots of ugly code, and also exposes lots of similarities with how this update type was handled. This can be further improved in the future to more generically handle cases.
I realized in the process of changing this, that it might actually be simpler to treat to treat scheduled updates and neighbour updates as one and the same. They use the same mechanism for being saved on chunks (TileTicks),
and doing that would make updating only require one queue instead of two.
RedstoneOre: use onActivate() to trigger glowing
this is not technically correct behaviour, but this preserves the current behaviour.
2018-03-13 17:29:46 +00:00
6abf880e44
Block: Drop unnecessary parameters for ItemFactory::get()
2017-12-13 18:37:04 +00:00
56f1a6ba37
Block: Migrated all trivial drops code to getDropsForCompatibleTool()
...
getDrops() should now be overridden only for special cases. There are some non-trivial overrides left that are going to need some extra work to clean up.
2017-12-13 12:49:58 +00:00
55d0684565
Move block-breaking tool-type constants to a BlockToolType interface
2017-12-12 13:45:52 +00:00
18e4e5364f
Fixed getBlock() performance degradation caused by 781de3efab
, added Level->getBlockAt() to avoid creating vectors everywhere
2017-10-20 13:22:49 +01:00
ebda6ec19b
Cleaned up random-block-ticking registration
2017-08-25 11:47:38 +01:00
876659cc73
Item factory refactor and added capability to register custom items
2017-08-21 17:49:26 +01:00
02f42eba48
Move block registration to its own class
2017-08-20 18:05:01 +01:00
0e24596aed
Changed block construction calls to Block::get()
2017-08-19 13:46:17 +01:00
d8f0dd6db8
Changed Block->getDrops() to return Item[]
2017-08-18 11:21:33 +01:00
83af4dcd59
Block API typehints
2017-08-17 13:50:19 +01:00
2103c981a9
Replaced literal ints with Vector3 constants for Block->getSide() calls
2017-08-04 13:33:23 +01:00
51b0673b4b
Bite the bullet and enable strict types on everything
2017-06-07 12:53:16 +01:00
61d354a4ea
Block constructor mass-replace to fix #963 and related issues
2017-06-05 10:02:27 +01:00
9004417456
Fixed file headers ( #255 )
2017-01-13 16:57:05 +00:00
0380e9009a
Added block break tool type, fixed falling sand, fixed duplicated jungle leaves
2015-07-27 20:31:55 +02:00
26c9eed82e
Added all block hardness
2015-07-27 20:31:55 +02:00
747f7685e7
Fix formatting issues due to bad IDE settings
2014-12-07 16:30:04 +01:00
a98da3bab1
Renamed old getID() calls to getId()
2014-12-07 15:21:32 +01:00
a0d4bff385
Block creating and property handling rewrite, part1
2014-12-07 01:53:27 +01:00
32dae93ef9
Removed unused imports
2014-11-04 12:08:24 +01:00
8601405a88
Fixed CPU leak
2014-10-31 21:07:00 +01:00
6f64af3066
Reuse even more objects!
2014-10-29 14:23:51 +01:00
350cee3d41
Added Event allocation pool, updated SPL with Class::onClassLoaded()
2014-10-28 10:47:40 +01:00
144a871c07
Improved Vector3 and Block handling, less allocation on Positions
2014-10-28 10:03:10 +01:00
4076fb4657
Added BlockSpreadEvent
2014-10-11 19:27:43 +02:00
f74af12914
Improved chunk ticking, enabled again. Disable it setting chunk-ticking.per-tick to 0
2014-08-26 11:52:45 +02:00
bb08da701b
Fixed header logo in PR #1944
2014-08-22 11:30:15 +02:00
e8b1b0fab6
Cleaned Mycelium.php and fixed its potential crash
...
Crash report: http://crash.pocketmine.net/view/27500
2014-08-22 11:05:47 +08:00
532b12c6c0
Mycelium spreads like grass and MonsterSpawner breaktime added
2014-08-18 20:06:18 +02:00
e91781cbf2
EndPortal, EndStone, MonsterSpawner, Mycelium and Podzol blocks added
2014-08-17 02:00:17 +02:00