package Ġdev . he light . hop per . example Ċ Ċ import Ġdev . he light . hop per .* Ċ import Ġdev . he light . hop per . ecs . Component Serializer Ċ import Ġdev . he light . hop per . ecs . Exported Entity Wrapper Ċ import Ġdev . he light . hop per . ecs . system . Hop per System Ċ import Ġdev . he light . hop per . ecs . system . Hop per System Options Ċ import Ġkotlinx . serialization . Serializable Ċ import Ġkotlinx . serialization . decode FromString Ċ import Ġkotlinx . serialization . encode ToString Ċ import Ġkotlinx . serialization . json . Json Ċ Ċ @ Experimental Unsigned Types Ċ @ Auto Configure Plugin Ċ class ĠExample Hop per Plugin Ġ: ĠH op per Plugin Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġdisable () Ġ{ ĊĠĠĠĠĠĠĠ Ġprintln (" Disabled ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġenable () Ġ{ ĊĠĠĠĠĠĠĠ Ġprintln (" Enabled ") ĊĠĠĠĠĠĠĠ Ġe cs . system < Example System >() ĊĠĠĠĠĠĠĠ Ġprintln ( Example Component :: class . java . name ) ĊĠĠĠĠĠĠ Ġ// ĠComposer (). execute Compose ( File (" example Compose . json "). read Text ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġload () Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ecs . serializer < Example Component >( Example Component Serializer ()) ĊĠĠĠ Ġ} Ċ } Ċ Ċ class ĠExample Component Serializer Ġ: ĠComponent Serializer Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġdeserialize ( data : ĠString ): ĠAny Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠJson . decode FromString < Example Component >( data ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġserialize ( value : ĠAny ?): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcomponent : ĠExample Component ? Ġ= Ġvalue Ġas ĠExample Component ? ĊĠĠĠĠĠĠĠ Ġreturn ĠJson . encode ToString ( component ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ @ Experimental Unsigned Types Ċ class ĠExample System Ġ: ĠH op per System ( sorted Set Of ( Example Component :: class . java . to Key ()), ĠH op per System Options ( is Tick ing Ġ= Ġtrue )) Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġtick Individual ( entity : ĠExport ed Entity Wrapper ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġdata Ġ= Ġentity . get < Example Component >() ĊĠĠĠĠĠĠĠ Ġprintln (" Tick ing Ġ$ data ") ĊĠĠĠĠĠĠĠ Ġentity . set < Example Component >( data . copy ( age Ġ= Ġdata . age Ġ+ Ġ 1 )) ĊĠĠĠĠĠĠĠ Ġprintln (" Updated ĠData ") ĊĠĠĠ Ġ} Ċ Ċ } Ċ Ċ @ Serializable Ċ @ Auto Component ( Example Component Serializer :: class ) Ċ data Ġclass ĠExample Component ( ĊĠĠĠ Ġval Ġname : ĠString , ĊĠĠĠ Ġval Ġage : ĠInt Ċ )