aboutsummaryrefslogtreecommitdiff
path: root/stdlib/nums.c
diff options
context:
space:
mode:
authorBruce Hill <bruce@bruce-hill.com>2025-03-09 15:56:44 -0400
committerBruce Hill <bruce@bruce-hill.com>2025-03-09 15:56:44 -0400
commit29358b9cd0eea2ddf05d216d75d01dff5f0ea780 (patch)
tree6a7776a9fbfaccc650b07dde125f5e8a31c8546e /stdlib/nums.c
parent2ebe7893fe18c953967f602c73f6d3f32185eeb6 (diff)
Add some missing modulus and conversion methods for floats/ints
Diffstat (limited to 'stdlib/nums.c')
-rw-r--r--stdlib/nums.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/stdlib/nums.c b/stdlib/nums.c
index b227ccb8..f1b7c7b7 100644
--- a/stdlib/nums.c
+++ b/stdlib/nums.c
@@ -62,6 +62,10 @@ public CONSTFUNC double Num$mod(double num, double modulus) {
return (result < 0) != (modulus < 0) ? result + modulus : result;
}
+public CONSTFUNC double Num$mod1(double num, double modulus) {
+ return 1.0 + Num$mod(num-1, modulus);
+}
+
public CONSTFUNC double Num$mix(double amount, double x, double y) {
return (1.0-amount)*x + amount*y;
}
@@ -137,6 +141,10 @@ public CONSTFUNC float Num32$mod(float num, float modulus) {
return (result < 0) != (modulus < 0) ? result + modulus : result;
}
+public CONSTFUNC float Num32$mod1(float num, float modulus) {
+ return 1.0f + Num32$mod(num-1, modulus);
+}
+
public CONSTFUNC float Num32$mix(float amount, float x, float y) {
return (1.0f-amount)*x + amount*y;
}