script:feature:display_a_book
Mục lục
Kịch bản hiển thị nội dung dạng sách
Kịch bản hoạt động
Chức năng
- Kịch bản hiển thị nội dung theo dạng sách
Chú ý:
- Kịch bản không lưu các biến phụ, có thể sửa lại để giảm dung lượng kịch bản
- Dán kịch bản trong giao diện sử dụng. Không dán bên ngoài
Giải thích các dòng lệnh
local sang_trai, sang_phai, van_bang_trang, van_bang_noi_dung = '', '', '', ''
- ID thành phần nút ấn sang trái, sang phải, văn bản hiển thị trang, văn bản hiển thị nội dung. Người dùng nhập ID cần thiết khi sử dụng
local sang_trai, sang_phai, van_bang_trang, van_bang_noi_dung = '7423397793049227139_4', '7423397793049227139_5', '7423397793049227139_6', '7423397793049227139_7'
local bang_noi_dung = { [==[]==], } -- Bảng lưu trữ nội dung trang
- Bảng lưu trữ nội dung cho các trang. Bản mẫu:
Mẫu1:
local bang_noi_dung = { [==[Nội dung trang 1 Thử nghiệm]==], [==[Kết thúc]==] }
Mẫu2:
local bang_noi_dung = { [1] = [==[Mở đầu]==], [2] = [==[Hello world]==], [3] = [==[Miniworld]==], [4] = [==[Hết !!!]==] }
local function cap_nhap_ban_dau(b) trang[b.eventobjid] = 1 cap_nhap_noi_dung(b.eventobjid,[[]],trang[b.eventobjid]) end ScriptSupportEvent:registerEvent('Game.AnyPlayer.EnterGame',cap_nhap_ban_dau)
- Chức năng cập nhập trang mặc định ( Trang 1 ). Lưu ý ID giao diện người dùng nhập thủ công
Mẫu:
cap_nhap_noi_dung(b.eventobjid,[[7423397793049227139]],trang[b.eventobjid])
Ngoại lệ
- Chức năng chuyển trang dạng vòng lặp ( Thay thế cho chức năng chuyển trang cũ nếu muốn sử dụng )
local function chuyen_trang(b) if b.uielement == sang_trai then trang[b.eventobjid] = (trang[b.eventobjid] -2) % #bang_noi_dung +1 cap_nhap_noi_dung(b.eventobjid,b.CustomUI,trang[b.eventobjid]) elseif b.uielement == sang_phai then trang[b.eventobjid] = trang[b.eventobjid] % #bang_noi_dung +1 cap_nhap_noi_dung(b.eventobjid,b.CustomUI,trang[b.eventobjid]) else -- Các hành động nhấn nút khác end end ScriptSupportEvent:registerEvent('UI.Button.TouchBegin',chuyen_trang)
Kịch Bản Tham Khảo:
local sang_trai, sang_phai, van_bang_trang, van_bang_noi_dung = '', '', '', '' local bang_noi_dung = { [==[]==], } -- Bảng lưu trữ nội dung trang local trang = {} --[[ SCRIPT ]]-- local function cap_nhap_ban_dau(b) trang[b.eventobjid] = 1 cap_nhap_noi_dung(b.eventobjid,[[]],trang[b.eventobjid]) end ScriptSupportEvent:registerEvent('Game.AnyPlayer.EnterGame',cap_nhap_ban_dau) local function chuyen_trang(b) if b.uielement == sang_trai then if trang[b.eventobjid] > 1 then trang[b.eventobjid] = trang[b.eventobjid] -1 cap_nhap_noi_dung(b.eventobjid,b.CustomUI,trang[b.eventobjid]) else Player:notifyGameInfo2Self(b.eventobjid,'Đang ở trang đầu') end elseif b.uielement == sang_phai then if trang[b.eventobjid] < #bang_noi_dung then trang[b.eventobjid] = trang[b.eventobjid] +1 cap_nhap_noi_dung(b.eventobjid,b.CustomUI,trang[b.eventobjid]) else Player:notifyGameInfo2Self(b.eventobjid,'Đã hết') end else -- Các hành động nhấn nút khác end end ScriptSupportEvent:registerEvent('UI.Button.TouchBegin',chuyen_trang) function cap_nhap_noi_dung(uid, ui, trang) Customui:setText(uid, ui, van_bang_noi_dung, bang_noi_dung[trang]) Customui:setText(uid, ui, van_bang_trang, 'Trang '..trang) end
— Cre:Nguyễn Khánh 2024/10/09 17:50
Nếu bạn có bất kỳ câu hỏi nào về Chế Độ DEV Nâng Cao, vui lòng tham gia
Mini World Developer Việt Nam chính thức của chúng tôi
script/feature/display_a_book.txt · Sửa đổi lần cuối: 2024/10/09 18:10 bởi leo