gohud

Les skins — là où un Theme n'atteint pas

← Thématisation

MéthodeCe qu'elle décide
surface_box · floating_box · overlay_boxFaces des cartes et des panneaux, surfaces flottantes, pastilles posées sur le jeu ou sur une carte
chip_box · chip_inkLe panneau d'une puce et la couleur de libellé qui y reste lisible
slot_box · slot_inkLes faces des emplacements rapides et leur texte
disc_boxLe cercle derrière un avatar ou un badge
alert_box · skeleton_box · segment_boxAlertes en ligne, espaces réservés, contrôles segmentés
coach_ring_boxLa marque qu'une visite guidée pose autour de sa cible
draw_joystick · draw_coach_pointerCe qui est dessiné directement — le joystick et son pointeur
divider_color · divider_thickness · section_boxSéparateurs et en-têtes de section
badge_boxBadges des emplacements rapides — quantité et temps restant
progress_fill_box · notice_box · tint_noticeRemplissages des barres (cerclés lorsqu'un remplissage n'atteint pas 3:1 sur sa gouttière) et snackbars
class_name MySkin extends GoSkin

func draw_joystick(canvas: CanvasItem, center: Vector2, knob: Vector2,
        radius: float, knob_radius: float, ink: Color, base: Color, active: bool) -> void:
    # Le widget a déjà calculé les positions — ici, on ne fait que dessiner
    canvas.draw_circle(center, radius, Color(base, 0.4))
    canvas.draw_circle(knob, knob_radius, ink)

Des formes que StyleBoxFlat ne sait pas produire

ClasseCe qu'elle dessine
GoStyleBoxCutCoins coupés en diagonale, une arête d'accent épaissie, un halo extérieur
GoStyleBoxBracketDes marques d'angle seules, laissant le contenu non enfermé
GoStyleBoxMedievalUn cadre forgé — rivets, gravure d'angle, un reflet biseauté et le grain du fer, du cuir ou du parchemin

Les trois se sérialisent dans une ressource Theme comme n'importe quel autre StyleBox — c'est ce qui permet à un thème de changer les formes.

Donnez la marge intérieure via content_margin_*. Dériver StyleBox en GDScript implique que _get_style_margin() n'est jamais appelée (mesuré sur Godot 4.7). Remplissez les champs intégrés, sinon le contenu se collera à la bordure.