package Ġru . cor oro . auth server . protocol . packet . client bound Ċ Ċ import Ġio . ktor . utils . io . core .* Ċ import Ġnet . ben wood worth . k nbt . N bt Compound Ċ import Ġru . cor oro . auth server . protocol . packet . Minecraft Packet Codec Ċ import Ġru . cor oro . auth server . protocol . utils .* Ċ Ċ data Ġclass ĠClient bound Game Join Packet ( ĊĠĠĠ Ġval Ġentity Id : ĠInt , ĊĠĠĠ Ġval Ġhard core : ĠBoolean , ĊĠĠĠ Ġval Ġgame Mode : ĠByte , ĊĠĠĠ Ġval Ġprevious Game Mode : ĠByte , ĊĠĠĠ Ġval Ġworld Names : ĠArray < String >, ĊĠĠĠ Ġval Ġdimension Codec : ĠNbt Compound , ĊĠĠĠ Ġval Ġdimension : ĠNbt Compound , ĊĠĠĠ Ġval Ġworld Name : ĠString , ĊĠĠĠ Ġval Ġhashed Seed : ĠLong , ĊĠĠĠ Ġval Ġmax Players : ĠInt , ĊĠĠĠ Ġval Ġview Distance : ĠInt , ĊĠĠĠ Ġval Ġdebug Info : ĠBoolean , ĊĠĠĠ Ġval Ġresp awn Screen : ĠBoolean , ĊĠĠĠ Ġval Ġdebug : ĠBoolean , ĊĠĠĠ Ġval Ġflat : ĠBoolean Ċ ) Ġ{ ĊĠĠĠ Ġ@ Experimental Unsigned Types ĊĠĠĠ Ġcompanion Ġobject Ġ: ĠMinecraft Packet Codec < Client bound Game Join Packet > Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġpacket Class Ġ= ĠClient bound Game Join Packet :: class . java ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġwrite ( output : ĠOutput , Ġpacket : ĠClient bound Game Join Packet ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoutput . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwrite Int ( packet . entityId ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwrite Boolean ( packet . hard core ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwrite Byte ( packet . game Mode ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwrite Byte ( packet . previous Game Mode ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwrite String Array ( packet . world Names ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwrite NBT ( packet . dimension Codec , Ġ"") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwrite NBT ( packet . dimension , Ġ"") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwrite String ( packet . world Name ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwrite Long ( packet . hashed Seed ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwrite Var Int ( packet . max Players ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwrite Var Int ( packet . view Distance ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwrite Boolean ( packet . debug Info ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwrite Boolean ( packet . resp awn Screen ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwrite Boolean ( packet . debug ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwrite Boolean ( packet . flat ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġread ( input : ĠInput ): ĠClient bound Game Join Packet Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠUnsupportedOperationException () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġequals ( other : ĠAny ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( this Ġ=== Ġother ) Ġreturn Ġtrue ĊĠĠĠĠĠĠĠ Ġif Ġ( java Class Ġ!= Ġother ?. java Class ) Ġreturn Ġfalse ĊĊĠĠĠĠĠĠĠ Ġother Ġas ĠClient bound Game Join Packet ĊĊĠĠĠĠĠĠĠ Ġif Ġ( entityId Ġ!= Ġother . entityId ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( hard core Ġ!= Ġother . hard core ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( game Mode Ġ!= Ġother . game Mode ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( previous Game Mode Ġ!= Ġother . previous Game Mode ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ(! world Names . content Equals ( other . world Names )) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( dimension Codec Ġ!= Ġother . dimension Codec ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( dimension Ġ!= Ġother . dimension ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( world Name Ġ!= Ġother . world Name ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( hashed Seed Ġ!= Ġother . hashed Seed ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( max Players Ġ!= Ġother . max Players ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( view Distance Ġ!= Ġother . view Distance ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( debug Info Ġ!= Ġother . debug Info ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( resp awn Screen Ġ!= Ġother . resp awn Screen ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( debug Ġ!= Ġother . debug ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( flat Ġ!= Ġother . flat ) Ġreturn Ġfalse ĊĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠhashCode (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġresult Ġ= Ġentity Id ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġhard core . hashCode () ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġgame Mode ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġprevious Game Mode ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġworld Names . content HashCode () ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġdimension Codec . hashCode () ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġdimension . hashCode () ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġworld Name . hashCode () ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġhashed Seed . hashCode () ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġmax Players ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġview Distance ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġdebug Info . hashCode () ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġresp awn Screen . hashCode () ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġdebug . hashCode () ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġflat . hashCode () ĊĠĠĠĠĠĠĠ Ġreturn Ġresult ĊĠĠĠ Ġ} Ċ }