Ответ Ричарда выглядит очень правдоподобно, к сожалению, он не сработал для меня (градиент не вращался вместе с линией).
Итак, я искал длину и ширину земли в поисках функции, рисующей линию от точки A до B с градиентом. Один человек помог мне, и теперь я могу поделиться с вами, уважаемые сэр рыцари, ответом на все вопросы:
// I eliminated most of the variables in order to optimize it
// mtx is matrix, gfx is Graphics
public function LineGradient( pt1 : FlxPoint, pt2 : FlxPoint ) : void
{
var ox : Number = Math.min( pt1.x, pt2.x);
var oy : Number = Math.min( pt1.y, pt2.y);
mtx.createGradientBox(Math.abs( pt2.x - pt1.x ), Math.abs( pt2.y - pt1.y ),
Math.atan2( pt2.y - pt1.y, pt2.x - pt1.x ),
ox, oy );
gfx.lineStyle( thickness, color, alpha);
gfx.lineGradientStyle(GradientType.LINEAR, [0xff0000, 0x0000ff], [0, 1], [0, 255], mtx);
gfx.moveTo( pt1.x, pt1.y );
gfx.lineTo( pt2.x, pt2.y );
}
Теперь вспышка не умрет.