package Ġgg . ob sid ian . mod tools Ċ Ċ import Ġorg . bukkit . Bu kkit Ċ import Ġorg . bukkit . event . EventHandler Ċ import Ġorg . bukkit . event . Listener Ċ import Ġorg . bukkit . event . player . Player Command Pre process Event Ċ import Ġorg . bukkit . event . player . Player Join Event Ċ Ċ class ĠEvent Listener ( val Ġplugin : ĠMod Tools ): ĠListener Ġ{ ĊĊĠĠĠ Ġ@ EventHandler ĊĠĠĠ Ġfun Ġon Player Join ( e : ĠPlayer Join Event ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( Permissions . spy Auto . has ( e . player )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplugin . enable Spy ( e . player ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ EventHandler ĊĠĠĠ Ġfun Ġon Command Pre process ( e : ĠPlayer Command Pre process Event ) Ġ{ ĊĠĠĠĠĠĠĠ Ġplugin . logger . info (" Got Ġa Ġcommand Ġevent ") ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġmessage Ġ= Ġe . message ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( message . startsWith ("/ ")) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage Ġ= Ġmessage . substring ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmessage Ġ= Ġmessage . replace (" ([ Ġ] + )", Ġ"$ 1 ") ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġargs Ġ= Ġmessage . split (" Ġ") ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġplugin . logger . info (" command Ġwas Ġ" Ġ+ Ġargs ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! plugin . config . WATCH ED _ COMMAND S . contains ( args [ 0 ]. toLowerCase ())) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( args [ 0 ]. equals (" r ", Ġignore Case Ġ= Ġtrue ) Ġ|| Ġargs [ 0 ]. equals (" reply ", Ġignore Case Ġ= Ġtrue )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( args . size Ġ<= Ġ 1 ) Ġreturn ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfrom Ġ= Ġe . player ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġto Ġ= ĠBu kkit . getPlayer ( Msg History . get To ( from )) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMsg History . report Message ( from , Ġto ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġplugin . utils . send Spy Message ( from , Ġto , Ġargs . sub List ( 1 , Ġargs . size ). join ToString (" Ġ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( args . size Ġ> Ġ 2 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfrom Ġ= Ġe . player ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġto Ġ= Ġfrom . server . getPlayer ( args [ 1 ]) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMsg History . report Message ( from , Ġto ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġplugin . utils . send Spy Message ( from , Ġto , Ġargs . sub List ( 2 , Ġargs . size ). join ToString (" Ġ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplugin . logger . se vere ( e . message ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠIgnore Ġerrors ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }