package Ġju ux el . ad orn . json . drawer Ċ Ċ import Ġio . github . cot ton mc . json factory . data . BlockState Property Ċ import Ġio . github . cot ton mc . json factory . data . Identifier Ċ import Ġio . github . cot ton mc . json factory . gens . Abstract Content Generator Ċ import Ġio . github . cot ton mc . json factory . output . model . Variant BlockState Ċ import Ġio . github . cot ton mc . json factory . output . s uff ixed Ċ import Ġju ux el . ad orn . json . Ad orn Plugin Ċ Ċ object ĠDraw er BlockState Ġ: ĠAbstract Content Generator (" drawer . block _ state ", Ġ" block states ", ĠAd orn Plugin . DRAW ER ) Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġgenerate ( id : ĠIdentifier ) Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠ ĠVariant BlockState . create ( id , Ġset Of ( BlockState Property . horizontal Facing )) Ġ{ Ġvalues , Ġvariant Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvariant . copy ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodel Ġ= Ġvariant . model . suffix Path ("_ drawer "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġy Ġ= Ġget Y Rotation ( values [" facing "] Ġ?: Ġ"") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ}. s uff ixed (" drawer ") ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġprivate Ġfun Ġget Y Rotation ( facing : ĠString ): ĠInt Ġ= Ġwhen Ġ( facing ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ" east " Ġ-> Ġ 0 ĊĠĠĠĠĠĠĠ Ġ" south " Ġ-> Ġ 9 0 ĊĠĠĠĠĠĠĠ Ġ" west " Ġ-> Ġ 1 8 0 ĊĠĠĠĠĠĠĠ Ġ" north " Ġ-> Ġ 2 7 0 ĊĊĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ 0 ĊĠĠĠ Ġ} Ċ } Ċ