عبّارة القطارات والمطر
المصدر: pulsexlb/OpenTTD-patches
px-patch(دفعة 2026-10،pxp-2610.1–pxp-2610.3)، دُمجت في jrpm عبر git merge.
تقدّم هذه الدفعة ميزتين جديدتين كبيرتين: عبّارة القطارات (نقل القطارات بالبواخر) ونظام المطر (مع تعتيم العالم وقطرات المطر).
عبّارة القطارات
إضافةً إلى «نقل المركبات البرية» (RoRo) القائم، حيث تُحمَّل السيارات على القطارات والبواخر الطائرات، أصبحت البواخر قادرة الآن على نقل قطارات كاملة.
العلاقة مع RoRo
| نقل المركبات البرية (VEHC) | نقل القطارات (RAIL) | |
|---|---|---|
| الناقلون | قطارات، بواخر، طائرات | بواخر |
| المُنقَل | مركبات برية | قطارات (جرارات وعربات معًا) |
| تسمية الشحنة | VEHC | RAIL |
| خانة الشحنة | NUM_CARGO - 1 | NUM_CARGO - 2 |
كلتا خانتي الشحنتين تقعان خارج نطاق 64 خانة NewGRF، فلا تعارض بينهما.
التحميل
- تكتسب السفينة القدرة على نقل القطارات الكاملة عبر التعديل اليدوي لها إلى شحنة «مركبات (قطار)»؛
- التحميل لكل عربة: يمكن توزيع القطار على عدة مخازن بدل اشتراط وجوده كاملًا في مخزن واحد، مما يحل مشكلة القطارات الطويلة التي لا تتسع في مخزن واحد؛
- يتيح منتقي اللافتات في خيارات النقل اختيار لافتات القطارات والمركبات البرية بشكل منفصل، فيقلن كل نوع نقل وجهته بنفسه؛
- لم يعد شريط الحالة يعرض المركبات المحمَّلة بالتفصيل، مما يحرّر مساحة لمعلومات التشغيل الأهم.
عرض سعة التحميل
- نافذة معلومات السفينة تعرض وزن البضاعة الذي يتسع له كل مخزن؛
- نافذة معلومات القطار تعرض سعة كل عربة.
إصلاحات مرافقة
أصلحت هذه الدفعة أيضًا عددًا من عيوب التحميل والتفريغ وحجز الرصيف:
- البواخر كانت تخطئ في اعتبار نوع السكة غير متوافق عند تفريغ القطارات، فيتعذر نزول القطار؛
- عدم مسح حجز الرصيف عند صعود القطار، مع أخطاء في البنية والحجز عند النزول؛
- بقايا حجز الرصيف تمنع القطارات من التفريغ إليها مجددًا؛
- بعض اتجاهات الرصيف كانت ترفض تفريغ القطار؛
- لم يكن حدُّ عدد العربات مُطبَّقًا على المركبات المعاد تجهيزها للنقل.
نظام المطر
محاكاة طقس ذات طابع تزييني بحت لا تمس منطق اللعب ولا القيم الاقتصادية.
عرض الطقس
- فترات مطر عشوائية: تُقاد حالة الطقس بمولّد أرقام شبه عشوائي حتمي مبذور من بذرة توليد الخريطة، فيرى جميع اللاعبين والخادم الطقس نفسه تمامًا؛
- تعتيم تدريجي للعالم: يظلم العالم تدريجيًا أثناء المطر ويعود تدريجيًا عند انقشاعه. يمر التعتيم عبر
RAIN_SHADE_LEVELSمستوى ويُقرأ عند رسم نوافذ العرض؛ - طبقة قطرات: طبقة مطر بملء الشاشة تتناسب مع التقريب وتحمل اهتزازًا عشوائيًا كي لا تبدو القطرات كنسيج ساكن.
الخيار والغش
- خيار الصعوبة
difficulty.rain: يحدد عند بدء لعبة جديدة ما كان تعتيم العالم أثناء المطر مفعّلًا؛ - غش صندوق الاختبار «الطقس»: دورة من ثلاث حالات — تلقائي / إجبار المطر / إجبار الشمس.
ملفات الحفظ
تُحفظ حالة الطقس (هل تمطر الآن، بذرة المولّد، بداية فترة المطر الحالية) وغش الطقس مع اللعبة؛ وبعد التحميل ينتقل التعتيم مباشرة إلى طقس الحالي بدل أن يظهر مجددًا.
- الكتلة:
WTHR؛ - علم الميزة:
XSLFI_WEATHER؛ - الشيفرة:
src/weather.cpp،src/weather.h،src/sl/weather_sl.cpp.
الشيفرة المرتبطة
- عبّارة القطارات والسعات:
src/roadveh_transport.cpp،src/cargo_type.h(CT_RAILVEHICLES)،src/table/cargo_const.h - مؤثرات المطر:
src/weather.cpp،src/blitter/32bpp_anim.cpp،src/blitter/40bpp_anim.cpp،src/viewport.cpp - حفظ الطقس:
src/sl/weather_sl.cpp،src/sl/extended_ver_sl.cpp(XSLFI_WEATHER) - الإعدادات والغش:
src/table/settings/difficulty_settings.ini(difficulty.rain)،src/cheat_gui.cpp،src/cheat_type.h