package Ġnet . cy dh ra . tech n ocracy . foundation . content . tile entities . components Ċ Ċ import Ġnet . cy dh ra . tech n ocracy . foundation . api . ecs . ComponentType Ċ import Ġnet . cy dh ra . tech n ocracy . foundation . api . ecs . tile entities . Abstract TileEntity Component Ċ import Ġnet . cy dh ra . tech n ocracy . foundation . content . items . facade Item Ċ import Ġnet . minecraft . item . ItemStack Ċ import Ġnet . minecraft . nbt . NBT Tag Compound Ċ import Ġnet . minecraft . util . Enum Facing Ċ Ċ class ĠTile Entity Facade Component Ġ: ĠAbstract TileEntity Component () Ġ{ ĊĠĠĠ Ġvar Ġfac ades Ġ= Ġmutable Map Of < Enum Facing , ĠItemStack >() ĊĊĠĠĠ Ġoverride Ġval Ġtype : ĠComponent Type Ġ= ĠComponent Type . OTHER ĊĊĠĠĠ Ġoverride Ġfun Ġserialize NBT (): ĠN BT Tag Compound Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġbase Ġ= ĠN BT Tag Compound () ĊĠĠĠĠĠĠĠ Ġfor Ġ( facing Ġin ĠEnum Facing . values ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( fac ades . containsKey ( facing )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstack Ġ= Ġfac ades [ facing ] !! ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstack N bt Ġ= Ġstack . tag Compound !! ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbase . setTag ( facing . name , Ġstack N bt ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġbase ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdeserialize NBT ( nbt : ĠN BT Tag Compound ) Ġ{ ĊĠĠĠĠĠĠĠ Ġfor Ġ( facing Ġin ĠEnum Facing . values ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( nbt . has Key ( facing . name )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstack NBT Ġ= Ġn bt . get Compound Tag ( facing . name ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstack Ġ= ĠItemStack ( facade Item , Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstack . tag Compound Ġ= Ġstack NBT ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfac ades [ facing ] Ġ= Ġstack ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }