残影效果和加速度

      被人教程 2005-7-8 23:47
//很酷的效果,哈

attachMovie("empty_mc", "empty_mc", 1);
function onEnterFrame() {
    _root.shadow_effect("ex_shadow", _root.empty_mc, _root.ex, 100, 40, 0, 3, 0, 0, 255)
    ex.method_Smx(0.1, 500);
    

}
//残影函数(残影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;
    }
}


function WhatKey (num,dis) {
if (Key.isDown(num)) {
_root.ex._x+=dis
}

}

MovieClip.prototype.method_Smx = function(spd, tx) {//加速度function
    var temTx = tx-this._x;//a
    if (Math.abs(temTx)>0.500000) {
        this._x = this._x+spd*(tx-this._x);// v2=v1+at
    } else if (tx != this._x) {
        this._x = tx;
    }
    // end if
};

//我发了个效果在这里
www.flash8.net/bbs/UploadFile/2005-7/200578234834900.swf
标签集:TAGS:
回复Comments() 点击Count()

回复Comments

{commentauthor}
{commentauthor}
{commenttime}
{commentnum}
{commentcontent}
作者:
{commentrecontent}