Public paste
Undefined
By: Guest | Date: Dec 4 2009 16:20 | Format: None | Expires: never | Size: 723 B | Hits: 871

  1. void CESP::DrawGradientBox(int x, int y, int w, int h, Color clr1, Color clr2)
  2. {
  3.         if(y == 0) y = 1;
  4.         int dif_r = 0, dif_g = 0, dif_b = 0, dif_a = 0;
  5.        
  6.         dif_r = clr1.r() - clr2.r();
  7.         dif_g = clr1.g() - clr2.g();
  8.         dif_b = clr1.b() - clr2.b();
  9.         dif_a = clr1.a() - clr2.a();
  10.  
  11.         int r_perpxl, g_perpxl, b_perpxl, a_perpxl;
  12.         r_perpxl = h / dif_r;
  13.         g_perpxl = h / dif_g;
  14.         b_perpxl = h / dif_b;
  15.         a_perpxl = h / dif_a;
  16.  
  17.         for(int i = y, j = 1; i <= y+h, j <= h+1; i++, j++)
  18.         {
  19.                 g_pMatSystemSurface->DrawSetColor(clr1.r() + (r_perpxl * j), clr1.g() + (g_perpxl * j), clr1.b() + (b_perpxl * j), clr1.a() + (a_perpxl * j));
  20.                 g_pMatSystemSurface->DrawLine(x, y + j, x + w, y + j);
  21.                 g_pMatSystemSurface->DrawG
  22.         }
  23. }