diff --git a/qml/lunarltk/Room.qml b/qml/lunarltk/Room.qml index 8e035e4417d26d505e24f938c769f6664d4684af..a9462aa278951356b55740a0cc999e9fc84c5336 100644 --- a/qml/lunarltk/Room.qml +++ b/qml/lunarltk/Room.qml @@ -1559,6 +1559,13 @@ W.PageBase { addToChat(pid, data); } + function updateMarkArea(sender, data) { + const { id, change } = data; + const photo = Logic.getPhoto(id); + if (!photo) return; + photo.handleMarkAreaUpdate(change); + } + Component.onCompleted: { addCallback(Command.NetStateChanged, netStateChanged); @@ -1623,6 +1630,8 @@ W.PageBase { addCallback(Command.GameLog, addToLog); addCallback(Command.Chat, chatToLog); + addCallback(Command.UpdateMarkArea, updateMarkArea); + playerNum = Config.roomCapacity; bgm.play(); diff --git a/qml/lunarltk/components/Photo.qml b/qml/lunarltk/components/Photo.qml index 2c34907f6c6c6a322e5604ac90fdb11408e58192..8fe018a3fa7db0d53617c857461ba25ba23e0fde 100644 --- a/qml/lunarltk/components/Photo.qml +++ b/qml/lunarltk/components/Photo.qml @@ -496,7 +496,6 @@ MyPhotoBase { OLMarkArea { id: markAreaItem - visible: !((root.dead && !root.rest) || root.dying || root.surrendered) x: 18 y: 18 @@ -798,6 +797,13 @@ MyPhotoBase { picMarkAreaItem.update(skill, time); } + function handleMarkAreaUpdate(data) { + if (data.visible !== undefined) { + // picMarkAreaItem.visible = data.visible; // 这是管限定技的区域? + markAreaItem.visible = data.visible; + } + } + function showDetail() { if (playerid === 0 || playerid === -1) { return;