我试图在单击舞台上的图像时检索颜色值。我打算使用它为我正在制作的游戏创建一个高度图,使得角色在粗糙地形(具有特定颜色值的高度图部分)上移动得更慢,但是我不断收到以下错误:AS3:从位图获取颜色值
TypeError: Error #1034: Type Coercion failed: cannot convert flash.display::[email protected] to flash.display.Bitmap.
at testGetColor2_fla::MainTimeline/frame1()
这里是我到目前为止的代码:
import flash.display.BitmapData;
import flash.display.Bitmap;
import flash.events.MouseEvent;
import flash.display.Sprite;
var container:Sprite = new Sprite();
var myHeightMap:Bitmap = Bitmap(heightMap);
this.addChild(container);
container.addChild(myHeightMap);
container.addEventListener(MouseEvent.CLICK, onClick);
function onClick(e:MouseEvent):void
{
var obj:Sprite = e.currentTarget as Sprite;
var myHeightMap:Bitmap = Bitmap(obj.getChildAt(0));
var pixelValue:uint = myHeightMap.bitmapData.getPixel(mouseX,mouseY);
trace(pixelValue.toString(16));
}
我在做什么错?
你先生,摇滚!!!!它工作!非常感谢:) 希望我能够upvote,但我没有足够的声誉。 – vagabond80
很高兴帮助!如果你的问题得到解决,那么你应该标记哪个答案最有帮助为'接受'。 :) – CheeseWarlock
啊gotcha。感谢那 :) – vagabond80