Advertisement
Rolpege

Gradient.as

Aug 9th, 2011
145
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. package com.aberustudios.afrosuit.visual
  2. {
  3.     import flash.display.BitmapData;
  4.     import flash.display.GradientType;
  5.     import flash.display.Graphics;
  6.     import flash.display.Sprite;
  7.     import flash.geom.Matrix;
  8.    
  9.     import net.flashpunk.FP;
  10.    
  11.     public class Gradient extends BitmapData
  12.     {
  13.         public function Gradient(width:int, height:int, colorA:uint = 0xFFFFFF, colorB:uint = 0x000000, angle:Number = 90)
  14.         {
  15.             super(width, height, true, 0x00000000);
  16.            
  17.             m.createGradientBox(width, height, angle * (-FP.RAD));
  18.             g.beginGradientFill(GradientType.LINEAR, [colorA, colorB], [1, 1], [0, 255], m);
  19.             g.drawRect(0, 0, width, height);
  20.            
  21.             draw(s);
  22.         }
  23.        
  24.         public function updateGradient(colorA:uint = 0xFFFFFF, colorB:uint = 0x000000):void
  25.         {
  26.             g.clear();
  27.             g.beginGradientFill(GradientType.LINEAR, [colorA, colorB], [1, 1], [0, 255], m);
  28.             g.drawRect(0, 0, width, height);
  29.            
  30.             draw(s);
  31.         }
  32.        
  33.         private var s:Sprite = new Sprite;
  34.         private var g:Graphics = s.graphics;
  35.         private var m:Matrix = new Matrix;
  36.     }
  37. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement