implement gameController