A browser source overlay for winter vibes for your Live Streams or Videos
at main 1.1 kB view raw
1export {}; 2declare global { 3 type PlowDirection = "left" | "right" | "random"; 4 type Config = { 5 version: number; 6 canvas: { 7 width: number; 8 height: number; 9 }; 10 snow: { 11 max: number; 12 minSize: number; 13 maxSize: number; 14 minSpeed: number; 15 maxSpeed: number; 16 }; 17 groundAccumulator: { 18 max: number; 19 slices: number; 20 }; 21 plow: { 22 speed: number; 23 direction: PlowDirection; 24 scale: number; 25 }; 26 }; 27 28 type SpriteFrame = { 29 x: number; 30 y: number; 31 duration: number; 32 }; 33 34 type Sprite = { 35 image: HTMLImageElement; 36 width: number; 37 height: number; 38 lastUpdate: number; 39 currentFrame: number; 40 frames: SpriteFrame[]; 41 }; 42 43 type Snowflake = { 44 x: number; 45 y: number; 46 speed: number; 47 size: number; 48 }; 49 50 type SnowAccumulator = { 51 accumulator: number; 52 y: number; 53 height: number; 54 x: number; 55 width: number; 56 }; 57 58 type Plow = { 59 speed: number; 60 x: number; 61 y: number; 62 direction: PlowDirection; 63 }; 64}