新增SendContainerClosePacket事件
This commit is contained in:
Vendored
+14
-1
@@ -215,10 +215,23 @@ declare class Event {
|
|||||||
player: Player,
|
player: Player,
|
||||||
/** 请求类型 */
|
/** 请求类型 */
|
||||||
actionType: string,
|
actionType: string,
|
||||||
/** 容器ID */
|
/** 容器类型 */
|
||||||
ContainerNetId: string,
|
ContainerNetId: string,
|
||||||
/** 请求的槽位 */
|
/** 请求的槽位 */
|
||||||
slot: number
|
slot: number
|
||||||
) => boolean | void
|
) => boolean | void
|
||||||
): boolean;
|
): boolean;
|
||||||
|
|
||||||
|
/** 发送容器关闭数据包后(不可拦截) */
|
||||||
|
static listen(
|
||||||
|
/** 事件名 */
|
||||||
|
event: "SendContainerClosePacket",
|
||||||
|
/** 回调函数 */
|
||||||
|
listener: (
|
||||||
|
/** 要被关闭的玩家 */
|
||||||
|
player: Player,
|
||||||
|
/** 容器类型 */
|
||||||
|
ContainerNetId: string
|
||||||
|
) => void
|
||||||
|
): boolean;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -289,6 +289,22 @@ void Export_Event_API() {
|
|||||||
);
|
);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
case doHash("SendContainerClosePacket"): {
|
||||||
|
auto Call =
|
||||||
|
RemoteCall::importAs<bool(Player * player, std::string const& ContainerNetId)>(eventName, eventId);
|
||||||
|
eventBus->emplaceListener<Event::PacketEvent::ContainerClosePacketSendAfterEvent>(
|
||||||
|
[Call](Event::PacketEvent::ContainerClosePacketSendAfterEvent& ev) {
|
||||||
|
try {
|
||||||
|
Call(
|
||||||
|
ev.getServerNetworkHandler()
|
||||||
|
.getServerPlayer(ev.getNetworkIdentifier(), ev.getPacket().mClientSubId),
|
||||||
|
magic_enum::enum_name(ev.getPacket().mContainerId).data()
|
||||||
|
);
|
||||||
|
} catch (...) {}
|
||||||
|
}
|
||||||
|
);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user