add before play once method