package Ġcom . ly ee ed ar . Components Ċ Ċ import Ġcom . badlogic . ash ley . core . Entity Ċ import Ġcom . badlogic . gdx . utils . Xml Reader Ċ import Ġcom . es ot eric software . k ry o . K ry o Ċ import Ġcom . es ot eric software . k ry o . io . Input Ċ import Ġcom . es ot eric software . k ry o . io . Output Ċ import Ġcom . ly ee ed ar . Combo . Combo Tree Ċ import Ġcom . ly ee ed ar . Combo . Item Ċ import Ġcom . ly ee ed ar . Combo . Weapon Ċ import Ġcom . ly ee ed ar . Util . get Xml Ċ Ċ class ĠCombo Component (): ĠAbstract Component () Ċ { Ċ ĉ late init Ġvar Ġcom bos : ĠCombo Tree Ċ ĉ var Ġcurrent Combo : ĠCombo Tree ? Ġ= Ġnull ĊĊ ĉ var Ġcombo Source : ĠWeapon ? Ġ= Ġnull ĊĊ ĉ override Ġfun Ġparse ( xml : ĠXml Reader . Element , Ġentity : ĠEntity ) Ċ ĉ { Ċĉ ĉ val Ġref xml Ġ= Ġget Xml ( xml . get (" Combo Tree ")) ĊĊĉ ĉ if Ġ( ref xml . name Ġ== Ġ" Weapon ") Ċĉ ĉ { Ċĉĉ ĉ val Ġweapon Ġ= ĠItem . load ( ref xml ) Ġas ĠWeapon Ċĉĉ ĉ combo Source Ġ= Ġweapon Ċĉ ĉ } ĊĊĉ ĉ com bos Ġ= ĠCombo Tree . load ( ref xml ) Ċ ĉ } ĊĊ ĉ override Ġfun Ġsave Data ( k ry o : ĠK ry o , Ġoutput : ĠOutput ) Ċ ĉ { Ċĉ ĉ output . write Boolean ( combo Source Ġ!= Ġnull ) ĊĊĉ ĉ if Ġ( combo Source Ġ!= Ġnull ) Ċĉ ĉ { Ċĉĉ ĉ k ry o . write Class And Object ( output , Ġcombo Source !!. load Data ) Ċĉ ĉ } Ċ ĉ } ĊĊ ĉ override Ġfun Ġload Data ( k ry o : ĠK ry o , Ġinput : ĠInput ) Ċ ĉ { Ċĉ ĉ val Ġhas Item Ġ= Ġinput . read Boolean () ĊĊĉ ĉ if Ġ( has Item ) Ċĉ ĉ { Ċĉĉ ĉ val Ġxml Ġ= Ġk ry o . read Class And Object ( input ) Ġas ĠXml Reader . Element Ċĉĉ ĉ val Ġitem Ġ= ĠItem . load ( xml ) Ġas ĠWeapon Ċĉĉ ĉ combo Source Ġ= Ġitem Ċĉĉ ĉ com bos Ġ= Ġitem . com bos Ċĉ ĉ } Ċ ĉ } Ċ }