منشئ شخصيات الألعاب
جزء من قسم Object Oriented Programming في رحلة JavaScript على Coddy. الدرس 53 من 56.
التحدي
هذا نظام بسيط لشخصيات الألعاب حيث يمكن للشخصيات تجهيز الأسلحة والمشاركة في القتال.
مهمتك هي إضافة هاتين الطريقتين (methods) إلى فئة Character:
الطريقة الأولى: takeDamage(amount)
- تقوم هذه الطريقة بتقليل صحة الشخصية بمقدار amount
- تسجل في القنصل (Logs):
${this.name} takes ${amount} damage
الطريقة الثانية: equipWeapon(weapon)
- تمنح هذه الطريقة الشخصية سلاحاً (علاقة تركيب: "has-a")
- تسجل في القنصل (Logs):
${this.name} equipped ${weapon.name}
جرّب بنفسك
import { Character } from './character.js';
import { Weapon } from './weapon.js';
const hero = new Character('Knight');
const sword = new Weapon('Sword', 10);
hero.equipWeapon(sword); // يجب أن يسجل: "Knight equipped Sword"
hero.takeDamage(20); // يجب أن يسجل: "Knight takes 20 damage"
console.log(hero.health); // يجب أن يظهر: 80جميع دروس Object Oriented Programming
1الكائنات والكلمة المفتاحية this
مراجعة سريعة: الكائناتإضافة Methods إلى الكائناتفهم الكلمة المفتاحية thisConstructor Functionsالكلمة المفتاحية newتحدي المراجعة7الوراثة والكلمة المفتاحية extends
الوراثةعلاقة "is-a"الكلمة المفتاحية extendsالدالة super()وراثة الخصائص والوظائفتحدي المراجعة2تنظيم الكود
ما هي الـ Modules؟التصدير باستخدام exportالاستيراد باستخدام importالـ Default مقابل الـ Named Exports8تنظيم كود OOP
تنظيم الـ Classes في Modules11مشروع: مصيّر الأشكال
إعداد: فئة Shape والتصديروراثة فئة Circleإعادة التعريف ودالة المساحةعداد الأشكال Static9الخصائص والدوال الثابتة (Static)
مستوى الكلاس مقابل مستوى الكائنالخصائص الثابتة (Static Properties)دوال المساعدة الثابتة (Static Utility Methods)تحدي المراجعة12Getters و Setters
الكلمات المفتاحية get و setالخصائص المحسوبةالتحقق من الصحة والآثار الجانبيةتحدي المراجعة15التحديات النهائية
منشئ شخصيات الألعابنظام منتجات التجارة الإلكترونيةنظام إدارة الجامعاتنظام أجهزة المنزل الذكيتدرّب بنفسك: مترجم JavaScript عبر الإنترنت