Bukkit/Bukkit — pull request #1032 by AlphaBlend (2014-02-16 05:00:45+00:00)
Title: [B] Add API for snow layer blocks. Addresses BUKKIT-5421

Currently there is no way to get/set the various heights of a snow layer
block. This commit allows plugin authors to get and set the height of
snow layer blocks.

### The Issue:

Presently, there is no API for manipulating height for snow layer blocks. This PR adds relevant API for controlling/viewing the height of a snow layer block.

### Justification for this PR:

It would be nice if bukkit plugin developers had access to the ability to manipulate snow layer block height. Such use could have interesting effects when creating a custom generator involving snow layer blocks at differing heights.

### PR breakdown:

This PR adds a material data class designed for snow layer blocks along with an enum for describing snow layer height. These are used for modifying snow height by data value manipulation.

### Testing results and materials:

I tested this out by creating a plugin that grabs a block's MaterialData, check if it is an instance of snow layer, then casts to that if so. I accept input on a data value from 0-6 indicating the data value for the snow layer height. /snow [height data value] is the only command implemented. Using /snow without arguments shows the height of the snow layer, and providing input as /snow 0-6 sets the height of the snow layer block. If the value is not a number, or is outside the range of the available snow layer data values, an error is given.

Source: http://pastebin.com/5C07QVSp
Binary: https://dl.dropboxusercontent.com/u/13099063/TestPlugin.jar

### JIRA ticket

https://bukkit.atlassian.net/browse/BUKKIT-5421