Boa tarde @Denis_Gomes,
um problema visto no código é que você está sobrescrevendo a variável State, note que você realiza 4 leituras nela. Com isso somente o valor da última “State = digitalRead(34)” será válido, e assim só entrará no IF quando essa entrada for HIGH.
Um sugestão para detectar qual entrada está ativa é separar em outras variáveis:
State1 = digitalRead(22);
State2 = digitalRead(26);
…
E então fazer um IF para cada uma delas:
if(State1==HIGH){
digitalWrite(22,HIGH);
delay(3000);
digitalWrite(22,LOW)
}
if(State2==HIGH){
digitalWrite(26,HIGH);
delay(3000);
digitalWrite(26,LOW)
}
…