Limn Engine: مرجع API الكامل
ابنِ الألعاب بسرعة أكبر باستخدام Limn Engine API. يغطي هذا الدليل الفئات (classes) والأساليب (methods) الأساسية التي تحتاجها للبدء في التطوير.
الفئات الأساسية (Core Classes)
• Display (L1): قلب المحرك. يدير اللوحة (canvas)، وحلقة اللعبة (game loop)، والمدخلات، والكاميرا. • Component (L1): كل كائن مرئي. يتولى إدارة الموقع، والحجم، والفيزياء، والتصادمات. • Camera (L2): يتحكم في نافذة العرض (viewport). استخدمه لتتبع اللاعبين، أو هز الشاشة، أو التكبير/التصغير. • Move (L1): أداة مساعدة للفيزياء، والجسيمات (particles)، ومنطق الحركة. • State (L1): أدوات للقراءة فقط للاستعلام عن خصائص الكائنات. • TileMap (L2): نظام للمستويات والخرائط القائمة على الشبكة. • Tctxt (L1): نص غني (rich text) مع دعم الخلفية والمحاذاة. • Sound (L1): يتعامل مع ملفات صوتية فردية. • SoundManager (L4): يدير أصواتاً متعددة ومستوى الصوت العام. • ParticleSystem (L3): ينشئ انفجارات، ودخاناً، وتأثيرات مستمرة. • Sprite (L2): يدير رسوم متحركة لصفحات الرسوم (spritesheet).
تنفيذ سريع
بدء تشغيل المحرك: const display = new Display(); display.perform(); display.start(800, 600);
إضافة لاعب: const player = new Component(40, 40, "blue", 100, 100); player.physics = true; player.gravity = 0.4; display.add(player);
الحركة والفيزياء
استخدم أداة move المساعدة لتبسيط الكود الخاص بك:
move.bound(player): يبقي الكائنات داخل اللوحة (canvas).move.pointTo(id, x, y): يقوم بتدوير الكائن ليواجه هدفاً معيناً.move.project(id, speed, angle, gravity): ينشئ حركة للمقذوفات.move.accelerate(id, ax, ay): يضيف حركة سلسة.
التحكم في الكاميرا
أبقِ الحدث في مجال الرؤية باستخدام هذه الأساليب:
display.camera.follow(target, true): يتتبع الكائن بسلاسة.display.camera.shake(x, y): يضيف اهتزازاً للشاشة لإحداث تأثير (impact).display.camera.setZoom(amount): يغير مقياس العرض.
التأثيرات البصرية
عزز لعبتك باستخدام الجسيمات (particles):
move.particles.explosion(ps, x, y, count): ينشئ انفجاراً.move.particles.smoke(ps, x, y): ينشئ سحابة دخان.move.particles.magic(ps, x, y): ينشئ تأثيرات دوارة ملونة.
المصدر: https://dev.to/kehinde_owolabi_e2e54567a/limn-engine-complete-api-reference-1acj