root

fa.sa

Member
سلام به اساتید و دوستان عزیز
اول می خواستم یه توضیح اجمالی راجع به root و کاربردش بدونم و بعد کاربردشو توی این کدنویسی بگید.
اگه ممکنه راهنمایی کنید.​

PHP:
on (rollOver) {
 b1.play();
}
on (release) {
 _root.dog.play();
 //loadMovieNum("hugo87_1.swf",2);
 if (_root.pressed_link<>2) {
  _level2.gotoAndPlay("dissappear");
  _root.pressed_link = 2;
 }
}
}​
 
آخرین ویرایش:

DaDaDooDoo

کاربر VIP
root توی اکشن 2 به ریشه اشاره می کنه . یعنی timeline اصلی و بالاترین level . توی این مثال هم یکسری از آبجکت و متغیر هایی که توی روت هست صدا زده شده .

مثلاً مووی کلیپ dog که توی روت هست پلی بشه .
 

fa.sa

Member
ممنون دوست عزیز
منظور از (_root.pressed_link<>2)
میشه از خط اسلش دار به بعد رو بیشتر راجع بهش توضیح بدی؟
 

JavidFlasher

کاربر فعال
خوب این خط که شما دادید یه ifهست که میگه اگه یه متغیر که تو تایم لاین تعریف کردین بزرگتر یا کوچیکتر از 2 باشه بره به موی کلیپی به نام_level2و تو فریمی به نام dissappearو بعد مقدار همون متغیری که چک کرده بود از دو کوچیکتر بزرگتر باشه 2بشه!!
 

sdm

New Member
ببین همون طور که میدونی تو as2 میتونی با دستور gotoAndPlay بری به یه فریم دیگه و از اونجا فیلم فلشت رو ادامه بدی.
حالا فرض کن توی stage(صحنه اصلی) یه مووی کلیپ داری به نام mc1 و یکی دیگه به نام mc2 ( منظور از این اسم، اسم انتخابی برا موقعی که F8 رو میزنی که یه شکل رو تبدیل به مووی کلیپ کنی نیست، منظورم اینه که روی مووی کلیپ کلیک کنی و در پنجره Properties در کادر Instans_name اسمی رو وارد کنی که فقط با این اسم میتونی تو as باهاش کار کنی) حالا توی این mc1 یه دکمه داری به نام inmc1 و تو mc2 یه مووی کلیپ داری که یه انیمیشن رو نشون میده که مثلا 70 تا فریم داره،در ضمن یه متغیر به نام a تو stage تعریف میکنبم تا با کلیک دکمه مقدارش تریس(trace) بشه.اون چیزی که تاحالا گفتم اینه:

0dba3c16ad8c42078066.jpg


خب میخوایم اگه دکمه کلیک بشه انیمیشن داخل inmc2 وایسته(stop)، اگه رو دکمه راست کلیک کنیم و ac رو باز کنیم و کد زیر رو بنویسیم error میده

a5ad3ca7244a4ff8924c.jpg

error به خاطر اینه که از داخل یه timeline خاص فقط میتونیم به خودش و timeline مووی کلیپ ها و دکمه ها و ... داخل خودش دسترسی داشته باشیم و در اینجا این متغیر و انیمیشن داخل mc1 نیست.خب پس چی کار کنیم؟؟!!
باید یه جوری آدرس inmc2 رو به دکمه بدیم. اینجاست که قدر کلمه root_ رو درمیابیم. این کلمه اشاره میکنه به stage(بالاترین صحنه در فیلممون) یعنی آدرس میده به timeline اصلی و اولیه در فلش. حالا میتونی آدرس رو از اینجا(بالاترین timeline) بدی البته با ترکیب نقطه ای:
ccacbe1949af4853bc60.jpg


حالا هر دستوری خواستی بهش بده:
638d151ed71c4d65a1f3.jpg

 

fa.sa

Member
sdm جون. داداش خیلی دلسوزی به خدا...:shock:
واقعا ممنون که وقت گذاشتی و کامل توضیح دادی فکر کنم دیگه کاربرد root هیچ وقت یادم نره
این مطلب برای وقتی هم که بخوایم برای یه scene دیگه آدرس دهی کنیم صدق میکنه . راستی زمانی که من توی یه scene دیگه صفحه ای رو می سازم که می خوام توسط کلیک کردن روی یه موی کلیپ توی scene اول به scene دوم هدایت بشه اصلا حتی کدهای stop آخر و اول scene ها هم عمل نمی کنه و مثل یه کارتون انیمیشنی همینطور برا خودش اجرا می کنه و می ره.

بازم ممنون .:rose::oops:
 
آخرین ویرایش:
  • Like
Reactions: sdm

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

بالا