45 Commits

Author SHA1 Message Date
Drew DeVault
a361703746 Implement walking sounds
These sounds change depending on what kind of block you're walking in.

Still to come: sound effects for mining and placing blocks
2015-10-05 22:06:59 -04:00
Drew DeVault
cc1eccae02 Fix issues with metadata from mined wood and wool 2015-10-03 09:51:52 -04:00
Drew DeVault
8367f97451 Fix more snow issues
<_<
2015-10-02 08:29:30 -04:00
Drew DeVault
ed85da313f Fix remaining issues with snowfall blocks
Fixes #194
2015-10-02 08:22:58 -04:00
Drew DeVault
14aa3ce07a Add "InteractiveBoundingBox" to IBlockProvider
This is used to determine the bounding box for interaction in the client
(the ray that's cast from your camera interacts with it to determine the
highlighted block).

TODO: Make it work better with metadata.

This commit also fixes one of the issues with snow: ref #194
2015-10-02 08:15:29 -04:00
Drew DeVault
8a0ad17b00 Add icon texture mappings for all items 2015-09-30 18:29:07 -04:00
Drew DeVault
6969964b18 Implement FIRE 2015-09-07 19:14:12 -04:00
Drew DeVault
f7bd7a109d Optimize event scheduling when loading chunks 2015-07-07 00:49:54 -06:00
Drew DeVault
d27882cdec Add grass growth 2015-07-06 21:07:40 -06:00
Drew DeVault
940b2217c1 Add mechanism for scheduling updates on chunk load 2015-07-06 20:41:25 -06:00
Drew DeVault
312c2edf3d Merge pull request #184 from Dizigma/master
Stopped players from placing blocks on their heads
2015-07-06 20:18:15 -06:00
Dizigma
6a8cd691a6 Increased range for entities to solve this, instead of checking the client bounding box 2015-07-06 19:57:08 -06:00
Drew DeVault
ed7a14b871 Rewrite physics engine
This time it sucks slightly less
2015-07-06 19:30:51 -06:00
Dizigma
5c1512d527 Stopped players from placing blocks on their heads 2015-07-06 18:31:13 -06:00
Drew DeVault
bbc405f902 Prevent blocks from being placed inside entities
Fixes #78
2015-07-01 15:59:23 -06:00
Drew DeVault
fa8c4a6877 Enforce digging time and damage items when used
Closes #11

Partially addresses #12
2015-07-01 15:22:27 -06:00
Drew DeVault
994de4de70 Refactor light propegation RE: dextar0's comments 2015-07-01 11:26:43 -06:00
Drew DeVault
edf7205050 Fix propegation of light through leaves/etc 2015-06-26 19:22:07 -06:00
Drew DeVault
61310e6bbb Improve tool effectiveness subsystem 2015-06-26 17:56:07 -06:00
Drew DeVault
9d1f5377ef Drop different items based on tool used to mine
For example, mining stone with your hand now drops nothing, and mining
leaves with shears will drop the leaves.
2015-06-26 17:15:51 -06:00
Drew DeVault
b2ae41b87c Initial implementation of lighting 2015-06-26 16:27:13 -06:00
Drew DeVault
e3aee2f991 Partially implement chests 2015-06-22 11:34:29 -04:00
Drew DeVault
742c92b782 Add snowfall rendering 2015-05-15 15:12:36 -06:00
Drew DeVault
805320ce8f Implement caves
This:

- Implements caves with 3D noise
- Moves periodic chunk updates to the thread pool
- Fixes a handful of small bugs
2015-05-03 19:49:43 -06:00
Drew DeVault
e5207c6dec Add support for signs 2015-05-03 16:02:47 -06:00
Drew DeVault
6575444768 Fix torch placement and prevent overwriting blocks
Fixes #50
2015-05-03 15:12:10 -06:00
Drew DeVault
4012432a0e Implement door blocks 2015-02-11 22:06:59 -07:00
Drew DeVault
4dd99e4e93 Refactor the water block provider
This makes the fluid dynamics model much easier to understand and
maintain.
2015-02-10 21:21:24 -07:00
Drew DeVault
d8c2d4c4ce Allow water to destroy blocks with no hardness 2015-02-09 23:01:41 -07:00
Drew DeVault
ae41e163ce Finish implementing reed growth 2015-02-09 17:10:44 -07:00
Drew DeVault
a64c943997 Implement wheat farming
This includes farmland behavior as well as the growth of wheat crops
2015-02-08 17:21:35 -07:00
Drew DeVault
e637b009a1 Implement sugarcane logic 2015-02-08 16:37:38 -07:00
Drew DeVault
07d6a6a1ca Implement torch placement 2015-02-08 16:20:27 -07:00
Drew DeVault
e5a1ee3439 Implement crafting from the inventory window
This does not include all recipes in the game, and there is no support
for crafting benches yet.
2015-02-07 15:51:38 -07:00
Drew DeVault
775adf685a Significant improvements to entity physics
No more jitter! Collisions actually work all the time!
2015-02-02 01:24:43 -07:00
Drew DeVault
079f8b9188 Flesh out EntityManager to sync entities w/clients
This makes sure that you get new entities as you move to chunks that
have them, and that entities are despawned as you move further away from
them.
2015-02-01 21:43:25 -07:00
Drew DeVault
eda5dd2f82 Implement bed placement and supported blocks 2015-02-01 18:53:10 -07:00
Drew DeVault
e3051a673c Implement special cases for block drops
This does not include things that require certain tools, such as
cobblestone.
2015-02-01 14:30:02 -07:00
Drew DeVault
8feefbbbbf Implement entity physics and item drops 2015-02-01 10:38:55 -07:00
Drew DeVault
c0585fc714 Implement mining via block providers 2015-01-26 17:05:26 -07:00
Daniel Vidmar
90923522bc Added items 2015-01-26 16:25:11 -07:00
Daniel Vidmar
351ab96f99 Block modifications.
Added two new properties.
- Opaque: Whether or not the block is opaque
- LightModifier: The amount removed from the light level as it passes
through the block(for transparent blocks).

Merged all rail block classes into RailBlock.cs and made them extend
RailBlock
2015-01-26 00:14:58 -05:00
Daniel Vidmar
eb1329e3f9 Added new block properties. 2015-01-22 00:49:50 -05:00
Drew DeVault
f230ab3345 Generate classes for all blocks 2014-12-28 18:55:46 -07:00
Drew DeVault
2b7d721326 Add block provider interfaces 2014-12-28 15:38:58 -07:00