package Ġju ux el . ad orn . compat . extr api eces . piece Ċ Ċ import Ġcom . sh n up b ups . extr api eces . Extra Pieces Ċ import Ġcom . sh n up b ups . extr api eces . blocks . Piece Block Ċ import Ġcom . sh n up b ups . extr api eces . core . Piece Set Ċ import Ġcom . sh n up b ups . extr api eces . core . Piece Types Ċ import Ġcom . sh n up b ups . extr api eces . recipe . Sh aped Piece Recipe Ċ import Ġcom . s word glow s blue . art if ice . api . Art if ice Resource Pack Ċ import Ġju ux el . ad orn . Ad orn Ċ import Ġju ux el . ad orn . compat . extr api eces . Ad orn Pieces Ċ import Ġju ux el . ad orn . compat . extr api eces . Ad orn Pieces Client Ċ import Ġju ux el . ad orn . compat . extr api eces . block . Ch air Piece Block Ċ import Ġju ux el . ad orn . compat . extr api eces . get Registry Id Ċ import Ġju ux el . ad orn . compat . extr api eces . item . Ch air Piece Block Item Ċ import Ġju ux el . ad orn . lib . Ad orn Tags Ċ import Ġnet . minecraft . block . enums . Double Block Half Ċ import Ġnet . minecraft . item . Item Ċ import Ġnet . minecraft . item . Items Ċ import Ġnet . minecraft . util . math . Direction Ċ Ċ object ĠCh air Piece Ġ: ĠAd orn Piece ( Ad orn . id (" ch air ")) Ġ{ ĊĠĠĠ Ġprivate Ġval ĠUPPER _ MODEL _ PARENT Ġ= ĠAd orn . id (" block / templates / ch air _ upper ") ĊĠĠĠ Ġprivate Ġval ĠLOWER _ MODEL _ PARENT Ġ= ĠAd orn . id (" block / templates / ch air _ lower ") ĊĠĠĠ Ġprivate Ġval ĠITEM _ MODEL _ PARENT Ġ= ĠAd orn . id (" item / templates / ch air ") ĊĊĠĠĠ Ġoverride Ġfun Ġget New ( set : ĠPiece Set ) Ġ= ĠCh air Piece Block ( set ) ĊĊĠĠĠ Ġoverride Ġfun Ġadd Block state ( pack : ĠArt if ice Resource Pack . Client Resource Pack Builder , Ġpb : ĠPiece Block ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġid Ġ= Ġpb . get Registry Id () ĊĠĠĠĠĠĠĠ Ġfun Ġget Y Rotation ( facing : ĠDirection ): ĠInt Ġ= Ġwhen Ġ( facing ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠDirection . EAST Ġ-> Ġ 0 ĊĠĠĠĠĠĠĠĠĠĠĠ ĠDirection . SO UTH Ġ-> Ġ 9 0 ĊĠĠĠĠĠĠĠĠĠĠĠ ĠDirection . WEST Ġ-> Ġ 1 8 0 ĊĠĠĠĠĠĠĠĠĠĠĠ ĠDirection . NORTH Ġ-> Ġ 2 7 0 ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ 0 ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġpack . add BlockState ( id ) Ġ{ Ġstate Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( half Ġin ĠDouble Block Half . values ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( facing Ġin ĠAd orn Pieces . HORIZONTAL _ DIRECTION S ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstate . multipart Case Ġ{ Ġcase Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcase .` when ` (" half ", Ġhalf . asString ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcase .` when ` (" facing ", Ġfacing . asString ()) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcase . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . model ( Extra Pieces . prepend To Path ( Extra Pieces . appendTo Path ( id , Ġ"_" Ġ+ Ġhalf . asString ()), Ġ" block / ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . rotation Y ( getY Rotation ( facing )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠAd orn Pieces Client . add Car pe ts ( state , Ġpb . set ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġadd Block Models ( pack : ĠArt if ice Resource Pack . Client Resource Pack Builder , Ġpb : ĠPiece Block ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġid Ġ= Ġpb . get Registry Id () ĊĠĠĠĠĠĠĠ Ġpack . add Block Model ( Extra Pieces . appendTo Path ( id , Ġ"_ upper ")) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . parent ( UPPER _ MODEL _ PARENT ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . texture (" pl anks ", Ġpb . set . main Texture ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġpack . add Block Model ( Extra Pieces . appendTo Path ( id , Ġ"_ lower ")) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . parent ( LOWER _ MODEL _ PARENT ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . texture (" pl anks ", Ġpb . set . main Texture ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġadd Item Model ( pack : ĠArt if ice Resource Pack . Client Resource Pack Builder , Ġpb : ĠPiece Block ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġid Ġ= Ġpb . get Registry Id () ĊĠĠĠĠĠĠĠ Ġpack . addItem Model ( id ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . parent ( ITEM _ MODEL _ PARENT ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . texture (" pl anks ", Ġpb . set . main Texture ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Recipes () Ġ= Ġarray ListOf ( ĊĠĠĠĠĠĠĠ ĠSh aped Piece Recipe ( this , Ġ 2 , Ġ" ĠS ", Ġ" SS ", Ġ" ## ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. addTo Key (' S ', ĠPiece Types . SL AB ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. addTo Key ('# ', ĠItems . STICK ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. addTo Key ('# ', ĠAd orn Tags . ST ONE _ RO D ) ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġoverride Ġfun Ġget Block Item ( pb : ĠPiece Block ) Ġ= ĠCh air Piece Block Item ( pb , ĠItem . Settings ()) Ċ } Ċ