gohud

نمطك الجاهز أنت — ملف واحد

← السمات

كانت إضافة سمة تعني تعديل أربعة مواضع باليد — لوحة ألوان البنّاء، والشكل، والمظهر، ومورد النمط الجاهز. وأمر واحد اليوم يضعها كلها في مكانها.

python3 addons/gohud/tools/new_theme.py neon --from scifi_dark --title "Neon"
python3 addons/gohud/tools/make_theme.py neon      # ملف السمة .tres + رسوم عناصر التحكم
godot --headless --path . --import                  # استورد الرسوم الجديدة مرة واحدة
GoUi.use_preset(&"neon")                             # تمّ — ويظهر في قائمة الاختيار أيضًا

السطر الأول يكتب themes/palettes/neon.json وthemes/presets/neon.tres. وملف JSON يحمل كل قيمة من السمة التي يرث عنها، مكتوبةً صراحةً، فيصلح في الوقت نفسه قائمةً بما تستطيع تغييره: احذف مفتاحًا لتبقي قيمة الأصل، واكتب واحدًا لتتجاوزها. والأنماط الجاهزة تُكتشف بـ مسح themes/presets/، فلا تتغير أي شيفرة تسجيل — وقائمة إعداد المشروع المنسدلة تلتقطها كذلك.

ما الذي تستطيع تغييره — في صفحة واحدة

أينماذاكيف
fromالسمة الأصلdark · light · scifi_dark · medieval_dark · … أو سمة JSON أخرى. والمفاتيح المحذوفة ترث قيمها؛ ودورة الوراثة تفشل
paletteالخلفية · ثلاثة أسطح · الحدّ · ثلاث درجات نص · لون التمييز · أربعة ألوان حالة · الحجاب · الظل · مجرى الشريط"#RRGGBB"، والشفافية بصيغة "#RRGGBB@0.35"
ألوان زاهية للتعبئة فقط *_vividتُبقي الأشرطة مشبعة حتى حين يضطر لون النص إلى الدكانة — أغفل واحدًا منها فينبّهك البنّاء
الوضوحلا يُضبط باليد. النصوص والحدود ولون التمييز والنص فوقه يدفعها البنّاء حتى تتجاوز العتبات — غيّر لون التمييز وحده وستظل الفحوص ناجحة
shapekindflat (مدوّر) · cut (زوايا مشطوفة) · medieval (إطارات مطروقة)
المقاساتradius · radius_small · radius_large · gap · gap_small · gap_large · padding · button_height · button_padding[4] — والتوكنات تتبعها، فلا تختلف حسابات اللوحات والودجات أبدًا
لـ cut فقطcut_ratio · cut_max · corners (diagonal|all) · glow · edge
لـ medieval فقطmaterial (0 حديد · 1 جلد · 2 رقّ) · grain_alpha · ornament_scale · bevel_strength · fonts — أي title وsubtitle وcaption وbody وbutton مربوطةً بملفات خطوط res:// داخل الإضافة
skinbase — العائلة التي تحكم المواضع التي يرسمها الكود بنفسه (عصا التوجيه، والخانات، والشارات، وحلقة العلامة الإرشادية، والشرائح، والفواصل)default · scifi · medieval
dialsأرقام تلك المواضع: عرض حدّ الخانة وصبغتها، وحشوة الشارة، وعتامة الشريحة والتنبيه، وعرض حلقة عصا التوجيه وعتامتها، ومقاسات الشطف والتوهّج والأقواس في طراز الخيال العلميكل قيمة من الأصل مكتوبة صراحةً في ملف JSON. والبنّاء يكتبها في themes/skins/gohud_skin_<id>.tresدون المساس بأي شيفرة مظهر. ولا تشغّل --new-skin، الذي يولّد هيكل صنف مشتقّ من GoSkin، إلا لتغيير الرسوم نفسها
iconsمجموعة الأيقوناتمسار res:// إلى مورد GoIconSet — ويُحتفظ به من أصل JSON عند إغفاله
dark · titleكيف تعرضه قائمة الاختيارقيمة منطقية · نص

كل مقبض

الجدول أدناه يملؤه tools/make_site.py مباشرةً من أسطر @export في سكربتات المظاهر — أضف مقبضًا أو غيّر قيمة افتراضية فيتبعه الجدول. استعمل هذه الأسماء تحت skin.dials في ملف JSON. والمقبض الذي تُقرأ قيمته الافتراضية 14 عدد صحيح، والذي تُقرأ 10.0 عدد عشري — اكتب أيّ الصيغتين في JSON ويحوّلها البنّاء إلى نوع السكربت.

المظهر الافتراضي GoSkin — 17

المقبضالافتراضيما الذي يضبطه
chip_fill_alpha0.16عتامة تعبئة لوحة الشريحة.
chip_edge_alpha0.45عتامة حافة لوحة الشريحة.
alert_tint0.1مقدار ميل لوحة صندوق التنبيه نحو لون حالته.
slot_tint_lit0.24صبغة لون التمييز في لوحة الخانة السريعة أثناء سريان مهلة استعدادها.
slot_tint_idle0.08صبغة لون التمييز في لوحة الخانة السريعة في حال السكون.
slot_border_lit2عرض حدّ الخانة السريعة (dp) أثناء سريان مهلة استعدادها.
slot_border_idle1عرض حدّ الخانة السريعة (dp) في حال السكون.
badge_pad_x5الحشوة الداخلية الأفقية (dp) للشارة (الكمية، الوقت المتبقي).
badge_pad_y1الحشوة الداخلية الرأسية (dp) للشارة.
badge_edge_alpha0.6عتامة حافة لوحة الشارة.
float_shadow_alpha0.45عتامة ظل البطاقات العائمة (العلامة الإرشادية، بطاقة السؤال).
float_shadow_size14ضبابية ظل البطاقات العائمة (dp).
float_shadow_lift4إزاحة ظل البطاقة العائمة إلى الأسفل (dp).
float_glow_size10.0مدى توهّج (dp) اللوحة العائمة التي تتوهّج بدل أن تُلقي ظلًّا، مثل اللوحة المشطوفة في طراز الخيال العلمي.
joystick_base_alpha0.42عتامة قرص قاعدة عصا التوجيه.
joystick_ring_alpha0.45عتامة حلقة عصا التوجيه.
joystick_ring_width2.0عرض حلقة عصا التوجيه (dp).

مظهر الخيال العلمي GoSkinSciFi — 10

المقبضالافتراضيما الذي يضبطه
cut_chip7.0مقدار الشطف (dp) في لوحة الشريحة.
cut_skeleton5.0مقدار الشطف (dp) في اللوحة النائبة.
cut_alert8.0مقدار الشطف (dp) في صندوق التنبيه.
cut_segment8.0مقدار الشطف (dp) في أداة التحكم المقسّمة.
cut_slot6.0مقدار الشطف (dp) في لوحة الخانة السريعة.
cut_disc_ratio0.24شطف الصور الرمزية والأقراص = القطر × هذه النسبة.
slot_glow_alpha0.45عتامة توهّج الخانة التي تسري مهلة استعدادها.
slot_glow_size6.0مدى توهّج (dp) الخانة التي تسري مهلة استعدادها.
bracket_arm12.0طول ذراع (dp) قوس التصويب في العلامة الإرشادية.
bracket_thickness2.0سماكة خط (dp) قوس التصويب في العلامة الإرشادية.

مظهر العصور الوسطى GoSkinMedieval — 5

المقبضالافتراضيما الذي يضبطه
slot_radius4.0نصف قطر زوايا (dp) إطار الخانة السريعة في طراز العصور الوسطى.
leather_grain_alpha0.035عتامة علامات الجلد الخفيفة داخل الخانات السريعة.
ornament_scale1.0مقياس الزخارف المعدنية عند أركان الخانات السريعة. أما إطارات القوائم فتستعمل shape.ornament_scale.
bevel_strength0.18شدّة الإبراز المعدني على طول حواف الخانات السريعة.
slot_rivets1إظهار مسامير معدنية صغيرة على الخانات السريعة: 0 يخفيها، و1 يظهرها.

اشتقّ المظهر (اختياري)

لا يعيش في المظهر إلا ما لا تصله السمة ولا الشكل — سداسية عصا التوجيه، وشارات الخانات، وقوس التصويب في العلامة الإرشادية. اشتقّ من GoSkin، وتجاوز تلك الدوال وحدها، ثم وجّه مفتاح skin في ملف JSON إلى ذلك المورد. أما السمة التي تغيّر الألوان وحدها فتتخطى هذه الخطوة.

فحص يحفظ الوعد. ينشئ tools/check_scaffold.sh سمةً مؤقتة في كل تشغيل — يغيّر لون التمييز، ويضبط نصف القطر على 4 — ويتحقق من التوليد ومن انتشار التوكنات ومن نجاح فحص التباين قبل أن يحذفها. وقد كشف أول تشغيل أن سمةً لم يتغير فيها إلا لون التمييز تسقط في 8 أزواج: فالبنّاء كان يدفع ألوان النصوص لكنه يستعمل لون التمييز كما كُتب. أما الآن فهو يدفع لون التمييز والنص فوقه كذلك.