カウンターを2つにしたんですけど、一つでもいいですね。
今のところはこれくらいでいいかな。
レスポンスが悪かったので、試行錯誤しました。
void MesWindow::update() {
if ((visible) && (active)) {
if (number_of_choices > 0) {
if (get_stick_index == 5) {
WaitTimer(1);// ここで0.001秒まつ
get_stick_index = get_stick4();
}
if (counter == 0) {
if (get_stick_index == 8) {
if (index > 0) {
index--;
SEPlay(2);//カーソル移動
}
else {
index = number_of_choices - 1;
SEPlay(2);//カーソル移動
}
get_stick_index = 10;
}
if (get_stick_index == 2) {
if (index < number_of_choices - 1) {
index++;
SEPlay(2);//カーソル移動
}
else {
index = 0;
SEPlay(2);//カーソル移動
}
get_stick_index = 10;
}
}
}
WindowBase::update();
create_contents();
if ((counter2 == 0) && (get_stick_index == 10)) {
get_stick_index = 5;
}
counter = (counter > 0) ? counter - 1 : 1;
counter2 = (counter2 > 0) ? counter2 - 1 : 50;
}
}