Skip to content

تقسيم المدن (Town Zoning) ​

نقل تقسيم مدن cmclient (الدفعة الرابعة، commit 9e3f95a2). قاعدة jrpm (pulsexlb) لديها بالفعل نظام zoning خاص بها (شريط أدوات + خط رسم + قائمة)، هذه الدفعة تضيف فوقه وضع التقييم الفريد من cmclient و حفظ growth_tiles.

الأوضاع الجديدة (القائمة المنسدلة لشريط أدوات zoning) ​

الوضعالوصفالتلوين
مناطق المدن (Tz)مناطق المدينة متحدة المركز، تعيد استخدام squared_town_zone_radiusحافة Tz0=أزرق فاتح / Tz1=أحمر / Tz2=أصفر / Tz3=أخضر / Tz4 وسط المدينة=أبيض
بلاطات نمو المدينةمسار بناء وهدم المنازل للشهر الحالي/السابقمنزل جديد=أخضر / هدم=أزرق فاتح / إعادة بناء=أبيض / تخطي النمو=برتقالي / تخطي البناء=أصفر / هدم الخادم=أحمر

طبقة بيانات growth_tiles (cm_town_growth.cpp/.h) ​

  • خريطتا شهر متداول: TileIndex → TownGrowthTileState (الشهر الحالي / الشهر السابق)
  • خطافات الأحداث:
    • BuildTownHouse ← NEW_HOUSE (إذا كان الشهر السابق هدماً، ترقية إلى RH_REBUILT)
    • ClearTownHouse ← RH_REMOVED
    • TownsMonthlyLoop ← تدوير شهري (الشهر السابق = الشهر الحالي، الشهر الحالي يُفرغ)
  • استمرار الحفظ: كتلة حفظ GRWT جديدة (misc_sl.cpp)، تُسلسل كقائمة أزواج {tile, state}؛ الحفظ القديم لا يحتوي على هذه الكتلة، التحميل متوافق تماماً (تم التحقق من حفظ←قراءة ذهاباً وإياباً).

طريقة الفتح ​

قائمة شريط الأدوات ← الخريطة (Zoning) ← فتح شريط أدوات zoning، اختر وضع التقييم من القوائم المنسدلة للحلقة الداخلية والخارجية.

ملاحظات القص ​

وضع CityBuilder الخاص بخادم cmclient (منطقة قبول CB / حد مدينة CB) وحقول ext::Town الموسعة (إعلانات، أموال، إحصائيات البضائع) هي خاصة بطريقة لعب الخادم، لم يتم نقلها.