Contador zerar se não for o certo

O comando está certo?

If (countJoy == 1) {
countJoy++;
}
Else If (countJoy >1) {
countJoy = 0;
}

Por ex... Tenho dois botões e dois leds, preciso que ele conte toda vez que o botão certo é apertado e se o botão errado for apertado ele resete o contador.

Outra dúvida, pra colocar mais de um comando desse no mesmo botão, tipo:

If (countJoy == 4) {
countJoy++;
}
Else If (countJoy > 4) {
countJoy = 0;
}

Já pra colocar os dois no mesmo botão?

Esse código tá meio estranho. Toda vez que countJoy for igual a 1 ele soma mais um e depois ele diz que se for maior que 1 ele volta pra zero??
Vamos ignorar seu código. Você quer um contador e um reset, certo?
Se o botão reset for acionado você diz que contador é igual a zero, se o botão contador for acionado você diz que ele pode contar

If( resetBtn == HIGH) {
    countJoy = 0;
}
while(countBtn == HIGH){
   count = true;
}

If ( count == true) {
    countJoy += 1;
    count = false;
}

Se você quiser fazer para vários contadores com mesmo botão para contar, o ideal é usar outros botões para resetar.
Aí na instrução while você adiciona count1, count2... Depois só verificar com os if's