استورد أساسي::رايليب; دالة ابدأ_الرئيسية() -> ص64 { دع opened = رايليب::هيئ_نافذة(480, 300, "PNG sprites / صور متحركة"); إذا لا opened::نجاح { اطبع(opened::error::الرسالة); أرجع 1; } دع loaded = رايليب::حمل_نسيجا("docs/examples/assets/raylib-sprites.png"); إذا لا loaded::نجاح { اطبع(loaded::error::الرسالة); أرجع 2; } دع texture = loaded::قيمة; دع alias = texture; إذا رايليب::عرض_النسيج(texture)::قيمة لا يطابق 32 أو رايليب::ارتفاع_النسيج(texture)::قيمة لا يطابق 16 { أرجع 3; } دع filter = رايليب::اضبط_مرشح_النسيج(texture, رايليب::مرشح_نسيج_نقطي); دع wrap = رايليب::اضبط_التفاف_النسيج(texture, رايليب::التفاف_نسيج_تثبيت); دع pacing = رايليب::اضبط_معدل_الإطارات(60); إذا لا filter::نجاح أو لا wrap::نجاح أو لا pacing::نجاح { أرجع 4; } دع camera = رايليب::كاميرا2 { إزاحة: رايليب::متجه2 { س: 15.0, ص: 10.0 }, هدف: رايليب::متجه2 { س: 0.0, ص: 0.0 }, دوران: 0.0, تكبير: 1.0 }; دع first = رايليب::مستطيل { س: 24.0, ص: 24.0, عرض: 32.0, ارتفاع: 16.0 }; دع second = رايليب::مستطيل { س: 30.0, ص: 28.0, عرض: 32.0, ارتفاع: 16.0 }; دع collision = رايليب::هل_يتداخل_مستطيلان(first, second); دع overlap = رايليب::مستطيل_التداخل(first, second); إذا لا collision::نجاح أو لا overlap::نجاح { أرجع 16; } إذا لا collision::قيمة { أرجع 17; } متغير frame: ص32 = 0; طالما frame < 20 { إذا لا رايليب::ابدأ_الرسم()::نجاح أو لا رايليب::امسح_الخلفية(رايليب::أبيض_رايليب)::نجاح { أرجع 5; } إذا لا رايليب::ابدأ_وضع_ثنائي_الأبعاد(camera)::نجاح { أرجع 6; } إذا لا رايليب::ارسم_نسيجا(texture, 24, 24, رايليب::أبيض)::نجاح { أرجع 7; } إذا لا رايليب::ارسم_نسيجا_بمتجه(texture, رايليب::متجه2 { س: 100.0, ص: 24.0 }, رايليب::أزرق_سماوي)::نجاح { أرجع 8; } إذا لا رايليب::ارسم_نسيجا_موسعا(texture, رايليب::متجه2 { س: 40.0, ص: 110.0 }, -10.0, 4.0, رايليب::أبيض)::نجاح { أرجع 9; } إذا لا رايليب::ارسم_جزء_نسيج(texture, رايليب::مستطيل { س: 16.0, ص: 0.0, عرض: -16.0, ارتفاع: 16.0 }, رايليب::متجه2 { س: 250.0, ص: 24.0 }, رايليب::أبيض)::نجاح { أرجع 10; } إذا لا رايليب::ارسم_نسيجا_متقدما(texture, رايليب::مستطيل { س: 16.0, ص: 0.0, عرض: 16.0, ارتفاع: -16.0 }, رايليب::مستطيل { س: 330.0, ص: 160.0, عرض: -96.0, ارتفاع: 96.0 }, رايليب::متجه2 { س: 48.0, ص: 48.0 }, 25.0, رايليب::لون { أحمر: 255, أخضر: 255, أزرق: 255, ألفا: 210 })::نجاح { أرجع 11; } إذا لا رايليب::ارسم_محيط_مستطيل_موسعا(overlap::قيمة, 1.0, رايليب::أحمر)::نجاح { أرجع 18; } إذا لا رايليب::أنه_وضع_ثنائي_الأبعاد()::نجاح { أرجع 12; } إذا frame يطابق 19 { إذا لا رايليب::حرر_النسيج(alias)::نجاح أو رايليب::هل_النسيج_صالح(texture) { أرجع 13; } } إذا لا رايليب::أنه_الرسم()::نجاح { أرجع 14; } frame = frame + 1; } إذا لا رايليب::حرر_النسيج(texture)::نجاح أو لا رايليب::أغلق_النافذة()::نجاح { أرجع 15; } اطبع("texture sprites complete"); أرجع 0; }