package Ġorg . k am ib l ue . bot kt . command . options Ċ Ċ import Ġorg . k am ib l ue . bot kt . Console Ċ import Ġorg . k am ib l ue . bot kt . Permission Types Ċ import Ġorg . k am ib l ue . bot kt . Permissions . has Permission Ċ import Ġorg . k am ib l ue . bot kt . command . Message Execute Event Ċ import Ġorg . k am ib l ue . bot kt . utils . Colors Ċ import Ġorg . k am ib l ue . bot kt . utils . StringUtils . to Human Readable Ċ import Ġorg . k am ib l ue . command . execute . Execute Option Ċ Ċ class ĠAny Permission ( private Ġvar arg Ġval Ġpermissions : ĠPermission Types ) Ġ: ĠExecute Option < Message Execute Event > Ġ{ ĊĠĠĠ Ġprivate Ġval Ġpermission List String Ġ= Ġpermissions . join ToString Ġ{ Ġ"` ${ it . name . to Human Readable () }` " Ġ} ĊĊĠĠĠ Ġoverride Ġsuspend Ġfun Ġcan Execute ( event : ĠMessage Execute Event ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġevent . message Ġis ĠConsole . Fake Message Ġ|| ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpermissions . any Ġ{ Ġevent . message . author . has Permission ( it ) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġsuspend Ġfun Ġon Failed ( event : ĠMessage Execute Event ) Ġ{ ĊĠĠĠĠĠĠĠ Ġevent . channel . send Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġembed Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtitle Ġ= Ġ" Missing Ġpermission " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdescription Ġ= Ġ" You Ġneed Ġone Ġof Ġthe Ġfollowing Ġpermissions Ġto Ġuse Ġthis Ġcommand !\ n $ permission List String " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcolor Ġ= ĠColors . ERROR . color ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ