Flash中残影效果的简单实现

王朝other·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

游戏里加上残影效果会使游戏增色不少哦~大概做了个象样的残影和大家分享下。

效果演示:

http://www.flash8.net/bbs/UploadFile/2005-7/200574174638819.swf

点击这里下载源文件

代码:

//残影函数(残影MC的ID,装载残影的MC, 残影跟随的目标, 残影比例, 开始透明度, 结束透明度, 透明度减量, 红色偏移量, 绿色偏移量,兰色偏移量)

function shadow_effect(mc_id, mc_name, mc_name2, scale, start_alpha, end_alpha, alpha_red, rb, gb, bb) {

if (!mc_name.dep) {

mc_name.dep = 0;

}

//降低透明度

for (i in mc_name) {

mc_name[i]._alpha -= alpha_red;

if (mc_name[i]._alpha<end_alpha) {

//小于结束透明度时移除

mc_name[i].removeMovieClip();

}

}

//加载残影并设置属性

mc_name.attachMovie(mc_id, mc_id+mc_name.dep, mc_name.dep);

mc_name[mc_id+mc_name.dep]._xscale = mc_name[mc_id+mc_name.dep]._yscale=scale;

mc_name[mc_id+mc_name.dep]._x = mc_name2._x;

mc_name[mc_id+mc_name.dep]._y = mc_name2._y;

mc_name[mc_id+mc_name.dep]._alpha = start_alpha;

//颜色应用

mc_name[mc_id+mc_name.dep].col = new Color(mc_name[mc_id+mc_name.dep]);

mc_name[mc_id+mc_name.dep].col2 = new Object();

mc_name[mc_id+mc_name.dep].col2.rb = rb;

mc_name[mc_id+mc_name.dep].col2.gb = gb;

mc_name[mc_id+mc_name.dep].col2.bb = bb;

mc_name[mc_id+mc_name.dep].col.setTransform(mc_name[mc_id+mc_name.dep].col2);

mc_name.dep++;

if (mc_name.dep>1000) {

mc_name.dep = 0;

}

}

每帧执行这个函数就得~其他的代码就是方块上的跟随鼠标

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航