gohud

Tất cả widget

Mọi widget và bố cục của gohud theo tên, kèm ví dụ để dán. Mỗi cái đều theo giao diện của preset đang dùng. ← Widget

Bố cục (15)

GoScaffold

GoScaffold — Một màn hình ứng dụng nối sẵn: thanh trên, trang cuộn, thanh dưới, FAB và ngăn kéo.

Một màn hình ứng dụng nối sẵn: thanh trên, trang cuộn, thanh dưới, FAB và ngăn kéo.

kế thừa Control

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

GoTopBar

GoTopBar — Các mục dọc cạnh trên trong một đến ba ô; ô giữa luôn ở giữa.

Các mục dọc cạnh trên trong một đến ba ô; ô giữa luôn ở giữa.

kế thừa 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 — Các mục dọc cạnh dưới, tránh thanh cử chỉ.

Các mục dọc cạnh dưới, tránh thanh cử chỉ.

kế thừa 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 — Tối đa ba tầng dọc cạnh trái.

Tối đa ba tầng dọc cạnh trái.

kế thừa 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 — Tối đa ba tầng dọc cạnh phải.

Tối đa ba tầng dọc cạnh phải.

kế thừa 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 — Thanh bên làm nền cho cả hai; vẫn giữ phía của nó với ngôn ngữ viết từ phải sang trái.

Thanh bên làm nền cho cả hai; vẫn giữ phía của nó với ngôn ngữ viết từ phải sang trái.

kế thừa GoEdgeBar

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

GoEdgeBar

GoEdgeBar — Quy tắc chung của mọi thanh cạnh: ô, dàn đều, gắn vào cạnh, vùng an toàn.

Quy tắc chung của mọi thanh cạnh: ô, dàn đều, gắn vào cạnh, vùng an toàn.

kế thừa Container

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

GoGrid

GoGrid — Các cột rộng bằng nhau tuyệt đối — số cố định, hoặc vừa bao nhiêu xếp bấy nhiêu.

Các cột rộng bằng nhau tuyệt đối — số cố định, hoặc vừa bao nhiêu xếp bấy nhiêu.

kế thừa Container

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

GoForm

GoForm — Biểu mẫu giới hạn độ rộng và tránh bàn phím cùng HUD.

Biểu mẫu giới hạn độ rộng và tránh bàn phím cùng HUD.

kế thừa MarginContainer

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

GoScroll

GoScroll — Cuộn bằng chạm từ bất kỳ đâu trên nội dung; hỗ trợ ngôn ngữ viết từ phải sang trái.

Cuộn bằng chạm từ bất kỳ đâu trên nội dung; hỗ trợ ngôn ngữ viết từ phải sang trái.

kế thừa ScrollContainer

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

GoHudAnchor

GoHudAnchor — Gắn các phần HUD vào một trong chín vị trí của vùng an toàn.

Gắn các phần HUD vào một trong chín vị trí của vùng an toàn.

kế thừa 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 — Cột, hàng và hàng tự xuống dòng với khoảng cách lấy từ theme.

Cột, hàng và hàng tự xuống dòng với khoảng cách lấy từ theme.

hàm của GoStyle

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

GoStyle.responsive_grid · aspect

GoStyle.responsive_grid · aspect — Lưới thêm cột khi rộng ra, và hộp giữ nguyên tỉ lệ.

Lưới thêm cột khi rộng ra, và hộp giữ nguyên tỉ lệ.

hàm của GoStyle

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

GoStyle.padding · spacer · divider

GoStyle.padding · spacer · divider — Lề trong, khoảng đệm chiếm chỗ còn trống, và đường phân cách.

Lề trong, khoảng đệm chiếm chỗ còn trống, và đường phân cách.

hàm của GoStyle

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

GoStyle.foldable · section

GoStyle.foldable · section — Tiêu đề mục, và mục có thể mở ra gập lại.

Tiêu đề mục, và mục có thể mở ra gập lại.

hàm của GoStyle

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

Cửa sổ và lớp phủ (12)

GoSurface

GoSurface — Cửa sổ nổi — ở giữa, từ dưới lên, hoặc neo vào một điều khiển.

Cửa sổ nổi — ở giữa, từ dưới lên, hoặc neo vào một điều khiển.

kế thừa Control

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

GoSheet

GoSheet — Bảng dưới có trang, nút quay lại và chân cố định.

Bảng dưới có trang, nút quay lại và chân cố định.

kế thừa CanvasLayer

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

GoPage

Trang toàn màn hình với thanh danh mục (bên trái khi ngang, tab phía trên khi dọc), xem trước, quay lại và các trang con mở bên trong.

kế thừa 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 — Cửa sổ xác nhận và cảnh báo chờ bằng await; cảnh báo xếp hàng chờ lượt.

Cửa sổ xác nhận và cảnh báo chờ bằng await; cảnh báo xếp hàng chờ lượt.

kế thừa 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 — Một trong vài lựa chọn — bảng dưới trên điện thoại, thẻ trên máy tính.

Một trong vài lựa chọn — bảng dưới trên điện thoại, thẻ trên máy tính.

hàm của GoDialogs

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

GoDrawer

GoDrawer — Bảng trượt vào từ bên trái hoặc bên phải.

Bảng trượt vào từ bên trái hoặc bên phải.

kế thừa CanvasLayer

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

GoPopover

GoPopover — Thẻ thông tin cạnh thứ vừa nhấn; mỗi lúc một thẻ.

Thẻ thông tin cạnh thứ vừa nhấn; mỗi lúc một thẻ.

kế thừa RefCounted

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

GoContextMenu

GoContextMenu — Menu khi nhấn giữ hoặc nhấp chuột phải; ngón tay di chuyển sẽ hủy.

Menu khi nhấn giữ hoặc nhấp chuột phải; ngón tay di chuyển sẽ hủy.

kế thừa RefCounted

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

GoCoachMark

GoCoachMark — Chuyến hướng dẫn chỉ vào các điều khiển thật.

Chuyến hướng dẫn chỉ vào các điều khiển thật.

kế thừa Control

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

GoConsole

GoConsole — Bảng điều khiển cho nhà phát triển có lệnh và lịch sử; tắt trong bản phát hành.

Bảng điều khiển cho nhà phát triển có lệnh và lịch sử; tắt trong bản phát hành.

kế thừa CanvasLayer

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

GoRibbonHeader

Dải ruy băng tiêu đề màn hình vắt qua mép trên thẻ, kèm ký hiệu và hình góc của giao diện.

kế thừa Control

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

GoFitBox

Giữ trọn thẻ trong màn hình, thu nhỏ cả thẻ lẫn ruy băng khi quá lớn; danh sách dài sẽ cuộn.

kế thừa Container

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

Thông báo và chờ đợi (12)

GoSnackbar

GoSnackbar — Thông báo ở dưới, có hàng chờ và có thể kèm nút.

Thông báo ở dưới, có hàng chờ và có thể kèm nút.

kế thừa Node

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

GoNotice

GoNotice — Thông báo không bao giờ chiếm thao tác hay tiêu điểm.

Thông báo không bao giờ chiếm thao tác hay tiêu điểm.

kế thừa PanelContainer

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

GoPromptCard

GoPromptCard — Câu hỏi không dừng trò chơi — lời mời, giao dịch.

Câu hỏi không dừng trò chơi — lời mời, giao dịch.

kế thừa PanelContainer

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

GoBanner

GoBanner — Thông báo ở lại trang cho đến khi được xử lý.

Thông báo ở lại trang cho đến khi được xử lý.

kế thừa PanelContainer

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

GoSpinner

GoSpinner — Chờ đợi; biến nút thành vòng quay ngay tại chỗ để không bị nhấn hai lần.

Chờ đợi; biến nút thành vòng quay ngay tại chỗ để không bị nhấn hai lần.

kế thừa Control

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

GoBadge

GoBadge — Chấm chưa đọc, nhãn NEW và 99+, gắn ở góc.

Chấm chưa đọc, nhãn NEW và 99+, gắn ở góc.

kế thừa PanelContainer

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

GoProgress

GoProgress — Tiến độ dạng đường hoặc vòng, gợn sóng hoặc phẳng; không xác định khi chưa biết khối lượng.

Tiến độ dạng đường hoặc vòng, gợn sóng hoặc phẳng; không xác định khi chưa biết khối lượng.

kế thừa Control

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

GoLoadingIndicator

GoLoadingIndicator — Dấu chờ đổi hình của Material 3 Expressive; đứng yên khi bật reduce_motion.

Dấu chờ đổi hình của Material 3 Expressive; đứng yên khi bật reduce_motion.

kế thừa Control

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

GoRefresh

GoRefresh — Kéo danh sách xuống khi ở đầu để tải lại.

Kéo danh sách xuống khi ở đầu để tải lại.

kế thừa Control

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

GoStyle.alert

GoStyle.alert — Thông báo trong dòng với sắc thái thông tin, thành công, cảnh báo hoặc nguy hiểm.

Thông báo trong dòng với sắc thái thông tin, thành công, cảnh báo hoặc nguy hiểm.

hàm của GoStyle

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

GoStyle.skeleton · empty_state

GoStyle.skeleton · empty_state — Khung giữ chỗ khi đang tải, và thông báo cho danh sách trống.

Khung giữ chỗ khi đang tải, và thông báo cho danh sách trống.

hàm của 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 — Chú giải theo kiểu của theme, không bao giờ cắt chữ.

Chú giải theo kiểu của theme, không bao giờ cắt chữ.

hàm của GoStyle

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

Nút, chip và lựa chọn (10)

GoStyle.button

GoStyle.button — Nút với bảy sắc thái: thường, chính, viền, chữ, gọn, nguy hiểm và nguy hiểm tô đầy.

Nút với bảy sắc thái: thường, chính, viền, chữ, gọn, nguy hiểm và nguy hiểm tô đầy.

hàm của 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 — Làm nút tô đầy nổi lên bằng ánh sáng.

Làm nút tô đầy nổi lên bằng ánh sáng.

hàm của GoStyle

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

GoIconButton

GoIconButton — Nút chỉ có biểu tượng: nhìn nhỏ, vùng chạm 48 dp, có tên cho trình đọc màn hình.

Nút chỉ có biểu tượng: nhìn nhỏ, vùng chạm 48 dp, có tên cho trình đọc màn hình.

kế thừa Button

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

GoGlyphButton

Nút có biểu tượng ngay cạnh nhãn — viên thuốc bóng của menu arcade.

kế thừa Button

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

GoStyle.chip

GoStyle.chip — Viên trạng thái hoặc nhãn luôn đọc rõ chữ.

Viên trạng thái hoặc nhãn luôn đọc rõ chữ.

hàm của GoStyle

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

GoStyle.filter_chip · input_chip

GoStyle.filter_chip · input_chip — Chip bật tắt được, và giá trị đã nhập có dấu ✕.

Chip bật tắt được, và giá trị đã nhập có dấu ✕.

hàm của 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 — Đúng một trong vài lựa chọn, nối thành một hàng.

Đúng một trong vài lựa chọn, nối thành một hàng.

hàm của GoStyle

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

GoStyle.choice_grid

GoStyle.choice_grid — Chọn một mẫu — màu, giao diện — từ lưới.

Chọn một mẫu — màu, giao diện — từ lưới.

hàm của GoStyle

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

GoStyle.radio_group

GoStyle.radio_group — Nút radio, chọn một trong số đó.

Nút radio, chọn một trong số đó.

hàm của GoStyle

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

GoStyle.toggle · checkbox

GoStyle.toggle · checkbox — Công tắc và ô đánh dấu kèm nhãn.

Công tắc và ô đánh dấu kèm nhãn.

hàm của GoStyle

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

Nhập liệu và bộ chọn (14)

GoStyle.line_edit · textarea

GoStyle.line_edit · textarea — Ô văn bản một dòng và nhiều dòng.

Ô văn bản một dòng và nhiều dòng.

hàm của GoStyle

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

GoField

GoField — Nhãn, điều khiển và gợi ý, lỗi hiện dưới ô bị sai.

Nhãn, điều khiển và gợi ý, lỗi hiện dưới ô bị sai.

kế thừa VBoxContainer

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

GoInputGroup

GoInputGroup — Ô nhập và các nút của nó hàn thành một khối.

Ô nhập và các nút của nó hàn thành một khối.

kế thừa HBoxContainer

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

GoCombobox

GoCombobox — Bộ chọn tìm cả bên trong tên, không chỉ phần đầu.

Bộ chọn tìm cả bên trong tên, không chỉ phần đầu.

kế thừa Button

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

GoCodeInput

GoCodeInput — Mã giảm giá và quà tặng dạng ô; dán và gõ IME vẫn hoạt động.

Mã giảm giá và quà tặng dạng ô; dán và gõ IME vẫn hoạt động.

kế thừa VBoxContainer

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

GoStyle.select · dropdown

GoStyle.select · dropdown — Danh sách thả xuống, và nút mở menu.

Danh sách thả xuống, và nút mở menu.

hàm của GoStyle

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

GoStyle.slider

GoStyle.slider — Thanh trượt theo hình dạng của theme.

Thanh trượt theo hình dạng của theme.

hàm của GoStyle

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

GoRangeSlider

GoRangeSlider — Hai núm không bao giờ vượt qua nhau — khoảng giá hoặc cấp độ.

Hai núm không bao giờ vượt qua nhau — khoảng giá hoặc cấp độ.

kế thừa 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

Thanh trượt kiểu vẽ tay: phần tô vượt quá núm một chút, núm phóng to khi đang giữ.

kế thừa HSlider

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

GoSwitch

Công tắc bật/tắt kiểu vẽ tay, có chữ ON / OFF cạnh núm.

kế thừa CheckButton

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

GoDatePicker

GoDatePicker — Một tháng để chạm chọn; khoảng ngày với range_mode.

Một tháng để chạm chọn; khoảng ngày với range_mode.

kế thừa Container

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

GoTimePicker

GoTimePicker — Mặt đồng hồ: giờ trước, phút sau; 12 hoặc 24 giờ; phím Lên và Xuống trên ô.

Mặt đồng hồ: giờ trước, phút sau; 12 hoặc 24 giờ; phím Lên và Xuống trên ô.

kế thừa Container

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

GoWheelPicker

GoWheelPicker — Bánh xe quay rồi dừng một mục trên dải giữa.

Bánh xe quay rồi dừng một mục trên dải giữa.

kế thừa Control

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

GoStepper

GoStepper — Các bước đánh số có Tiếp và Quay lại, theo cột hoặc theo hàng.

Các bước đánh số có Tiếp và Quay lại, theo cột hoặc theo hàng.

kế thừa VBoxContainer

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

Danh sách, thẻ và dữ liệu (8)

GoStyle.list_row · list_button

GoStyle.list_row · list_button — Hàng danh sách có biểu tượng, tiêu đề, tóm tắt và dấu ở cuối.

Hàng danh sách có biểu tượng, tiêu đề, tóm tắt và dấu ở cuối.

hàm của GoStyle

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

GoListView

GoListView — Hàng nghìn hàng; chỉ tạo những hàng đang thấy.

Hàng nghìn hàng; chỉ tạo những hàng đang thấy.

kế thừa 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 — Các hàng kéo để sắp xếp bằng tay nắm hoặc nhấn giữ.

Các hàng kéo để sắp xếp bằng tay nắm hoặc nhấn giữ.

kế thừa 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 — Hàng vuốt sang bên để xóa hoặc lưu trữ; danh sách vẫn cuộn được.

Hàng vuốt sang bên để xóa hoặc lưu trữ; danh sách vẫn cuộn được.

kế thừa Container

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

GoTable

GoTable — Tiêu đề sắp xếp được và hàng chọn được; số được sắp như số.

Tiêu đề sắp xếp được và hàng chọn được; số được sắp như số.

kế thừa 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 — Thẻ, và thẻ chi tiết của vật phẩm đã chọn.

Thẻ, và thẻ chi tiết của vật phẩm đã chọn.

hàm của 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 — Chữ viết tắt hoặc ảnh trong hình tròn.

Chữ viết tắt hoặc ảnh trong hình tròn.

hàm của GoStyle

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

GoStyle.label

GoStyle.label — Văn bản theo một trong bảy vai trò chữ, từ micro đến title.

Văn bản theo một trong bảy vai trò chữ, từ micro đến title.

hàm của 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 và thành phần game (30)

GoBar

GoBar — Thanh HP, MP và XP hiện giá trị, phân số hoặc phần trăm.

Thanh HP, MP và XP hiện giá trị, phân số hoặc phần trăm.

kế thừa Control

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

GoSlot

GoSlot — Ô nhanh: biểu tượng, số lượng, hồi chiêu và phím tắt trên một mặt.

Ô nhanh: biểu tượng, số lượng, hồi chiêu và phím tắt trên một mặt.

kế thừa Button

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

GoSlotGrid

GoSlotGrid — Lưới túi đồ; vật phẩm có thể kéo giữa các ô.

Lưới túi đồ; vật phẩm có thể kéo giữa các ô.

kế thừa HFlowContainer

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

GoJoystick

GoJoystick — Cần ảo — cố định, theo ngón cái, hoặc tương đối.

Cần ảo — cố định, theo ngón cái, hoặc tương đối.

kế thừa Control

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

GoKbd

GoKbd — Phím đọc cách gán thật, đổi phím cũng không làm gợi ý sai.

Phím đọc cách gán thật, đổi phím cũng không làm gợi ý sai.

kế thừa HBoxContainer

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

GoChoiceColumn

GoChoiceColumn — Cột lựa chọn ngắn chạm một lần — danh sách triệu hồi; trò chơi đánh dấu bao nhiêu hàng tùy ý.

Cột lựa chọn ngắn chạm một lần — danh sách triệu hồi; trò chơi đánh dấu bao nhiêu hàng tùy ý.

kế thừa Control

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

GoLevelCard

Thẻ chọn màn: ảnh thu nhỏ, tiêu đề, phụ đề, và tùy trạng thái là dấu tích, ổ khóa hay nhãn PLAY!.

kế thừa Button

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

GoStarRow

Một hàng sao đánh giá: vài ngôi sáng vàng, số còn lại mờ — lần qua màn tốt nhất hay điểm của màn hình kết quả.

kế thừa HBoxContainer

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

GoKeyCluster

Bốn phím di chuyển xếp hình chữ T ngược (WASD hoặc phím mũi tên), như trang hướng dẫn điều khiển.

kế thừa Control

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

GoCoverImage

Ảnh lấp đầy khung và cắt phần thừa, giống object-fit: cover của CSS.

kế thừa Control

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

GoHudCard

Một bảng ở hàng trên của HUD trận đấu: biểu tượng kèm băng rôn và thanh, bộ đếm, đồng hồ hoặc thước sẵn sàng.

kế thừa PanelContainer

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

GoCountdown

Đếm ngược đầu trận: 3, 2, 1, GO! thật to trên một đĩa, mỗi bước bật ra.

kế thừa Label

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

GoHudButton

Nút góc HUD: một nút hình kèm phím bàn phím trên nắp phím bên cạnh.

kế thừa HBoxContainer

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

GoNameplate

Bảng tên nổi trên nhân vật trong thế giới 3D, cùng kích thước ở mọi khoảng cách.

kế thừa PanelContainer

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

GoNoticeFeed

Dòng thông báo một dòng, như bảng hạ gục, xếp chồng, hiện dần và tự biến mất.

kế thừa VBoxContainer

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

GoTouchButton

Nút tròn cho ngón cái trên màn hình cảm ứng, có vòng hồi chiêu, nhịp sẵn sàng và kéo để ngắm.

kế thừa 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

Làm tối màn hình quanh một điều khiển và viền nó lại; lớp tối mờ dần, viền vẫn còn.

kế thừa Control

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

GoEditFrame

Đường viền trình chỉnh bố cục vẽ quanh mỗi thứ người chơi có thể di chuyển: thường, được chọn có tay nắm, cảnh báo, ẩn. Không bao giờ nhận đầu vào.

kế thừa Control

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

GoGestureHint

Đầu ngón tay mờ lặp lại một cử chỉ chạm: hai ngón tách ra rồi chụm lại để dạy chụm thu phóng. Không bao giờ nhận đầu vào.

kế thừa Control

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

GoTaskCard

Thẻ bài học hướng dẫn: bước, tiêu đề, việc cần làm, các chip được đánh dấu và gợi ý; gập thành một dòng.

kế thừa 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

Dải hiệu năng luôn hiển thị: fps, thời gian khung hình, tam giác, lệnh vẽ, nút và bộ nhớ; chuyển đỏ khi fps giảm.

kế thừa PanelContainer

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

GoSignalBars

Thanh sóng kiểu điện thoại: các cột cao dần từ trái sang phải, sáng xanh lá, vàng hoặc đỏ, kèm số đo như "48 ms" — ping trên HUD trận đấu.

kế thừa PanelContainer

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

GoRewardRow

Một hàng cho thứ người chơi kiếm được nhờ tiến độ: nhiệm vụ hoặc thành tích có thanh tiến độ, phần thưởng và nút nhận, dấu kiểm hoặc ổ khóa theo trạng thái. Chiều cao cố định cho GoListView.

kế thừa 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

Thu gọn một bảng HUD thành viên thuốc nhỏ rồi mở lại: một tay nắm mảnh có mũi tên, khi thu gọn là viên thuốc giữ biểu tượng, chữ ngắn và thanh đo. Ứng dụng chủ sắp xếp lại HUD khi có fold_changed.

kế thừa 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

Bản đồ nhỏ của màn chơi: khu vực, lối nối và điểm xuất phát; một hình bóng xám khi bị khóa.

kế thừa 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 — Phần thưởng điểm danh hằng ngày; chỉ nhấn được hôm nay.

Phần thưởng điểm danh hằng ngày; chỉ nhấn được hôm nay.

kế thừa VBoxContainer

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

GoRadar

GoRadar — Ngũ giác chỉ số, có đường nét đứt để so sánh trang bị.

Ngũ giác chỉ số, có đường nét đứt để so sánh trang bị.

kế thừa 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 — Tỉ phần dạng miếng, có chú giải bằng chữ chứ không chỉ màu.

Tỉ phần dạng miếng, có chú giải bằng chữ chứ không chỉ màu.

kế thừa Control

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

GoZoomView

GoZoomView — Chụm, cuộn chuột hoặc chạm hai lần để phóng bản đồ; kéo trong giới hạn của nó.

Chụm, cuộn chuột hoặc chạm hai lần để phóng bản đồ; kéo trong giới hạn của nó.

kế thừa 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 — Các bảng nổi trên trò chơi để chữ dễ đọc trên mọi hình.

Các bảng nổi trên trò chơi để chữ dễ đọc trên mọi hình.

hàm của GoStyle

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

Giao diện và hệ thống (9)

GoUi · GoThemePresets

GoUi · GoThemePresets — Chọn một preset (mặc định, khoa học viễn tưởng, trung cổ, Material, trẻ em, truyện tranh hoặc arcade); đọc màu và kích thước từ token.

Chọn một preset (mặc định, khoa học viễn tưởng, trung cổ, Material, trẻ em, truyện tranh hoặc arcade); đọc màu và kích thước từ token.

kế thừa RefCounted

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

GoConfig

Một tài nguyên cho mọi cài đặt, vẫn còn sau khi cập nhật add-on.

kế thừa Resource

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

GoSkin

GoSkin — Các hình do mã vẽ — chip, ô, cần điều khiển, phần mới — theo phong cách của bạn.

Các hình do mã vẽ — chip, ô, cần điều khiển, phần mới — theo phong cách của bạn.

kế thừa Resource

class_name MySkin
extends GoSkin

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

GoIconSet · GoGameIcons

GoIconSet · GoGameIcons — Biểu tượng theo tên: bộ mặc định, 187 biểu tượng game, hoặc SVG của bạn.

Biểu tượng theo tên: bộ mặc định, 187 biểu tượng game, hoặc SVG của bạn.

kế thừa Resource · RefCounted

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

GoStyleBoxCut · GoStyleBoxBracket · GoStyleBoxMedieval

GoStyleBoxCut · GoStyleBoxBracket · GoStyleBoxMedieval — Mặt vát góc, mặt ngoặc và mặt rèn cho bảng của bạn.

Mặt vát góc, mặt ngoặc và mặt rèn cho bảng của bạn.

kế thừa StyleBox

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

GoStyleBoxSprite · GoTextureSprite

PNG tô vẽ được vẽ thành chín mảnh, và bản biểu tượng của nó cho núm thanh trượt hoặc công tắc.

kế thừa 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

Tai thỏ, thanh cử chỉ và bàn phím; điểm ngắt tính bằng dp.

kế thừa 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

Tín hiệu âm thanh và rung được chuyển tới âm thanh của bạn; gohud không kèm âm thanh.

kế thừa 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

Ai đang giữ nút Quay lại của Android và Escape, dùng chung giữa các cửa sổ.

kế thừa RefCounted

GoBackPolicy.acquire(get_tree())