gohud

فوق الشاشة

← الودجات

GoDrawer — اللوحة الجانبية

GoSheet يأتي من الأسفل، وهو الصواب لهاتف يُمسك قائمًا. أما على لوح أو سطح مكتب فالورقة نفسها تغطّي اللعبة؛ والدرج يأتي من الجانب بدلًا من ذلك.

bag.side = GoDrawer.Side.RIGHT
bag.open("الحقيبة")

اللوحة تبلغ حافة الشاشة لكن المحتوى يبقى داخل المنطقة الآمنة، وإلا قصّ ركنٌ مدوّر الصفَّ الأول. وLEFT تعني يسار الشاشة حتى في العربية؛ فشغّل follow_text_direction حين يكون المقصود "جهة البداية"، فينقلب مع الكتابة من اليمين إلى اليسار.

GoPopover — البطاقة المثبّتة

GoPopover.open(slot, item_card(item))

هذا هو الموضع المثبّت من GoSurface وقد وُصلت له الطبقةُ والسطحُ والمرساةُ والتحريرُ سلفًا — تلك الأسطر العشرة التي تكتبها كل لعبة مرارًا وتكرارًا. وواحدة تُفتح في المرة، لأن البطاقات المكدّسة تدفن الشاشة فلا يعرف أحد أي بطاقة تخصّ أي خانة. والحجاب شفاف: فبطاقة فتحتَها لتقارن عتادًا يجب ألّا تُعتم العتاد.

ليس تلميحًا يظهر بتمرير الفأرة. فاللمس لا تمرير فيه، وكل ما لا تكشفه إلا الفأرة غير مرئي لنصف لاعبيك.

GoContextMenu — الضغط المطوَّل والنقر الأيمن

GoContextMenu.attach(item_slot, [
    {"text": "استعمال", "action": use},
    {"separator": true},
    {"text": "إسقاط", "action": drop, "danger": true},
])

PopupMenu موجود في المحرّك أصلًا. أما غير الموجود فالإيماءة: نصف ثانية للفتح، وتُلغى لحظة تحرّك الإصبع، فتمرير قائمة لا يُظهر قائمة سياق أبدًا. ومرّر Callable بدل مصفوفة حين تعتمد المدخلات على ما ضغطتَ عليه.

الضغط المطوَّل يحتاج مدخلًا ثانيًا. فلا أحد يكتشف إيماءة مخفيّة — اقرنه بزرّ ظاهر (open_at())، أو أيقونة، أو علامة إرشادية عند أول تشغيل.

GoConsole — وحدة تحكّم المطوّر

console.register("give", "امنح عنصرًا: give <id> <count>", give)
console.toggle()

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

ترفض أن تُفتح في بناء إصدار. فـdebug_only مشغّل افتراضيًا؛ وأوامر الغشّ في يد لاعب تنهي اقتصاد اللعبة في اليوم الأول.