مهم: آموزش ساختن بيليارد

JJ15

Member
ابتدا 2 لايه درست كنيد
لايه ي 1 ==> پاييني
لايه ي 2 ==> بالايي

در لايه ي 2 > f6 را بزنيد و 2 فريم درست كنيد
اكشن براي فريم اولي :
کد:
bersaglio.color = random(256);
fscommand("fullscreen", true);
fscommand("allowscale", true);
stop();
اكشن براي فريم دومي :
کد:
gun = g1;
gdu = g2;
Mouse.hide();
parti = 0;
b = 0;
rid = 0;
muovibersaglio = 0;
ridb = 0;
punteggio = 0;
punteggio2 = 0;
t = 0;
turno = -1;
stop();

در لايه ي شماره ي 1 >
f5 را بزنيد و دو فريم درست مي كنيد البته با اف 5
اين اكشني لازم ندارد

در لايه ي شماره 2 در فريم اول > 2 تا input text درست مي كنيم به نام هاي g1
و g2

كه اين ها اسم هاي بازيكن ها هستند
و يك دكمه با اكشن
کد:
on (release) {
    gotoAndPlay(2);
}
مي سازيم براي رفتن به فريم 2 .

در لايه ي 2 فريم شما ره ي 2 >
4 تا dynamic text درست مي كنيم و اسم ها را به اين صورت ميگذاريم :
کد:
gun
gdu
punteggio
puntaggio 2
كه به ترتيب از بالا به پايين يعني :

بازي كننده ي 1
بازي كننده ي 2
گل ها ي بازي كننده ي 1
گل هاي بازي كننده ي 2

(اين زبان ايتاليايي است . من در رم زندگي مي كنم )

بگذريم
بعد در همان فريم و لايه (لايه ي شماره 2 فريم 2 )‌
يك خط با اندا زه ي 3 و نوع Solid مي كشيم و آن را به موو كليپ تبديل مي كنيم و اسم ان
را potenza
(يعني قدرت ) مي زاريم
رنگ خط بهتره آبي تيره باشه
بعد يك خط سفيد ديگر به اندازه ي 0.25 و نوع solid مي كشيم و آن را دقيقا در زير خط آبي
(potenza ) قرار ميديم .

يعد 1 توپ ديگر مي سازيم و آن را يه موو كليپ تبديل مي كنيم اسمش : bersaglio
اكشنش را اضافه مي كنيم :
کد:
onClipEvent (enterFrame) {
    if (_root.muovibersaglio == 1) {
        bxvel = Math.cos(this._rotation*(3.14/180))*_root.ridb;
        byvel = Math.sin(this._rotation*(3.14/180))*_root.ridb;
        this._x += bxvel;
        this._y += byvel;
        _root.ridb *= .99;
        _root.pb._height = _root.ridb*4;
        if (this.hitTest(_root.alt)) {
            this._rotation *= -1;
            this._y += 5;
        }
        if (this.hitTest(_root.bas)) {
            this._rotation *= -1;
            this._y -= 5;
        }
        if (this.hitTest(_root.sx)) {
            this._rotation = -180-this._rotation;
            this._x += 5;
        }
        if (this.hitTest(_root.dx)) {
            this._rotation = -180-this._rotation;
            this._x -= 5;
        }
        if (this.hitTest(_root.b1) || this.hitTest(_root.b2) || this.hitTest(_root.b3) || this.hitTest(_root.b4) || this.hitTest(_root.b5) || this.hitTest(_root.b6)) {
            buca = 1;
            _root.ridb = 0;
            this._visible = false;
            if (_root.turno == 1) {
                _root.punteggio++;
            } else {
                _root.punteggio2++;
            }
            this._x = 200+random(300);
            this._y = 100+random(400);
            _root.buca.gotoAndPlay(2);
        }
        if (Math.floor(_root.pb._height)<=0) {
            _root.muovibersaglio = 0;
            if (buca != 1) {
                _root.nib.gotoAndPlay(2);
            }
        }
    }
}

يك توپ ديگر هم درست مي كنيم كه توپ سفيد ما مي باشد
توجه داشته باشيد كه بايد يك مثلث كوچك به سمت راست كامپيوتر ( به ترف ساعت كامپيوتر )
روي توپ مي كشيم و هر دو را به موو كليپ تبديل مي كنيم و اسم ball و اكشن زير را وارد مي كنيم براي توپ سفيدمان :

کد:
onClipEvent (enterFrame) {
    if (Key.isDown(Key.ENTER)) {
        if (_root.parti == 0) {
            _root.b = 1;
            _root.t = 1;
            _root.rot = _root.potenza._width;
            if (_root.rid>=20) {
                _root.rid = 20;
            } else {
                _root.rid++;
                _root.potenza._width = Math.floor(_root.rid*4);
            }
        } else {
            if (_root.rid<=.2) {
                if (_root.t == 1) {
                    _root.fallito.gotoAndPlay(2);
                    _root.t = 0;
                }
                if (Key.isDown(Key.RIGHT)) {
                    this._rotation += 5;
                }
                if (Key.isDown(Key.LEFT)) {
                    this._rotation -= 5;
                }
            }
            xvel = Math.cos(this._rotation*(3.14/180))*_root.rid;
            yvel = Math.sin(this._rotation*(3.14/180))*_root.rid;
            this._x += xvel;
            this._y += yvel;
            _root.rid *= .99;
            if (this.hitTest(_root.alt)) {
                this._rotation *= -1;
                this._y += 5;
            }
            if (this.hitTest(_root.bas)) {
                this._rotation *= -1;
                this._y -= 5;
            }
            if (this.hitTest(_root.sx)) {
                this._rotation = -180-this._rotation;
                this._x += 5;
            }
            if (this.hitTest(_root.dx)) {
                this._rotation = -180-this._rotation;
                this._x -= 5;
            }
            // 
            if (this.hitTest(_root.b1) || this.hitTest(_root.b2) || this.hitTest(_root.b3) || this.hitTest(_root.b4) || this.hitTest(_root.b5) || this.hitTest(_root.b6)) {
                _root.t = 0;
                _root.rid = 0;
                this._visible = false;
                if (_root.turno == 1) {
                    _root.punteggio--;
                } else {
                    _root.punteggio2--;
                }
                this._x = 200+random(300);
                this._y = 100+random(400);
                _root.bucasb.gotoAndPlay(2);
            }
            // 
            _root.potenza._width = Math.floor(_root.rid*4);
            _root.rot = _root.rid;
            if (_root.muovibersaglio == 0) {
                if (this.hitTest(_root.bersaglio)) {
                    _root.t = 0;
                    _root.pcolpite++;
                    _root.muovibersaglio = 1;
                    _root.ridb = _root.rid;
                    _root.rid = 0;
                    _root.bersaglio._rotation = this._rotation;
                }
            }
        }
    } else {
        if (_root.b == 1) {
            _root.parti = 1;
        }
        // esegui tutto il resto
        if (_root.rid<=.2) {
            if (_root.t == 1) {
                _root.fallito.gotoAndPlay(2);
                _root.t = 0;
            }
            if (Key.isDown(Key.RIGHT)) {
                this._rotation += 5;
            }
            if (Key.isDown(Key.LEFT)) {
                this._rotation -= 5;
            }
        }
        xvel = Math.cos(this._rotation*(3.14/180))*_root.rid;
        yvel = Math.sin(this._rotation*(3.14/180))*_root.rid;
        this._x += xvel;
        this._y += yvel;
        _root.rid *= .99;
        if (this.hitTest(_root.alt)) {
            this._rotation *= -1;
            this._y += 5;
        }
        if (this.hitTest(_root.bas)) {
            this._rotation *= -1;
            this._y -= 5;
        }
        if (this.hitTest(_root.sx)) {
            this._rotation = -180-this._rotation;
            this._x += 5;
        }
        if (this.hitTest(_root.dx)) {
            this._rotation = -180-this._rotation;
            this._x -= 5;
        }
        // 
        if (this.hitTest(_root.b1) || this.hitTest(_root.b2) || this.hitTest(_root.b3) || this.hitTest(_root.b4) || this.hitTest(_root.b5) || this.hitTest(_root.b6)) {
            _root.t = 0;
            _root.rid = 0;
            this._visible = false;
            if (_root.turno == 1) {
                _root.punteggio--;
            } else {
                _root.punteggio2--;
            }
            this._x = 200+random(300);
            this._y = 100+random(400);
            _root.bucasb.gotoAndPlay(2);
        }
        // 
        _root.potenza._width = Math.floor(_root.rid*4);
        _root.rot = _root.rid;
        if (_root.muovibersaglio == 0) {
            if (this.hitTest(_root.bersaglio)) {
                _root.t = 0;
                _root.pcolpite++;
                _root.muovibersaglio = 1;
                _root.ridb = _root.rid;
                _root.rid = 0;
                _root.bersaglio._rotation = this._rotation;
            }
        }
    }
}
بعدسورا خ ها :

در لايه ي 1 ( ژاييني ) 6 تا توپ سياه به عنوان سوراخ ها درست مي كنيم :
اين توپ ها همه موو كليپ هستند و اسماشون از بالا از سمت چپ به را ست را مي زاريم
کد:
b1
b2
b3
b4
b5
b6
در اين بازي ما 4 تا ديوار داريم
كه توپ ها بيرون نرند

بالا ترين خط (ديوار كه شما بايد بكشيد ) اين اسم :
alt
پايين ترين خط :

bas
ديوار هاي افقي :
سمت چپي :
sx
سمت راستي :
dx

در لايه ي بالايي (2) در فريم دوم
4 موو كليپ مي سازيم كه اول همه ي فريم هاي 4 موو كليپ يك فريم خالي است و اكشن
کد:
stop();
نام موو كليپ ها را
کد:
nib 
bucasb
fallito 
buca
مي زاريم . در هر موو كليپ فريم اول خالي است و از فريم دوم تا فريم 120 ادامه مي ديم يعني اينكه شما روي 120 بايد f6 بزنيد و اكشني براي فريم 120 مي زنيم :
کد:
_root.turno *= -1;
_root.parti = 0;
_root.b = 0;
_root.ball._visible = true;
gotoAndPlay(1);
براي هر 4 موو كليپ رو آخرين فريم

در موو كليپ Buca در فريم دومش و فريم 120 بنويسيد ؛ توي سوراخ رفت ؛
در موو كليپ fallito در فريم دومش و فريم 120 بنويسيد ؛ بازنده ؛
در موو كليپ bucasb در فريم دومش و فريم 120 بنويسيد ؛ اشتباه ؛
در موو كليپ nib در فريم دومش و فريم 120 بنويسيد ؛ توي سوراخ نرفت ؛

الان فلش را با swf ذخيره مي كنيد و آن را باز مي كنيد :
با جهت هاي چپ و راست زاويه را عوض مي كنيد و با اينتر آن را رها مي كنيد (هر چي اينتر ار بيشتر بگيريد قدرت توپ بيشتر ميشه )
نمونه ي ماله من
:







click here
 

iman_flash

Active Member
ممنون
ولي كاش يه كم با سليقه تر مي‌نوشتيد
كدها رو تو تگ كد ميذاشتيد...
 

amir_s

Active Member
درست كردم
اسكريپت ها رو براتون به حالت كد در اوردم ...
كار خودتونه ؟
اگر منبع رو هم بگيد براي مقالات سايت ميفرستم ...
 

جدیدترین ارسال ها

بالا