That was done using a custom shader I wrote myself! It basically uses a normal map to do lighting calculations as if the sprite was a 3D object.