pushing some code to access player state, i'll finish this tomorrow after sleep