gohud

วิดเจ็ตทั้งหมด

วิดเจ็ตและเลย์เอาต์ทั้งหมดของ gohud ตามชื่อ พร้อมตัวอย่างที่วางใช้ได้ทันที ทุกตัวใช้รูปลักษณ์ของพรีเซ็ตที่เลือกอยู่ ← วิดเจ็ต

เลย์เอาต์ (15)

GoScaffold

GoScaffold — หน้าจอแอปที่ต่อไว้ครบ — แถบบน หน้าเลื่อน แถบล่าง FAB และลิ้นชัก

หน้าจอแอปที่ต่อไว้ครบ — แถบบน หน้าเลื่อน แถบล่าง FAB และลิ้นชัก

สืบทอดจาก Control

var page := GoStyle.column()
var screen := GoScaffold.make("Inbox", page, true)
screen.set_fab(GoFab.make(GoIconSet.EDIT))
add_child(screen)

GoTopBar

GoTopBar — รายการตามขอบบนในหนึ่งถึงสามช่อง ช่องกลางอยู่ตรงกลางเสมอ

รายการตามขอบบนในหนึ่งถึงสามช่อง ช่องกลางอยู่ตรงกลางเสมอ

สืบทอดจาก GoEdgeBar

var bar := GoTopBar.make(3)
bar.add_start(GoStyle.icon_button(GoIconSet.BACK, go_back, -1, &"back"))
bar.add_center(GoStyle.label("Stage 3"))
bar.add_end(GoStyle.chip("1,250"))

GoBottomBar

GoBottomBar — รายการตามขอบล่าง หลบแถบท่าทาง

รายการตามขอบล่าง หลบแถบท่าทาง

สืบทอดจาก GoEdgeBar

var actions := GoBottomBar.make(1, GoBottomBar.Justify.SPACE_BETWEEN)
for name in ["Attack", "Guard", "Run"]: actions.add_start(GoStyle.button(name))
screen.add_child(actions)

GoLeftSideBar

GoLeftSideBar — สูงสุดสามชั้นตามขอบซ้าย

สูงสุดสามชั้นตามขอบซ้าย

สืบทอดจาก GoSideBar

var tools := GoLeftSideBar.make(3)
tools.add_start(GoStyle.icon_button(GoIconSet.MENU, open_menu, -1, &"menu"))
tools.add_end(GoStyle.icon_button(GoIconSet.USER, open_profile, -1, &"profile"))
screen.add_child(tools)

GoRightSideBar

GoRightSideBar — สูงสุดสามชั้นตามขอบขวา

สูงสุดสามชั้นตามขอบขวา

สืบทอดจาก GoSideBar

var tools := GoRightSideBar.make(3)
tools.add_start(GoStyle.icon_button(GoIconSet.SETTINGS, open_settings, -1, &"settings"))
tools.add_center(GoStyle.icon_button(GoIconSet.SEARCH, find, -1, &"search"))
screen.add_child(tools)

GoSideBar

GoSideBar — แถบข้างที่เป็นฐานของทั้งสอง คงด้านเดิมแม้ในภาษาที่เขียนจากขวาไปซ้าย

แถบข้างที่เป็นฐานของทั้งสอง คงด้านเดิมแม้ในภาษาที่เขียนจากขวาไปซ้าย

สืบทอดจาก GoEdgeBar

var rail := GoRightSideBar.make(1, GoSideBar.Justify.CENTER)
rail.add_start(GoStyle.icon_button(GoIconSet.MAP, open_map, -1, &"map"))

GoEdgeBar

GoEdgeBar — กติกาที่แถบขอบทุกแบบใช้ร่วมกัน: ช่อง การกระจาย การยึดขอบ และพื้นที่ปลอดภัย

กติกาที่แถบขอบทุกแบบใช้ร่วมกัน: ช่อง การกระจาย การยึดขอบ และพื้นที่ปลอดภัย

สืบทอดจาก Container

var bar := GoTopBar.make(1)
bar.justify = GoEdgeBar.Justify.SPACE_BETWEEN
bar.pin_to_edge = GoEdgeBar.Pin.ALWAYS

GoGrid

GoGrid — คอลัมน์กว้างเท่ากันพอดี — จำนวนตายตัว หรือเท่าที่ใส่ได้

คอลัมน์กว้างเท่ากันพอดี — จำนวนตายตัว หรือเท่าที่ใส่ได้

สืบทอดจาก Container

var cards := GoGrid.make(1, 160.0)
for item in items: cards.add_child(GoStyle.item_card(item))

GoForm

GoForm — ฟอร์มที่จำกัดความกว้างและหลบคีย์บอร์ดกับ HUD

ฟอร์มที่จำกัดความกว้างและหลบคีย์บอร์ดกับ HUD

สืบทอดจาก MarginContainer

var form := GoForm.new()
form.avoid_hud = true
form.add_child(GoScroll.new())
add_child(form)

GoScroll

GoScroll — เลื่อนด้วยการสัมผัสได้จากทุกจุดของเนื้อหา รองรับภาษาที่เขียนจากขวาไปซ้าย

เลื่อนด้วยการสัมผัสได้จากทุกจุดของเนื้อหา รองรับภาษาที่เขียนจากขวาไปซ้าย

สืบทอดจาก ScrollContainer

var list := GoScroll.new()
list.add_child(GoStyle.column())
var strip := GoScroll.horizontal()

GoHudAnchor

GoHudAnchor — ตรึงชิ้นส่วน HUD ไว้ที่หนึ่งในเก้าตำแหน่งของพื้นที่ปลอดภัย

ตรึงชิ้นส่วน HUD ไว้ที่หนึ่งในเก้าตำแหน่งของพื้นที่ปลอดภัย

สืบทอดจาก Control

var corner := GoHudAnchor.new()
corner.spot = GoHudAnchor.Spot.TOP_LEFT
corner.add_child(GoStyle.hud_panel())

GoStyle.column · row · wrap_row

GoStyle.column · row · wrap_row — คอลัมน์ แถว และแถวที่ขึ้นบรรทัดใหม่ได้ ด้วยระยะห่างจากธีม

คอลัมน์ แถว และแถวที่ขึ้นบรรทัดใหม่ได้ ด้วยระยะห่างจากธีม

ฟังก์ชันของ GoStyle

var page := GoStyle.column()
var line := GoStyle.row()
var chips := GoStyle.wrap_row()

GoStyle.responsive_grid · aspect

GoStyle.responsive_grid · aspect — กริดที่เพิ่มคอลัมน์เมื่อกว้างขึ้น และกล่องที่รักษาสัดส่วน

กริดที่เพิ่มคอลัมน์เมื่อกว้างขึ้น และกล่องที่รักษาสัดส่วน

ฟังก์ชันของ GoStyle

var tiles := GoStyle.responsive_grid(160)
var thumb := GoStyle.aspect(16.0 / 9.0)

GoStyle.padding · spacer · divider

GoStyle.padding · spacer · divider — ระยะขอบใน ช่องว่างที่กินพื้นที่ที่เหลือ และเส้นคั่น

ระยะขอบใน ช่องว่างที่กินพื้นที่ที่เหลือ และเส้นคั่น

ฟังก์ชันของ GoStyle

var pad := GoStyle.padding(16)
line.add_child(GoStyle.spacer())
page.add_child(GoStyle.divider())

GoStyle.foldable · section

GoStyle.foldable · section — หัวข้อส่วน และส่วนที่พับเปิดได้

หัวข้อส่วน และส่วนที่พับเปิดได้

ฟังก์ชันของ GoStyle

page.add_child(GoStyle.section("Sound", false))
var more := GoStyle.foldable("Advanced", true, null, false)

หน้าต่างและโอเวอร์เลย์ (12)

GoSurface

GoSurface — หน้าต่างลอย — กึ่งกลาง จากด้านล่าง หรือยึดกับคอนโทรล

หน้าต่างลอย — กึ่งกลาง จากด้านล่าง หรือยึดกับคอนโทรล

สืบทอดจาก Control

var window := GoSurface.new()
window.set_title("Settings")
window.close_requested.connect(window.queue_free)
layer.add_child(window)

GoSheet

GoSheet — แผ่นล่างที่มีหลายหน้า ปุ่มย้อนกลับ และส่วนท้ายที่ตรึงไว้

แผ่นล่างที่มีหลายหน้า ปุ่มย้อนกลับ และส่วนท้ายที่ตรึงไว้

สืบทอดจาก CanvasLayer

var sheet := GoSheet.new()
add_child(sheet)
sheet.open("Inventory")
sheet.body.add_child(bag_list)

GoPage

หน้าเต็มจอที่มีแถบหมวด (ซ้ายเมื่อแนวนอน แท็บด้านบนเมื่อแนวตั้ง) ตัวอย่าง ปุ่มย้อนกลับ และหน้าย่อยที่เปิดซ้อนอยู่ภายใน

สืบทอดจาก CanvasLayer

var page := GoPage.new()
add_child(page)
page.open("Settings")
page.set_tabs([{id = &"sound", label = "Sound", icon = GoIconSet.VOLUME_HIGH, badge = ""}])
page.push("About", func(box: VBoxContainer) -> void: box.add_child(GoStyle.label("Version 1.0")))

GoDialogs

GoDialogs — หน้าต่างยืนยันและแจ้งเตือนที่รอด้วย await การแจ้งเตือนจะรอคิว

หน้าต่างยืนยันและแจ้งเตือนที่รอด้วย await การแจ้งเตือนจะรอคิว

สืบทอดจาก Node

var dialogs := GoDialogs.new()
add_child(dialogs)
if await dialogs.confirm("Delete save", "This cannot be undone.", "", "", "", {}, true):
	delete_save()

GoDialogs.choose

GoDialogs.choose — หนึ่งในไม่กี่ตัวเลือก — แผ่นล่างบนมือถือ การ์ดบนเดสก์ท็อป

หนึ่งในไม่กี่ตัวเลือก — แผ่นล่างบนมือถือ การ์ดบนเดสก์ท็อป

ฟังก์ชันของ GoDialogs

var index := await dialogs.choose("Sort by", ["Newest", "Price", "Rating"])
if index >= 0: sort_by(index)

GoDrawer

GoDrawer — แผงที่เลื่อนเข้ามาจากซ้ายหรือขวา

แผงที่เลื่อนเข้ามาจากซ้ายหรือขวา

สืบทอดจาก CanvasLayer

var drawer := GoDrawer.new()
add_child(drawer)
drawer.side = GoDrawer.Side.RIGHT
drawer.open("Bag")

GoPopover

GoPopover — การ์ดข้อมูลข้างสิ่งที่กด ทีละใบ

การ์ดข้อมูลข้างสิ่งที่กด ทีละใบ

สืบทอดจาก RefCounted

GoPopover.open(slot, GoStyle.item_card(item, false))

GoContextMenu

GoContextMenu — เมนูเมื่อกดค้างหรือคลิกขวา ถ้านิ้วขยับจะยกเลิก

เมนูเมื่อกดค้างหรือคลิกขวา ถ้านิ้วขยับจะยกเลิก

สืบทอดจาก RefCounted

GoContextMenu.attach(slot, [{"text": "Use"}, {"text": "Drop", "danger": true}])

GoCoachMark

GoCoachMark — ทัวร์แนะนำที่ชี้ไปยังคอนโทรลจริง

ทัวร์แนะนำที่ชี้ไปยังคอนโทรลจริง

สืบทอดจาก Control

var tour := GoCoachMark.new()
add_child(tour)
tour.start([{"target": bag_button, "title": "Bag", "body": "Your items live here."}])

GoConsole

GoConsole — คอนโซลนักพัฒนาที่มีคำสั่งและประวัติ ปิดในบิลด์ที่เผยแพร่

คอนโซลนักพัฒนาที่มีคำสั่งและประวัติ ปิดในบิลด์ที่เผยแพร่

สืบทอดจาก CanvasLayer

var console := GoConsole.new()
add_child(console)
console.register("give", "Grant an item", give_item)

GoRibbonHeader

ริบบิ้นชื่อหน้าจอที่พาดขอบบนของการ์ด พร้อมกลิฟและภาพมุมของธีม

สืบทอดจาก Control

var header := GoRibbonHeader.make("PAUSED", GoIconSet.PAUSE)
card_column.add_child(header)

GoFitBox

เก็บการ์ดทั้งใบไว้ในจอ ถ้าใหญ่เกินจะย่อพร้อมริบบิ้น ส่วนรายการยาวจะเลื่อนแทน

สืบทอดจาก Container

var fit := GoFitBox.new()
fit.add_child(card)

ข้อความและการรอ (12)

GoSnackbar

GoSnackbar — ข้อความด้านล่างที่เข้าคิวได้และมีปุ่มได้

ข้อความด้านล่างที่เข้าคิวได้และมีปุ่มได้

สืบทอดจาก Node

var snack := GoSnackbar.new()
add_child(snack)
if await snack.post({"text": "Item dropped", "actions": ["Undo"]}) == 0:
	restore_item()

GoNotice

GoNotice — ประกาศที่ไม่แย่งการป้อนข้อมูลหรือโฟกัส

ประกาศที่ไม่แย่งการป้อนข้อมูลหรือโฟกัส

สืบทอดจาก PanelContainer

var notice := GoNotice.new()
hud.add_child(notice)
notice.show_text("Saved", GoTheme.SUCCESS)

GoPromptCard

GoPromptCard — คำถามที่ไม่หยุดเกม — คำเชิญ การแลกเปลี่ยน

คำถามที่ไม่หยุดเกม — คำเชิญ การแลกเปลี่ยน

สืบทอดจาก PanelContainer

var invite := GoPromptCard.new()
invite.set_title("Party invite from Ann")
invite.set_actions([{"text": "Accept", "action": accept, "primary": true}])

GoBanner

GoBanner — ข้อความที่อยู่บนหน้าจนกว่าจะได้รับการจัดการ

ข้อความที่อยู่บนหน้าจนกว่าจะได้รับการจัดการ

สืบทอดจาก PanelContainer

var offline := GoBanner.make("You're offline.", [{"text": "Retry", "action": reconnect}], GoIconSet.WARNING)
page.add_child(offline)

GoSpinner

GoSpinner — การรอ เปลี่ยนปุ่มเป็นวงหมุนตรงที่เดิม กดซ้ำไม่ได้

การรอ เปลี่ยนปุ่มเป็นวงหมุนตรงที่เดิม กดซ้ำไม่ได้

สืบทอดจาก Control

GoSpinner.busy(buy_button, true)
await shop.buy(item)
GoSpinner.busy(buy_button, false)

GoBadge

GoBadge — จุดยังไม่อ่าน ป้าย NEW และ 99+ ติดไว้ที่มุม

จุดยังไม่อ่าน ป้าย NEW และ 99+ ติดไว้ที่มุม

สืบทอดจาก PanelContainer

GoBadge.attach(mail_button, unread)
GoBadge.attach(shop_button, 0, "NEW")

GoProgress

GoProgress — ความคืบหน้าแบบเส้นหรือวง แบบคลื่นหรือแบน แบบไม่ระบุเมื่อยังไม่รู้ขนาด

ความคืบหน้าแบบเส้นหรือวง แบบคลื่นหรือแบน แบบไม่ระบุเมื่อยังไม่รู้ขนาด

สืบทอดจาก Control

var upload := GoProgress.linear()
upload.value = 0.4
var ring := GoProgress.circular(true)

GoLoadingIndicator

GoLoadingIndicator — เครื่องหมายรอแบบ Material 3 Expressive ที่เปลี่ยนรูปทรง หยุดนิ่งเมื่อเปิด reduce_motion

เครื่องหมายรอแบบ Material 3 Expressive ที่เปลี่ยนรูปทรง หยุดนิ่งเมื่อเปิด reduce_motion

สืบทอดจาก Control

var wait := GoLoadingIndicator.new()
wait.contained = true
page.add_child(wait)

GoRefresh

GoRefresh — ดึงรายการลงที่ด้านบนสุดเพื่อโหลดใหม่

ดึงรายการลงที่ด้านบนสุดเพื่อโหลดใหม่

สืบทอดจาก Control

var refresh := GoRefresh.attach(feed)
refresh.refresh_requested.connect(func() -> void:
	await reload_posts()
	refresh.finish())

GoStyle.alert

GoStyle.alert — ข้อความในเนื้อหาโทนข้อมูล สำเร็จ เตือน หรืออันตราย

ข้อความในเนื้อหาโทนข้อมูล สำเร็จ เตือน หรืออันตราย

ฟังก์ชันของ GoStyle

page.add_child(GoStyle.alert("Maintenance at 3 AM", GoTheme.WARNING))

GoStyle.skeleton · empty_state

GoStyle.skeleton · empty_state — ตัวยึดที่ระหว่างโหลด และข้อความสำหรับรายการว่าง

ตัวยึดที่ระหว่างโหลด และข้อความสำหรับรายการว่าง

ฟังก์ชันของ GoStyle

page.add_child(GoStyle.skeleton(200))
page.add_child(GoStyle.empty_state(GoIconSet.BOX, "No items yet", false))

GoStyle.tooltip_node

GoStyle.tooltip_node — ทูลทิปตามสไตล์ธีม ไม่ตัดคำกลางคำ

ทูลทิปตามสไตล์ธีม ไม่ตัดคำกลางคำ

ฟังก์ชันของ GoStyle

func _make_custom_tooltip(text: String) -> Object:
	return GoStyle.tooltip_node(text)

ปุ่ม ชิป และตัวเลือก (10)

GoStyle.button

GoStyle.button — ปุ่มเจ็ดโทน: ปกติ หลัก เส้นขอบ ข้อความ กะทัดรัด อันตราย และอันตรายแบบทึบ

ปุ่มเจ็ดโทน: ปกติ หลัก เส้นขอบ ข้อความ กะทัดรัด อันตราย และอันตรายแบบทึบ

ฟังก์ชันของ GoStyle

row.add_child(GoStyle.button("Play", play, GoStyle.Tone.PRIMARY))
row.add_child(GoStyle.button("Details", open_details, GoStyle.Tone.OUTLINED))
row.add_child(GoStyle.button("Skip", skip, GoStyle.Tone.BARE))

GoStyle.glow

GoStyle.glow — ยกปุ่มทึบให้ลอยด้วยแสงเรือง

ยกปุ่มทึบให้ลอยด้วยแสงเรือง

ฟังก์ชันของ GoStyle

row.add_child(GoStyle.glow(GoStyle.button("Play", play, GoStyle.Tone.PRIMARY)))

GoIconButton

GoIconButton — ปุ่มไอคอนอย่างเดียว มองเห็นเล็ก แตะได้ 48dp มีชื่อสำหรับโปรแกรมอ่านหน้าจอ

ปุ่มไอคอนอย่างเดียว มองเห็นเล็ก แตะได้ 48dp มีชื่อสำหรับโปรแกรมอ่านหน้าจอ

สืบทอดจาก Button

row.add_child(GoStyle.icon_button(GoIconSet.CLOSE, close, -1, &"close"))
var bell := GoIconButton.new()
bell.icon_name = GoIconSet.BELL

GoGlyphButton

ปุ่มที่มีไอคอนอยู่ข้างป้ายชื่อ เป็นเม็ดมันวาวแบบเมนูอาร์เคด

สืบทอดจาก Button

row.add_child(GoGlyphButton.make("Play", GoIconSet.PLAY, GoTheme.VAR_PRIMARY_BUTTON))

GoStyle.chip

GoStyle.chip — แคปซูลสถานะหรือแท็กที่อ่านข้อความออกเสมอ

แคปซูลสถานะหรือแท็กที่อ่านข้อความออกเสมอ

ฟังก์ชันของ GoStyle

row.add_child(GoStyle.chip("Rare", GoUi.color(GoTheme.INFO)))

GoStyle.filter_chip · input_chip

GoStyle.filter_chip · input_chip — ชิปที่เปิดปิดได้ และค่าที่ป้อนแล้วพร้อมปุ่ม ✕

ชิปที่เปิดปิดได้ และค่าที่ป้อนแล้วพร้อมปุ่ม ✕

ฟังก์ชันของ GoStyle

filters.add_child(GoStyle.filter_chip("In stock", false, refilter))
to.add_child(GoStyle.input_chip("Ann", remove_ann, GoIconSet.USER))

GoStyle.segmented

GoStyle.segmented — เลือกได้หนึ่งเดียวจากไม่กี่ตัวเลือกที่ต่อกันเป็นแถว

เลือกได้หนึ่งเดียวจากไม่กี่ตัวเลือกที่ต่อกันเป็นแถว

ฟังก์ชันของ GoStyle

page.add_child(GoStyle.segmented(["Day", "Week", "Month"], 0, show_range))

GoStyle.choice_grid

GoStyle.choice_grid — เลือกตัวอย่างหนึ่งชิ้น — สีหรือสกิน — จากกริด

เลือกตัวอย่างหนึ่งชิ้น — สีหรือสกิน — จากกริด

ฟังก์ชันของ GoStyle

var skins := GoStyle.choice_grid([{"color": "f6cfae", "tooltip": "Peach"},
	{"color": "8d5a36", "tooltip": "Cocoa"}], 0, pick_skin)

GoStyle.radio_group

GoStyle.radio_group — ปุ่มตัวเลือกที่เลือกได้หนึ่งอัน

ปุ่มตัวเลือกที่เลือกได้หนึ่งอัน

ฟังก์ชันของ GoStyle

page.add_child(GoStyle.radio_group(["Easy", "Normal", "Hard"], 1))

GoStyle.toggle · checkbox

GoStyle.toggle · checkbox — สวิตช์และช่องทำเครื่องหมายพร้อมป้ายกำกับ

สวิตช์และช่องทำเครื่องหมายพร้อมป้ายกำกับ

ฟังก์ชันของ GoStyle

var music := GoStyle.toggle("Music", false)
var terms := GoStyle.checkbox("I agree to the terms", false)

ช่องกรอกและตัวเลือก (14)

GoStyle.line_edit · textarea

GoStyle.line_edit · textarea — ช่องข้อความบรรทัดเดียวและหลายบรรทัด

ช่องข้อความบรรทัดเดียวและหลายบรรทัด

ฟังก์ชันของ GoStyle

var nickname := GoStyle.line_edit("Your name")
var note := GoStyle.textarea("Message", 4)

GoField

GoField — ป้าย คอนโทรล และคำใบ้ พร้อมข้อผิดพลาดใต้ช่องที่ผิด

ป้าย คอนโทรล และคำใบ้ พร้อมข้อผิดพลาดใต้ช่องที่ผิด

สืบทอดจาก VBoxContainer

var field := GoField.make("Nickname", GoStyle.line_edit(), "3–12 letters", false)
field.set_error("That name is taken")

GoInputGroup

GoInputGroup — ช่องกรอกและปุ่มที่หลอมเป็นรูปเดียว

ช่องกรอกและปุ่มที่หลอมเป็นรูปเดียว

สืบทอดจาก HBoxContainer

var chat := GoInputGroup.make(GoStyle.line_edit("Message"), {"suffix": GoStyle.button("Send", send)})

GoCombobox

GoCombobox — ตัวเลือกที่ค้นหาภายในชื่อ ไม่ใช่แค่ต้นชื่อ

ตัวเลือกที่ค้นหาภายในชื่อ ไม่ใช่แค่ต้นชื่อ

สืบทอดจาก Button

var friend := GoCombobox.make(friends, -1, "Find a friend")
friend.picked.connect(invite)

GoCodeInput

GoCodeInput — รหัสคูปองและของขวัญแบบช่อง วางและพิมพ์ผ่าน IME ได้ตามปกติ

รหัสคูปองและของขวัญแบบช่อง วางและพิมพ์ผ่าน IME ได้ตามปกติ

สืบทอดจาก VBoxContainer

var coupon := GoCodeInput.make(12, 4)
coupon.completed.connect(redeem)

GoStyle.select · dropdown

GoStyle.select · dropdown — รายการแบบดรอปดาวน์ และปุ่มที่เปิดเมนู

รายการแบบดรอปดาวน์ และปุ่มที่เปิดเมนู

ฟังก์ชันของ GoStyle

var quality := GoStyle.select(["Low", "Medium", "High"])
var sort := GoStyle.dropdown("Sort", ["Newest", "Price"], sort_by)

GoStyle.slider

GoStyle.slider — แถบเลื่อนตามรูปทรงของธีม

แถบเลื่อนตามรูปทรงของธีม

ฟังก์ชันของ GoStyle

var volume := GoStyle.slider(0.0, 1.0, 0.05)
volume.value_changed.connect(set_volume)

GoRangeSlider

GoRangeSlider — สองที่จับที่ไม่ข้ามกัน — ช่วงราคาหรือเลเวล

สองที่จับที่ไม่ข้ามกัน — ช่วงราคาหรือเลเวล

สืบทอดจาก Control

var price := GoRangeSlider.make(0.0, 500.0, 40.0, 220.0, 10.0)
price.change_ended.connect(func(low: float, high: float) -> void: refilter(low, high))

GoSlider

สไลเดอร์แบบลายวาด: ส่วนเติมเลยที่จับไปเล็กน้อย และที่จับขยายขึ้นขณะกดค้าง

สืบทอดจาก HSlider

var music := GoSlider.make(0.0, 1.0, 0.01)
music.theme_type_variation = &"GoSliderGreen"

GoSwitch

สวิตช์เปิด/ปิดแบบลายวาด มีคำว่า ON / OFF ข้างปุ่ม

สืบทอดจาก CheckButton

var vibration := GoSwitch.make(true)
vibration.set_texts(tr("ON"), tr("OFF"))

GoDatePicker

GoDatePicker — ปฏิทินเดือนให้แตะเลือก เลือกช่วงวันได้ด้วย range_mode

ปฏิทินเดือนให้แตะเลือก เลือกช่วงวันได้ด้วย range_mode

สืบทอดจาก Container

var stay := GoDatePicker.make()
stay.range_mode = true
stay.range_picked.connect(func(start: Dictionary, end: Dictionary) -> void: book(start, end))

GoTimePicker

GoTimePicker — หน้าปัดนาฬิกา เลือกชั่วโมงก่อนแล้วนาที 12 หรือ 24 ชั่วโมง ใช้ปุ่มขึ้นลงบนช่องได้

หน้าปัดนาฬิกา เลือกชั่วโมงก่อนแล้วนาที 12 หรือ 24 ชั่วโมง ใช้ปุ่มขึ้นลงบนช่องได้

สืบทอดจาก Container

var alarm := GoTimePicker.make(7, 30, func(hour: int, minute: int) -> void: set_alarm(hour, minute))
alarm.use_24h = true

GoWheelPicker

GoWheelPicker — วงล้อที่หมุนแล้วหยุดรายการหนึ่งบนแถบกลาง

วงล้อที่หมุนแล้วหยุดรายการหนึ่งบนแถบกลาง

สืบทอดจาก Control

var amount := GoWheelPicker.make(["x1", "x5", "x10", "x50"], 0, set_amount)
row.add_child(amount)

GoStepper

GoStepper — ขั้นตอนมีหมายเลขพร้อมปุ่มถัดไปและย้อนกลับ แนวตั้งหรือเป็นแถว

ขั้นตอนมีหมายเลขพร้อมปุ่มถัดไปและย้อนกลับ แนวตั้งหรือเป็นแถว

สืบทอดจาก VBoxContainer

var checkout := GoStepper.make([{"title": "Cart", "content": cart}, {"title": "Pay", "content": pay}])
checkout.finished.connect(place_order)

รายการ การ์ด และข้อมูล (8)

GoStyle.list_row · list_button

GoStyle.list_row · list_button — แถวรายการพร้อมไอคอน หัวเรื่อง สรุป และเครื่องหมายท้าย

แถวรายการพร้อมไอคอน หัวเรื่อง สรุป และเครื่องหมายท้าย

ฟังก์ชันของ GoStyle

page.add_child(GoStyle.list_button(GoIconSet.SETTINGS, "Settings", open_settings, Color.TRANSPARENT, "", false))

GoListView

GoListView — หลายพันแถว สร้างเฉพาะแถวที่มองเห็น

หลายพันแถว สร้างเฉพาะแถวที่มองเห็น

สืบทอดจาก GoScroll

var feed := GoListView.make(10000, 72.0, func(index: int) -> Control: return post_row(posts[index]))
feed.end_reached.connect(load_more)

GoReorderList

GoReorderList — แถวที่ลากเรียงลำดับด้วยที่จับหรือการกดค้าง

แถวที่ลากเรียงลำดับด้วยที่จับหรือการกดค้าง

สืบทอดจาก Container

var queue := GoReorderList.make([intro_row, theme_row, boss_row])
queue.reordered.connect(func(from: int, to: int) -> void: songs.insert(to, songs.pop_at(from)))

GoSwipeRow

GoSwipeRow — แถวที่ปัดออกด้านข้างเพื่อลบหรือเก็บถาวร รายการยังเลื่อนได้

แถวที่ปัดออกด้านข้างเพื่อลบหรือเก็บถาวร รายการยังเลื่อนได้

สืบทอดจาก Container

inbox.add_child(GoSwipeRow.wrap(mail_row, {"icon": GoIconSet.TRASH, "text": "Delete",
	"tone": GoTheme.DANGER, "action": delete_mail}))

GoTable

GoTable — หัวตารางที่เรียงได้และแถวที่เลือกได้ ตัวเลขเรียงแบบตัวเลข

หัวตารางที่เรียงได้และแถวที่เลือกได้ ตัวเลขเรียงแบบตัวเลข

สืบทอดจาก VBoxContainer

var board := GoTable.make(["Name", {"text": "Score", "numeric": true}], [["Ann", 9124], ["Ben", 91240]])
board.row_selected.connect(open_profile)

GoStyle.card · item_card

GoStyle.card · item_card — การ์ด และการ์ดรายละเอียดของไอเท็มที่เลือก

การ์ด และการ์ดรายละเอียดของไอเท็มที่เลือก

ฟังก์ชันของ GoStyle

var card := GoStyle.card()
card.add_child(GoStyle.label("Daily quest"))
popup.add_child(GoStyle.item_card({"title": "Rusty sword", "subtitle": "Common"}))

GoStyle.avatar

GoStyle.avatar — อักษรย่อหรือรูปในวงกลม

อักษรย่อหรือรูปในวงกลม

ฟังก์ชันของ GoStyle

row.add_child(GoStyle.avatar("AK", 40))

GoStyle.label

GoStyle.label — ข้อความในบทบาทตัวอักษรหนึ่งในเจ็ดแบบ ตั้งแต่ micro ถึง title

ข้อความในบทบาทตัวอักษรหนึ่งในเจ็ดแบบ ตั้งแต่ micro ถึง title

ฟังก์ชันของ GoStyle

page.add_child(GoStyle.label("Level 12", GoTheme.ROLE_TITLE))
page.add_child(GoStyle.label("Next level in 340 XP", GoTheme.ROLE_CAPTION, GoUi.color(GoTheme.MUTED)))

HUD และรูปแบบในเกม (30)

GoBar

GoBar — แถบ HP MP และ XP แสดงค่า เศษส่วน หรือเปอร์เซ็นต์

แถบ HP MP และ XP แสดงค่า เศษส่วน หรือเปอร์เซ็นต์

สืบทอดจาก Control

var hp := GoBar.new()
hp.label_text = "HP"
hp.set_values(320, 500)

GoSlot

GoSlot — ช่องด่วน ไอคอน จำนวน คูลดาวน์ และปุ่มลัดบนหน้าเดียว

ช่องด่วน ไอคอน จำนวน คูลดาวน์ และปุ่มลัดบนหน้าเดียว

สืบทอดจาก Button

var potion := GoSlot.new()
potion.icon_name = GoIconSet.POTION
potion.quantity = 12
potion.start_cooldown(5.0)

GoSlotGrid

GoSlotGrid — กริดคลังไอเท็ม ลากไอเท็มระหว่างช่องได้

กริดคลังไอเท็ม ลากไอเท็มระหว่างช่องได้

สืบทอดจาก HFlowContainer

var bag := GoSlotGrid.new()
bag.set_cell(0, {"icon": GoIconSet.POTION, "quantity": 12})

GoJoystick

GoJoystick — จอยสติกเสมือน แบบคงที่ ตามนิ้วโป้ง หรือแบบสัมพัทธ์

จอยสติกเสมือน แบบคงที่ ตามนิ้วโป้ง หรือแบบสัมพัทธ์

สืบทอดจาก Control

var pad := GoJoystick.new()
pad.mode = GoJoystick.Mode.FOLLOW
pad.moved.connect(func(direction: Vector2) -> void: player.move(direction))

GoKbd

GoKbd — แป้นที่อ่านการกำหนดปุ่มจริง เปลี่ยนปุ่มแล้วคำแนะนำก็ไม่ผิด

แป้นที่อ่านการกำหนดปุ่มจริง เปลี่ยนปุ่มแล้วคำแนะนำก็ไม่ผิด

สืบทอดจาก HBoxContainer

hint.add_child(GoKbd.for_action(&"interact"))

GoChoiceColumn

GoChoiceColumn — คอลัมน์ตัวเลือกสั้นๆ ที่แตะครั้งเดียว — รายการอัญเชิญ เกมทำเครื่องหมายได้หลายแถว

คอลัมน์ตัวเลือกสั้นๆ ที่แตะครั้งเดียว — รายการอัญเชิญ เกมทำเครื่องหมายได้หลายแถว

สืบทอดจาก Control

var animals := GoChoiceColumn.make(["Hen", "Cat", "Dog", "Pig", "Cow"], 4, summon)
animals.set_selected(2, true)
side_bar.add_center(animals)

GoLevelCard

การ์ดเลือกด่าน: ภาพย่อ ชื่อ ชื่อรอง และตามสถานะจะเป็นเครื่องหมายถูก แม่กุญแจ หรือป้าย PLAY!

สืบทอดจาก Button

var card := GoLevelCard.make("STAGE 3", "OPPONENTS: 3", GoLevelCard.State.CURRENT)
card.pressed.connect(play_stage)

GoStarRow

แถวดาวให้คะแนน: บางดวงสว่างสีทอง ที่เหลือหม่น — ผลผ่านด่านที่ดีที่สุดหรือเกรดในหน้าผลลัพธ์

สืบทอดจาก HBoxContainer

var rating := GoStarRow.make(2)
rating.star_size = 40.0

GoKeyCluster

ปุ่มเคลื่อนที่สี่ปุ่มเรียงเป็นรูปตัว T กลับหัว (WASD หรือปุ่มลูกศร) เหมือนหน้าสอนควบคุม

สืบทอดจาก Control

var wasd := GoKeyCluster.make(["W", "A", "S", "D"])
var arrows := GoKeyCluster.make(GoKeyCluster.ARROWS)

GoCoverImage

รูปที่เต็มกรอบและตัดส่วนที่เกินออก เหมือน object-fit: cover ของ CSS

สืบทอดจาก Control

var shot := GoCoverImage.make(preload("res://art/level_3.png"), Vector2(0.5, 0.3))
shot.custom_minimum_size = Vector2(74, 74)

GoHudCard

แผงหนึ่งแผ่นของแถวบน HUD ระหว่างแข่ง: ไอคอนกับแถบชื่อและหลอด ตัวนับ นาฬิกา หรือมาตรวัดพร้อม

สืบทอดจาก PanelContainer

var clock := GoHudCard.make(GoUi.skin().widget_art(&"stopwatch"))
clock.title = "MATCH TIME"
clock.set_clock(83.0)

GoCountdown

นับถอยหลังเริ่มแข่ง: 3, 2, 1, GO! ตัวใหญ่บนแผ่นกลม แต่ละขั้นเด้งขึ้นมา

สืบทอดจาก Label

var count := GoCountdown.new()
count.show_step("3")

GoHudButton

ปุ่มมุม HUD: ปุ่มรูปภาพพร้อมปุ่มคีย์บอร์ดบนฝาปุ่มข้าง ๆ

สืบทอดจาก HBoxContainer

var pause := GoHudButton.make(GoUi.skin().widget_art(&"pause_button"), 52.0, "Esc")
pause.pressed.connect(func() -> void: print("pause"))

GoNameplate

ป้ายชื่อที่ลอยเหนือตัวละครในโลก 3D ขนาดเท่าเดิมไม่ว่าจะไกลแค่ไหน

สืบทอดจาก PanelContainer

var plate := GoNameplate.make("BOT RED", Color(0.86, 0.24, 0.24))
plate.follow(camera, anchor.global_position)

GoNoticeFeed

ฟีดข้อความแจ้งบรรทัดเดียว เช่นฟีดการกำจัด ที่ซ้อนกัน ค่อย ๆ ปรากฏ และหายไปเอง

สืบทอดจาก VBoxContainer

var feed := GoNoticeFeed.new()
feed.push("RED knocked out BLUE")
feed.push("YOU knocked out GREEN", true)

GoTouchButton

ปุ่มกลมสำหรับนิ้วโป้งบนจอสัมผัส มีวงคูลดาวน์ จังหวะเด้งเมื่อพร้อม และลากเพื่อเล็งได้

สืบทอดจาก Control

var jump := GoTouchButton.make(&"btn_jump", "JUMP", 86.0)
jump.pressed_down.connect(send_jump)
var skill := GoTouchButton.make(&"btn_repulse", "REPULSE", 92.0)
skill.cooling = true
skill.cooldown = 0.4

GoSpotlight

หรี่หน้าจอรอบตัวควบคุมหนึ่งตัวและวาดกรอบรอบมัน ความมืดจะจางไป กรอบยังอยู่

สืบทอดจาก Control

var spot := GoSpotlight.new()
hud.add_child(spot)
spot.follow(jump_button, true)

GoEditFrame

เส้นขอบที่ตัวแก้ไขเลย์เอาต์วาดรอบทุกสิ่งที่ผู้เล่นย้ายได้: ปกติ, เลือกอยู่พร้อมจุดจับ, เตือน, ซ่อน ไม่รับอินพุตเลย

สืบทอดจาก Control

var frame := GoEditFrame.new()
editor.add_child(frame)
frame.circle = true
frame.state = GoEditFrame.State.SELECTED

GoGestureHint

ปลายนิ้วโปร่งแสงเล่นท่าทางสัมผัสวนซ้ำ — สองนิ้วกางออกแล้วหุบเข้า เพื่อสอนการบีบนิ้วซูม ไม่รับอินพุตเลย

สืบทอดจาก Control

var hint := GoGestureHint.new()
hud.add_child(hint)
hint.position = Vector2(480, 0)
hint.size = Vector2(480, 540)
hint.play()

GoTaskCard

การ์ดบทเรียนของบทแนะนำ: ขั้น ชื่อ สิ่งที่ต้องทำ ชิปที่ถูกติ๊กเมื่อเสร็จ และคำใบ้ พับเป็นแถวเดียวได้

สืบทอดจาก PanelContainer

var card := GoTaskCard.new()
card.caption = "TRAINING · STEP 1/12"
card.title = "MOVE"
card.body = "Move with W A S D."
card.set_parts(["W", "A", "S", "D"], [true])

GoPerfReadout

แถบประสิทธิภาพที่แสดงตลอด: fps เวลาเฟรม สามเหลี่ยม draw call โหนด และหน่วยความจำ เปลี่ยนเป็นสีแดงเมื่อ fps ตก

สืบทอดจาก PanelContainer

var perf := GoPerfReadout.new()
perf.tier_text = "LOW (auto)"
overlay_layer.add_child(perf)

GoSignalBars

มาตรวัดสัญญาณแบบโทรศัพท์: แท่งที่สูงขึ้นจากซ้ายไปขวา สว่างเป็นสีเขียว ทอง หรือแดง พร้อมค่าอย่าง "48 ms" — ค่า ping บน HUD ของแมตช์

สืบทอดจาก PanelContainer

var ping := GoSignalBars.make(4, GoSignalBars.Tone.GOOD)
ping.set_reading(2, GoSignalBars.Tone.FAIR, "180 ms")

GoRewardRow

แถวสำหรับสิ่งที่ผู้เล่นได้รับจากความคืบหน้า: ภารกิจหรือความสำเร็จพร้อมแถบ รางวัล และปุ่มรับ เครื่องหมายถูก หรือแม่กุญแจตามสถานะ ความสูงคงที่สำหรับ GoListView

สืบทอดจาก PanelContainer

var quest := GoRewardRow.make("Win 3 matches", GoIconSet.STAR)
quest.key = "win_3"
quest.set_progress(1, 3)
quest.set_reward(50, GoIconSet.COIN)
quest.set_claim_text("CLAIM")
quest.set_state(GoRewardRow.State.READY)
quest.claim_pressed.connect(func(id: Variant) -> void: server.claim(id))

GoFoldTab

พับแผง HUD ให้เป็นเม็ดยาเล็ก ๆ แล้วกางกลับ: มือจับบาง ๆ มีลูกศร เมื่อพับเป็นเม็ดยาที่ยังแสดงไอคอน ข้อความสั้น และมาตรวัด แอปโฮสต์จัด HUD ใหม่เมื่อ fold_changed

สืบทอดจาก Button

var tab := GoFoldTab.new()
tab.side = SIDE_LEFT
tab.icon_name = GoIconSet.USERS
tab.pill_text = "3"
tab.fold_changed.connect(func(now_folded: bool) -> void: party.visible = not now_folded)

GoMapPreview

แผนที่เล็กของด่าน: พื้นที่ ทางเชื่อม และจุดเริ่ม เป็นเงาสีเทาเมื่อยังล็อกอยู่

สืบทอดจาก Control

var map := GoMapPreview.new()
map.add_rect(Vector2(0, 0), Vector2(6, 4), Color("#f2b84b"))
map.add_circle(Vector2(18, 0), 5.0, Color("#6fc3ff"))
map.add_link(Vector2(0, 0), Vector2(18, 0), 2.0, Color("#c9a26b"))
map.set_starts(PackedVector2Array([Vector2(-3, 0), Vector2(20, 0)]))

GoRewardCalendar

GoRewardCalendar — รางวัลเช็กอินรายวัน กดได้เฉพาะวันนี้

รางวัลเช็กอินรายวัน กดได้เฉพาะวันนี้

สืบทอดจาก VBoxContainer

var attendance := GoRewardCalendar.make(days, claimed_until)
attendance.claimed.connect(func(day: int) -> void: server.claim_day(day))

GoRadar

GoRadar — ห้าเหลี่ยมค่าสถานะ มีเส้นประไว้เทียบอุปกรณ์

ห้าเหลี่ยมค่าสถานะ มีเส้นประไว้เทียบอุปกรณ์

สืบทอดจาก Control

var stats := GoRadar.make({"STR": 0.85, "AGI": 0.5, "INT": 0.3, "VIT": 0.7, "LUK": 0.45})
stats.set_compare(with_new_sword)

GoDonut

GoDonut — สัดส่วนเป็นชิ้น พร้อมคำอธิบายเป็นคำ ไม่ใช่แค่สี

สัดส่วนเป็นชิ้น พร้อมคำอธิบายเป็นคำ ไม่ใช่แค่สี

สืบทอดจาก Control

var share := GoDonut.make([{"label": "Physical", "value": 620}, {"label": "Magic", "value": 340}])
card.add_child(share.legend())

GoZoomView

GoZoomView — ถ่างนิ้ว เลื่อนล้อ หรือแตะสองครั้งเพื่อซูมแผนที่ เลื่อนได้ภายในขอบ

ถ่างนิ้ว เลื่อนล้อ หรือแตะสองครั้งเพื่อซูมแผนที่ เลื่อนได้ภายในขอบ

สืบทอดจาก Control

var map := GoZoomView.wrap(world_map, 4.0)
map.custom_minimum_size.y = 320
page.add_child(map)

GoStyle.hud_panel · overlay_panel

GoStyle.hud_panel · overlay_panel — แผงที่ลอยเหนือเกม ให้อ่านข้อความได้บนทุกภาพ

แผงที่ลอยเหนือเกม ให้อ่านข้อความได้บนทุกภาพ

ฟังก์ชันของ GoStyle

var bars := GoStyle.hud_panel()
var pill := GoStyle.overlay_panel()

รูปลักษณ์และระบบ (9)

GoUi · GoThemePresets

GoUi · GoThemePresets — เลือกพรีเซ็ต (ค่าเริ่มต้น ไซไฟ ยุคกลาง Material สำหรับเด็ก การ์ตูน หรืออาร์เคด) อ่านสีและขนาดจากโทเคน

เลือกพรีเซ็ต (ค่าเริ่มต้น ไซไฟ ยุคกลาง Material สำหรับเด็ก การ์ตูน หรืออาร์เคด) อ่านสีและขนาดจากโทเคน

สืบทอดจาก RefCounted

GoUi.use_preset(GoThemePresets.MATERIAL_LIGHT)
var accent := GoUi.color(GoTheme.ACCENT)
var gap := GoUi.metric(GoTheme.GAP)

GoConfig

ทรัพยากรเดียวสำหรับทุกการตั้งค่า ที่อยู่รอดหลังอัปเดตส่วนเสริม

สืบทอดจาก Resource

GoUi.config.reduce_motion = true
GoUi.config.container_alpha = 1.0
GoUi.refresh()

GoSkin

GoSkin — รูปทรงที่โค้ดวาด — ชิป ช่อง จอยสติก ชิ้นส่วนใหม่ — ตามสไตล์ของคุณ

รูปทรงที่โค้ดวาด — ชิป ช่อง จอยสติก ชิ้นส่วนใหม่ — ตามสไตล์ของคุณ

สืบทอดจาก Resource

class_name MySkin
extends GoSkin

func banner_box() -> StyleBox:
	return surface_box(GoTheme.BOX_CARD)

GoIconSet · GoGameIcons

GoIconSet · GoGameIcons — ไอคอนตามชื่อ: ชุดเริ่มต้น ไอคอนเกม 187 แบบ หรือ SVG ของคุณเอง

ไอคอนตามชื่อ: ชุดเริ่มต้น ไอคอนเกม 187 แบบ หรือ SVG ของคุณเอง

สืบทอดจาก Resource · RefCounted

GoUi.config.icons = GoGameIcons.icon_set()
var gear := GoUi.icons().node(GoIconSet.SETTINGS, 24)

GoStyleBoxCut · GoStyleBoxBracket · GoStyleBoxMedieval

GoStyleBoxCut · GoStyleBoxBracket · GoStyleBoxMedieval — หน้าแบบลบมุม แบบวงเล็บ และแบบตีเหล็ก สำหรับแผงของคุณ

หน้าแบบลบมุม แบบวงเล็บ และแบบตีเหล็ก สำหรับแผงของคุณ

สืบทอดจาก StyleBox

var face := GoStyleBoxCut.new()
face.cut = 8
panel.add_theme_stylebox_override(&"panel", face)

GoStyleBoxSprite · GoTextureSprite

PNG ที่ระบายสีวาดแบบเก้าส่วน และไอคอนคู่กันสำหรับที่จับสไลเดอร์หรือสวิตช์

สืบทอดจาก StyleBox

var plate := GoStyleBoxSprite.new()
plate.texture = preload("res://ui/painted/gloss_green.png")
plate.pixels_per_unit = 3.0
button.add_theme_stylebox_override(&"normal", plate)

GoSafeArea · GoScale

รอยบาก แถบท่าทาง และคีย์บอร์ด จุดแบ่งขนาดเป็น dp

สืบทอดจาก Control · RefCounted

var usable := GoSafeArea.usable_rect(get_viewport())
var size_class := GoScale.breakpoint_for_dp(minf(usable.size.x, usable.size.y))   # by the short side

GoFeedback

สัญญาณเสียงและการสั่นส่งไปยังระบบเสียงของคุณ gohud ไม่มีเสียงมาให้

สืบทอดจาก RefCounted

GoFeedback.sound_handler = func(cue: String) -> void: audio.play_cue(cue)
GoFeedback.haptic_handler = func(ms: int, amplitude: float) -> void: Input.vibrate_handheld(ms, amplitude)

GoBackPolicy

ตอนนี้ใครถือปุ่มย้อนกลับของ Android และ Escape ใช้ร่วมกันระหว่างหน้าต่าง

สืบทอดจาก RefCounted

GoBackPolicy.acquire(get_tree())