Ok so I have got a BlockPhysicsEvent, Which determines whether the block is a piston, and if so, get the direction its facing. From my understanding the getData() function returns data which can be read to determine the direction the piston is facing. However I am having trouble in reading the data and understanding its meaning. How does it work? Also the reason i dont use BlockPistonExtendEvent is because I want the event to fire even if the block cannot be pushed.