package Ġdev . arb j erg . uk ule le . command Ċ Ċ import Ġcom . sed mell uq . discord . lav ap layer . track . Audio Track Ċ import Ġdev . arb j erg . uk ule le . audio . Player Registry Ċ import Ġdev . arb j erg . uk ule le . features . Help Context Ċ import Ġdev . arb j erg . uk ule le . j da . Command Ċ import Ġdev . arb j erg . uk ule le . j da . Command Context Ċ import Ġorg . springframework . stereotype . Component Ċ Ċ @ Component Ċ /** Ċ br at ik : Ġj ' ai Ġaj out Ã© Ġnext Ġen Ġsyn ony me Ġde Ġskip Ċ Ġ*/ Ċ class ĠSkip Command Ġ: ĠCommand (" skip ", Ġ" s ", Ġ" next ") Ġ{ ĊĠĠĠ Ġoverride Ġsuspend Ġfun ĠCommand Context . invoke () Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġargument Text . isBlank () Ġ-> Ġskip Next () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġargument Text . toInt OrNull () Ġ!= Ġnull Ġ-> Ġskip Index ( argument Text . toInt ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġargument Text . split ("\\ s +". to Regex ()). size Ġ== Ġ 2 Ġ-> Ġskip Range () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun ĠCommand Context . skip Next () Ġ{ ĊĠĠĠĠĠĠĠ Ġprint Skipped ( player . skip ( 0 .. 0 )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun ĠCommand Context . skip Index ( i : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġind Ġ= Ġ( i - 1 ). coerce At Least ( 0 ) ĊĠĠĠĠĠĠĠ Ġprint Skipped ( player . skip ( ind .. ind )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun ĠCommand Context . skip Range () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġargs Ġ= Ġargument Text . split ("\\ s +". to Regex ()) ĊĊĠĠĠĠĠĠĠ Ġval Ġn 1 Ġ= Ġ( args [ 0 ]. toInt () Ġ- Ġ 1 ). coerce At Least ( 0 ) ĊĠĠĠĠĠĠĠ Ġval Ġn 2 Ġ= Ġ( args [ 1 ]. toInt () Ġ- Ġ 1 ). coerce At Least ( 0 ) ĊĠĠĠĠĠĠĠ Ġprint Skipped ( player . skip ( n 1 .. n 2 )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun ĠCommand Context . print Skipped ( skipped : ĠList < Audio Track >) Ġ= Ġwhen ( skipped . size ) Ġ{ ĊĠĠĠĠĠĠĠĠ 0 Ġ-> Ġreply Help () ĊĠĠĠĠĠĠĠĠ 1 Ġ-> Ġreply (" Skipped Ġ`${ skipped . first (). info . title }` ") ĊĠĠĠĠĠĠĠ Ġelse Ġ-> Ġreply (" Skipped Ġ`${ skipped . size } Ġtracks ` ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠHelp Context . provide Help () Ġ{ ĊĠĠĠĠĠĠĠ Ġadd Usage ("[ count ]") ĊĠĠĠĠĠĠĠ Ġadd Description (" Sk ips Ġa Ġnumber Ġof Ġtracks .") ĊĠĠĠĠĠĠĠ Ġadd Description (" Defaults Ġto Ġthe Ġfirst Ġtrack Ġif Ġno Ġnumber Ġis Ġgiven .") ĊĠĠĠĠĠĠĠ Ġadd Usage ("< from > Ġ< to >") ĊĠĠĠĠĠĠĠ Ġadd Description (" Sk ips Ġa Ġrange Ġof Ġtracks .") ĊĠĠĠ Ġ} Ċ }