package Ġcom . w yn n lab . min est om . gui Ċ Ċ import Ġcom . w yn n lab . min est om . COLOR _ WY NN Ċ import Ġcom . w yn n lab . min est om . core . player .* Ċ import Ġcom . w yn n lab . min est om . textColor Ċ import Ġcom . w yn n lab . min est om . util . displayName Non Italic Ċ import Ġcom . w yn n lab . min est om . util . hide All Flags Ċ import Ġcom . w yn n lab . min est om . util . lo re Non Italic Ċ import Ġnet . ky ori . ad venture . sound . Sound Ċ import Ġnet . ky ori . ad venture . text . Component Ċ import Ġnet . ky ori . ad venture . text . format . Named TextColor Ċ import Ġnet . ky ori . ad venture . text . format . Style Ċ import Ġnet . ky ori . ad venture . text . format . Text Decoration Ċ import Ġnet . ky ori . ad venture . text . serializer . legacy . Legacy Component Serializer Ċ import Ġnet . min est om . server . entity . Player Ċ import Ġnet . min est om . server . inventory . Inventory Type Ċ import Ġnet . min est om . server . inventory . click . Click Type Ċ import Ġnet . min est om . server . inventory . condition . Inventory Condition Result Ċ import Ġnet . min est om . server . item . ItemStack Ċ import Ġnet . min est om . server . item . ItemStack Builder Ċ import Ġnet . min est om . server . item . Material Ċ import Ġnet . min est om . server . item . lo re Ċ import Ġnet . min est om . server . sound . Sound Event Ċ import Ġjava . util .* Ċ import Ġkotlin . math . round ToInt Ċ Ċ object ĠMenu Gui Ġ: ĠGui (" Â§ c 2 0 0 ĠÂ§ 4 Skill ĠPoints ĠRem aining ", ĠInventory Type . CH EST _ 3 _ ROW ) Ġ{ ĊĠĠĠ Ġprivate Ġfun Ġget Title ( player : ĠPlayer ) Ġ= ĠComponent . trans latable (" gui . menu . skill _ points _ remaining ", ĠNamed TextColor . DARK _ RED , ĊĠĠĠĠĠĠĠ ĠComponent . text ( player . remaining Skill Assign s , ĠNamed TextColor . RED )) ĊĊĠĠĠ Ġprivate Ġval Ġguild Banner Item Ġ= Ġguild Banner Item () ĊĊĠĠĠ Ġoverride Ġfun Ġinit Items () Ġ{ ĊĠĠĠĠĠĠĠ Ġinv . setItem Stack ( 4 , Ġreset Skill Points Item ) ĊĠĠĠĠĠĠĠ Ġinv . setItem Stack ( 0 , Ġto mes Item ) ĊĠĠĠĠĠĠĠ Ġinv . setItem Stack ( 1 8 , Ġsettings Item ) ĊĠĠĠĠĠĠĠ Ġinv . setItem Stack ( 2 2 , Ġju ke box Item ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Open ( player : ĠPlayer ) Ġ{ ĊĠĠĠĠĠĠĠ Ġinv . title Ġ= Ġget Title ( player ) ĊĊĠĠĠĠĠĠĠ Ġrefresh Skill Books ( player ) ĊĊĠĠĠĠĠĠĠ Ġinv . setItem Stack ( 9 , Ġguild Banner Item ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġrefresh Skill Books ( player : ĠPlayer ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġs Ġ= Ġplayer . modified Skills ĊĠĠĠĠĠĠĠ Ġcurrent Skills [ player . uuid ] Ġ= Ġs ĊĠĠĠĠĠĠĠ Ġval Ġa Ġ= Ġplayer . assigned Skills ĊĠĠĠĠĠĠĠ Ġvar Ġm Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġfor Ġ( i Ġin Ġ 0 .. 4 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( s [ i ] Ġ!= Ġa [ i ]. toInt ()) Ġm Ġ+= Ġ 1 Ġshl Ġi ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcurrent Skills Modified [ player . uuid ] Ġ= Ġm ĊĊĠĠĠĠĠĠĠ Ġinv . setItem Stack ( 1 1 , Ġstr Book Item . skill Book Amount ( m Ġand Ġ 0 b 1 Ġ> Ġ 0 , Ġs [ 0 ]). build ()) ĊĠĠĠĠĠĠĠ Ġinv . setItem Stack ( 1 2 , Ġdex Book Item . skill Book Amount ( m Ġand Ġ 0 b 1 0 Ġ> Ġ 0 , Ġs [ 1 ]). build ()) ĊĠĠĠĠĠĠĠ Ġinv . setItem Stack ( 1 3 , Ġint Book Item . skill Book Amount ( m Ġand Ġ 0 b 1 0 0 Ġ> Ġ 0 , Ġs [ 2 ]). build ()) ĊĠĠĠĠĠĠĠ Ġinv . setItem Stack ( 1 4 , Ġdef Book Item . skill Book Amount ( m Ġand Ġ 0 b 1 0 0 0 Ġ> Ġ 0 , Ġs [ 3 ]). build ()) ĊĠĠĠĠĠĠĠ Ġinv . setItem Stack ( 1 5 , Ġag i Book Item . skill Book Amount ( m Ġand Ġ 0 b 1 0 0 0 0 Ġ> Ġ 0 , Ġs [ 4 ]). build ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġcurrent Skills Ġ= Ġhash Map Of < UUID , ĠInt Array >() ĊĠĠĠ Ġprivate Ġval Ġcurrent Skills Modified Ġ= Ġhash Map Of < UUID , ĠInt >() ĊĊĠĠĠ Ġoverride Ġfun ĠonClick ( player : ĠPlayer , Ġslot : ĠInt , Ġclick Type : ĠClick Type , Ġresult : ĠInventory Condition Result ) Ġ{ ĊĠĠĠĠĠĠĠ Ġresult . is Cancel Ġ= Ġtrue ĊĊĠĠĠĠĠĠĠ Ġval Ġadd Ġ= Ġwhen Ġ( click Type ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠClick Type . LEFT _ CLICK Ġ-> Ġ 1 ĊĠĠĠĠĠĠĠĠĠĠĠ ĠClick Type . RIGHT _ CLICK Ġ-> Ġ 5 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ 0 ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġwhen Ġ( slot ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠ 1 1 Ġ-> Ġinv . setItem Stack ( 1 1 , Ġstr Book Item . upgrade Skill ( player , Ġ 0 , Ġadd ). build ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠ 1 2 Ġ-> Ġinv . setItem Stack ( 1 2 , Ġdex Book Item . upgrade Skill ( player , Ġ 1 , Ġadd ). build ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠ 1 3 Ġ-> Ġinv . setItem Stack ( 1 3 , Ġint Book Item . upgrade Skill ( player , Ġ 2 , Ġadd ). build ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠ 1 4 Ġ-> Ġinv . setItem Stack ( 1 4 , Ġdef Book Item . upgrade Skill ( player , Ġ 3 , Ġadd ). build ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠ 1 5 Ġ-> Ġinv . setItem Stack ( 1 5 , Ġag i Book Item . upgrade Skill ( player , Ġ 4 , Ġadd ). build ()) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠ 4 Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġplayer . play Sound ( reset Sound ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġplayer . reset Skill Assign s () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrefresh Skill Books ( player ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġinv . title Ġ= Ġget Title ( player ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonClose ( player : ĠPlayer ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ// println (" Close ") ĊĠĠĠĠĠĠĠ Ġcheck Player Items ( player , Ġcurrent Skills . remove ( player . uuid ) !! ) ĊĠĠĠĠĠĠĠ Ġcurrent Skills Modified . remove ( player . uuid ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun ĠItemStack Builder . upgrade Skill ( player : ĠPlayer , Ġskill Index : ĠInt , Ġadd : ĠInt ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcs Ġ= Ġcurrent Skills [ player . uuid ] Ġ?: Ġreturn @ apply ĊĠĠĠĠĠĠĠ Ġval Ġassigned Ġ= Ġplayer . assigned Skills ĊĠĠĠĠĠĠĠ Ġval Ġrem Ġ= Ġ 2 0 0 Ġ- Ġassigned . sum () ĊĠĠĠĠĠĠĠ Ġval Ġto 1 0 0 Ġ= Ġ 1 0 0 Ġ- Ġassigned [ skill Index ] ĊĠĠĠĠĠĠĠ Ġval Ġactual Add Ġ= Ġif Ġ( rem Ġ> Ġ 0 Ġ&& Ġto 1 0 0 Ġ> Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer . play Sound ( success Add Sound ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd . coerce At Most ( rem ). coerce At Most ( to 1 0 0 ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer . play Sound ( fail Add Sound ) ĊĠĠĠĠĠĠĠĠĠĠĠĠ 0 ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcs [ skill Index ] Ġ= Ġ( cs [ skill Index ] Ġ+ Ġactual Add ). also Ġ{ Ġthis . skill Book Amount ( current Skills Modified [ player . uuid ] !! Ġand Ġ( 1 Ġshl Ġskill Index ) Ġ> Ġ 0 , Ġit ) Ġ} ĊĠĠĠĠĠĠĠ Ġplayer . upgrade Skill ( skill Index , Ġactual Add ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ// ĠTODO : Ġlocalized Ġskill Ġbook Ġitems ĊĠĠĠ Ġprivate Ġval Ġeach Point In This Skill Ġ= ĠComponent . text (" Each Ġpoint Ġin Ġthis Ġskill ", ĠNamed TextColor . GRAY ) ĊĠĠĠ Ġprivate Ġval Ġdamage You May Inf lict Ġ= ĠComponent . text (" damage Ġyou Ġmay Ġinf lict .", ĠNamed TextColor . GRAY ) ĊĠĠĠ Ġprivate Ġval Ġstr Book Item Ġ= Ġability Book Item ( Component . text (" Strength ", ĠNamed TextColor . DARK _ GREEN ), ĠlistOf ( ĊĠĠĠĠĠĠĠ Ġeach Point In This Skill , ĊĠĠĠĠĠĠĠ ĠLegacy Component Serializer . legacy ('& '). deserialize ("& 7 will & d Ġincrease Ġ& 7 any Ġdamage "), ĊĠĠĠĠĠĠĠ ĠLegacy Component Serializer . legacy ('& '). deserialize ("& 7 you Ġdeal Ġand Ġincrease Ġthe Ġ& 2 âľ ¤ ĠEarth "), ĊĠĠĠĠĠĠĠ Ġdamage You May Inf lict ĊĠĠĠ Ġ)) ĊĠĠĠ Ġprivate Ġval Ġdex Book Item Ġ= Ġability Book Item ( Component . text (" Dex ter ity ", ĠNamed TextColor . YELLOW ), ĠlistOf ( ĊĠĠĠĠĠĠĠ Ġeach Point In This Skill , ĊĠĠĠĠĠĠĠ ĠLegacy Component Serializer . legacy ('& '). deserialize ("& 7 will & d Ġincrease Ġ& 7 the Ġchance "), ĊĠĠĠĠĠĠĠ ĠLegacy Component Serializer . legacy ('& '). deserialize ("& 7 to Ġdo Ġa Ġcritical Ġhit Ġ( doub ling "), ĊĠĠĠĠĠĠĠ ĠLegacy Component Serializer . legacy ('& '). deserialize ("& 7 damage ) Ġand Ġincrease Ġthe Ġ& e âľ ¦ ĠTh under "), ĊĠĠĠĠĠĠĠ Ġdamage You May Inf lict ĊĠĠĠ Ġ)) ĊĠĠĠ Ġprivate Ġval Ġint Book Item Ġ= Ġability Book Item ( Component . text (" Int elligence ", ĠNamed TextColor . A QUA ), ĠlistOf ( ĊĠĠĠĠĠĠĠ Ġeach Point In This Skill , ĊĠĠĠĠĠĠĠ ĠLegacy Component Serializer . legacy ('& '). deserialize ("& 7 will & d Ġreduce Ġ& 7 mana Ġused "), ĊĠĠĠĠĠĠĠ ĠLegacy Component Serializer . legacy ('& '). deserialize ("& 7 by Ġspell s Ġand Ġincrease Ġthe Ġ& b âĿ ī ĠWater "), ĊĠĠĠĠĠĠĠ Ġdamage You May Inf lict ĊĠĠĠ Ġ)) ĊĠĠĠ Ġprivate Ġval Ġdef Book Item Ġ= Ġability Book Item ( Component . text (" Def ense ", ĠNamed TextColor . RED ), ĠlistOf ( ĊĠĠĠĠĠĠĠ Ġeach Point In This Skill , ĊĠĠĠĠĠĠĠ ĠLegacy Component Serializer . legacy ('& '). deserialize ("& 7 will & d Ġreduce Ġ& 7 any Ġdamage "), ĊĠĠĠĠĠĠĠ ĠLegacy Component Serializer . legacy ('& '). deserialize ("& 7 you Ġtake Ġand Ġincrease Ġthe Ġ& c âľ ¹ ĠFire "), ĊĠĠĠĠĠĠĠ Ġdamage You May Inf lict ĊĠĠĠ Ġ)) ĊĠĠĠ Ġprivate Ġval Ġag i Book Item Ġ= Ġability Book Item ( Component . text (" Ag ility ", ĠNamed TextColor . WHITE ), ĠlistOf ( ĊĠĠĠĠĠĠĠ Ġeach Point In This Skill , ĊĠĠĠĠĠĠĠ ĠLegacy Component Serializer . legacy ('& '). deserialize ("& 7 will & d Ġincrease Ġ& 7 the Ġchance "), ĊĠĠĠĠĠĠĠ ĠLegacy Component Serializer . legacy ('& '). deserialize ("& 7 to Ġdod ge Ġattacks Ġand Ġincrease "), ĊĠĠĠĠĠĠĠ ĠLegacy Component Serializer . legacy ('& '). deserialize ("& 7 the Ġ& f âĿ ĭ ĠAir Ġ& 7 damage Ġyou Ġmay "), ĊĠĠĠĠĠĠĠ ĠComponent . text (" inf lict ", ĠNamed TextColor . GRAY ) ĊĠĠĠ Ġ)) Ċ } Ċ Ċ private Ġval Ġsuccess Add Sound Ġ= ĠSound . sound ( Sound Event . ENTITY _ EX PER I ENCE _ OR B _ P ICK UP , ĠSound . Source . MASTER , Ġ 1 f , Ġ 1 . 1 f ) Ċ private Ġval Ġfail Add Sound Ġ= ĠSound . sound ( Sound Event . BLOCK _ AN V IL _ PLACE , ĠSound . Source . MASTER , Ġ 1 f , Ġ 1 . 1 f ) Ċ private Ġval Ġreset Sound Ġ= ĠSound . sound ( Sound Event . ENTITY _ PLAYER _ LEVEL UP , ĠSound . Source . MASTER , Ġ 1 f , Ġ 1 f ) Ċ Ċ private Ġfun ĠItemStack Builder . skill Book Amount ( modified : ĠBoolean , Ġamount : ĠInt ) Ġ= Ġapply Ġ{ ĊĠĠĠ Ġif Ġ( amount Ġ== Ġ 0 ) Ġamount ( 1 ) ĊĠĠĠ Ġelse Ġif Ġ( amount Ġ< Ġ 0 ) Ġamount (- amount ) ĊĠĠĠ Ġelse Ġif Ġ( amount Ġ>= Ġ 6 4 ) Ġamount ( 6 4 ) ĊĠĠĠ Ġelse Ġamount ( amount ) ĊĠĠĠ Ġskill Book L ore ( this , Ġmodified , Ġamount ) Ċ } Ċ Ċ private Ġval Ġreset Skill Points Item Ġ= ĠItemStack . builder ( Material . G OLD EN _ SHO VEL ) ĊĠĠĠ Ġ. displayName Non Italic ( Component . trans latable (" gui . menu . reset _ skill _ points ", ĠNamed TextColor . YELLOW )) ĊĠĠĠ Ġ. lo re Non Italic ( Component . text () ĊĠĠĠĠĠĠĠ Ġ. append ( Component . trans latable (" gui . menu . reset _ skill _ points . cost ", ĠNamed TextColor . GRAY )) ĊĠĠĠĠĠĠĠ Ġ. append ( Component . trans latable (" gui . menu . reset _ skill _ points . cost . so ul _ points ", ĠNamed TextColor . WHITE )) ĊĠĠĠĠĠĠĠ Ġ. build ()) ĊĠĠĠ Ġ. meta Ġ{ Ġit ĊĠĠĠĠĠĠĠ Ġ. damage ( 2 1 ) ĊĠĠĠĠĠĠĠ Ġ. un break able ( true ) ĊĠĠĠĠĠĠĠ Ġ. hide All Flags () ĊĠĠĠ Ġ} ĊĠĠĠ Ġ. build () Ċ Ċ private Ġval Ġto mes Item Ġ= ĠItemStack . builder ( Material . EN CHANT ED _ BOOK ) ĊĠĠĠ Ġ. displayName Non Italic ( Component . trans latable (" gui . menu . to mes ", ĠStyle . style ( Named TextColor . DARK _ PUR PLE , ĠText Decoration . BOLD ))) ĊĠĠĠ Ġ. build () Ċ Ċ private Ġfun Ġguild Banner Item () Ġ= ĠItemStack . builder ( Material . BLACK _ BAN NER ) ĊĠĠĠ Ġ. displayName Non Italic ( Component . trans latable (" gui . menu . guild ", ĠStyle . style ( Named TextColor . A QUA , ĠText Decoration . BOLD ))) ĊĠĠĠ Ġ. build () Ċ Ċ private Ġval Ġsettings Item Ġ= ĠItemStack . builder ( Material . CR AFT ING _ TABLE ) ĊĠĠĠ Ġ. displayName Non Italic ( Component . trans latable (" gui . menu . settings ")) ĊĠĠĠ Ġ. build () Ċ Ċ private Ġval Ġju ke box Item Ġ= ĠItemStack . builder ( Material . JU KE BOX ) ĊĠĠĠ Ġ. displayName Non Italic ( Component . trans latable (" gui . menu . ju ke box ", ĠNamed TextColor . A QUA )) ĊĠĠĠ Ġ. build () ĊĊ Ċ private Ġfun Ġability Book Item ( name : ĠComponent , Ġlo re : ĠList < Component >) Ġ= ĠItemStack . builder ( Material . BOOK ). amount ( 1 ) ĊĠĠĠ Ġ. displayName Non Italic ( Component . trans latable (" gui . menu . skill _ book . upgrade ", ĠNamed TextColor . LIGHT _ PUR PLE , Ġname )) ĊĠĠĠ Ġ. lo re Non Italic ( skill Book L ore Generic . apply Ġ{ Ġadd All ( lo re ) Ġ}) Ċ Ċ private Ġfun Ġskill Book L ore ( builder : ĠItemStack Builder , Ġmodified : ĠBoolean , Ġamount : ĠInt ) Ġ{ ĊĠĠĠ Ġbuilder . lo re Non Italic ( builder . lo re . let Ġ{ Ġval Ġm Ġ= Ġit . to Mutable List (); Ġset Skill Book L ore ( m , Ġamount , Ġmodified ); Ġm Ġ}) Ċ } Ċ Ċ /* Ċ & r ĠĠĠĠĠĠ Ġ& 7 & l Now ĠĠĠĠĠĠĠĠĠĠ Ġ& 6 & l Next Ċ & r ĠĠĠĠĠĠ Ġ& a %. 1 f %% ĠĠĠĠ ĠÂ§ a > Â§ 2 > Â§ a > Â§ 2 > ĠĠĠ Ġ& e %. 1 f %% Ċ & r ĠĠĠĠ Ġ& 7 % d Ġpoints ĠĠĠĠĠĠĠĠĠ ĠÂ§ 6 % d Ġpoints Ċ Ġ*/ Ċ private Ġval Ġskill Book L ore Generic Ġget () Ġ= Ġmutable ListOf < Component >( ĊĠĠĠ ĠComponent . empty (), ĊĠĠĠ ĠComponent . text () ĊĠĠĠĠĠĠĠ Ġ. append ( Component . trans latable (" gui . menu . skill _ book . now . spaces ")) ĊĠĠĠĠĠĠĠ Ġ. append ( Component . trans latable (" gui . menu . skill _ book . now ", ĠNamed TextColor . GRAY , ĠText Decoration . BOLD )) ĊĠĠĠĠĠĠĠ Ġ. append ( Component . trans latable (" gui . menu . skill _ book . next . spaces ")) ĊĠĠĠĠĠĠĠ Ġ. append ( Component . trans latable (" gui . menu . skill _ book . next ", ĠNamed TextColor . G OLD , ĠText Decoration . BOLD )) ĊĠĠĠĠĠĠĠ Ġ. build (), ĊĠĠĠ ĠComponent . empty (), ĊĠĠĠ ĠComponent . empty (), ĊĠĠĠ ĠComponent . empty (), Ċ ) Ċ Ċ private Ġfun Ġset Skill Book L ore ( lo re : ĠMutable List < Component >, Ġvalue : ĠInt , Ġmodified : ĠBoolean ) Ġ{ ĊĠĠĠ Ġlo re [ 2 ] Ġ= ĠComponent . text () ĊĠĠĠĠĠĠĠ Ġ. append ( Component . text (" ĠĠĠĠĠĠ Ġ${ ( skill Percentage ( value ) Ġ* Ġ 1 0 0 0 ). round ToInt () Ġ/ Ġ 1 0 f }% ĠĠĠĠ Ġ> ", ĠNamed TextColor . GREEN )) ĊĠĠĠĠĠĠĠ Ġ. append ( Component . text ("> ", ĠNamed TextColor . DARK _ GREEN )) ĊĠĠĠĠĠĠĠ Ġ. append ( Component . text ("> ", ĠNamed TextColor . GREEN )) ĊĠĠĠĠĠĠĠ Ġ. append ( Component . text ("> ĠĠĠ Ġ", ĠNamed TextColor . DARK _ GREEN )) ĊĠĠĠĠĠĠĠ Ġ. append ( Component . text ("${ ( skill Percentage ( value Ġ+ Ġ 1 ) Ġ* Ġ 1 0 0 0 ). round ToInt () Ġ/ Ġ 1 0 f }% ", ĠNamed TextColor . YELLOW )) ĊĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠ Ġlo re [ 3 ] Ġ= ĠComponent . text () ĊĠĠĠĠĠĠĠ Ġ. append ( Component . trans latable (" gui . menu . skill _ book . now . points ", ĠNamed TextColor . GRAY , ĠComponent . text ( value ))) ĊĠĠĠĠĠĠĠ Ġ. append ( Component . trans latable (" gui . menu . skill _ book . next . points ", ĠNamed TextColor . G OLD , ĠComponent . text ( value Ġ+ Ġ 1 ))) ĊĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠ Ġif Ġ( lo re . size Ġ> Ġ 1 0 Ġ&& Ġ! modified ) Ġ{ ĊĠĠĠĠĠĠĠ Ġlo re . remove At ( lo re . size Ġ- Ġ 1 ) ĊĠĠĠĠĠĠĠ Ġlo re . remove At ( lo re . size Ġ- Ġ 1 ) ĊĠĠĠ Ġ} Ġelse Ġif Ġ( lo re . size Ġ<= Ġ 1 0 Ġ&& Ġmodified ) Ġ{ ĊĠĠĠĠĠĠĠ Ġlo re . add ( Component . empty ()) ĊĠĠĠĠĠĠĠ Ġlo re . add ( Component . trans latable (" gui . menu . skill _ book . modified ", ĠCOLOR _ WY NN . textColor )) ĊĠĠĠ Ġ} Ċ }