feat: update atmosphere:update socket type for full effect state
This commit is contained in:
parent
10ba151b6e
commit
993875f8ef
1 changed files with 17 additions and 8 deletions
|
|
@ -90,14 +90,23 @@ export function setupSocket(io: Server) {
|
|||
},
|
||||
);
|
||||
|
||||
socket.on(
|
||||
"atmosphere:update",
|
||||
(data: { campaignId: number; fog: boolean }) => {
|
||||
io.to(`campaign:${data.campaignId}`).emit("atmosphere:update", {
|
||||
fog: data.fog,
|
||||
interface EffectState {
|
||||
active: boolean;
|
||||
intensity: number;
|
||||
}
|
||||
|
||||
interface AtmosphereUpdateData {
|
||||
campaignId: number;
|
||||
fog: EffectState;
|
||||
fire: EffectState;
|
||||
rain: EffectState;
|
||||
embers: EffectState;
|
||||
}
|
||||
|
||||
socket.on("atmosphere:update", (data: AtmosphereUpdateData) => {
|
||||
const { campaignId, ...atmosphere } = data;
|
||||
io.to(`campaign:${campaignId}`).emit("atmosphere:update", atmosphere);
|
||||
});
|
||||
},
|
||||
);
|
||||
|
||||
socket.on("disconnect", () => {
|
||||
// Rooms are cleaned up automatically by Socket.IO
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue