/* Ċ Ġ* ĠCopyright Ġ( c ) Ġ 2 0 2 1 - 2 0 2 2 , ĠVal ap he e . Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġcom . val ap he e . net code . mc be . command Ċ Ċ import Ġcom . val ap he e . net code . mc be . network . Packet Buffer Ċ import Ġjava . util . UUID Ċ Ċ /** Ċ Ġ* Ġ@ author ĠKevin ĠL ud w ig Ċ Ġ*/ Ċ data Ġclass ĠOrigin ( ĊĠĠĠ Ġval Ġwhere : ĠWhere , ĊĠĠĠ Ġval ĠrequestId : ĠUUID , ĊĠĠĠ Ġval Ġpurpose : ĠString , ĊĠĠĠ Ġval Ġevent Id : ĠLong Ċ ) Ġ{ ĊĠĠĠ Ġenum Ġclass ĠWhere Ġ{ ĊĠĠĠĠĠĠĠ ĠPlayer , ĊĠĠĠĠĠĠĠ ĠBlock , ĊĠĠĠĠĠĠĠ ĠM ine cart Block , ĊĠĠĠĠĠĠĠ ĠDeveloper Console , ĊĠĠĠĠĠĠĠ ĠTest , ĊĠĠĠĠĠĠĠ ĠAutomation Player , ĊĠĠĠĠĠĠĠ ĠClient Automation , ĊĠĠĠĠĠĠĠ ĠD ed icated Server , ĊĠĠĠĠĠĠĠ ĠEntity , ĊĠĠĠĠĠĠĠ ĠVirtual , ĊĠĠĠĠĠĠĠ ĠGame Argument , ĊĠĠĠĠĠĠĠ ĠEntity Server , ĊĠĠĠĠĠĠĠ ĠPre Compiled , ĊĠĠĠĠĠĠĠ ĠGame Master Entity Server , ĊĠĠĠĠĠĠĠ ĠScript , ĊĠĠĠĠĠĠĠ ĠExecute Context ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun ĠPacket Buffer . read Origin (): ĠOrigin Ġ{ ĊĠĠĠ Ġval Ġwhere Ġ= ĠOrigin . Where . values ()[ read Var UInt ()] ĊĠĠĠ Ġreturn ĠOrigin ( where , Ġread Uuid (), Ġread String (), Ġif Ġ( Origin . Where . Developer Console Ġ== Ġwhere Ġ|| ĠOrigin . Where . Test Ġ== Ġwhere ) Ġread Var Long () Ġelse Ġ 0 ) Ċ } Ċ Ċ fun ĠPacket Buffer . write Origin ( value : ĠOrigin ) Ġ{ ĊĠĠĠ Ġwrite Var UInt ( value . where . ordinal ) ĊĠĠĠ Ġwrite Uuid ( value . requestId ) ĊĠĠĠ Ġwrite String ( value . purpose ) ĊĠĠĠ Ġif Ġ( value . where Ġ== ĠOrigin . Where . Developer Console Ġ|| Ġvalue . where Ġ== ĠOrigin . Where . Test ) Ġwrite Var Long ( value . eventId ) Ċ } Ċ