最新更新 sitemap 网站制作设计本站搜索
网页设计
国外网站 韩国网站 个人主页 手提袋设计 CSS 网页特效 平面设计 网站设计 Flash CMS技巧 服装网站 php教程 photoshop 画册 服务器选用 数据库 Office
虚拟主机 域名注册 云主机 网页设计 客服QQ:8208442
当前位置:首页 > 网络设计学院 > Flash教程

用BitmapData.floodFill做填色游戏

日期:08-23    来源:中国设计秀    作者:cnwebshow.com

QPi中国设计秀

在flash8之前的填色游戏一般是将要填色的物件分成若干个小的MovieClip,然后单独对其填充颜色。QPi中国设计秀

  利用BitmapData.floodFill对位图对象填充颜色的特性来实现区域填色,似乎比较方便,只要将线稿导入到flash中,变成BitmapData就可以填色了。下面是一个实例QPi中国设计秀

import flash.display.BitmapData; QPi中国设计秀
  QPi中国设计秀
var colorNumber:Number=15; //色块数量 QPi中国设计秀
var nowColor:Number; //记录当前颜色 QPi中国设计秀
var showNowColor:Color=new Color(this.attachMovie("block","showNowColorMc",100,{_x:460,_y:330,_width:50,_height:50})); //生成一个色块显示当前颜色 QPi中国设计秀
  QPi中国设计秀
for(var i:Number=0;i this.attachMovie("block","block"+i,i+10,{_x:(i*30+10),_y:350}); QPi中国设计秀
 var tmpMc:MovieClip=eval("block"+i); QPi中国设计秀
 var tmpColorMc:Color=new Color(tmpMc); QPi中国设计秀
 var tmpColor:Number=random(0xffffff); //随机颜色 QPi中国设计秀
 tmpMc.thisColor=tmpColor; QPi中国设计秀
 tmpColorMc.setRGB(tmpColor); QPi中国设计秀
 showNowColor.setRGB(tmpColor); QPi中国设计秀
 nowColor=tmpColor; QPi中国设计秀
 tmpMc.onRelease=function(){ QPi中国设计秀
  nowColor=this.thisColor; QPi中国设计秀
  showNowColor.setRGB(nowColor); QPi中国设计秀
 } QPi中国设计秀
} QPi中国设计秀
  QPi中国设计秀
var myBitmapData:BitmapData = BitmapData.loadBitmap("fillpic"); //创建一个位图对象 QPi中国设计秀
var mc:MovieClip = this.createEmptyMovieClip("mc", 1); QPi中国设计秀
mc.attachBitmap(myBitmapData,2); //载入位图对象 QPi中国设计秀
  QPi中国设计秀
mc.onRelease=function(){ //点击设置颜色 QPi中国设计秀
 myBitmapData.floodFill(this._xmouse,this._ymouse, nowColor); //为当前位置(同一颜色的连续区域,这里是白色)填充颜色 QPi中国设计秀
 //floodFill 在图像上执行倾倒填充操作,从 (x, y) 坐标开始,填充一种特定的颜色。 QPi中国设计秀
}QPi中国设计秀

  把该实例扩展下,可以做成下面的效果QPi中国设计秀

QPi中国设计秀