Here are a few functions I made in GML to be used as alternates to not-done-yet functions. Most are pretty simple, but hey.
frac(x)argument0=string(argument0);
for (i=string_length(argument0);i>0;i+=1;)
{
if string_char_at(i+1)!='.' then
{
array[i]=string_char_at(i);
}
else
{
array[i]='0';
}
}
string='';
for (i=0;i<string_length(argument0);i+=1;)
{
string+=array[i];
}
return real(string);
draw_point(x,y)draw_line(argument0,argument1,argument0,argument1);
draw_triangle(x1,y1,x2,y2,x3,y3,outline)if argument6=true then pr_type=pr_linestrip else pr_type=pr_trianglelist;
draw_primitive_begin(pr_type);
draw_vertex(argument0,argument1);
draw_vertex(argument2,argument3);
draw_vertex(argument4,argument5);
if pr_type=pr_linestrip then draw_vertex(argument0,argument1);
draw_primitive_end();
draw_arrow(x1,y1,x2,y2,size);draw_line(argument0,argument1,argument2,argument3);
draw_primitive_begin(pr_trianglelist);
draw_vertex(argument2,argument3);
x2=argument2+cos(degtorad(point_direction(argument2,argument3,argument0,argument1)+45))*argument4;
y2=argument2-sin(degtorad(point_direction(argument2,argument3,argument0,argument1)+45))*argument4;
draw_vertex(x2,y2);
x3=argument2+cos(degtorad(point_direction(argument2,argument3,argument0,argument1)+45))*argument4;
y3=argument2-sin(degtorad(point_direction(argument2,argument3,argument0,argument1)+45))*argument4;
draw_vertex(x3,y3);
draw_vertex(argument2,argument3);
draw_primitive_end();
draw_point_color(x,y,col1)col=draw_get_color();
draw_set_color(argument2);
draw_line(argument0,argument1,argument0,argument1);
draw_set_color(col);
draw_triangle_color(x1,y1,x2,y2,x3,y3,col1,col2,col3,outline)if argument9=true then pr_type=pr_linestrip else pr_type=pr_trianglelist;
draw_primitive_begin(pr_type);
draw_vertex_color(argument0,argument1,argument6);
draw_vertex_color(argument2,argument3,argument7);
draw_vertex_color(argument4,argument5,argument8);
if pr_type=pr_linestrip then draw_vertex(argument0,argument1);
draw_primitive_end();