Como puedo hacer que en la tienda del juego cuando compre algo se resten las monedas que cuesta la mejora y si la mejora es un cambio de color en el personaje como puedo  hacer que al comprar esta mejora el personaje cambie de sprite y se mantenga
Think Different

Es decir, ¿cómo se hace una resta?  ???

if(dinero>=precio){dinero-=precio (acción)}
Y para el cambio de colores, pues si te soy sincero el Game Maker no ofrece mucho en materia de funciones que alteren la coloración de un sprite. Prueba a utilizar la variable "image_blend".