Я думаю, что вы делаете незапланированный таймер, а затем просто выбрасываете его. Вы, вероятно, имели в виду что-то вроде Timer.scheduledTimer (...)
В любом случае, для SpriteKit, вероятно, лучше работать в рамках SKAction, иначе вы в конечном итоге столкнетесь с проблемами, когда, например, выприостановил вашу игру, и ваши таймеры все еще работают, потому что они не координируются со SpriteKit.
Посмотрите на инициализаторы SKAction, в частности sequence (), wait (forDuration :), run ()
https://developer.apple.com/documentation/spritekit/skaction/action_initializers