بسم الله الرحمن الرحيم
لعبة سيارات و رياضيات
هذه اللعبة قمت بأصدارها قبل كم يوم
لمن لم يجربها اضغط هنا
_____________
عندما تبدأ بلعب اللعبة تظن ان :
المرحلة طويلة .
السيارة متحركة و الخلفية و البيوت ثابتة لا تتحرك .
هذا الاعتقاد خاطئ
حيث انه يتطلب تصميم مرحلة طويلة نسبياً ووضع الكثير من البيوت و الاعمدة
وذلك سيؤدي إلى بطئ اللعبة نسبياً
أنظر إلى هذه الصورة :

هذه صورة اللعبة عندما تبدأ باللعب .
لكن من داخل محرك اللعبة
انظر الى المرحلة :

هذه هي المرحلة الوحيدة التي تلعب فيها في جميع اللعبة
وكل جولات السباق هنا
السر في اللعبة :
الخلفية و البيوت هي التي تتحرك
اما السيارات لا تتحرك الا قليلاً
بحيث تكون سرعة السيارة الزرقاء = صفر لا تتحرك
لكن تكون هناك سرعة افتراضية للسيارة الزرقاء
و تزداد السرعة الافتراضية كلما ازدادت الاجابات الصحيحة وقلت الاجابات الخاطئة و ازدادت سرعة الاجابة .
اما البيوت والشارع تتحرك الى اليسار بسرعة = سرعة السيارة الزرقاء الافتراضية (بعكس اتجاه حركة السيارة الزرقاء).
اما الخلفية البعيدة (القدس) تتحرك الى اليسار بسرعة = سرعة السيارة الزرقاء الافتراضية/200
اما بالنسبة الى سرعة السيارة البيضاء
فيتم حساب المسافة بين السيارتين على حسب السرعة الافتراضية لكل سيارة
ويتم تحريك السيارة البيضاء الى الامام اذا كانت سرعتها الافتراضية اكبر من سرعة السيارة الزرقاء
ويتم تحريكها الى الخلف اذا كانت سرعتها الافتراضية اقل من سرعة السيارة الزرقاء
ويتم تعريف متغير جديد لحساب المسافة التي قطعتها السيارة الزرقاء
في كل لحظة (اطار frame) :
المسافة = المسافة + السرعة .
فحص اذا كانت المسافة > طول المسار اذاً
{
ضع خط النهاية
}
ملاحظة : بالنسبة للبيوت كلما خرجت من الجهة اليمنى يتم اعادتها الى الجهة اليسرى
او تقوم بحذفها ثم انشائها من جديد خارج المرحلة في الجهة اليمنى و تضع لها سرعة السيارة الافتراضية
وهذه اغلب المشاكل التي واجهتني في صناعة اللعبة
الى هنا انتهى الدرس
دروس سابقة من سلسلة كيف صنعت :
لعبة Snake
لعبة سيارات و رياضيات
هذه اللعبة قمت بأصدارها قبل كم يوم
لمن لم يجربها اضغط هنا
_____________
عندما تبدأ بلعب اللعبة تظن ان :
المرحلة طويلة .
السيارة متحركة و الخلفية و البيوت ثابتة لا تتحرك .
هذا الاعتقاد خاطئ
حيث انه يتطلب تصميم مرحلة طويلة نسبياً ووضع الكثير من البيوت و الاعمدة
وذلك سيؤدي إلى بطئ اللعبة نسبياً
أنظر إلى هذه الصورة :

هذه صورة اللعبة عندما تبدأ باللعب .
لكن من داخل محرك اللعبة
انظر الى المرحلة :

هذه هي المرحلة الوحيدة التي تلعب فيها في جميع اللعبة
وكل جولات السباق هنا
السر في اللعبة :
الخلفية و البيوت هي التي تتحرك
اما السيارات لا تتحرك الا قليلاً
بحيث تكون سرعة السيارة الزرقاء = صفر لا تتحرك
لكن تكون هناك سرعة افتراضية للسيارة الزرقاء
و تزداد السرعة الافتراضية كلما ازدادت الاجابات الصحيحة وقلت الاجابات الخاطئة و ازدادت سرعة الاجابة .
اما البيوت والشارع تتحرك الى اليسار بسرعة = سرعة السيارة الزرقاء الافتراضية (بعكس اتجاه حركة السيارة الزرقاء).
اما الخلفية البعيدة (القدس) تتحرك الى اليسار بسرعة = سرعة السيارة الزرقاء الافتراضية/200
اما بالنسبة الى سرعة السيارة البيضاء
فيتم حساب المسافة بين السيارتين على حسب السرعة الافتراضية لكل سيارة
ويتم تحريك السيارة البيضاء الى الامام اذا كانت سرعتها الافتراضية اكبر من سرعة السيارة الزرقاء
ويتم تحريكها الى الخلف اذا كانت سرعتها الافتراضية اقل من سرعة السيارة الزرقاء
ويتم تعريف متغير جديد لحساب المسافة التي قطعتها السيارة الزرقاء
في كل لحظة (اطار frame) :
المسافة = المسافة + السرعة .
فحص اذا كانت المسافة > طول المسار اذاً
{
ضع خط النهاية
}
ملاحظة : بالنسبة للبيوت كلما خرجت من الجهة اليمنى يتم اعادتها الى الجهة اليسرى
او تقوم بحذفها ثم انشائها من جديد خارج المرحلة في الجهة اليمنى و تضع لها سرعة السيارة الافتراضية
وهذه اغلب المشاكل التي واجهتني في صناعة اللعبة
الى هنا انتهى الدرس
دروس سابقة من سلسلة كيف صنعت :
لعبة Snake
تعليق