آموزش اکشن (hitTest) در فلش 8

شروع موضوع توسط mohsensemsarpour ‏19 مارس 2008 در انجمن برنامه فلش Flash

  1. mohsensemsarpour

    mohsensemsarpour کاربر فعال

    ارسال‌ها:
    1,215
    تشکر شده:
    931
    امتیاز دستاورد:
    113
    با سلام خدمت دوستان عزیز

    پیش نیازها :
    1. متغییرها : http://www.forum.majidonline.com/showthread.php?t=91580
    2. دستورات شرطی : http://www.forum.majidonline.com/showthread.php?t=91581

    در این آموزش قصد دارم مبحث hitTest را بیان کنم. این مبحث مورد نیاز بسیاری از عزیزانی که قصد ساخت بازی یا دروس الکترونیک را دارند می باشد.
    بحث کلی در مورد این تابع این است که ، این تابع وظیفه چک کردن این موضوع را دارد که آیا شی مورد نظر ما بر روی شی دوم که مد نظر است قرار گرفته یا نه.
    این دستور را می توان با استفاده از یک دستور شرطی چک کرد.

    اول از همه ، ما نیاز به دو تا object داریم . خوب برای این آموزش ابتدا یک دایره رسم کنید و بر روی آن راست کلیک کرده و آن رو تبدیل به movie clip کنید. در ادامه روی آن کلیک کرده و مانند شکل زیر در قسمت Properties یک instance name برای آن در نظر بگیرید. (به عنوان مثال ball)

    [​IMG]
    [​IMG]

    حالا یک مربع در زیر دایره رسم کرده و به روش بالا آن را تبدیل به Movie Clip کنید. در انتها بر روی آن کلیک کرده و نام آن را (instance name را) ground بگذارید.

    [​IMG]

    خوب حالا می رسیم به مرحله پایانی کار ، در این بخش باید روی دایره کلیک کرده و کلید F9 از صفحه کلید رو بزنید. حالا دستورات زیر رو روی اون قرار بدید.
    <SPAN lang=en-us>
    PHP:

    1. onClipEvent (enterFrame) {
    2. if(this.hitTest(_root.ground)){
    3. trace('ok')
    4. }else{
    5. this._y+=10;
    6. }
    7. }
    8. //.:create by mohsen semsar pour:.\\
     
    خوب می رسیم به توضیح کد ها :
    خط 1 : از رویداد enterFrame استفاده شده و این بدین معنی است که در هر لحظه ای که این Movie Clip روی سن قرار دارد کدهایی که در این بلوک واقع شده اند اجرا می شوند.
    خط 2 : شرط شروع می شود و بررسی می کند که آیا این دایره روی مستطیلی که در زیر قرار دارد واقع شده یا نه
    خط 3 : اگر شرط برقرار شده باشد پیغام ok نمایش داده می شود.
    خط 4 : در غیر اینصورت
    خط 5 : محل قرار گیری این دایره در صفحه بر روی محور y ها 10 تا اضافه می شود و در واقع دایره به پایین حرکت می کند.
    خط 6 و 7 : به ترتیب پایان بلوک های enterframe و if را مشخص می کنند.
    خط 8 : توضیحات برنامه می باشد.

    موفق و پیروز باشید.
    در ضمن فایل برنامه ضمیمه شده
    فیلم رو هم می تونید دانلود کنید.
    منتظر نظراتتون هستم.
     

    پیوست ها:

    • hitTest.zip
      اندازه فایل:
      کیلوبایت 5
      نمایش ها:
      32
    آخرین ویرایش: ‏19 مارس 2008
    نوشته شده توسط mohsensemsarpour در ‏19 مارس 2008
    ++Hadi++، JavidFlasher، abbasnabizadeh و یک نفر دیگر از این ارسال تشکر کرده اند.
  2. alionline1366

    alionline1366 Active Member

    ارسال‌ها:
    3,028
    تشکر شده:
    2,696
    امتیاز دستاورد:
    36
    بسیار عالی بود محسن جان ممنون از آموزش خوبت استفاده کردیم
     
    نوشته شده توسط alionline1366 در ‏19 مارس 2008
  3. mohsensemsarpour

    mohsensemsarpour کاربر فعال

    ارسال‌ها:
    1,215
    تشکر شده:
    931
    امتیاز دستاورد:
    113
    سلام
    خواهش می کنم کاری نکردیم
    دوست عزیز لطفا اگر نظر انتقاد یا پیشنهادی برای این روش آموزشی دارید همین جا قرار بدید خوشحال می شم بشنوم
     
    نوشته شده توسط mohsensemsarpour در ‏19 مارس 2008
  4. alionline1366

    alionline1366 Active Member

    ارسال‌ها:
    3,028
    تشکر شده:
    2,696
    امتیاز دستاورد:
    36
    روش بسیار عالی هست ولی بهتر میشه اگر به صورت جامع در یک تاپیک قرار بگیره
     
    نوشته شده توسط alionline1366 در ‏19 مارس 2008
  5. mohsensemsarpour

    mohsensemsarpour کاربر فعال

    ارسال‌ها:
    1,215
    تشکر شده:
    931
    امتیاز دستاورد:
    113
    دوست عزیز سلام
    تمامی عناوین رو داخل یک تاپیک قرار دادم
    اما در مورد اینکه آموزش ها همه توی یه تاپیک باشه به نظر من یه ذره شلوغ پلوغ می شه
    این طوری اگر شما به یه قسمت خاص نیاز داشته باشید فقط اونو می بینید و بقیه موارد برای شما ایجاد مزاحمت نمی کنن
    با تشکر از شما بابت نظراتتون

    آدرس تاپیکی که تمام آموزش ها رو لیست می کنم :
    http://forum.majidonline.com/showthread.php?t=91883

    موفق باشید
     
    نوشته شده توسط mohsensemsarpour در ‏19 مارس 2008

به اشتراک بگذارید