Updated spell with coroutines