package Ġat . pe tr ak . hex cast ing . common . cast ing . operators . spell s Ċ Ċ import Ġat . pe tr ak . hex cast ing . api . Hex API Ċ import Ġat . pe tr ak . hex cast ing . api . misc . Man a Constants Ċ import Ġat . pe tr ak . hex cast ing . api . spell .* Ċ import Ġat . pe tr ak . hex cast ing . api . spell . cast ing . Cast ing Context Ċ import Ġat . pe tr ak . hex cast ing . x plat . IX plat Abstractions Ċ import Ġnet . minecraft . core . Block Pos Ċ import Ġnet . minecraft . world . item . Bucket Item Ċ import Ġnet . minecraft . world . item . ItemStack Ċ import Ġnet . minecraft . world . item . Items Ċ import Ġnet . minecraft . world . level . block . Abstract Ca uld ron Block Ċ import Ġnet . minecraft . world . level . block . Blocks Ċ import Ġnet . minecraft . world . level . block . Layer ed Ca uld ron Block Ċ import Ġnet . minecraft . world . level . material . Fluid s Ċ import Ġnet . minecraft . world . phys . Vec 3 Ċ Ċ object ĠOp Create Water Ġ: ĠSpell Operator Ġ{ ĊĠĠĠ Ġoverride Ġval Ġargc Ġ= Ġ 1 ĊĠĠĠ Ġoverride Ġfun Ġexecute ( ĊĠĠĠĠĠĠĠ Ġargs : ĠList < Spell Datum <* >>, ĊĠĠĠĠĠĠĠ Ġctx : ĠCast ing Context ĊĠĠĠ Ġ): ĠTrip le < Rendered Spell , ĠInt , ĠList < Particle Spr ay >> Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtarget Ġ= Ġargs . get Checked < Vec 3 >( 0 , Ġargc ) ĊĠĠĠĠĠĠĠ Ġctx . assert Vec InRange ( target ) ĊĊĠĠĠĠĠĠĠ Ġreturn ĠTrip le ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSpell ( target ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMan a Constants . D UST _ UNIT , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( Particle Spr ay . burst ( Vec 3 . at Center Of ( Block Pos ( target )), Ġ 1 . 0 )) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġdata Ġclass ĠSpell ( val Ġtarget : ĠVec 3 ) Ġ: ĠRender ed Spell Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġcast ( ctx : ĠCast ing Context ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpos Ġ= ĠBlockPos ( target ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! ctx . world . may Interact ( ctx . caster , Ġpos )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstate Ġ= Ġctx . world . getBlock State ( pos ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( state . block Ġis ĠAbstract Ca uld ron Block ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġctx . world . set Block ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpos , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBlocks . WATER _ CA UL DR ON . default BlockState (). setValue ( Layer ed Ca uld ron Block . LEVEL , Ġ 3 ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 3 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġif Ġ(! IX plat Abstractions . INSTANCE . try Place Fluid ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġctx . world , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġctx . cast ing Hand , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpos , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠItemStack ( Items . WATER _ BUCKET ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFluid s . WATER ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠJust Ġste al Ġbucket Ġcode Ġl ma o ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġchar lie Ġ= ĠItems . WATER _ BUCKET ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( char lie Ġis ĠBucket Item ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġmake Ġthe Ġplayer Ġnull Ġso Ġwe Ġdon 't Ġgive Ġthem Ġa Ġusage Ġstatistic Ġfor Ġexample ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchar lie . empty Contents ( null , Ġctx . world , Ġpos , Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠHex API . LOGGER . warn (" Items . WATER _ BUCKET Ġwasn 't Ġa ĠBucket Item ?") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ