Làm cá bơi trong Flash

In
Xem kết quả: / 79
Bình thườngTuyệt vời 

Share cho các bạn 1 đàn cá bơi lội tung tăng.

Hy vọng nó sẽ giúp cho bể cá online của các bạn sẽ sinh động và phong phú hơn.

Chú ý:

Khi các bạn sử dụng nhứ copy đoạn code của cá:

rotateBD = function (a, b)
{
    var _loc1 = a;
    _loc1._rotation = Math.atan2(b._y - _loc1._y, b._x - _loc1._x) * 180 / 3.141593E+000;
};
movieClip.prototype.fsMove = function (spx, spy, tx, ty)
{
    var _loc1 = this;
    _loc1._x = _loc1._x + spx * (tx - _loc1._x);
    _loc1._y = _loc1._y + spy * (ty - _loc1._y);
};
movieClip.prototype.stMove = function (spx, spy, tx, ty)
{
    var _loc1 = this;
    _loc1._x = spx * (tx - _loc1._x);
    _loc1._y = _loc1._y + spy * (ty - _loc1._y);
};
movieClip.prototype.rotate = function (tx, ty)
{
    var _loc1 = this;
    diffX = tx - _loc1._x;
    diffY = ty - _loc1._y;
    _loc1._rotation = Math.atan2(diffY, diffX) * 180 / 3.141593E+000;
};
_root.pl5.onEnterFrame = function ()
{
    var _loc1 = this;
    if (random(20) == 0)
    {
        _loc1.targetX = 350 * (random(100001) / 100000) + 100;
        _loc1.targetY = 250 * (random(100001) / 100000) + 100;
    } // end if
    _loc1.fsMove(1.000000E-001, 1.000000E-001, _loc1.targetX, _loc1.targetY);
};
this.onEnterFrame = function ()
{
    var _loc1 = _root;
    _loc1.pdf5._rotation = Math.atan2(_loc1.pl5._y - _loc1.head5._y, _loc1.pl5._x - _loc1.head5._x) * 180 / 3.141593E+000;
    _loc1.pdf5.fsMove(8.000000E-001, 8.000000E-001, _loc1.pl5._x, _loc1.pl5._y);
    pp = new Object();
    pp.x = 0;
    pp.y = 0;
    _loc1.pdf5.pd.localToGlobal(pp);
    _loc1.pdp5._x = pp.x;
    _loc1.pdp5._y = pp.y;
    _loc1.head5._rotation = Math.atan2(_loc1.pdp5._y - _loc1.head5._y, _loc1.pdp5._x - _loc1.head5._x) * 180 / 3.141593E+000;
    _loc1.head5.fsMove(8.000000E-002, 8.000000E-002, _loc1.pdp5._x, _loc1.pdp5._y);
    rotateBD(_loc1.lkf0, _loc1.head5);
    pt = new Object();
    pt.x = 0;
    pt.y = 0;
    _loc1.head5.end.localToGlobal(pt);
    _loc1.lkf0._x = pt.x;
    _loc1.lkf0._y = pt.y;
    for (var _loc3 = 1; _loc3 < 6; ++_loc3)
    {
        var _loc2 = _loc1["lkf" add _loc3];
        var lastLkf = _loc1["lkf" add (_loc3 - 1)];
        rotateBD(_loc2, lastLkf);
        point = new Object();
        point.x = 0;
        point.y = 0;
        lastLkf.end.localToGlobal(point);
        _loc2._x = point.x;
        _loc2._y = point.y;
    } // end of for
};
_root.pl5._visible = 0;
_root.pdf5._visible = 0;
_root.pdp5._visible = 0;

Các bạn có thể chỉnh thông số mình đã đánh dấu đỏ ở trên cho phù hợp với kích thước file flash của bạn. Ví dụ flash của mình là 450x320 thì mình chỉnh 2 thông số là 450 - 100 = 350 và 320 -100 = 220 các bạn có thể tùy biến thêm bớt để cá nó bơi ra khỏi màn hình rồi lại bơi vào. Hãy cứ vọc nhé.

lưu ý nữa là file này chạy trên trình flash 6 nhé, nên khi xuất ra swf các bạn nhớ để nó chạy trên Flash player 6 là OK.

Chúc mọi người vui vẻ.smiley

Download

Share