work in progress... (TNT ignition is not workded, and some bugs exists)