package Ġhome work 8 . model Ċ Ċ import Ġhome work 8 . bots . hard . Bot Hard Ċ import Ġhome work 8 . bots . simple . Bot Simple Ċ import Ġhome work 8 . controller . Game Mode Ċ import Ġhome work 8 . controller . Turn Author Ċ import Ġhome work 8 . controller . Turn Place Ċ import Ġjavafx . scene . control . Button Ċ Ċ class ĠPlay With Bot Model ( game Size : ĠInt , Ġgame Mode : ĠGame Mode ) Ġ: ĠModel ( game Size ) Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġbot Ġ= Ġwhen Ġ( game Mode ) Ġ{ ĊĠĠĠĠĠĠĠ ĠGame Mode . PLAYER _ VS _ COMP UT ER _ E ASY Ġ-> ĠBot Simple () ĊĠĠĠĠĠĠĠ ĠGame Mode . PLAYER _ VS _ COMP UT ER _ HARD Ġ-> ĠBot Hard () ĊĠĠĠĠĠĠĠ Ġelse Ġ-> Ġthrow ĠIllegalArgumentException (" Game Ġmode Ġmust Ġbe Ġgame Ġwith Ġbot ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġmove ( turn Place : ĠTurn Place , Ġgame Field : ĠList < List < Button >>, Ġturn Author : ĠTurn Author ): ĠMove Result Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġturn Result Ġ= Ġmake Turn ( turn Place , Ġgame Field ) ĊĠĠĠĠĠĠĠ Ġif Ġ( turn Result . is Game Over ) Ġreturn Ġturn Result ĊĊĠĠĠĠĠĠĠ Ġturn Result Ġ= Ġmake Turn ( bot . make Turn ( getCurrent State ()), Ġgame Field ) ĊĠĠĠĠĠĠĠ Ġreturn Ġturn Result ĊĠĠĠ Ġ} Ċ } Ċ