package Ġcom . gather ing hall stud ios . m hw or l dd atabase Ċ Ċ import Ġandroidx . navigation . Nav Controller Ċ import Ġcom . gather ing hall stud ios . m hw or l dd atabase . data . types . DataType Ċ import Ġcom . gather ing hall stud ios . m hw or l dd atabase . data . types . Weapon Type Ċ import Ġcom . gather ing hall stud ios . m hw or l dd atabase . features . armor . detail . Armor Detail Fragment Ċ import Ġcom . gather ing hall stud ios . m hw or l dd atabase . features . armor . detail . Armor Detail Pager Fragment Ċ import Ġcom . gather ing hall stud ios . m hw or l dd atabase . features . char ms . detail . Char m Detail Fragment Ċ import Ġcom . gather ing hall stud ios . m hw or l dd atabase . features . decor ations . detail . Decoration Detail Fragment Ċ import Ġcom . gather ing hall stud ios . m hw or l dd atabase . features . items . detail . Item Detail Pager Fragment Ċ import Ġcom . gather ing hall stud ios . m hw or l dd atabase . features . locations . detail . Location Summary Fragment Ċ import Ġcom . gather ing hall stud ios . m hw or l dd atabase . features . mon sters . detail . Monster Detail Pager Fragment Ċ import Ġcom . gather ing hall stud ios . m hw or l dd atabase . features . skills . detail . Skill Detail Fragment Ċ import Ġcom . gather ing hall stud ios . m hw or l dd atabase . features . we apons . detail . Weapon Detail Pager Fragment Ċ import Ġcom . gather ing hall stud ios . m hw or l dd atabase . features . we apons . list . Weapon Tree List Fragment . Companion . ARG _ WE AP ON _ TREE _ TYPE Ċ import Ġcom . gather ing hall stud ios . m hw or l dd atabase . util . Bundle Builder Ċ Ċ /** Ċ Ġ* ĠDefines Ġa Ġclass Ġthat Ġcan Ġbe Ġused Ġto Ġperform Ġnavigation . Ċ Ġ* ĠDo Ġnot Ġstore Ġthis Ġin Ġan Ġinstance Ġvariable . ĠRequest Ġa Ġnew Ġrouter Ġevery Ġtime Ċ Ġ* Ġyou Ġneed Ġto Ġnavigate . Ċ Ġ*/ Ċ class ĠRouter ( private Ġval Ġnav Controller : ĠNav Controller ) Ġ{ ĊĠĠĠ Ġfun Ġnavigate Object ( type : ĠDataType , Ġid : ĠInt ) Ġ= Ġwhen ( type ) Ġ{ ĊĠĠĠĠĠĠĠ ĠDataType . ITEM Ġ-> Ġnavigate Item Detail ( id ) ĊĠĠĠĠĠĠĠ ĠDataType . LOCATION Ġ-> Ġnavigate Location Detail ( id ) ĊĠĠĠĠĠĠĠ ĠDataType . MON STER Ġ-> Ġnavigate Monster Detail ( id ) ĊĠĠĠĠĠĠĠ ĠDataType . SK ILL Ġ-> Ġnavigate Skill Detail ( id ) ĊĠĠĠĠĠĠĠ ĠDataType . ARM OR Ġ-> Ġnavigate Armor Detail ( id ) ĊĠĠĠĠĠĠĠ ĠDataType . CHAR M Ġ-> Ġnavigate Char m Detail ( id ) ĊĠĠĠĠĠĠĠ ĠDataType . DE COR ATION Ġ-> Ġnavigate Decoration Detail ( id ) ĊĠĠĠĠĠĠĠ ĠDataType . WE AP ON Ġ-> Ġnavigate Weapon Detail ( id ) ĊĠĠĠĠĠĠĠ Ġelse Ġ-> ĠUnit ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġnavigate Item Detail ( itemId : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġnav Controller . navigate ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . open Item Detail Action , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBundle Builder (). put Int ( Item Detail Pager Fragment . ARG _ ITEM _ ID , ĠitemId ). build ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġnavigate Location Detail ( location Id : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġnav Controller . navigate ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . open Location Detail Action , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBundle Builder (). put Int ( Location Summary Fragment . ARG _ LOCATION _ ID , Ġlocation Id ). build ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġnavigate Monster Detail ( monster Id : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġnav Controller . navigate ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . open Monster Detail Action , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBundle Builder (). put Int ( Monster Detail Pager Fragment . ARG _ MON STER _ ID , Ġmonster Id ). build ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġnavigate Skill Detail ( skill Tree Id : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġnav Controller . navigate ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . open Skill Detail Action , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBundle Builder (). put Int ( Skill Detail Fragment . ARG _ SK IL LT REE _ ID , Ġskill Tree Id ). build ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġnavigate Decoration Detail ( decoration Id : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġnav Controller . navigate ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . open Decoration Detail Action , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBundle Builder (). put Int ( Decoration Detail Fragment . ARG _ DE COR ATION _ ID , Ġdecoration Id ). build ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġnavigate Armor Detail ( armor Id : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġnav Controller . navigate ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . open Armor Detail Action , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBundle Builder (). put Int ( Armor Detail Pager Fragment . ARG _ ARM OR _ ID , Ġarm or Id ). build () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġnavigate Char m Detail ( charm Id : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġnav Controller . navigate ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . open Char m Detail Action , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBundle Builder (). put Int ( Char m Detail Fragment . ARG _ CHAR M _ ID , Ġchar m Id ). build () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġnavigate Weapon Tree ( weapon Type : ĠWeapon Type ) Ġ{ ĊĠĠĠĠĠĠĠ Ġnav Controller . navigate ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . open Weapon Tree Action , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBundle Builder (). put Serializable ( ARG _ WE AP ON _ TREE _ TYPE , Ġweapon Type ). build () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġnavigate Weapon Detail ( weapon Id : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġnav Controller . navigate ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . open Weapon Detail Action , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBundle Builder (). put Int ( Weapon Detail Pager Fragment . ARG _ WE AP ON _ ID , Ġweapon Id ). build () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ }