Я пытался заставить своего персонажа стрелять снарядом в определенный кадр анимации.Тем не менее, иногда это работает, а иногда просто игнорирует создание снаряда.
Я пытался использовать сигналы тревоги вместо проверки индекса изображения, но я не могу установить таймер на достаточно низкое значение, чтобы получить идеальное время.
Я думаю, что это может быть проблема со скоростью изображения 0.2 вместо 1.
Я использую конечный автомат, чтобы переключать его между перемещением и съемкой, но я проверил и этоне проблема с переключением состояния, так как оно меняется, когда я этого хочу.
Вот соответствующий код из состояния стрельбы:
if image_index == 2 {
instance_create(x+20*image_xscale,y,obj_projectile);
}
Вот код, который меняет танкпереходит в состояние съемки из основного состояния:
if key_shoot{
state = states.shoot;
image_speed = 0.2;
sprite_index = spr_tankShoot;
}
В объекте также есть событие завершения анимации со следующим кодом:
if sprite_index == spr_tankShoot{
state = states.normal;
}
Если кто-то может увидеть что-то не так скод и / или знать, что может быть не так с этим, это будет высоко ценится.