package Ġcom . kim ar ile m . bukkit . rx bukkit . internal . bukkit Ċ Ċ import Ġorg . bukkit . command . Command Executor Ċ import Ġorg . bukkit . command . Plugin Command Ċ import Ġorg . bukkit . plugin . Plugin Ċ Ċ internal Ġinterface ĠCommand Service Ġ{ ĊĊĠĠĠ Ġfun Ġregister Command ( command : ĠPlugin Command , Ġcommand Executor : ĠCommand Executor ) ĊĠĠĠ Ġfun Ġdere gister Command ( command : ĠPlugin Command ) ĊĠĠĠ Ġfun Ġget Command ( plugin : ĠPlugin , Ġcommand : ĠString ): ĠPlugin Command ? Ċ } Ċ Ċ internal Ġclass ĠBu kkit Command Service Ġ: ĠCommand Service Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġregister Command ( command : ĠPlugin Command , Ġcommand Executor : ĠCommand Executor ) Ġ{ ĊĠĠĠĠĠĠĠ Ġcommand . set Executor ( command Executor ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdere gister Command ( command : ĠPlugin Command ) Ġ{ ĊĠĠĠĠĠĠĠ Ġcommand . set Executor ( null ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Command ( plugin : ĠPlugin , Ġcommand : ĠString ) Ġ= ĊĠĠĠĠĠĠĠ Ġplugin . server . get Plugin Command ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ"${ plugin . description . name . toLowerCase ()} :${ command . toLowerCase () }" ĊĠĠĠĠĠĠĠ Ġ). let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( it ?. plugin ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġplugin Ġ-> Ġit ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} Ċ } Ċ