cleaning up some code

Hey guys, Im receiving some numbers from processing to light up my LED octagon (8 sides of 45 leds, 360 total) I want it to receive 8 numbers (1 for each side) but I want it to be able to also change colors.

1,2,3,4,5,6,7,8 will turn it 255,0,0
9,10,11,12,13,14 will turn it 255,255,0
14,15,16,17,18,19 will turn it 0,255,0
20,21,22,23,24,25,26 will turn it 0,255,255
26,27,28,29,30,31 will turn it 0,0,255
32,33,34,35,36,27 will turn it 255,0,255

Here is my code, I only did the first color so far but it is a lot of code, is there an easier way to code this? or do I rlly have to type out the new colour 360 times per different colour (the whole code doesn’t fit, it’s a bit longer)

#include <FastLED.h>

#define LED_PIN     6
#define NUM_LEDS    360

CRGB leds[NUM_LEDS];

void setup()
{
  FastLED.addLeds<WS2812, LED_PIN, GRB>(leds, NUM_LEDS);
  
  Serial.begin(9600);

  FastLED.clear();
  FastLED.show();
}

void loop()
{

  if (Serial.available() > 0)
  {
    int incomingByte = Serial.read();

    if (incomingByte > '0' && incomingByte < '9')
    {
      FastLED.clear();   //  <-----<<<<    USE clear
    }


    if (incomingByte == '1')
    {
      leds[0] = CRGB(255, 0, 0);
      leds[1] = CRGB(255, 0, 0);
      leds[2] = CRGB(255, 0, 0);
      leds[3] = CRGB(255, 0, 0);
      leds[4] = CRGB(255, 0, 0);
      leds[5] = CRGB(255, 0, 0);
      leds[6] = CRGB(255, 0, 0);
      leds[7] = CRGB(255, 0, 0);
      leds[8] = CRGB(255, 0, 0);
      leds[9] = CRGB(255, 0, 0);
      leds[10] = CRGB(255, 0, 0);
      leds[11] = CRGB(255, 0, 0);
      leds[12] = CRGB(255, 0, 0);
      leds[13] = CRGB(255, 0, 0);
      leds[14] = CRGB(255, 0, 0);
      leds[15] = CRGB(255, 0, 0);
      leds[16] = CRGB(255, 0, 0);
      leds[17] = CRGB(255, 0, 0);
      leds[18] = CRGB(255, 0, 0);
      leds[19] = CRGB(255, 0, 0);
      leds[20] = CRGB(255, 0, 0);
      leds[21] = CRGB(255, 0, 0);
      leds[22] = CRGB(255, 0, 0);
      leds[23] = CRGB(255, 0, 0);
      leds[24] = CRGB(255, 0, 0);
      leds[25] = CRGB(255, 0, 0);
      leds[26] = CRGB(255, 0, 0);
      leds[27] = CRGB(255, 0, 0);
      leds[28] = CRGB(255, 0, 0);
      leds[29] = CRGB(255, 0, 0);
      leds[30] = CRGB(255, 0, 0);
      leds[31] = CRGB(255, 0, 0);
      leds[32] = CRGB(255, 0, 0);
      leds[33] = CRGB(255, 0, 0);
      leds[34] = CRGB(255, 0, 0);
      leds[35] = CRGB(255, 0, 0);
      leds[36] = CRGB(255, 0, 0);
      leds[37] = CRGB(255, 0, 0);
      leds[38] = CRGB(255, 0, 0);
      leds[39] = CRGB(255, 0, 0);
      leds[40] = CRGB(255, 0, 0);
      leds[41] = CRGB(255, 0, 0);
      leds[42] = CRGB(255, 0, 0);
      leds[43] = CRGB(255, 0, 0);
      leds[44] = CRGB(255, 0, 0);
    }
    else if (incomingByte == '2')
    {
      leds[45] = CRGB(255, 0, 0);
      leds[46] = CRGB(255, 0, 0);
      leds[47] = CRGB(255, 0, 0);
      leds[48] = CRGB(255, 0, 0);
      leds[49] = CRGB(255, 0, 0);
      leds[50] = CRGB(255, 0, 0);
      leds[51] = CRGB(255, 0, 0);
      leds[52] = CRGB(255, 0, 0);
      leds[53] = CRGB(255, 0, 0);
      leds[54] = CRGB(255, 0, 0);
      leds[55] = CRGB(255, 0, 0);
      leds[56] = CRGB(255, 0, 0);
      leds[57] = CRGB(255, 0, 0);
      leds[58] = CRGB(255, 0, 0);
      leds[59] = CRGB(255, 0, 0);
      leds[60] = CRGB(255, 0, 0);
      leds[61] = CRGB(255, 0, 0);
      leds[62] = CRGB(255, 0, 0);
      leds[63] = CRGB(255, 0, 0);
      leds[64] = CRGB(255, 0, 0);
      leds[65] = CRGB(255, 0, 0);
      leds[66] = CRGB(255, 0, 0);
      leds[67] = CRGB(255, 0, 0);
      leds[68] = CRGB(255, 0, 0);
      leds[69] = CRGB(255, 0, 0);
      leds[70] = CRGB(255, 0, 0);
      leds[71] = CRGB(255, 0, 0);
      leds[72] = CRGB(255, 0, 0);
      leds[73] = CRGB(255, 0, 0);
      leds[74] = CRGB(255, 0, 0);
      leds[75] = CRGB(255, 0, 0);
      leds[76] = CRGB(255, 0, 0);
      leds[77] = CRGB(255, 0, 0);
      leds[78] = CRGB(255, 0, 0);
      leds[79] = CRGB(255, 0, 0);
      leds[80] = CRGB(255, 0, 0);
      leds[81] = CRGB(255, 0, 0);
      leds[82] = CRGB(255, 0, 0);
      leds[83] = CRGB(255, 0, 0);
      leds[84] = CRGB(255, 0, 0);
      leds[85] = CRGB(255, 0, 0);
      leds[86] = CRGB(255, 0, 0);
      leds[87] = CRGB(255, 0, 0);
      leds[88] = CRGB(255, 0, 0);
      leds[89] = CRGB(255, 0, 0);
    }
    else if (incomingByte == '3')
    {
      leds[90] = CRGB(255, 0, 0);
      leds[91] = CRGB(255, 0, 0);
      leds[92] = CRGB(255, 0, 0);
      leds[93] = CRGB(255, 0, 0);
      leds[94] = CRGB(255, 0, 0);
      leds[95] = CRGB(255, 0, 0);
      leds[96] = CRGB(255, 0, 0);
      leds[97] = CRGB(255, 0, 0);
      leds[98] = CRGB(255, 0, 0);
      leds[99] = CRGB(255, 0, 0);
      leds[100] = CRGB(255, 0, 0);
      leds[101] = CRGB(255, 0, 0);
      leds[102] = CRGB(255, 0, 0);
      leds[103] = CRGB(255, 0, 0);
      leds[104] = CRGB(255, 0, 0);
      leds[105] = CRGB(255, 0, 0);
      leds[106] = CRGB(255, 0, 0);
      leds[107] = CRGB(255, 0, 0);
      leds[108] = CRGB(255, 0, 0);
      leds[109] = CRGB(255, 0, 0);
      leds[110] = CRGB(255, 0, 0);
      leds[111] = CRGB(255, 0, 0);
      leds[112] = CRGB(255, 0, 0);
      leds[113] = CRGB(255, 0, 0);
      leds[114] = CRGB(255, 0, 0);
      leds[115] = CRGB(255, 0, 0);
      leds[116] = CRGB(255, 0, 0);
      leds[117] = CRGB(255, 0, 0);
      leds[118] = CRGB(255, 0, 0);
      leds[119] = CRGB(255, 0, 0);
      leds[120] = CRGB(255, 0, 0);
      leds[121] = CRGB(255, 0, 0);
      leds[122] = CRGB(255, 0, 0);
      leds[123] = CRGB(255, 0, 0);
      leds[124] = CRGB(255, 0, 0);
      leds[125] = CRGB(255, 0, 0);
      leds[126] = CRGB(255, 0, 0);
      leds[127] = CRGB(255, 0, 0);
      leds[128] = CRGB(255, 0, 0);
      leds[129] = CRGB(255, 0, 0);
      leds[130] = CRGB(255, 0, 0);
      leds[131] = CRGB(255, 0, 0);
      leds[132] = CRGB(255, 0, 0);
      leds[133] = CRGB(255, 0, 0);
      leds[134] = CRGB(255, 0, 0);
     
    }
    else if (incomingByte == '4')
    {
       leds[135] = CRGB(255,0,0 );
      leds[136] = CRGB(255, 0, 0);
      leds[137] = CRGB(255, 0, 0);
      leds[138] = CRGB(255, 0, 0);
      leds[139] = CRGB(255, 0, 0);
      leds[140] = CRGB(255, 0, 0);
      leds[141] = CRGB(255, 0, 0);
      leds[142] = CRGB(255, 0, 0);
      leds[143] = CRGB(255, 0, 0);
      leds[144] = CRGB(255, 0, 0);
      leds[145] = CRGB(255, 0, 0);
      leds[146] = CRGB(255, 0, 0);
      leds[147] = CRGB(255, 0, 0);
      leds[148] = CRGB(255, 0, 0);
      leds[149] = CRGB(255, 0, 0);
      leds[150] = CRGB(255, 0, 0);
      leds[151] = CRGB(255, 0, 0);
      leds[152] = CRGB(255, 0, 0);
      leds[153] = CRGB(255, 0, 0);
      leds[154] = CRGB(255, 0, 0);
      leds[155] = CRGB(255, 0, 0);
      leds[156] = CRGB(255, 0, 0);
      leds[157] = CRGB(255, 0, 0);
      leds[158] = CRGB(255, 0, 0);
      leds[159] = CRGB(255, 0, 0);
      leds[160] = CRGB(255, 0, 0);
      leds[161] = CRGB(255, 0, 0);
      leds[162] = CRGB(255, 0, 0);
      leds[163] = CRGB(255, 0, 0);
      leds[164] = CRGB(255, 0, 0);
      leds[165] = CRGB(255, 0, 0);
      leds[166] = CRGB(255, 0, 0);
      leds[167] = CRGB(255, 0, 0);
      leds[168] = CRGB(255, 0, 0);
      leds[169] = CRGB(255, 0, 0);
      leds[170] = CRGB(255, 0, 0);
      leds[171] = CRGB(255, 0, 0);
      leds[172] = CRGB(255, 0, 0);
      leds[173] = CRGB(255, 0, 0);
      leds[174] = CRGB(255, 0, 0);
      leds[175] = CRGB(255, 0, 0);
      leds[176] = CRGB(255, 0, 0);
      leds[177] = CRGB(255, 0, 0);
      leds[178] = CRGB(255, 0, 0);
      leds[179] = CRGB(255, 0, 0);
    }
   

   FastLED.show();
  }

}

Why not use a for loop?

Jaxdenim:

    if(incomingByte == '1')

{
      leds[0] = CRGB(255, 0, 0);
      leds[1] = CRGB(255, 0, 0);
      leds[2] = CRGB(255, 0, 0);
      leds[3] = CRGB(255, 0, 0);
      leds[4] = CRGB(255, 0, 0);
      leds[5] = CRGB(255, 0, 0);
      leds[6] = CRGB(255, 0, 0);
      leds[7] = CRGB(255, 0, 0);
      leds[8] = CRGB(255, 0, 0);
      leds[9] = CRGB(255, 0, 0);
      leds[10] = CRGB(255, 0, 0);
      leds[11] = CRGB(255, 0, 0);
      leds[12] = CRGB(255, 0, 0);
      leds[13] = CRGB(255, 0, 0);
      leds[14] = CRGB(255, 0, 0);
      leds[15] = CRGB(255, 0, 0);
      leds[16] = CRGB(255, 0, 0);
      leds[17] = CRGB(255, 0, 0);
      leds[18] = CRGB(255, 0, 0);
      leds[19] = CRGB(255, 0, 0);
      leds[20] = CRGB(255, 0, 0);
      leds[21] = CRGB(255, 0, 0);
      leds[22] = CRGB(255, 0, 0);
      leds[23] = CRGB(255, 0, 0);
      leds[24] = CRGB(255, 0, 0);
      leds[25] = CRGB(255, 0, 0);
      leds[26] = CRGB(255, 0, 0);
      leds[27] = CRGB(255, 0, 0);
      leds[28] = CRGB(255, 0, 0);
      leds[29] = CRGB(255, 0, 0);
      leds[30] = CRGB(255, 0, 0);
      leds[31] = CRGB(255, 0, 0);
      leds[32] = CRGB(255, 0, 0);
      leds[33] = CRGB(255, 0, 0);
      leds[34] = CRGB(255, 0, 0);
      leds[35] = CRGB(255, 0, 0);
      leds[36] = CRGB(255, 0, 0);
      leds[37] = CRGB(255, 0, 0);
      leds[38] = CRGB(255, 0, 0);
      leds[39] = CRGB(255, 0, 0);
      leds[40] = CRGB(255, 0, 0);
      leds[41] = CRGB(255, 0, 0);
      leds[42] = CRGB(255, 0, 0);
      leds[43] = CRGB(255, 0, 0);
      leds[44] = CRGB(255, 0, 0);
    }

Turn this part into and keep going from there please.

    if(incomingByte == '1')
    {
      
      for(int i = 0; i<=44; i++){
          leds[i] = CRGB(255, 0, 0);
      }

}

Then your for loop inside the elseif becomes for(int i = 44; i<= 89; i++) bla bla bla…

RabbitTheDevil:
Turn this part into and keep going from there please.

    if(incomingByte == '1')

{
     
      for(int i = 0; i<=44; i++){
          leds[i] = CRGB(255, 0, 0);
      }

}




Then your for loop inside the elseif becomes for(int i = 44; i<= 89; i++) bla bla bla...

Thank you for this! it saved me a lot of time!