package Ġnet . nd rei . tes lap ower ed thing ies . machines . tree farm Ċ Ċ import Ġnet . minecraft . block . state . I BlockState Ċ import Ġnet . minecraft . item . Item Block Ċ import Ġnet . minecraft . item . ItemStack Ċ import Ġnet . minecraft . util . Resource Location Ċ import Ġnet . minecraft . util . math . Block Pos Ċ import Ġnet . minecraft . world . World Ċ import Ġnet . nd rei . tes lac ore lib . utils . equals Ignore Size Ċ import Ġnet . nd rei . tes lap ower ed thing ies . common . Base Tes la Registry Entry Ċ Ċ class ĠTree Farm Mod Recipe ( name : ĠResource Location , Ġval Ġrecipe Type : ĠRecipe Type , Ġvar arg Ġval Ġfilters : ĠItemStack ) ĊĠĠĠ Ġ: ĠBase Tes la Registry Entry < Tree Farm Mod Recipe >( Tree Farm Mod Recipe :: class . java , Ġname ), ĠI Tree Factory Ġ{ ĊĊĠĠĠ Ġenum Ġclass ĠRecipe Type Ġ{ ĊĠĠĠĠĠĠĠ ĠLOG , ĠLE AF , ĠSAP LING ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Har vest able Log ( world : ĠWorld , Ġpos : ĠBlockPos , Ġblock : ĠI BlockState ) Ġ= ĊĠĠĠĠĠĠĠ Ġwhen Ġ( this . recipe Type ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠRecipe Type . LOG Ġ-> Ġif Ġ( this . is Match ( block )) ĠVan illa Tree Log ( world , Ġpos ) Ġelse Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġnull ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Har vest able Leaf ( world : ĠWorld , Ġpos : ĠBlockPos , Ġblock : ĠI BlockState ) Ġ= ĊĠĠĠĠĠĠĠ Ġwhen Ġ( this . recipe Type ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠRecipe Type . LEAF Ġ-> Ġif Ġ( this . is Match ( block )) ĠVan illa Tree Leaf ( world , Ġpos ) Ġelse Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġnull ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Plant able S ap ling ( stack : ĠItemStack )= ĊĠĠĠĠĠĠĠ Ġwhen Ġ( this . recipe Type ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠRecipe Type . SAP LING Ġ-> Ġif Ġ( this . is Match ( stack )) ĠVan illa S ap ling ( stack ) Ġelse Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġnull ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġis Match ( block : ĠI BlockState ) Ġ= ĊĠĠĠĠĠĠĠ Ġthis . filters ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. filter Ġ{ Ġit . item Ġis ĠItem Block Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. any Ġ{ Ġ( it . item Ġas ? ĠItem Block )?. block Ġ=== Ġblock . block Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġis Match ( stack : ĠItemStack ) Ġ= ĊĠĠĠĠĠĠĠ Ġthis . filters ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. any Ġ{ Ġstack . equals Ignore Size ( it ) Ġ&& Ġ( stack . count Ġ>= Ġit . count ) Ġ} Ċ } Ċ