@zilibobi/forge-vfx 2.2.3 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -17,13 +17,13 @@ The emit module is licensed under a custom source-available copyleft license whi
17
17
  #### Wally (Luau)
18
18
 
19
19
  ```sh
20
- ForgeVFX = "zilibobi/forge-vfx@2.2.3"
20
+ ForgeVFX = "zilibobi/forge-vfx@2.3.0"
21
21
  ```
22
22
 
23
23
  #### npm (TypeScript)
24
24
 
25
25
  ```sh
26
- npm i @zilibobi/forge-vfx@latest
26
+ npm i @zilibobi/forge-vfx
27
27
  ```
28
28
 
29
29
  #### Manual
package/out/ForgeVFX.rbxm CHANGED
Binary file
package/out/index.d.ts CHANGED
@@ -47,21 +47,52 @@ export function emitWithDepth(
47
47
  ): EmitResult;
48
48
 
49
49
  /**
50
- * Enable a VFX instance.
50
+ * Enable a VFX instance and all its descendants.
51
51
  * For ParticleEmitters and Beams, sets the Enabled property directly.
52
52
  * For other instances, sets the "Enabled" attribute.
53
- * @param obj The instance to enable
53
+ * @param obj The instance to enable (propagates to descendants)
54
54
  */
55
55
  export function enable(obj: Instance): void;
56
56
 
57
57
  /**
58
- * Disable a VFX instance.
58
+ * Disable a VFX instance and all its descendants.
59
59
  * For ParticleEmitters and Beams, sets the Enabled property directly.
60
60
  * For other instances, sets the "Enabled" attribute.
61
- * @param obj The instance to disable
61
+ * @param obj The instance to disable (propagates to descendants)
62
62
  */
63
63
  export function disable(obj: Instance): void;
64
64
 
65
+ /**
66
+ * Scale the timing of VFX instances by a factor.
67
+ * Adjusts speeds, lifetimes, durations, and rates across all effect types.
68
+ * @param factor The time scale factor (>1 speeds up, <1 slows down)
69
+ * @param instances One or more instances to retime (includes descendants)
70
+ */
71
+ export function retime(factor: number, ...instances: Instance[]): void;
72
+
73
+ /**
74
+ * Scale the size of VFX instances by a factor.
75
+ * Adjusts particle sizes, beam widths, attachment distances, and more.
76
+ * @param factor The size scale factor
77
+ * @param instances One or more instances to resize (includes descendants)
78
+ */
79
+ export function resize(factor: number, ...instances: Instance[]): void;
80
+
81
+ /**
82
+ * Recolor VFX instances.
83
+ * In "replace" mode, sets all colors to the given color (preserving HDR factor).
84
+ * In "multiply" mode, blends the color with existing colors via HSV multiplication.
85
+ * Skips BasePart descendants (only applies to directly passed BaseParts).
86
+ * @param color The target color
87
+ * @param mode "replace" to set colors directly, "multiply" to blend with existing
88
+ * @param instances One or more instances to recolor (includes descendants)
89
+ */
90
+ export function recolor(
91
+ color: Color3,
92
+ mode: "replace" | "multiply",
93
+ ...instances: Instance[]
94
+ ): void;
95
+
65
96
  /**
66
97
  * Cache attributes for a VFX instance and its descendants.
67
98
  * Strips attributes from instances and stores them in memory for faster access.
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@zilibobi/forge-vfx",
3
- "version": "2.2.3",
3
+ "version": "2.3.0",
4
4
  "description": "The official emit module from the VFX Forge plugin used to emit visual effects in-game.",
5
- "main": "out/init.lua",
5
+ "main": "out/init.luau",
6
6
  "types": "out/index.d.ts",
7
7
  "type": "commonjs",
8
8
  "files": [