gohud

Sopra lo schermo

← Widget

GoDrawer — il pannello laterale

GoSheet arriva dal basso, ed è quello che ci vuole per un telefono tenuto in verticale. Su un tablet o su un desktop lo stesso foglio copre il gioco; un pannello laterale arriva invece di fianco.

bag.side = GoDrawer.Side.RIGHT
bag.open("Borsa")

Il pannello arriva fino al bordo dello schermo ma il contenuto resta dentro l'area sicura, altrimenti un angolo arrotondato taglia la prima riga. LEFT significa sinistra dello schermo anche in arabo; attiva follow_text_direction quando il punto è "il lato d'inizio", e allora si ribalta in RTL.

GoPopover — la scheda ancorata

GoPopover.open(slot, item_card(item))

Questa è la collocazione ancorata di GoSurface con il livello, la superficie, l'ancoraggio e lo smontaggio già collegati — le dieci righe che ogni gioco riscrive una volta dopo l'altra. Ne resta aperta una alla volta, perché le schede impilate seppelliscono lo schermo e nessuno capisce più quale scheda appartenga a quale slot. Il velo è trasparente: una scheda aperta per confrontare l'equipaggiamento non deve oscurare l'equipaggiamento.

Non è un tooltip al passaggio del mouse. Il touch non ha il passaggio del mouse, quindi tutto ciò che solo un mouse può rivelare è invisibile a metà di chi gioca.

GoContextMenu — pressione prolungata e clic destro

GoContextMenu.attach(item_slot, [
    {"text": "Usa", "action": use},
    {"separator": true},
    {"text": "Getta", "action": drop, "danger": true},
])

PopupMenu c'è già nel motore. Quello che non c'è è il gesto: mezzo secondo per aprirsi, annullato nell'istante in cui il dito si muove, così scorrere una lista non fa mai saltare fuori un menu. Passa un Callable invece di un array quando le voci dipendono da che cosa hai premuto.

Una pressione prolungata ha bisogno di una seconda via d'accesso. Nessuno scopre un gesto nascosto — affiancale un pulsante visibile (open_at()), un'icona o un coach mark al primo avvio.

GoConsole — la console per lo sviluppo

console.register("give", "Assegna un oggetto: give <id> <quantità>", give)
console.toggle()

Comandi di cheat e di debug, con una palette che filtra mentre digiti così nessuno deve impararli a memoria, e una cronologia sui tasti freccia. Sta sopra ogni cosa, quindi puoi fare debug sopra una finestra di dialogo.

Si rifiuta di aprirsi in una build di rilascio. debug_only è attivo per impostazione predefinita; i comandi di cheat nelle mani di chi gioca chiudono l'economia di un gioco il primo giorno.