Fully working
All but sprites work done