package Ġio . github . cam as . inv trash slot Ċ Ċ import Ġnet . minecraft . client . Minecraft Client Ċ import Ġnet . minecraft . inventory . Inventory Ċ import Ġnet . minecraft . inventory . Simple Inventory Ċ import Ġnet . minecraft . item . ItemStack Ċ import Ġnet . minecraft . nbt . N bt Compound Ċ import Ġnet . minecraft . screen . slot . Slot Ċ Ċ const Ġval ĠTAG _ KEY Ġ= Ġ" inv - trash - slot " Ċ const Ġval ĠIN VENT ORY _ TYPE Ġ= Ġ 1 0 Ċ Ċ /** Ċ Ġ* ĠMain Ġtrash Ġslot Ġlogic Ċ Ġ*/ Ċ class ĠPlayer Trash Slot Ġ{ ĊĠĠĠ Ġvar Ġinventory : ĠTr ash Slot Inventory Ġ= ĠTr ash Slot Inventory () ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠReads Ġslot Ġdata Ġfrom Ġa Ġ[ N bt Compound ] ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġread From Tag ( tag : ĠNbt Compound ) Ġ{ ĊĠĠĠĠĠĠĠ Ġinventory . read N bt List ( tag . getList ( TAG _ KEY , ĠIN VENT ORY _ TYPE )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠWrites Ġslot Ġdata Ġto Ġa Ġa Ġ[ N bt Compound ] ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun ĠwriteTo Tag ( tag : ĠNbt Compound ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtag . put ( TAG _ KEY , Ġinventory . to N bt List ()) ĊĠĠĠ Ġ} Ċ } Ċ Ċ /** Ċ Ġ* ĠA Ġsingle Ġslot Ġinventory Ġthat Ġcan Ġalways Ġbe Ġinserted Ġinto Ċ Ġ*/ Ċ class ĠTr ash Slot Inventory Ġ: ĠSimple Inventory ( 1 ) Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġcan Insert ( stack : ĠItemStack ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} Ċ } Ċ Ċ class ĠSur v ival Only Slot ( inventory : ĠInventory , Ġindex : ĠInt , Ġx : ĠInt , Ġy : ĠInt ) Ġ: ĠSlot ( inventory , Ġindex , Ġx , Ġy ) Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġis Enabled (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ! Minecraft Client . getInstance (). interaction Manager !!. has Creative Inventory (); ĊĠĠĠ Ġ} Ċ } Ċ Ċ /** Ċ Ġ* ĠInterface Ġsole ly Ġused Ġto Ġadd Ġa ĠPlayer Trash Slot Ġto ĠPlayer Entity Ċ Ġ*/ Ċ interface ĠI Trash Slot Ġ{ ĊĠĠĠ Ġfun Ġget Trash Slot (): ĠPlayer Trash Slot Ċ } Ċ