package Ġme . ste ven . ind rev . registry Ċ Ċ import Ġa lex i il . mc . lib . attributes . fluid . Fluid Inv Util Ċ import Ġio . netty . buffer . Un p ooled Ċ import Ġme . ste ven . ind rev . Ind ustrial Re volution Ċ import Ġme . ste ven . ind rev . Ind ustrial Re volution Client Ċ import Ġme . ste ven . ind rev . api . IR Player Entity Extension Ċ import Ġme . ste ven . ind rev . api . machines . Transfer Mode Ċ import Ġme . ste ven . ind rev . api . side configs . Configurable Ċ import Ġme . ste ven . ind rev . api . side configs . Configuration Type Ċ import Ġme . ste ven . ind rev . block entities . Global State Controller Ċ import Ġme . ste ven . ind rev . block entities . Machine Block Entity Ċ import Ġme . ste ven . ind rev . block entities . cr after s . Craft ing Machine Block Entity Ċ import Ġme . ste ven . ind rev . block entities . far ms . AO EM achine Block Entity Ċ import Ġme . ste ven . ind rev . block entities . far ms . Min ing R ig Block Entity Ċ import Ġme . ste ven . ind rev . block entities . far ms . R ancher Block Entity Ċ import Ġme . ste ven . ind rev . block entities . mod ular workbench . Mod ular Workbench Block Entity Ċ import Ġme . ste ven . ind rev . config . IR Config Ċ import Ġme . ste ven . ind rev . config . IR Config . writeTo Client Ċ import Ġme . ste ven . ind rev . gui . screen handlers . IR Gui Screen Handler Ċ import Ġme . ste ven . ind rev . gui . screen handlers . machines . Mod ular Workbench Screen Handler Ċ import Ġme . ste ven . ind rev . gui . screen handlers . machines . R ancher Screen Handler Ċ import Ġme . ste ven . ind rev . gui . screen handlers . pipes . Pipe Filter Screen Ċ import Ġme . ste ven . ind rev . gui . screen handlers . pipes . Pipe Filter Screen Handler Ċ import Ġme . ste ven . ind rev . gui . widgets . machines . W Fluid Ċ import Ġme . ste ven . ind rev . networks . Endpoint Data Ċ import Ġme . ste ven . ind rev . networks . Network Ċ import Ġme . ste ven . ind rev . networks . client . Client Network State Ċ import Ġme . ste ven . ind rev . networks . item . Item Network State Ċ import Ġme . ste ven . ind rev . recipes . machines . Module Recipe Ċ import Ġme . ste ven . ind rev . tools . mod ular . Armor Module Ċ import Ġme . ste ven . ind rev . utils . SPLIT _ STACK S _ PACKET Ċ import Ġme . ste ven . ind rev . utils . entries Ċ import Ġme . ste ven . ind rev . utils . getAll OfType Ċ import Ġme . ste ven . ind rev . utils . is Loaded Ċ import Ġme . ste ven . ind rev . world . chunk ve ins . Ve in Type Ċ import Ġnet . fabric mc . fabric . api . client . networking . v 1 . Client Play Networking Ċ import Ġnet . fabric mc . fabric . api . networking . v 1 . Packet Byte Bu fs Ċ import Ġnet . fabric mc . fabric . api . networking . v 1 . Server Play Networking Ċ import Ġnet . minecraft . block . Block Ċ import Ġnet . minecraft . client . Minecraft Client Ċ import Ġnet . minecraft . client . world . Client World Ċ import Ġnet . minecraft . item . ItemStack Ċ import Ġnet . minecraft . network . Packet Byte Buf Ċ import Ġnet . minecraft . server . network . Server Player Entity Ċ import Ġnet . minecraft . sound . Sound Category Ċ import Ġnet . minecraft . util . collection . Weight edList Ċ import Ġnet . minecraft . util . math . Direction Ċ import Ġnet . minecraft . util . registry . Registry Ċ import Ġkotlin . collections . Mutable Map Ċ import Ġkotlin . collections . component 1 Ċ import Ġkotlin . collections . component 2 Ċ import Ġkotlin . collections . forEach Ċ import Ġkotlin . collections . hash Map Of Ċ import Ġkotlin . collections . set Ċ Ċ object ĠPacket Registry Ġ{ ĊĠĠĠ Ġfun Ġregister Server () Ġ{ ĊĠĠĠĠĠĠĠ ĠServer Play Networking . register Global Receiver ( Configurable . UPDATE _ MACHINE _ SIDE _ PACKET _ ID ) Ġ{ Ġserver , Ġplayer , Ġ_, Ġbuf , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtype Ġ= Ġbuf . read Enum Constant ( Configuration Type :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpos Ġ= Ġbuf . read Block Pos () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdir Ġ= ĠDirection . by Id ( buf . readInt ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmode Ġ= ĠTransfer Mode . values ()[ buf . readInt ()] ĊĠĠĠĠĠĠĠĠĠĠĠ Ġserver . execute Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġworld Ġ= Ġplayer . world ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġblock Entity Ġ= Ġworld . getBlock Entity ( pos ) Ġas ? ĠMachine Block Entity < *> Ġ?: Ġreturn @ execute ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġblock Entity . getCurrent Configuration ( type )[ dir ] Ġ= Ġmode ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġblock Entity . mark Dirty () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġblock Entity . sync () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠGlobal State Controller . update ( world , Ġpos , Ġfalse ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠServer Play Networking . register Global Receiver ( Configurable . UPDATE _ AUTO _ OPERATION _ PACKET _ ID ) Ġ{ Ġserver , Ġplayer , Ġ_, Ġbuf , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtype Ġ= Ġbuf . read Enum Constant ( Configuration Type :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġop Type Ġ= Ġbuf . read Byte () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpos Ġ= Ġbuf . read Block Pos () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġvalue Ġ= Ġbuf . read Boolean () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġserver . execute Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġworld Ġ= Ġplayer . world ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġblock Entity Ġ= Ġworld . getBlock Entity ( pos ) Ġas ? ĠMachine Block Entity < *> Ġ?: Ġreturn @ execute ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( op Type . toInt () Ġ== Ġ 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġblock Entity . getCurrent Configuration ( type ). auto Push Ġ= Ġvalue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġblock Entity . getCurrent Configuration ( type ). auto Pull Ġ= Ġvalue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġblock Entity . mark Dirty () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠServer Play Networking . register Global Receiver ( AO EM achine Block Entity . UPDATE _ VALUE _ PACKET _ ID ) Ġ{ Ġserver , Ġplayer , Ġ_, Ġbuf , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġvalue Ġ= Ġbuf . readInt () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpos Ġ= Ġbuf . read Block Pos () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġworld Ġ= Ġplayer . world ĊĠĠĠĠĠĠĠĠĠĠĠ Ġserver . execute Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( world . is Loaded ( pos )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġblock Entity Ġ= Ġworld . getBlock Entity ( pos ) Ġas ? ĠA O EM achine Block Entity < *> Ġ?: Ġreturn @ execute ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġblock Entity . range Ġ= Ġvalue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġblock Entity . mark Dirty () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġblock Entity . sync () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠServer Play Networking . register Global Receiver ( W Fluid . FL UID _ CLICK _ PACKET ) Ġ{ Ġserver , Ġplayer , Ġ_, Ġbuf , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpos Ġ= Ġbuf . read Block Pos () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtank Ġ= Ġbuf . readInt () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġworld Ġ= Ġplayer . world ĊĠĠĠĠĠĠĠĠĠĠĠ Ġserver . execute Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( world . is Loaded ( pos )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġblock Entity Ġ= Ġworld . getBlock Entity ( pos ) Ġas ? ĠMachine Block Entity < *> Ġ?: Ġreturn @ execute ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfluid Component Ġ= Ġblock Entity . fluid Component Ġ?: Ġreturn @ execute ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFluid Inv Util . interact Cursor With Tank ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfluid Component . get Interact Inventory ( tank ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġplayer , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfluid Component . get Filter For Tank ( tank ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠServer Play Networking . register Global Receiver ( Ind ustrial Re volution . UPDATE _ MOD ULAR _ TOOL _ LEVEL ) Ġ{ Ġserver , Ġplayer , Ġ_, Ġbuf , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġkey Ġ= Ġbuf . readString ( 3 2 7 6 7 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġvalue Ġ= Ġbuf . readInt () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġslot Ġ= Ġbuf . readInt () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġserver . execute Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstack Ġ= Ġplayer . inventory . get Stack ( slot ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! stack . isEmpty ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtag Ġ= Ġstack . get OrCreate Sub N bt (" selected ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtag . put Int ( key , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠServer Play Networking . register Global Receiver ( SPLIT _ STACK S _ PACKET ) Ġ{ Ġserver , Ġplayer , Ġ_, Ġbuf , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpos Ġ= Ġbuf . read Block Pos () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġserver . execute Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġworld Ġ= Ġplayer . world ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( world . is Loaded ( pos )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġblock Entity Ġ= Ġworld . getBlock Entity ( pos ) Ġas ? ĠCraft ing Machine Block Entity < *> Ġ?: Ġreturn @ execute ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġblock Entity . is Split On Ġ= Ġ! block Entity . is Split On ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( block Entity . is Split On ) Ġblock Entity . split Stack s () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠServer Play Networking . register Global Receiver ( R ancher Screen Handler . SYNC _ RANCH ER _ CONFIG ) Ġ{ Ġserver , Ġplayer , Ġ_, Ġbuf , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpos Ġ= Ġbuf . read Block Pos () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfeed B ab ies Ġ= Ġbuf . read Boolean () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġm ate Ad ult s Ġ= Ġbuf . read Boolean () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġm ating Limit Ġ= Ġbuf . readInt () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġkill After Ġ= Ġbuf . readInt () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġserver . execute Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġworld Ġ= Ġplayer . world ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( world . is Loaded ( pos )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġblock Entity Ġ= Ġworld . getBlock Entity ( pos ) Ġas ? ĠR ancher Block Entity Ġ?: Ġreturn @ execute ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġblock Entity . feed B ab ies Ġ= Ġfeed B ab ies ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġblock Entity . mate Ad ult s Ġ= Ġm ate Ad ult s ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġblock Entity . mat ing Limit Ġ= Ġm ating Limit ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġblock Entity . kill After Ġ= Ġkill After ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġblock Entity . mark Dirty () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġblock Entity . sync () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠServer Play Networking . register Global Receiver ( Mod ular Workbench Screen Handler . MODULE _ SELECT _ PACKET ) Ġ{ Ġserver , Ġplayer , Ġ_, Ġbuf , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsync Id Ġ= Ġbuf . readInt () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġrecipe Id Ġ= Ġbuf . read Identifier () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpos Ġ= Ġbuf . read Block Pos () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġscreen Handler Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġplayer . current Screen Handler Ġas ? ĠMod ular Workbench Screen Handler Ġ?: Ġreturn @ register Global Receiver ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( sync Id Ġ!= Ġscreen Handler . sync Id ) Ġreturn @ register Global Receiver ĊĠĠĠĠĠĠĠĠĠĠĠ Ġserver . execute Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġworld Ġ= Ġplayer . world ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( world . is Loaded ( pos )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġrecipe Ġ= Ġserver . recipe Manager . getAll OfType ( Module Recipe . TYPE )[ recipe Id ] !! ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscreen Handler . layout Slots ( recipe ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġblock Entity Ġ= Ġworld . getBlock Entity ( pos ) Ġas ? ĠMod ular Workbench Block Entity Ġ?: Ġreturn @ execute ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġblock Entity . selected Recipe Ġ= Ġrecipe Id ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġblock Entity . mark Dirty () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġblock Entity . sync () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠServer Play Networking . register Global Receiver ( Pipe Filter Screen Handler . CLICK _ FILTER _ SLOT _ PACKET ) Ġ{ Ġserver , Ġplayer , Ġ_, Ġbuf , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġslot Index Ġ= Ġbuf . readInt () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdir Ġ= Ġbuf . read Enum Constant ( Direction :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpos Ġ= Ġbuf . read Block Pos () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġserver . execute Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcursor Stack Ġ= Ġplayer . current Screen Handler . cursor Stack ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstate Ġ= ĠNetwork . Type . ITEM . get Network State ( player . server World ) Ġas ? ĠItem Network State Ġ?: Ġreturn @ execute ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdata Ġ= Ġstate . get Filter Data ( pos , Ġdir ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( cursor Stack . isEmpty ) Ġdata . filter [ slot Index ] Ġ= ĠItemStack . EMPTY ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġdata . filter [ slot Index ] Ġ= Ġcursor Stack . copy (). also Ġ{ Ġit . count Ġ= Ġ 1 Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstate . mark Dirty () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsync Packet Ġ= ĠPacket Byte Bu fs . create () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsync Packet . writeInt ( slot Index ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsync Packet . write ItemStack ( data . filter [ slot Index ]) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠServer Play Networking . send ( player , ĠPipe Filter Screen Handler . UPDATE _ FILTER _ SLOT _ S 2 C _ PACKET , Ġsync Packet ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠServer Play Networking . register Global Receiver ( Pipe Filter Screen Handler . CHANGE _ FILTER _ MODE _ PACKET ) Ġ{ Ġserver , Ġplayer , Ġ_, Ġbuf , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdir Ġ= Ġbuf . read Enum Constant ( Direction :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpos Ġ= Ġbuf . read Block Pos () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfield Ġ= Ġbuf . readInt () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġvalue Ġ= Ġbuf . read Boolean () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġserver . execute Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstate Ġ= ĠNetwork . Type . ITEM . get Network State ( player . server World ) Ġas ? ĠItem Network State Ġ?: Ġreturn @ execute ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdata Ġ= Ġstate . get Filter Data ( pos , Ġdir , Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( field ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 0 Ġ-> Ġdata . whitelist Ġ= Ġvalue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 1 Ġ-> Ġdata . match Dur ability Ġ= Ġvalue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 2 Ġ-> Ġdata . match Tag Ġ= Ġvalue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġreturn @ execute ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstate . mark Dirty () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠServer Play Networking . register Global Receiver ( Pipe Filter Screen Handler . CHANGE _ SER VO _ MODE _ PACKET ) Ġ{ Ġserver , Ġplayer , Ġ_, Ġbuf , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdir Ġ= Ġbuf . read Enum Constant ( Direction :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpos Ġ= Ġbuf . read Block Pos () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmode Ġ= Ġbuf . read Enum Constant ( Endpoint Data . Mode :: class . java ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġserver . execute Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstate Ġ= ĠNetwork . Type . ITEM . get Network State ( player . server World ) Ġas ? ĠItem Network State Ġ?: Ġreturn @ execute ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdata Ġ= Ġstate . get Endpoint Data ( pos , Ġdir , Ġtrue ) Ġ?: Ġreturn @ execute ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdata . mode Ġ= Ġmode ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstate . mark Dirty () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġsync Ve inData ( player Entity : ĠServer Player Entity ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġbuf Ġ= ĠPacket Byte Buf ( Un p ooled . buffer ()) ĊĠĠĠĠĠĠĠ Ġbuf . writeInt ( Ve in Type . REGISTER ED . size ) ĊĠĠĠĠĠĠĠ ĠVe in Type . REGISTER ED . forEach Ġ{ Ġ( identifier , Ġve in Type ) Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuf . write Identifier ( identifier ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġentries Ġ= Ġve in Type . outputs . entries ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġinfinite Entries Ġ= Ġve in Type . infinite Outputs . entries ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuf . writeInt ( entries . size ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( i Ġin Ġ 0 Ġuntil Ġentries . size ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġentry Ġ= Ġentries [ i ] ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġblock Ġ= Ġentry . element ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġweight Ġ= Ġentry . weight ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġinfinite Weight Ġ= Ġinfinite Entries [ i ]. weight ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġraw Id Ġ= ĠRegistry . BLOCK . getRaw Id ( block ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbuf . writeInt ( raw Id ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbuf . writeInt ( weight ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbuf . writeInt ( infinite Weight ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuf . writeInt ( ve in Type . size Range . first ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuf . writeInt ( ve in Type . size Range . last ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠServer Play Networking . send ( player Entity , ĠInd ustrial Re volution . SYNC _ VE INS _ PACKET , Ġbuf ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġsync Config ( player Entity : ĠServer Player Entity ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġbuf Ġ= ĠPacket Byte Bu fs . create () ĊĠĠĠĠĠĠĠ ĠwriteTo Client ( buf ) ĊĠĠĠĠĠĠĠ ĠServer Play Networking . send ( player Entity , ĠInd ustrial Re volution . SYNC _ CONFIG _ PACKET , Ġbuf ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġregister Client () Ġ{ ĊĠĠĠĠĠĠĠ ĠClient Play Networking . register Global Receiver ( Ind ustrial Re volution . SYNC _ VE INS _ PACKET ) Ġ{ Ġ_, Ġ_, Ġbuf , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtotal Ve ins Ġ= Ġbuf . readInt () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( x Ġin Ġ 0 Ġuntil Ġtotal Ve ins ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġid Ġ= Ġbuf . read Identifier () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġentries Size Ġ= Ġbuf . readInt () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġoutputs Ġ= ĠWeight edList < Block >() ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġinfinite Outputs Ġ= ĠWeight edList < Block >() ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( y Ġin Ġ 0 Ġuntil Ġentries Size ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġraw Id Ġ= Ġbuf . readInt () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġweight Ġ= Ġbuf . readInt () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġinfinite Weight Ġ= Ġbuf . readInt () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġblock Ġ= ĠRegistry . BLOCK . get ( raw Id ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoutputs . add ( block , Ġweight ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinfinite Outputs . add ( block , Ġinfinite Weight ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmin Size Ġ= Ġbuf . readInt () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠmaxSize Ġ= Ġbuf . readInt () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġve in Type Ġ= ĠVe in Type ( id , Ġoutputs , Ġinfinite Outputs , Ġmin Size .. maxSize ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠVe in Type . REGISTER ED [ id ] Ġ= Ġve in Type ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠClient Play Networking . register Global Receiver ( Ind ustrial Re volution . SYNC _ PROPERTY ) Ġ{ Ġclient , Ġ_, Ġbuf , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsync Id Ġ= Ġbuf . readInt () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġproperty Ġ= Ġbuf . readInt () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġvalue Ġ= Ġbuf . readInt () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġclient . execute Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġhandler Ġ= Ġclient . player !!. current Screen Handler ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( handler . sync Id Ġ== Ġsync Id ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( handler Ġas ? ĠIR Gui Screen Handler )?. property Delegate ?. set ( property , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠClient Play Networking . register Global Receiver ( Min ing R ig Block Entity . BLOCK _ BREAK _ PACKET ) Ġ{ Ġclient , Ġ_, Ġbuf , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpos Ġ= Ġbuf . read Block Pos (). down () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġblock Raw Id Ġ= Ġbuf . readInt () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġblock Ġ= ĠRegistry . BLOCK . get ( block Raw Id ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġclient . execute Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMinecraft Client . getInstance (). particle Manager . add Block Break Particles ( pos , Ġblock . default State ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġblock Sound Group Ġ= Ġblock . get Sound Group ( block . default State ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( client . player !!. world Ġas ĠClient World ). play Sound ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpos , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġblock Sound Group . break Sound , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠSound Category . BLOCKS , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( block Sound Group . get Volume () Ġ+ Ġ 1 . 0 f ) Ġ/ Ġ 4 . 0 f , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġblock Sound Group . get Pitch () Ġ* Ġ 0 . 8 f , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠClient Play Networking . register Global Receiver ( Ind ustrial Re volution . SYNC _ MODULE _ PACKET ) Ġ{ Ġclient , Ġ_, Ġbuf , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġbuf . readInt () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmodules Ġ= Ġhash Map Of < Armor Module , ĠInt >() ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( index Ġin Ġ 0 Ġuntil Ġsize ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġordinal Ġ= Ġbuf . readInt () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmodule Ġ= ĠArm or Module . values ()[ ordinal ] ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlevel Ġ= Ġbuf . readInt () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodules [ module ] Ġ= Ġlevel ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdur ability Ġ= Ġbuf . read Double () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġis Re generating Ġ= Ġbuf . read Boolean () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġclient . execute Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġplayer Ġ= Ġclient . player !! ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( player Ġis ĠIR Player Entity Extension ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( player . get Applied Modules () Ġas ĠMutable Map < *, Ġ*> ). clear () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodules . forEach ( player :: apply Module ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġplayer . shield Dur ability Ġ= Ġdur ability ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġplayer . is Re generating Ġ= Ġis Re generating ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠClient Play Networking . register Global Receiver ( Global State Controller . UPDATE _ PACKET _ ID ) Ġ{ Ġclient , Ġ_, Ġbuf , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpos Ġ= Ġbuf . read Block Pos () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġworking State Ġ= Ġbuf . read Boolean () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġclient . execute Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠGlobal State Controller . working State Tracker [ pos . as Long ()] Ġ= Ġworking State ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠGlobal State Controller . queue Update ( pos ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠClient Play Networking . register Global Receiver ( Pipe Filter Screen Handler . UPDATE _ FILTER _ SLOT _ S 2 C _ PACKET ) Ġ{ Ġclient , Ġ_, Ġbuf , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġslot Index Ġ= Ġbuf . readInt () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstack Ġ= Ġbuf . read ItemStack () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġclient . execute Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġscreen Ġ= Ġclient . current Screen Ġas ? ĠPipe Filter Screen Ġ?: Ġreturn @ execute ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcontroller Ġ= Ġscreen . screen Handler ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontroller . back ing List [ slot Index ] Ġ= Ġstack ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠClient Play Networking . register Global Receiver ( Ind ustrial Re volution . SYNC _ CONFIG _ PACKET ) Ġ{ Ġclient , Ġ_, Ġbuf , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ ĠIR Config . read From Server ( buf ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠClient Play Networking . register Global Receiver ( Ind ustrial Re volution . SYNC _ NETWORK _ SERV OS ) Ġ{ Ġclient , Ġ_, Ġbuf , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtype Ġ= ĠNetwork . Type . valueOf ( buf . readString ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstate Ġ= ĠInd ustrial Re volution Client . CLIENT _ NETWORK _ STATE . compute If Absent ( type ) Ġ{ ĠClient Network State ( type ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstate . process Packet ( buf , Ġclient ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }