void draw_gouraud_sprite(BITMAP *bmp, BITMAP *sprite, int x, int y, int c1, int c2, int c3, int c4);
   /* Some one time initialisation code. */
   COLOR_MAP global_light_table;
   create_light_table(&global_trans_table, my_palette,
                      0, 0, 0, NULL);
   ...
   if (get_color_depth() == 8)
      color_map = &global_light_table;
   else
      set_trans_blender(0, 0, 0, 128);
   
   /* Enemies are in shadow unless lit by torch. */
   draw_gouraud_sprite(buffer, menacing_spy, x, y,
                       light_strength_on_corner_1,
                       light_strength_on_corner_2,
                       light_strength_on_corner_3,
                       light_strength_on_corner_4);