That's generated from the wood texture only. All I do is print out the 4 to a texture (using freetype), then copy it to another texture, blur it, invert the colour and offset it to create the drop shadow. Finally just put it all together.
As a shortcut I have the 4 saved as a file, so the code is as follows:
TextureData data, data2, data3;
data2.Translate(Vectori(8, 8), Vectorf(0.0f, 0.0f, 0.0f, 0.0f), false);
// data = white 4, data 2 = shadow
data.Blend(A_ALPHA, A_INVALPHA, data2);
data.Blend(ONE, A_INVALPHA, data3);
I also have a perlin noise generator in there for use.
The next plan is to reimplement my scripting language which will then pave the way for console support, as well as a scripted particle system. After that, who knows. I'd like to play around with some shadowing techniques, or maybe some more advanced lighting with normal mapping etc, but I might make sure my engine works just as well for 2D rendering and non-graphical programs.