毎フレームで考えるからあかん
  何フレーム打ってたか?
それだけ考えればいい

struct kye_info {
   /* 方向キー
     1…左
     2…上
     3…右
     4…下
     0…方向キー無し */
  long ward;
   /* 打ってた時間 */
  long time;
 // とか、もしくは long press_frame;とかでいいかと
}
とでもやっておけばいいんじゃないかな