package Ġme . eb on j aeger . per world inventory . serialization Ċ Ċ import Ġcom . dump tr uck man . bukkit . configuration . util . Serialization Helper Ċ import Ġnet . min idev . json . JSONObject Ċ import Ġorg . bukkit . Bu kkit Ċ import Ġorg . bukkit . Location Ċ import Ġorg . bukkit . util . Number Conversions Ċ Ċ object ĠLocation Serializer Ċ { ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠSerialize Ġa Ġ[ Location ] Ġinto Ġa ĠJsonObject . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġlocation ĠThe Ġlocation Ġto Ġserialize ĊĠĠĠĠ Ġ* Ġ@ return ĠA ĠJsonObject Ġwith Ġthe Ġworld Ġname Ġand Ġlocation Ġproperties ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Suppress (" UN CHECK ED _ CAST ") Ġ// ĠWe Ġknow Ġthat Ġ# serialize Ġwill Ġgive Ġus Ġa ĠMap Ġfor Ġa ĠConfiguration Serializable Ġobject ĊĠĠĠ Ġfun Ġserialize ( location : ĠLocation ): ĠJSONObject ĊĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmap Ġ= ĠSerialization Helper . serialize ( location ) Ġas ĠMap < String , ĠAny > ĊĠĠĠĠĠĠĠ Ġreturn ĠJSONObject ( map ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠDeserialize Ġa Ġ[ Location ] Ġfrom Ġa ĠJsonObject . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġobj ĠThe ĠJsonObject Ġto Ġdeserialize ĊĠĠĠĠ Ġ* Ġ@ return ĠA Ġnew Ġlocation Ġfrom Ġthe Ġproperties Ġof Ġthe ĠJsonObject ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġdeserialize ( obj : ĠJSONObject ): ĠLocation ĊĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( obj . containsKey (" ==" )) Ġ{ Ġ// ĠLocation Ġwas Ġserialized Ġusing ĠConfiguration Serializable Ġmethod ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSerialization Helper . deserialize ( obj Ġas ĠMap < String , ĠAny >) Ġas ĠLocation ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ Ġ// ĠLocation Ġwas Ġserialized Ġby Ġhand ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġworld Ġ= ĠBu kkit . get World ( obj [" world "] Ġas ĠString ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġx Ġ= ĠNumber Conversions . toDouble ( obj [" x "]) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġy Ġ= ĠNumber Conversions . toDouble ( obj [" y "]) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġz Ġ= ĠNumber Conversions . toDouble ( obj [" z "]) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpitch Ġ= ĠNumber Conversions . toFloat ( obj [" pitch "]) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġyaw Ġ= ĠNumber Conversions . toFloat ( obj [" yaw "]) ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠLocation ( world , Ġx , Ġy , Ġz , Ġyaw , Ġpitch ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ