package Ġcom . mine in aby ss . ge ary . minecraft . actions Ċ Ċ import Ġcom . mine in aby ss . ge ary . ecs . api . actions . Ge ary Action Ċ import Ġcom . mine in aby ss . ge ary . ecs . api . entities . Ge ary Entity Ċ import Ġcom . mine in aby ss . ge ary . minecraft . access . ge ary Ċ import Ġcom . mine in aby ss . ge ary . minecraft . properties . At Player Location Ċ import Ġcom . mine in aby ss . ge ary . minecraft . properties . Configurable Location Ċ import Ġcom . mine in aby ss . ge ary . minecraft . events . Events Ċ import Ġcom . mine in aby ss . id of r ont . sp aw ning . spawn Ċ import Ġkotlinx . serialization . Serial Name Ċ import Ġkotlinx . serialization . Serializable Ċ import Ġorg . bukkit . entity . Sized Fire ball Ċ import Ġorg . bukkit . util . Vector Ċ Ċ // TODO Ġthis Ġis Ġreally Ġunnecessary Ġonce Ġwe Ġhave Ġa Ġproper Ġentity Ġspawn Ġaction Ċ // ĠIt 's Ġjust Ġsomething ĠI Ġwas Ġmess ing Ġaround Ġwith . Ċ /** Ċ Ġ* ĠSp awns Ġa Ġfire ball Ġabove Ġa Ġgiven Ġlocation Ġwhich Ġf lies Ġdown Ġtowards Ġit . Ċ Ġ* Ċ Ġ* Ġ@ param Ġat ĠThe Ġlocation Ġto Ġspawn Ġthe Ġfire ball Ġat . Ċ Ġ* Ġ@ param Ġevents ĠAn Ġevents Ġcomponent Ġto Ġattach Ġto Ġthe Ġfire ball . Ċ Ġ*/ Ċ @ Serializable Ċ @ Serial Name (" ge ary : meteor ") Ċ public Ġclass ĠMeteor ( ĊĠĠĠ Ġprivate Ġval Ġat : ĠConfigur able Location Ġ= ĠAt Player Location (), ĊĠĠĠ Ġprivate Ġval Ġevents : ĠEvents Ċ ) Ġ: ĠGe ary Action () Ġ{ ĊĠĠĠ Ġprivate Ġval ĠGe ary Entity . location Ġby Ġat ĊĊĠĠĠ Ġoverride Ġfun ĠGe ary Entity . run (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġspawn Loc Ġ= Ġlocation . add ( 0 . 0 , Ġ 2 0 . 0 , Ġ 0 . 0 ) ĊĠĠĠĠĠĠĠ Ġspawn Loc . spawn < Sized Fire ball >() Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdirection Ġ= ĠVector ( 0 , Ġ- 1 , Ġ 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġge ary ( this ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset ( events ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} Ċ } Ċ