======Kịch bản hiển thị nội dung dạng sách====== ====Kịch bản hoạt động==== {{ :script:feature:display_a_book_1.mp4?direct&400 |}}\\ ---- ====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 {{ :script:feature:display_a_book_0.png?direct&600 |}}\\ **Mẫu:**\\ 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:**[[https://www.facebook.com/fb.ngkhanh.mc|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\\ **[[https://www.facebook.com/groups/miniworldvn.developer|Mini World Developer Việt Nam]]** chính thức của chúng tôi