How to arrange code - word clock with simultaneous effects using WS2812b

Any help is much appreciated

Code part 2

void fadeWord(int arrCols[], int arrSize, int iRow, RGB startColor, RGB endColor, int steps, int wait) { //fade word from one colour to another
  //matrix.drawPixel(col, row, Adafruit_NeoMatrix::Color)
    long lastMillis = 0;
    unsigned long currentMillis = millis();
    if (currentMillis - lastMillis > wait){
        lastMillis = currentMillis; //reset counter
        for(int i = 0; i <= steps; i++) {
           int newR = startColor.r + (endColor.r - startColor.r) * i / steps;
           int newG = startColor.g + (endColor.g - startColor.g) * i / steps;
           int newB = startColor.b + (endColor.b - startColor.b) * i / steps;
           for (int j = 0; j < arrSize; j++) {
               if(arrCols[j] == -1){ //at end of word
                   matrix.show(); //show the pixels
                   //break; //get out, we are at end of word
               }else{
                   //if not yet at end of word, set colour and keep looping through for statement
                   matrix.drawPixel(arrCols[j], iRow, matrix.Color(newR, newG, newB));
               }
           }
        }
    }
}

void spellWord(int arrCols[], int arrSize, int iRow, int wait){
  long nextOperation = millis() + wait;
  for(int i = 0; i < arrSize;){
    if(arrCols[i] == -1){
      break; // get out of loop if end of word, indicated by -1
      Serial.println("out");
    }else{
      if (nextOperation <= millis()) {
      nextOperation = millis() + wait;
      Serial.println(arrCols[i]);
      matrix.drawPixel(arrCols[i], iRow, matrix.Color(red.r, red.g, red.b));
      matrix.show(); //display pixels
      i++;
      }
    }
  }
}

void displayClock() {

if ((mytimemin== 0)
      | (mytimemin== 5)
      | (mytimemin== 10)
      | (mytimemin== 15)
      | (mytimemin== 20)
      | (mytimemin== 25)
      | (mytimemin == 30)
      | (mytimemin == 35)
      | (mytimemin == 40)
      | (mytimemin == 45)
      | (mytimemin == 50)
      | (mytimemin == 55)) {
    exactly(ON);
  } else {
    exactly(OFF);
  }
  if ((mytimemin == 1)
      | (mytimemin == 2)
      | (mytimemin == 6)
      | (mytimemin == 7)
      | (mytimemin == 11)
      | (mytimemin == 12)
      | (mytimemin == 16)
      | (mytimemin == 17)
      | (mytimemin == 21)
      | (mytimemin == 22)
      | (mytimemin == 26)
      | (mytimemin == 27)
      | (mytimemin == 31)
      | (mytimemin == 32)
      | (mytimemin == 36)
      | (mytimemin == 37)
      | (mytimemin == 41)
      | (mytimemin == 42)
      | (mytimemin == 46)
      | (mytimemin == 47)
      | (mytimemin == 51)
      | (mytimemin == 52)
      | (mytimemin == 56)
      | (mytimemin == 57)) {
        past(ON);
      } else {
        past(OFF);
  }
  if ((mytimemin == 3)
      | (mytimemin == 4)
      | (mytimemin == 8)
      | (mytimemin == 9)
      | (mytimemin == 13)
      | (mytimemin == 14)
      | (mytimemin == 18)
      | (mytimemin == 19)
      | (mytimemin == 23)
      | (mytimemin == 24)
      | (mytimemin == 28)
      | (mytimemin == 29)
      | (mytimemin == 33)
      | (mytimemin == 34)
      | (mytimemin == 38)
      | (mytimemin == 39)
      | (mytimemin == 43)
      | (mytimemin == 44)
      | (mytimemin == 48)
      | (mytimemin == 49)
      | (mytimemin == 53)
      | (mytimemin == 54)
      | (mytimemin == 58)
      | (mytimemin == 59)) {
        near(ON);
    } else {
        near(OFF);
  }


  //calculate minutes on the hour
    if(mytimemin<3){
      quarter(OFF);
      twenty(OFF);
      mten(OFF);
      mfive(OFF);
      half(OFF);
      to(OFF);
      past2(OFF);
    }
    // do nothing, no minutes it's on the hour

    if(mytimemin>2 && mytimemin<8){
      quarter(OFF);
      twenty(OFF);
      mten(OFF);
      mfive(ON);
      half(OFF);
      to(OFF);
      past2(ON);
    }

    if(mytimemin>7 && mytimemin<13){
      quarter(OFF);
      twenty(OFF);
      mten(ON);
      mfive(OFF);
      half(OFF);
      to(OFF);
      past2(ON);
    }
    if(mytimemin>12 && mytimemin<18){
      quarter(ON);
      twenty(OFF);
      mten(OFF);
      mfive(OFF);
      half(OFF);
      to(OFF);
      past2(ON);
    }
    if(mytimemin>17 && mytimemin<23){
      quarter(OFF);
      twenty(ON);
      mten(OFF);
      mfive(OFF);
      half(OFF);
      to(OFF);
      past2(ON);
    }
    if(mytimemin>22 && mytimemin<28){
      quarter(OFF);
      twenty(ON);
      mten(OFF);
      mfive(ON);
      half(OFF);
      to(OFF);
      past2(ON);
    }
    if(mytimemin>27 && mytimemin<33){
      quarter(OFF);
      twenty(OFF);
      mten(OFF);
      mfive(OFF);
      half(ON);
      to(OFF);
      past2(ON);
    }
    if(mytimemin>32 && mytimemin<38){
      quarter(OFF);
      twenty(ON);
      mten(OFF);
      mfive(ON);
      half(OFF);
      to(ON);
      past2(OFF);
    }
    if(mytimemin>37 && mytimemin<43){
      quarter(OFF);
      twenty(ON);
      mten(OFF);
      mfive(OFF);
      half(OFF);
      to(ON);
      past2(OFF);
    }
    if(mytimemin>42 && mytimemin<48){
      quarter(ON);
      twenty(OFF);
      mten(OFF);
      mfive(OFF);
      half(OFF);
      to(ON);
      past2(OFF);
    }
    if(mytimemin>47 && mytimemin<53){
      quarter(OFF);
      twenty(OFF);
      mten(ON);
      mfive(OFF);
      half(OFF);
      to(ON);
      past2(OFF);
    }
    if(mytimemin>52 && mytimemin<58){
      quarter(OFF);
      twenty(OFF);
      mten(OFF);
      mfive(ON);
      half(OFF);
      to(ON);
      past2(OFF);
    }


  // Calculate hour & oclocks
  if(mytimehr==1||mytimehr==13){
    if(mytimemin>32){
      one(OFF);
      two(ON);
      three(OFF);
    }
    else
    {
      one(ON);
      two(OFF);
      twelve(OFF);
    }
  }
  if(mytimehr==2||mytimehr==14){
    if(mytimemin>32){
      two(OFF);
      three(ON);
      four(OFF);
    }
    else
    {
      one(OFF);
      two(ON);
      three(OFF);
    }
  }
    if(mytimehr==3||mytimehr==15){
    if(mytimemin>32){
      three(OFF);
      four(ON);
      five(OFF);
    }
    else
    {
      two(OFF);
      three(ON);
      four(OFF);
    }
  }
  if(mytimehr==4||mytimehr==16){
    if(mytimemin>32){
      four(OFF);
      five(ON);
      six(OFF);
    }
    else
    {
      three(OFF);
      four(ON);
      five(OFF);
    }
  }
  if(mytimehr==5||mytimehr==17){
    if(mytimemin>32){
      five(OFF);
      six(ON);
      seven(OFF);
    }
    else
    {
      four(OFF);
      five(ON);
      six(OFF);
    }
  }
  if(mytimehr==6||mytimehr==18){
    if(mytimemin>32){
      six(OFF);
      seven(ON);
      eight(OFF);
    }
    else
    {
      five(OFF);
      six(ON);
      seven(OFF);
    }
  }
  if(mytimehr==7||mytimehr==19){
    if(mytimemin>32){
      seven(OFF);
      eight(ON);
      nine(OFF);
    }
    else
    {
      six(OFF);
      seven(ON);
      eight(OFF);
    }
  }
  if(mytimehr==8||mytimehr==20){
    if(mytimemin>32){
      eight(OFF);
      nine(ON);
      ten(OFF);
    }
    else
    {
      seven(OFF);
      eight(ON);
      nine(OFF);
    }
  }
  if(mytimehr==9||mytimehr==21){
    if(mytimemin>32){
      nine(OFF);
      ten(ON);
      eleven(OFF);
    }
    else
    {
      eight(OFF);
      nine(ON);
      ten(OFF);
    }
  }
  if(mytimehr==10||mytimehr==22){
    if(mytimemin>32){
      ten(OFF);
      eleven(ON);
      twelve(OFF);
    }
    else
    {
      nine(OFF);
      ten(ON);
      eleven(OFF);
    }
  }
  if(mytimehr==11||mytimehr==23){
    if(mytimemin>32){
      one(OFF);
      eleven(OFF);
      twelve(ON);
    }
    else
    {
      ten(OFF);
      eleven(ON);
      twelve(OFF);
    }
  }
  if(mytimehr==12||mytimehr==24){
    if(mytimemin>32){
      one(ON);
      two(OFF);
      twelve(OFF);
    }
    else
    {
      one(OFF);
      eleven(OFF);
      twelve(ON);
    }
  }

}