When the explosion hits the floor it could create a few "items" using blank.dts and a fire emitter, and when picked up starts to do the damage.
Alternately you could swap the fireArrowProjectile::onCollision for fireArrowProjectile::radiusDamage(%this, %obj, %col, %distanceFactor, %pos, %damageAmt), for area damage as soon as it hits.
Finally, the collision could set up a scheduled radius check, like the door creator except temporary, and then do damage every 100 - 200ms.