А я не могу понять зачем тебе это делать в событии клавиатуры или шага, когда всё работает в событии нажатия. Сейчас написать не могу, т.к. не помню правильность синтаксиса функций keyboard_press или как там они.... их несколько они по разному работают.
А если я напишу словами (русскими) думаю не осилешь.
Ну вроде такого должно быть
if keyboard_check(vk_space)=1 && nagal2=0
{nagal2=1;
===твой код, который выполнится 1 раз===
}
if keyboard_check(vk_space)=0 {nagal2=0}
В качестве примера взята клавиша "ПРОБЕЛ"