diff --git a/display.py b/display.py index cc1c090..65e6d3f 100644 --- a/display.py +++ b/display.py @@ -181,6 +181,12 @@ def pframe(): speed = self.move.dspeed self.max_Kps = KPS if KPS>self.max_Kps else self.max_Kps self.max_speed = speed if speed>self.max_speed else self.max_speed + if self.akey.clearKPS == True: # known bug: press reset when not self.idle_idle will refresh self.max_KPS in next frame + self.max_Kps = 0.0 + self._change_num(self.akps_num, self.max_Kps, self.akps_center) + #self.mtext.set_option(display=1) + self._display() + self.akey.clearKPS = False kkps, kp, kdp, key_tapnum = [], [], [], [] for i in range(self.keynum): kkps += [self.all_key[i].dKPS] diff --git a/tap.py b/tap.py index 3374fdc..2c4143b 100644 --- a/tap.py +++ b/tap.py @@ -22,6 +22,7 @@ def start(self): allkeytap += keyn.alltap self.akey._cal_KPS(KPS) self.akey._cal_dKPS() + self.akey.check_reset_maxKPS() self.akey.alltap = allkeytap sleep(0.01) @@ -43,6 +44,7 @@ def __init__(self, dposition_decrease= 0.05, tapframes = 100, need_standframes = self.alltap = 0 self.KPS = 0 self.dKPS = 0 + self.clearKPS = False self.standframes = 0 self.stand_all_KPS = 0 # exit @@ -95,6 +97,10 @@ def _cal_dKPS(self): self.__change_dKPS() # KPS is not stand return self.dKPS + + def check_reset_maxKPS(self): + if is_pressed("ctrl+r"): + self.clearKPS = True class key(allKey): def __init__(self, keynum, keystr, is_mouse = False, dposition_decrease= 0.05, tapframes = 100, need_standframes = 100, basemul = 10, decrease_lv = 2, zero_decrease_lv = 1):