package Ġcom . p unto gr is . neon ma ze . ui Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . databinding . Data Binding Util Ċ import Ġandroidx . fragment . app . activity ViewModels Ċ import Ġandroidx . lifecycle . Observer Ċ import Ġandroidx . navigation . fragment . find Nav Controller Ċ import Ġcom . p unto gr is . neon ma ze . R Ċ import Ġcom . p unto gr is . neon ma ze . databinding . Fragment Welcome Binding Ċ Ċ class ĠWelcome Fragment Ġ: ĠFragment () Ġ{ ĊĠĠĠ Ġprivate Ġval ĠviewModel : ĠGame ViewModel Ġby Ġactivity ViewModels () ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġbinding : ĠFragment Welcome Binding ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( ĊĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , Ġcontainer : ĠViewGroup ?, ĊĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ? ĊĠĠĠ Ġ): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġbinding Ġ= ĠData Binding Util . inflate ( in flater , ĠR . layout . fragment _ welcome , Ġcontainer , Ġfalse ) ĊĊĠĠĠĠĠĠĠ Ġbinding . welcome Fragment Ġ= Ġthis ĊĊĠĠĠĠĠĠĠ Ġreturn Ġbinding . root ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġnavigate To M aze Fragment (){ ĊĠĠĠĠĠĠĠ Ġfind Nav Controller (). navigate ( R . id . action _ welcome Fragment _ to _ ma ze Fragment ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġfetch M aze Information From Database (){ ĊĠĠĠĠĠĠĠ ĠviewModel . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcreate Player () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġget M aze Seed (). observe ( view Lifecycle Owner , ĠObserver Ġ{ Ġseed Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġupdate M aze Seed ( seed ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnavigate To M aze Fragment () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġbinding . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġloading Group . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbutton . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ }