refactor
basic gameMechanics