مطار معياري (multitile-airport)
المصدر: فرع الميزات
jgrpp-multitile-airportمن pulsexlb/OpenTTD-patches، تم دمجه في jrpm عبر git merge.
مقدمة الوظيفة
إعادة هيكلة المطار المعياري متعدد البلاطات: تغيير المطار من "نوع مطار ثابت" إلى نظام متعدد البلاطات يمكنه تعديل تخطيطه بحرية:
- مطار متعدد البلاطات: يتكون المطار من عدة بلاطات وظيفية (مدرج، ممر سير، موقف طائرات، مبنى الركاب، مهبط طائرات هليكوبتر)، يمكن دمجها في أي تخطيط؛
- تعديل تخطيط المطار: بعد تفعيل
station.allow_modify_airports، يمكن إضافة/إزالة/تعديل البلاطات في مطار موجود؛ - نظام أنواع air: إضافة
air.h/air_type.h/newgrf_airtype.*——تجريد أنواع الطيران (طائرات ثابتة الجناح/هليكوبتر، إلخ) إلى نظام أنواع air قابل للتوسيع، يمكن لـ NewGRF تعريف أنواع طيران جديدة وسبرايتاتها؛ - جدولة PBS الجوية:
pbs_air.*——النسخة الجوية من إشغال المدرج/ممر السير وحجز الإشارات، تدعم سير طائرات متعددة بشكل متزامن؛ - توجيه YAPF الجوي: تخطيط مسار الطائرة على الأرض (سير/انتظار) وفي الجو يتبع نظام YAPF.
القدرات الأساسية
| القدرة | الوصف |
|---|---|
| تعديل تخطيط المطار | station.allow_modify_airports (مفعل افتراضياً؛ بعد التفعيل يمكن تعديل المطارات الموجودة) |
| نوع الطيران الافتراضي | gui.default_air_type |
| سبرايتات المطار متعدد البلاطات | openttd.grf (سبرايتات أنواع air) المعاد بناؤه، إصلاح سبرايتات الشفافية |
| سلوك الطائرات | إشغال المدرج، الانعطاف أثناء السير، انتظار الإقلاع/الهبوط، مهبط الطائرات الهليكوبتر، رسم المركبات الفضائية |
| توافق NewGRF | تحميل سبرايتات airtype، استدعاءات NewGRF للمطار |
| الحفظ | إصدار حفظ SLV_MULTITILE_AIRPORTS |
طريقة الاستخدام
- فعّل
station.allow_modify_airportsفي إعدادات اللعبة؛ - بعد بناء المطار، استخدم أداة تعديل المطار لضبط تخطيط المدرج/مواقف الطائرات/مبنى الركاب؛
- اختر نوع الطيران الافتراضي في
gui.default_air_type؛ - استخدم أنواع air مخصصة مع نيوجراف الطيران.
الكود ذو الصلة
- أنواع الطيران:
src/air.h،src/air_type.h،src/newgrf_airtype.* - الجدولة الجوية:
src/pbs_air.* - أوامر الطائرات/المطارات:
src/aircraft_cmd.cpp(إعادة هيكلة 3600 سطر)،src/airport_cmd.cpp،src/airport_gui.cpp - التوجيه:
src/pathfinder/yapf(جزء الطيران) - الحفظ:
src/sl/saveload_common.h(SLV_MULTITILE_AIRPORTS)
ملاحظات
- هذه الميزة هي إعادة هيكلة واسعة النطاق لنظام الطيران (إعادة هيكلة aircraft_cmd.cpp لأكثر من 3600+ سطر)، يوصى بالتركيز على الاختبارات الانحدارية بعد التجميع الفعلي: شراء/إقلاع/هبوط الطائرات، إشغال المدرج، واجهة مستخدم المطار، تحميل الحفظ؛
- تم حذف الأنواع القديمة غير المشار إليها في مساحة العمل أثناء الدمج (
VehicleAirFlags،AirportMovingDataFlag)، تم التأكد من عدم وجود ملفات أخرى تشير إليها؛ - إذا كان المطار الموجود في الحفظ يحتاج إلى تعديل، قم بنسخ احتياطي للحفظ أولاً.