A user acquisition of a spin is a time sensitive operation, done within a specific time duration. If the transfer to the treasury does fail, this should not result in the transaction failing as the treasury transfer is not critical to game functionality.
Instead of reverting if the treasury transfer fails, emit an event with the treasury amount that was failed to be send and have it be withdrawn via the emergencyWithdraw
at a later time by the protocol admin.
Blast the balloon SC Audit