Guest User

Untitled

a guest
Feb 18th, 2018
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.07 KB | None | 0 0
  1.     public void draw_gradient_quad(int x_, int y_, int width_, int height_, int color1_, int color2_) {
  2.         if (x_ < x) {
  3.             width_ -= x - x_;
  4.             x_ = x;
  5.         }
  6.         if (x_ + width_ > width)
  7.             width_ = width - x_;
  8.        
  9.         int c2_r = color2_ >> 16 & 0xff;
  10.         int c2_g = color2_ >> 8 & 0xff;
  11.         int c2_b = color2_ & 0xff;
  12.        
  13.         int c1_r = color1_ >> 16 & 0xff;
  14.         int c1_g = color1_ >> 8 & 0xff;
  15.         int c1_b = color1_ & 0xff;
  16.         int max_start_width = menu_width - width_;
  17.         byte scan_lines = 1;
  18.         if (f1_toggle) {
  19.             scan_lines = 2;
  20.             max_start_width += menu_width;
  21.             if ((y_ & 1) != 0) {
  22.                 y_++;
  23.                 height_--;
  24.             }
  25.         }
  26.         int pxl_pos = x_ + y_ * menu_width;
  27.         for (int _y = 0; _y < height_; _y += scan_lines)
  28.             if (_y + y_ >= y && _y + y_ < height) {
  29.                 int new_pxl = ((c2_r * _y + c1_r * (height_ - _y)) / height_ << 16) + ((c2_g * _y + c1_g * (height_ - _y)) / height_ << 8) + (c2_b * _y + c1_b * (height_ - _y)) / height_;
  30.                 for (int _x = -width_; _x < 0; _x++)
  31.                     img_pxl_arr[pxl_pos++] = new_pxl;
  32.                 pxl_pos += max_start_width;
  33.             } else
  34.                 pxl_pos += menu_width;
  35.     }
Add Comment
Please, Sign In to add comment