Skip to content
Will Blanton edited this page Sep 13, 2019 · 6 revisions

Added functionality for Floats!

This is an Extension! Learn about using Extensions here!

Examples:

Get the sign (-1, 0, 1) of a number

-100.sign_of(); // -1

Get half or a quarter of a number

100.half(); // 50
100.quarter(); // 25

Convert radians to degrees:

var radian = Math.PI;
var degree = radian.rad_to_deg();
// degree = 180

Vice-versa:

var degree = 180;
var radian = degree.deg_to_rad();
// radian = 3.14...

Cycle through a range of numbers:

var value = 15;
var cycled_value = value.cycle(0, 10);
// cycled_value = 5;

Get a relative angle in degrees:

var angle = 0;
angle += 370;
angle = angle.get_relative_degree();
// angle = 10;

Get the difference in degrees between two angles:

var heading = 50;
var angle_to_destination = 120;
var difference = heading.degrees_between(angle_to_destination);

Clamp a value between a minimum and maximum value:

var value = 135;
var clamped_value = value.clamp(0, 100);
// clamped_value = 100;

Convert a float with many decimal places to a Float with only two decimal places:

value = 1.147528;
value = value.normalize(2);
// value = 1.15

Map a value from one range of numbers to another:

var value = 10;
var mapped_value = value.map(0, 100, 0, 200);
// mapped_value = 20

Snap a value to a grid:

var value = 14;
var snapped_value = value.snap_to_grid(8);
// snapped_value = 16

Generate a random number:

var value1 = 100.get_random();
// value1 = a number between 0 and 100
var value2 = 100.get_random(50);
// value2 = a number between 50 and 100
var value3 = 0.get_random(10, 20);
// value3 = a number between 10 and 20

Quickly convert a Float to an Int:

var value_f:Float = 10.2;
var value_i:Int = value_f.to_int();
// value_i = 10

Get a vector from an angle and speed:

var angle = 180;
var speed = 100;
var velocity:Vec2 = angle.vector_from_angle(speed);
Clone this wiki locally