package Ġio . github . nick ac pt . replay server . inventory Ċ Ċ import Ġcom . github . ste ve ice 1 0 . mc . protocol . data . game . entity . metadata . ItemStack Ċ import Ġcom . github . ste ve ice 1 0 . open nbt . tag . builtin . Compound Tag Ċ import Ġcom . github . ste ve ice 1 0 . open nbt . tag . builtin . List Tag Ċ import Ġcom . github . ste ve ice 1 0 . open nbt . tag . builtin . String Tag Ċ import Ġio . github . nick ac pt . replay server . serialize Ċ import Ġio . github . nick ac pt . replay server . to Component Ċ import Ġio . github . nick ac pt . replay server . to Message Ċ import Ġnet . ky ori . text . Component Ċ import Ġnet . ky ori . text . Text Component Ċ Ċ class ĠComplex ItemStack ( material : ĠMaterial , Ġvar Ġitem Amount : ĠInt Ġ= Ġ 1 ) Ġ: ĠItemStack ( material . id , Ġitem Amount ) Ġ{ ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġprepare N bt Tags () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġvar Ġname : ĠComponent ? Ġ= Ġnull ĊĊĠĠĠ Ġfun Ġensure N bt Tags Are Set () Ġ{ ĊĠĠĠĠĠĠĠ Ġapply DisplayName Component () ĊĠĠĠĠĠĠĠ Ġapply Display L ore Component () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġapply DisplayName Component () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( name Ġ!= Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġn bt . get < Compound Tag >( Display Tag ). put ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠString Tag ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠName Tag , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠText Component . of (" Â§ r "). append ( name !! ). serialize () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġelse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġn bt . get < Compound Tag >( Display Tag ). remove ( Name Tag ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġapply Display L ore Component () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( lo re . isNotEmpty ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġn bt . get < Compound Tag >( Display Tag ). put ( List Tag ( L ore Tag , Ġlo re . map Ġ{ ĠString Tag ("", ĠText Component . of (" Â§ r "). append ( it ). serialize ()) Ġ}. toList ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġelse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġn bt . get < Compound Tag >( Display Tag ). remove ( L ore Tag ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġvar Ġlo re : ĠMutable List < Component > Ġ= Ġmutable ListOf () ĊĊĠĠĠ Ġprivate Ġfun Ġprepare N bt Tags () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ(! nbt . contains ( Display Tag )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġn bt . put ( Compound Tag ( Display Tag )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }