Это очень просто. 
 В Game Maker'е есть такая фича как глобальные переменные, т.е. переменные которые можно использовать не только в одном скрипте/объекте, а во всех скриптах/объектах которые находятся в одной комнате со скриптом который объявлял её. 
 Например создай объект oPl сделай Create и напиши что-то типа: 
 Код
 
 global.money = 100; 
 //Так-же можно объявить эту переменную так: 
 globalvar money; 
 global.money = 100;    
 
 Далее создай какую-нибудь кнопку и в событии левой кнопки мыши сделай так: 
  
 Вуаля у тебя снимутся деньги. 
 Для второго случая, никакого текста в скрипте изменять не надо. 
 Есть волшебная переменная sprite_index для изменения спрайта у объекта(object_index для изменения объекта, но её изменять кажется нельзя, точно не помню). 
 Допустим при нажатии на кнопку смены оружия на пистолет: 
 Код
 
 with(oGun){ //with(oGun) - это означает что действие ниже происходит конкретно с объектом oGun 
 sprite_index = spr_deagle; 
 } 
 
 Читай справку, там всё написано. Есть даже русский перевод.