@quenty/numbersequenceutils 4.4.0 → 4.5.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/CHANGELOG.md CHANGED
@@ -3,6 +3,17 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [4.5.0](https://github.com/Quenty/NevermoreEngine/compare/@quenty/numbersequenceutils@4.4.0...@quenty/numbersequenceutils@4.5.0) (2023-07-23)
7
+
8
+
9
+ ### Features
10
+
11
+ * Add NumberSequenceUtils.forEachValue helper method ([98e3890](https://github.com/Quenty/NevermoreEngine/commit/98e38903007a4510ab31bb28c69f35b14e1c1ffc))
12
+
13
+
14
+
15
+
16
+
6
17
  # [4.4.0](https://github.com/Quenty/NevermoreEngine/compare/@quenty/numbersequenceutils@4.3.1...@quenty/numbersequenceutils@4.4.0) (2023-06-05)
7
18
 
8
19
  **Note:** Version bump only for package @quenty/numbersequenceutils
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quenty/numbersequenceutils",
3
- "version": "4.4.0",
3
+ "version": "4.5.0",
4
4
  "description": "Utility functions involving NumberSequences on Roblox",
5
5
  "keywords": [
6
6
  "Roblox",
@@ -31,5 +31,5 @@
31
31
  "@quenty/loader": "^6.2.1",
32
32
  "@quenty/math": "^2.4.0"
33
33
  },
34
- "gitHead": "d8ad8f8567843d3867b6c06c8c57ec4493672335"
34
+ "gitHead": "c1fbe93a0a20b5c0c4b9ffbbac771926b07ac251"
35
35
  }
@@ -88,10 +88,30 @@ function NumberSequenceUtils.getValueGenerator(numberSequence: NumberSequence):
88
88
  end
89
89
  end
90
90
 
91
+ --[=[
92
+ Scales a number sequence value by the set amount
93
+ @param sequence NumberSequence
94
+ @param callback function
95
+ @return NumberSequence
96
+ ]=]
97
+ function NumberSequenceUtils.forEachValue(sequence, callback)
98
+ assert(type(callback) == "function", "Bad callback")
99
+
100
+ local waypoints = {}
101
+
102
+ local keypoints = sequence.Keypoints
103
+ for _, keypoint in pairs(keypoints) do
104
+ table.insert(waypoints, NumberSequenceKeypoint.new(keypoint.Time, callback(keypoint.Value), keypoint.Envelope))
105
+ end
106
+
107
+ return NumberSequence.new(waypoints)
108
+ end
109
+
91
110
  --[=[
92
111
  Scales a number sequence value by the set amount
93
112
  @param sequence NumberSequence
94
113
  @param scale number
114
+ @return NumberSequence
95
115
  ]=]
96
116
  function NumberSequenceUtils.scale(sequence, scale)
97
117
  local waypoints = {}