package Ġcom . mat he ws achin . lib autom ata Ċ Ċ import Ġcom . mat he ws achin . lib autom ata . d agger . Script Scope Ċ import Ġjavax . inject . Inject Ċ Ċ /** Ċ Ġ* ĠThis Ġclass Ġis Ġused Ġfor Ġstoring Ġthe Ġscript Ġand Ġimage Ġdimensions Ġand Ġfor Ġstoring Ġthe Ġplay able Ġarea Ċ Ġ* Ġin Ġ[ game Area ]. Ċ Ġ*/ Ċ @ Script Scope Ċ class ĠGame Area Manager Ġ@ Inject Ġconstructor ( val Ġplatform Impl : ĠI Platform Impl ) Ġ{ ĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠStores Ġeither Ġthe Ġwidth Ġor Ġheight Ġof Ġthe Ġscript Ġdimensions . ĠNorm ally , Ġthis Ġis Ġ 1 4 4 0 p . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġvar Ġscript Dimension : ĠCompare By Ġ= ĠCompare By . None ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠStores Ġeither Ġthe Ġwidth Ġor Ġheight Ġof Ġthe Ġimage Ġdimensions . ĠNorm ally , Ġthis Ġis Ġ 7 2 0 p . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġvar Ġcompare Dimension : ĠCompare By Ġ= ĠCompare By . None ĊĊĠĠĠ Ġprivate Ġvar Ġ_ game Area : ĠRegion ? Ġ= Ġnull ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠStores Ġthe Ġplay able Ġarea Ġas Ġa Ġ[ Region ] Ġin Ġimage Ġcoordinates , Ġwhich Ġis Ġnormally Ġ 7 2 0 p . ĊĠĠĠĠ Ġ* ĠNot ches Ġand Ġthe Ġblue Ġbars Ġare Ġexcluded Ġfrom Ġthis Ġarea Ġby Ġintro ducing ĠX Ġand ĠY Ġoffsets . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġvar Ġgame Area : ĠRegion ĊĠĠĠĠĠĠĠ Ġget () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġstore Ġthe ĠWindow Region Ġso Ġwe Ġdon 't Ġcalculate Ġit Ġtwice ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġwindow Region Ġ= Ġplatform Impl . window Region ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġ_ game Area ?. plus ( window Region . location ) Ġ?: Ġwindow Region ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġset ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ_ game Area Ġ= Ġvalue ĊĠĠĠĠĠĠĠ Ġ} Ċ }