Flash AS教程:填色游戏的制作

所属分类: 媒体动画 / Flash教程 阅读数: 49
收藏 0 赞 0 分享
先试试效果:


在本次课程中我们将学习使用 Color 类来制作一个填色游戏,并通过本实例复习 for...in 及 SharedObject 的应用。
思路:
1.使用脚本代码创建一个调色盘,鼠标点击色块后进行取色;
2.绘制作为填充的影片剪辑并把每一部都存为影片剪辑。例如:填充对象是一个人物,那么要把他的头发,眼睛,脸等部分都保存成影片剪辑;
3.最后把各部分影片再统一保存到一个影片剪辑(mc)中;
4.为了保存和读取mc中各影片中的颜色,所以要加入两个按钮 save_btn 和 load_btn 。
步骤1:
绘制作为填充的影片剪辑并把每一部都存为影片剪辑;
最后把各部分影片统一保存到一个影片剪辑中,实例名mc;
绘制两个按钮实例名分别为 save_btn 和 load_btn 。

步骤2:
加入AS代码:
//=====绘制一个正方形作为色块以备调用=====
_root.createEmptyMovieClip("box",-1);
varbox_size:Number=12;
varTheCol=0x0;
//用于存储所取的色彩值
with(box){
beginFill(TheCol);
moveTo(0,0);
lineTo(box_size,0);
lineTo(box_size,box_size);
lineTo(0,box_size);
lineTo(0,0);
endFill();
}
box._visible=false;
//============================================
//*************下面生成一个调色盘*************
varpanex:Number=3;
varpaney:Number=3;
varcolumn:Number=18;
//起点x坐标为3,起点y坐标为3,总行数为18
vari=0;
for(varr=0;r<=0xFF;r =0x33){
for(varg=0;g<=0xFF;g =0x33){
for(varb=0;b<=0xFF;b =0x33){
varp:MovieClip=box.duplicateMovieClip("box" i,i);
newColor(p).setRGB(r*256*256 g*256 b);
//newColor(p).setRGB(r<<16|g<<8|b);
//RGB转换公式,以上两种都可以使用
p._x=panex Math.floor(i/column)*(box_size 1);
p._y=paney i%column*(box_size 1);
//设置每个色块的坐标行坐标:[i/column],列坐标:i%column
p.onRelease=function(){
TheCol=newColor(this).getRGB();
newColor(curser.BG).setRGB(TheCol);
//点击到该色块后进行取色于保存到TheCol变量中
};
i ;
}
}
}
//******************************************
//=====判断点击到图案上以后对哪个影片剪辑填色=====
mc.onRelease=function(){
varflag:Boolean=true;
//增加一个flag为了避免一次对多个影片进行填色
for(varkinmc){
if(mc[k].hitTest(_xmouse,_ymouse,true)&&flag){
newColor(mc[k]).setRGB(TheCol);
flag=false;
}
}
};
//============================================
//*************对mc中所有填充色的读取和保存*************
save_btn.onRelease=function(){
varso:SharedObject=SharedObject.getLocal("Color_save");
for(varkinmc){
so.data[k]=newColor(mc[k]).getRGB();
}
};
load_btn.onRelease=function(){
varso:SharedObject=SharedObject.getLocal("Color_save");
for(varkinmc){
newColor(mc[k]).setRGB(so.data[k]);
}
};
//****************************************** Flash充电:例举 Color 类中常用方法简介
请注意:我们在舞台中所绘制出的影片剪辑即使给他是填充了纯色影片,使用getRGB()也不会取得其RGB值。我们只有对其使用过setColor()后,才能用getRGB()获取该影片的颜色值。
例1:为影片剪辑 mc 创建一个名为 m_Col 的 Color 对象,并将其RGB值设置为橙色:
var my_color:Color = new Color(my_mc);
my_color.setRGB(0xff9933);
例2:获取影片剪辑 mc 的RGB值并以16进制显示出来:

var m_Col:Color = new Color(mc);
m_Col.setRGB(0xff9933);
var myValue:String= m_Col.getRGB().toString(16);

更多精彩内容其他人还在看

Flash钢笔工具怎么绘制图形?

Flash钢笔工具怎么绘制图形?Flash制作动画很简单,但是除了做动画,还可以绘制图形,今天我们就来看看使用flash钢笔工具绘制图形的教程,需要的朋友可以参考下
收藏 0 赞 0 分享

新手必看:flash入门知识详解

今天小编为大家分享flash入门知识,教程比较基础,适合新手来学习,推荐到脚本之家,有需要的朋友可以参考本文,希望能对大家有所帮助
收藏 0 赞 0 分享

flash怎么绘制宝蓝色的卡通小猪?

flash怎么绘制宝蓝色的卡通小猪?flash中想随意绘制一些图形,比如小猪,该怎么绘制呢?下面我们就来看看flash画蓝色小猪的教程,需要的朋友可以参考下
收藏 0 赞 0 分享

flash怎么制作一个可爱的卡通猴子?

flash怎么制作一个可爱的卡通猴子?想使用flash绘制图形,该怎么画呢?下面我们就来看看flash绘制卡通猴子的教程,很可爱,下面我们就来看看详细的教程,需要的朋友可以参考下
收藏 0 赞 0 分享

flash怎么制作翻滚的文字动画? flash动态文字制作教程

flash怎么制作翻滚的文字动画?想制作会呢多蚊子上下翻滚的一段动画,该怎么制作呢?下面我们就来看看flash动态文字制作教程,需要的朋友可以参考下
收藏 0 赞 0 分享

flash制作一个小球从左运动到右的逐帧动画

这篇教程是向脚本之家的朋友分享flash制作一个小球从左运动到右的逐帧动画方法,教程比较基础,适合新手来学习,推荐到脚本之家,一起来学习吧
收藏 0 赞 0 分享

flash怎么绘制一个漂亮的花瓶?

flash怎么绘制一个漂亮的花瓶?想绘制一个花瓶的矢量图,该怎么绘制呢?今天我们就来看看使用flash来绘制的教程,很简单,需要的朋友可以参考下
收藏 0 赞 0 分享

flash怎么制作茶壶水壶?

flash怎么制作茶壶水壶?今天我们就来看看使用flash绘制水壶的过程,flash绘制矢量图很简单,下面我们就来看看详细的绘制方法,需要的朋友可以参考下
收藏 0 赞 0 分享

flash制作一只可爱的卡通蝴蝶

这篇教程是向脚本之家的朋友分享flash制作一只可爱的卡通蝴蝶方法,教程制作出来的蝴蝶非常漂亮,难度不是很大,值得大家学习,喜欢的朋友可以参考本文
收藏 0 赞 0 分享

flash制作一只可爱的卡通小黄鸭

这篇教程是向脚本之家的朋友分享flash制作一只可爱的卡通小黄鸭方法,教程制作出来的小黄鸭非常可爱,方法也很简单,喜欢的朋友可以参考本文
收藏 0 赞 0 分享
查看更多