Ну по крайней мере как бы я делал.
Херовый способ:
будет у тебя короче переменная интовая которая будет считать кпс, после каждого клика ты делаешь ей ++, ещё дополнительно до клика ты должен поставить таймер на 1 сек, и каждую секу он будет сетать твою переменную на 0. Ну и не забудь поставить проверку перед кликом шо твоя переменная < скок над кпс.
Способ получше:
Будет у тебя там ArrayList, LinkedList на твой выбор сам разберёшься можешь объектом сделать,вообще похер ( буду объяснять на примере LinkedList'a).
Сам лист у нас будет содержать лонг значения, после клика добавляешь в лист System.currentTimeMills(вроде так пишется, можешь сделать через нано).
Ну и перед самим кликом ты делаешь парс всего листа и смотришь прошло ли от того времени >= 1секе, если да то ремуваешь ну и потом просто перед кликом проверка шо list.size() < cps, ну и по факту должно воркать >~<