blob: 09153761a728b023e00221b44f266bae1a43f2d1 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
/*-- Helpers --*/
#strict 2
global func IIf(expression, truePart, falsePart)
{
if (expression)
{
return truePart;
}
else
{
return falsePart;
}
}
global func RGBpA(int rgb, int a) { return (a & 255)<<24 | rgb & 0xFFFFFF; }
global func CleanAngle(&angle)
{
if (angle > 360) angle = angle % 360;
else while (angle < 0) angle += 360;
}
global func Angle180(int angle)
{
CleanAngle(angle);
if (angle > 180) angle -= 360;
return angle;
}
global func Angle360(int angle)
{
CleanAngle(angle);
return angle;
}
// Fisher-Yates Shuffle
global func ShuffleArray(array& arr)
{
for(var i = GetLength(arr); i > 0; --i)
{
var randomIndex = Random(i);
var tmp = arr[i - 1];
arr[i - 1] = arr[randomIndex];
arr[randomIndex] = tmp;
}
}
|