چگونه مي توانم دستوري را با يك شرط خاص اجرا كنم

AV_3SG

Member
كیبرد و حرکت اشیا

فرض كنيم ما يه صفحه داريم كه توي اون دو تا object داريم
حالا با فرض اينكه ما بتونيم با زدن دكمه اي روي كيبورد بتونيم يكي از object ها رو تكون بديم وببريم روي اون يكي object .
حالا من مي خوام با حركت دادن يكي از اين object ها ، اون رو روي اون يكي ببرم ووقتي كه روي هم قرار كرفتند يه دستوري اجرا بشه .( بدون دخالت موس ، يعني روي هر كليدي كه كليك بكني اون كار نكنه در واقع اصلا موسي در كار نباشه و فقط با همون روشي كه گفتم دستوراتمون اجرا بشه )

با تشكر از همه اعضاي انجمن مالتي مديا
 

silvercover

کاربر متخصص
من عنوان تاپیک شما رو ویرایش کردم. لطفا در دفعات بعد از عناوینی بهتر استفاده کنید که گویای مطلب باشه.

ضمنا برای حل مشکلتون این مثال رو هم ببینید :
 

پیوست ها

  • Collisiondetection.zip
    2.1 کیلوبایت · بازدیدها: 35

AV_3SG

Member
باتشكر از شما
ولي مشكل من اين بود كه بعد از قرار گرفتن يكي از اونها برروي بروي اون يكي دستوري اجرا بشه
اگر امكان داره چند مثال در اين رابطه به من معرفي كنيد . ممنون ميشم
 

silvercover

کاربر متخصص
منظورتون قرار گرفتن کامل بر روی هم هست؟

یعنی کاملا همپوشانی داشته باشن؟
 

AV_3SG

Member
نه فقط در طورت قرار گرفتن برروي هم حالا چه كامل چه ناقص دستوري اجرا بشه
اگر ميشه يه مثال واضح وساده تر براي من بزارين تا دانلودش بكنم چون بهش نياز دارم
 

silvercover

کاربر متخصص
خب مثالی هم که گذاشتم همون کار رو میکنه. شما اول دکمه Activate رو بزنین و بعد با کیبرد تکون بدین دایره رو. حالا به محض بر خورد متن جلوی Status تغییر میکند که همون اکشنی هست که شما میخاین. شما میتونین به جای LoadText که من گذاشتم یه اکش دیگه بزارین. برای تغییر این Action هم کد توی شی Script رو ببینید و قسمت LoadText("Text","Collision")
 

AV_3SG

Member
با سلام خدمت اساتيد MMB به خصوص آقاي silvercover

من ديروز در مورد اين مطلب با Silvercover عزيز بحث كردم ولي از راهنمايي هايي كه كردن چيز زيادي نفهميدم
و لي از يه راه ديگه اي من اين كارو كردم وحالا از silvercover و از بقيه دوستان مي خوام كه كمكم بكنن تا از يه راه ساده تر و آسون تر ( طوري كه من بفهمم ) بتونم كاري بكونم كه بعد از قرار گرفتن يك object روي اون يكي ، دستوري اجرا بشه .
 

silvercover

کاربر متخصص
لطفا به سوالات زیر جواب بدین:

- آیا شما نیاز دارین که اشیایی که قرار هست روی هم قرار بگیرین با کیبرد حرکت داده بشن؟
- مهارت شما در چه سطحی هست در استفاده از بیلدر؟
 

Little-Demon

Well-Known Member
چیزی که شما میخوای سیلور عزیز گفتن دیگه ...
عجیبه ......مشکلی نباید باشه ...و راه ساده تری هم نیست...همینه.....
به نظر من البته.. بر خورد اشیا یه راه بیشتر نداره خوب....
 

AV_3SG

Member
لطفا به سوالات زیر جواب بدین:

- آیا شما نیاز دارین که اشیایی که قرار هست روی هم قرار بگیرین با کیبرد حرکت داده بشن؟
- مهارت شما در چه سطحی هست در استفاده از بیلدر؟


جواب سوال اول : نه
در واقع من پروژه ام را تغيير دادم . يعني ديگه نيازي ندارم كه اشيا با كيبرد حركت داده بشن . يعني من با يه دستور move to اين كارو كردم و شي مورد نظر من به صورت اتوماتيك با دستوري كه گفتم تكون مي خوره و بر روي شي ديگه اي ميره و من مي خوام كه بعد از قرار كرفتن اين شي برروي اون يكي يه برنامه اي نصب بشه كه همون دستوره run رو مي گم .

و در مرد سوال دوم بايد بگم كه من خيلي از برنامه نويسي با بيلدر سرم نمي شه ومن بيشتر به محيط گرافيكي و انيميشني Autorun اهميت ميدم .
و اين دستري كه از شما مي خوام براي همين كاره .و شما مي تونين به اين صوت كلي : " اگر Object 1 بر روي Object 2 قرار گرفت در اين صورت دستور مورد نظر اجرا بشه " و من نمي تونم اين دستور رو كاملش بكنم و از شما واقعا ممنون مي شم كه كمكم كنيد
 

aff - SEvEN

Banned
جواب سوال اول : نه
در واقع من پروژه ام را تغيير دادم . يعني ديگه نيازي ندارم كه اشيا با كيبرد حركت داده بشن . يعني من با يه دستور move to اين كارو كردم و شي مورد نظر من به صورت اتوماتيك با دستوري كه گفتم تكون مي خوره و بر روي شي ديگه اي ميره و من مي خوام كه بعد از قرار كرفتن اين شي برروي اون يكي يه برنامه اي نصب بشه كه همون دستوره run رو مي گم .

و در مرد سوال دوم بايد بگم كه من خيلي از برنامه نويسي با بيلدر سرم نمي شه ومن بيشتر به محيط گرافيكي و انيميشني Autorun اهميت ميدم .
و اين دستري كه از شما مي خوام براي همين كاره .و شما مي تونين به اين صوت كلي : " اگر Object 1 بر روي Object 2 قرار گرفت در اين صورت دستور مورد نظر اجرا بشه " و من نمي تونم اين دستور رو كاملش بكنم و از شما واقعا ممنون مي شم كه كمكم كنيد

سلام آقا ...

چندان تفاوتي نمي کنه که بخاين از طريق کيبرد دستور Move To رو اجرا کنيد و يا از طريق کليدها ...

خيلي راحت هست حل همچين موضوعي تعجب ميکنم چرا دوستان ؟! ... ببينيد شما دققيا بعد از دستور move to يک pause بايد اعمال کنيد براي وقفه با تايمري که مد نظرتون هست و بعدش فرمان run رو براي پروژه خودتون بنويسيد ...

خب من يه مثال ساده ساختم باستون که به جاي run کردن ... مثلا اجراي يک ستاپ نصب ... يک پيغام طي 5 ثانيه بعد از قرار گرفتن شي اجرا بشه ...

مثال رو دنلود کنيد ... خيلي ساده هست ... دقيقا متوجه مي شين منظورم رو .

کد:
MoveTo("Fun","244,210,50,")
Invert("cancel")
Invert("install")
Pause("5000")
text$='Installation ... 5 Sec ...'
flag=64+0+0+0+0
param$=text$+','+CHAR(flag)
MessageEx("Install","param$")

يادتون باشه اين متغير
کد:
Pause("5000")
هست که بيان کننده همون وقفه 5 ثانيه اي هستش براي اجراي فرامين بعد از وقفه ايجاد شده ... حالا اين فرامين هر چي ميخان باشن ، مثلا همون Run براي اجراي يک Setup ...

شبتون بخير باشه آقا .
 

پیوست ها

  • move to + installation 5 sec.rar
    29.4 کیلوبایت · بازدیدها: 10
بالا