Хм ... выглядит так, как должно быть:
if(ironbird==true) {
[...]
ironbird = false;
}
Или, по крайней мере, упомянутая вами функция Updatescreen должна установить ironbird
обратно на false
после одного тика / итерации.
РЕДАКТИРОВАТЬ: Глядя на код, который вы отправили в качестве ответа, это еще проще:
Вы делаете
if(birdie.hitTestPoint(ironbirdpickup.x,ironbirdpickup.y,true)){
ironbird = true;
ironbirdpickup = Null;
}
if(ironbird==true){
laatstejump = 9;
myChannel.stop();
IronManChannel = IronManMusic.play();
}
и используйте переменную ironbird
для анимации и других вещей. Перемещение звукового триггера должно запускать звук только один раз (или так часто, как срабатывает hitTestPoint).
if(birdie.hitTestPoint(ironbirdpickup.x,ironbirdpickup.y,true)){
ironbird = true;
ironbirdpickup = Null;
myChannel.stop();
IronManChannel = IronManMusic.play();
}
if(ironbird==true){
laatstejump = 9;
}
Вы все равно должны сбросить ironbird
на false
где-нибудь, например когда анимация закончена.