全体的に色を変えたい

リファレンスガイドに普通に載っていますが、メモ。



これの色を変えてみます。

package
{
	import flash.display.Shape;
	import flash.display.Sprite;
	import flash.geom.ColorTransform;
	
	public class Test extends Sprite
	{
		public function Test()
		{
			// Shape描画
			
			// 色設定
			var ct:ColorTransform;
			var rOffset:Number = transform.colorTransform.redOffset + 0x90;
			var gOffset:Number = transform.colorTransform.greenOffset + 0x00;
			var bOffset:Number = transform.colorTransform.blueOffset - 0x20;
			ct = new ColorTransform(1, 1, 1, 1, rOffset, gOffset, bOffset, 0);
			transform.colorTransform = ct;
		}
	}
}

現在のSpriteの赤要素を+0x90、緑は変化無し、青を-0x20しています。

こんな感じ。全体的に赤っぽくなりました。


ちなみに、

var saveCt:ColorTransform = transform.colorTransform;

として、元の色情報を保存しておけば、後で色を元に戻すこともできるみたいです。

transform.colorTransform = saveCt;


この色変えは今後ちょくちょく使いそうだなぁ。
かぶったキャラの識別に使お。