Errore Void Personalizzati

Salve, avrei un problema con il mio sketch di una bomba Softair. ogni void personalizzato che ho creato, risulta “non dichiarato” con output ‘(nome void) was not declared in this scope’, avreste suggerimenti su come sistemare??

P.S. Ho soltanto 13 anni, non sono un programmatore professionista… :smiley:

Lo sketch è il seguente

#include <LiquidCrystal.h>
#include <Keypad.h>
char keyInsert[6];
// Queste variabili servono come verifica del corretto inserimento del codice
int i = 0;
int j = 0;
int s = 0;
int x = 0;
int randNumber = 0;
int randNumber1 = 0;
LiquidCrystal lcd(12, 11, 10, A0, A1, A2, A3);

const byte ROWS = 4; //four rows
const byte COLS = 4; //three columns
char keys[ROWS][COLS] = {
  {'1','2','3','A'},
  {'4','5','6','B'},
  {'7','8','9','C'},
  {'*','0','#','D'}
};

byte rowPins[ROWS] = {8,7,6,5}; //connect to the row pinouts of the keypad
byte colPins[COLS] = {4,3,2,1}; //connect to the column pinouts of the keypad

Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );
char key = keypad.getKey();
char code[7]= "112233";

 
void setup() {
  randomSeed(analogRead(4));
  randNumber = random(105000, 198728);
  code[7]= randNumber;
  lcd.begin(16, 2);
  lcd.clear();
  lcd.setCursor(0,0);
  lcd.print("Codice: ");
  lcd.setCursor(0,1);
  lcd.print(randNumber);
}

void loop() {
  lcd.clear();
  lcd.setCursor(0,0);
  lcd.print("Vuoi continuare?");
  lcd.setCursor(0,1);
  lcd.print("1, Si - 2, No");
  if(key == '1') {
    disinnesco();
  }
  if(key == '2') {
    lcd.clear();
    lcd.setCursor(0,0);
    lcd.print("ROUND VINTO DA");
    lcd.setCursor(0,1);
    lcd.print("DIFENSORI");
  }
}
void disinnesco() {
  lcd.clear();
  lcd.setCursor(0,0);
  lcd.print("Inserire Codice");
  lcd.setCursor(0,1);
  if(key != NO_KEY && j<6) {
    lcd.setCursor(0,1);
    lcd.print("*");
    keyInsert[j]=key;
    j++;
  }
   if(key == '*') {
      lcd.clear();
      lcd.setCursor(0,0);
      lcd.print("Verifica...");
      delay(1000);
      for(s=0; s<6;s++){
        if(keyInsert[s]==code[s]){
          x++;
     }
     
    }
  if(x==6) {
    lcd.clear();
    lcd.setCursor(0,0);
    lcd.print("Codice Corretto");  
    x=0;
    i=0;
    j=0;
    cavo();
  
  }else{
    lcd.clear();
    lcd.setCursor(0,0);
    lcd.print("ROUND VINTO DA");
    lcd.setCursor(0,1);
    lcd.print("DIFENSORI");
  }
}
void cavo() {
  lcd.clear();
  lcd.setCursor(0,0);
  lcd.print("Scegli un cavo da tagliare!");
  lcd.setCursor(0,1);
  randomSeed(analogRead(5));
  randNumber1 = random(1, 3)
  if(randNumber1 = 1) {
    cavo1();
  }
  if(randNumber1 = 2) {
    cavo2();
  }
  if(randNumbr1 = 3) {
    cavo3();
  }
}

void cavo1() {
  if(digitalRead(13 == LOW)) {
    lcd.clear();
    lcd.setCursor(0,0);
    lcd.print("BOMBA DISINNESCATA!");
  }
}
void cavo2() {
  if(digitalRead(9 == LOW)) {
    lcd.clear();
    lcd.setCursor(0,0);
    lcd.print("BOMBA DISINNESCATA!");
  }
}
void cavo3() {
   if(digitalRead(0 == LOW)) {
    lcd.clear();
    lcd.setCursor(0,0);
    lcd.print("BOMBA DISINNESCATA!");
  }
}

There is a closing brace } missing at the end of your disinnesco function.

Thank you so much, I really appreciate that!