+ // FIXME: fullbright_start should be read from colormap.lmp
+ colormap = FS_LoadFile("gfx/colormap.lmp", true);
+ if (colormap && fs_filesize >= 16385)
+ fullbright_start = 256 - colormap[16384];
+ else
+ fullbright_start = 256;
+ if (colormap)
+ Mem_Free(colormap);
+ fullbright_end = 256;
+ pants_start = 96;
+ pants_end = 112;
+ shirt_start = 16;
+ shirt_end = 32;
+ reversed_start = 128;
+ reversed_end = 224;
+
+ for (i = 0;i < fullbright_start;i++)
+ palette_nofullbrights[i] = palette_complete[i];
+ for (i = fullbright_start;i < 255;i++)
+ palette_nofullbrights[i] = palette_complete[0];
+ palette_nofullbrights[255] = 0;
+
+ for (i = 0;i < 256;i++)
+ palette_onlyfullbrights[i] = palette_complete[0];
+ for (i = fullbright_start;i < fullbright_end;i++)
+ palette_onlyfullbrights[i] = palette_complete[i];
+ palette_onlyfullbrights[255] = 0;
+
+ for (i = 0;i < 256;i++)
+ palette_nocolormapnofullbrights[i] = palette_complete[i];
+ for (i = pants_start;i < pants_end;i++)
+ palette_nocolormapnofullbrights[i] = palette_complete[0];
+ for (i = shirt_start;i < shirt_end;i++)
+ palette_nocolormapnofullbrights[i] = palette_complete[0];
+ for (i = fullbright_start;i < fullbright_end;i++)
+ palette_nocolormapnofullbrights[i] = palette_complete[0];
+ palette_nocolormapnofullbrights[255] = 0;
+
+ for (i = 0;i < 256;i++)
+ palette_nocolormap[i] = palette_complete[i];
+ for (i = pants_start;i < pants_end;i++)
+ palette_nocolormap[i] = palette_complete[0];
+ for (i = shirt_start;i < shirt_end;i++)
+ palette_nocolormap[i] = palette_complete[0];
+ palette_nocolormap[255] = 0;
+
+ for (i = 0;i < 256;i++)
+ palette_pantsaswhite[i] = palette_complete[0];
+ for (i = pants_start;i < pants_end;i++)