مشکل در دستور دهی به فریم های یک اسپرایت+رندوم موقعیت فریم ها
#1
با سلام به اساتید عزیز.
اساسا برای اینکه به یک فریم مشخص از یک اسپرایت  دستور شرطی بدیم،این کار به چه صورت انجام میشه؟مثلا در سورس زیر در موقع شروع لایه فریم های اسپرایت در موقعیت هم بصورت رندوم جابجا میشن.اما من می خوام بگم که اگر فریم ها در موقعیت اولیشون نبود(در اینجا منظور فریم ها بصورت 123 نبود) ، کدها اجرا بشن.در واقع نمی خوام در هر بار اجرا ترتیبشون بصورت 123 باشن. حالا 132 یا 321 و .. مشکلی نیست.
ممنون میشم راهنمایی کنید
سورس
 
  پاسخ


 سپاس شده توسط: ᔕinaᗪehghani
#2
(1400/8/27، 11:07 صبح)mehdi نوشته است: با سلام به اساتید عزیز.
اساسا برای اینکه به یک فریم مشخص از یک اسپرایت  دستور شرطی بدیم،این کار به چه صورت انجام میشه؟مثلا در سورس زیر در موقع شروع لایه فریم های اسپرایت در موقعیت هم بصورت رندوم جابجا میشن.اما من می خوام بگم که اگر فریم ها در موقعیت اولیشون نبود(در اینجا منظور فریم ها بصورت 123 نبود) ، کدها اجرا بشن.در واقع نمی خوام در هر بار اجرا ترتیبشون بصورت 123 باشن. حالا 132 یا 321 و .. مشکلی نیست.
ممنون میشم راهنمایی کنید
سورس
 

سلام؛

اگر منظورتون اينه كه اگر اسپرايت ما در حال حاضر يك فريم رو داشت يه كار خاصي انجام بشه ميتونيد از اين كانديشن استفاده كنيد:
<-- spriteName | Animation frame = frame Name
Felan Action

و اين اكسپرشن بهتون فريمي كه در حال حاضر اسپرايت داره رو نشون ميده:
spriteName.AnimationFrame

موفق باشيد!
نقل قول:
 لحظه ها را ميگذرانديم تا به خوشبختي برسيم؛ غافل از اينكه خوشبختي در آن لحظه ها بود كه گذرانديم.
  پاسخ


 سپاس شده توسط: mehdi
#3
(1400/8/27، 05:41 عصر)ᔕinaᗪehghani' نوشته است:
(1400/8/27، 11:07 صبح)mehdi' نوشته است: با سلام به اساتید عزیز.
اساسا برای اینکه به یک فریم مشخص از یک اسپرایت  دستور شرطی بدیم،این کار به چه صورت انجام میشه؟مثلا در سورس زیر در موقع شروع لایه فریم های اسپرایت در موقعیت هم بصورت رندوم جابجا میشن.اما من می خوام بگم که اگر فریم ها در موقعیت اولیشون نبود(در اینجا منظور فریم ها بصورت 123 نبود) ، کدها اجرا بشن.در واقع نمی خوام در هر بار اجرا ترتیبشون بصورت 123 باشن. حالا 132 یا 321 و .. مشکلی نیست.
ممنون میشم راهنمایی کنید
سورس
 

 

سلام؛

اگر منظورتون اينه كه اگر اسپرايت ما در حال حاضر يك فريم رو داشت يه كار خاصي انجام بشه ميتونيد از اين كانديشن استفاده كنيد:
<-- spriteName | Animation frame = frame Name
Felan Action

و اين اكسپرشن بهتون فريمي كه در حال حاضر اسپرايت داره رو نشون ميده:
spriteName.AnimationFrame

موفق باشيد!

 
ممنون؛
من سعی کردم با چیزی که گفتی انجام بدم.البته اینکه به یک فریم دستور بدم اوکی شد.من سورس و ویرایش کردم اما فکر می کنم نتونستم ساده تر و بهینه تر این کار و انجام بدم.ببینید من  توی صفحه سه تا اسپرایت سبز دارم که به ترتیب از سمت چپ قرار دادم و برای اینکه هر دفعه لایوت شروع شد اسپرایت های زرد رنگ بصورت رندوم روی اسپرایت های سبز قرار بگیره ، از دستور pick random استفاده کردم.اما می خوام اگر تنها در یک صورت کد های لایوت تکرار بشه.یعنی اگر ترتیب اسپرایت های زرد بصورت (3-2-1) بود دوباره کدهای لایوت اجرا بشه.
در اصل من می خواستم ترتیب چیزی که از ابتدا  در سورس دیده میشه اجرا نشه.البته با ترتیب  اسپرایت های سبز کاری ندارم.من این روش رو در سورس استفاده کردم اما کدهام زیاد شده

سورس2


 
  پاسخ


 سپاس شده توسط: ᔕinaᗪehghani


موضوع‌های مشابه…
موضوع نویسنده پاسخ بازدید آخرین ارسال
  حل شده جایگذاری به ترتیب amin COD 2 165 1400/8/27، 08:08 صبح
آخرین ارسال: amin COD
  حل شده جابجایی فریم های یک اسپرایت mehdi 2 157 1400/8/26، 01:23 عصر
آخرین ارسال: mehdi
  حل شده رد توپ محمد 82 5 248 1400/8/24، 10:08 عصر
آخرین ارسال: mhp
  حل شده حرکت عمودی منو بصورت اسکرول mehdi 4 248 1400/8/23، 02:38 عصر
آخرین ارسال: mehdi
  حرکت خانه ایزومتریک M.Y 1 322 1400/8/22، 09:51 صبح
آخرین ارسال: M.Y

پرش به انجمن: