diff --git a/code/modules/scripting/Implementations/Telecomms.dm b/code/modules/scripting/Implementations/Telecomms.dm index e807beeaedb..ea9fda485e7 100644 --- a/code/modules/scripting/Implementations/Telecomms.dm +++ b/code/modules/scripting/Implementations/Telecomms.dm @@ -190,6 +190,11 @@ interpreter.SetProc("randseed", /proc/n_randseed) interpreter.SetProc("min", /proc/n_min) interpreter.SetProc("max", /proc/n_max) + interpreter.SetProc("sin", /proc/n_sin) + interpreter.SetProc("cos", /proc/n_cos) + interpreter.SetProc("asin", /proc/n_asin) + interpreter.SetProc("acos", /proc/n_acos) + interpreter.SetProc("log", /proc/n_log) // Time interpreter.SetProc("time", /proc/n_time) diff --git a/code/modules/scripting/Implementations/_Logic.dm b/code/modules/scripting/Implementations/_Logic.dm index 343adf34d43..6fd47acf7c8 100644 --- a/code/modules/scripting/Implementations/_Logic.dm +++ b/code/modules/scripting/Implementations/_Logic.dm @@ -262,6 +262,31 @@ if(isnum(num)&&isnum(min)&&isnum(max)) return ((min <= num) && (num <= max)) +// Returns the sine of num +/proc/n_sin(var/num) + if(isnum(num)) + return sin(num) + +// Returns the cosine of num +/proc/n_cos(var/num) + if(isnum(num)) + return cos(num) + +// Returns the arcsine of num +/proc/n_asin(var/num) + if(isnum(num)&&-1<=num&&num<=1) + return arcsin(num) + +// Returns the arccosine of num +/proc/n_acos(var/num) + if(isnum(num)&&-1<=num&&num<=1) + return arccos(num) + +// Returns the natural log of num +/proc/n_log(var/num) + if(isnum(num)&&0