Mục lục

Kịch bản Khu vực cấm phá khối & Khu vực cho phép phá khối

Mở rộng: Kịch bản - Nhóm khu vực cấm phá khối & Nhóm khu vực cho phép phá khối

Chức năng

[Video_1]

[Video_2]

Chú ý:
- Chức năng không có tác dụng với các trường hợp đặc biệt khác ( Ví dụ: Khối bị phá do phát nổ, kĩ năng công cụ, độ ổn điịnh chức năng, … ).


Khái quát cơ chế

- Người chơi chỉ có thể phá khối ngoài khu vực được định nghĩa bởi Area:createAreaRectByRange. Nếu người chơi phá khối ở trong khu vực, hành động đào sẽ bị vô hiệu hoá.

- Người chơi chỉ có thể phá khối trong khu vực được định nghĩa bởi Area:createAreaRectByRange. Nếu người chơi phá khối ở ngoài khu vực, hành động đào sẽ bị vô hiệu hoá.

Giải thích các dòng lệnh

local ret, areaid = Area:createAreaRectByRange({x=20, y=6, z=0}, {x=8, y=8, z=12})

Định nghĩa hàm xử lý sự kiện đào

local function digb(e)
if Area:posInArea({x=e.x, y=e.y, z=e.z}, areaid) == 0 then
Player:setActionAttrState(e.eventobjid, 8, false)

ScriptSupportEvent:registerEvent('Block.Dig.Begin', digb)

-Kịch Bản Tham Khảo


Khu vực cấm phá khối

local ret,areaid = Area:createAreaRectByRange({x= , y= , z= },{x= , y= , z= })
local function digb(e)
    if Area:posInArea({x=e.x, y=e.y, z=e.z}, areaid) == 0 then
– Xác định được vị trí khối đã đào nằm trong khu vực
        Player:setActionAttrState(e.eventobjid, 8, false)
    else
        Player:setActionAttrState(e.eventobjid, 8, true)
    end
end
ScriptSupportEvent:registerEvent('Block.Dig.Begin', digb)

Khu vực cho phép phá khối

local ret,areaid = Area:createAreaRectByRange({x= , y= , z= },{x= , y= , z= })
local function digb(e)
    if Area:posInArea({x=e.x, y=e.y, z=e.z}, areaid) == 0 then
-- Xác định được vị trí khối đã đào nằm trong khu vực
        Player:setActionAttrState(e.eventobjid, 8, true)
    else
        Player:setActionAttrState(e.eventobjid, 8, false)
    end
end
ScriptSupportEvent:registerEvent('Block.Dig.Begin', digb)

Cre:Nguyễn Khánh 2025/02/23 13:57


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