function scr_plat_makecoins(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7 = depth + 1, arg8 = false, arg9 = false, arg10 = 0) { var _no_big = false; if (arg2 < 0 || arg8) { arg2 = abs(arg2); _no_big = true; } for (var _collect_cooldown = 9; arg2 > 0; _collect_cooldown += 2) { var _thisvalue = 0; if (arg2 >= 5 && !_no_big) { arg2 -= 5; _thisvalue = 5; } else { arg2 -= 1; _thisvalue = 1; } with (instance_create_depth(arg0, arg1, arg7, obj_plat_coin)) { speed = random_range(arg5 - arg6, arg5 + arg6) * 1.5; direction = random_range(arg3 - arg4, arg3 + arg4); gravity = 0.3; friction = 0.15; is_pink = arg8; coinvalue = _thisvalue; windimmune = true; collect_cooldown = _collect_cooldown / 2; homingtimer = -((_collect_cooldown / 2) - 9); if (arg10 > 0) homing_timer = arg10; if (arg9) image_xscale = 2 * (other.image_xscale / other.image_yscale); else image_xscale = 2; } } } function scr_prepare_parallax_draw(arg0, arg1) { if (arg0 != 0) { _parallax_draw_set = true; var __pd = arg0; _p_x = x; _p_y = y; _p_a = image_alpha; _p_d = depth; _p_i = image_blend; _p_xs = image_xscale; _p_ys = image_yscale; var cx = 0; var cy = 0; if (instance_exists(obj_plat_camera)) { cx = obj_plat_camera.x; cy = obj_plat_camera.y; } else { cx = camerax() + (0.5 * camerawidth()); cy = cameray() + (0.5 * cameraheight()); } arg0 = 1 - arg0; var realdepth = 1 - (arg0 * arg0); x = floor(lerp(x, cx, lerp(0, arg1, realdepth))); y = floor(lerp(y, cy, lerp(0, arg1, realdepth))); depth += lerp(0, 1000, realdepth); if (__pd > 0.1) { var fc = scr_get_sunset_fade_color(); image_blend = merge_color(merge_color(image_blend, fc, 0.2), fc, clamp01(realdepth) * 0.5); } else if (__pd < -0.1) { image_alpha = 0.8 + __pd; } image_xscale = lerp(image_xscale, image_xscale * (1 - arg1), realdepth); image_yscale = lerp(image_yscale, image_yscale * (1 - arg1), realdepth); } } function scr_reset_parallax_draw() { if (variable_instance_exists(id, "_parallax_draw_set") && _parallax_draw_set) { _parallax_draw_set = false; x = _p_x; y = _p_y; depth = _p_d; image_blend = _p_i; image_xscale = _p_xs; image_yscale = _p_ys; image_alpha = _p_a; } } function scr_plat_cool_zoom() { var speedlines = instance_create(camerax(), cameray(), obj_fx_speedlines); speedlines.depth = 1499; scr_plat_hitstop_global(10); with (speedlines) { scr_lerpvar("image_alpha", 1, 0, 15); scr_doom(self, 15); } } function scr_plat_marker_fancy_greyscale_draw() { if (!variable_instance_exists(id, "__grayscalefade")) { __grayscalefade = shader_get_uniform(shd_grayscale_fade, "fade"); if (!variable_instance_exists(id, "__grayscale_lerp")) __grayscale_lerp = 0; } shader_replace_simple_set_hook(10); shader_set_uniform_f(__grayscalefade, __grayscale_lerp); draw_self(); shader_replace_simple_reset_hook(); } function scr_plat_draw_dizzy_effects(arg0, arg1) { if (!variable_instance_exists(id, "_dizzy_timer")) _dizzy_timer = 0; if (!global.pause_plat) _dizzy_timer++; var xx = x; var yy = y - (0.5 * sprite_height); var drawtimers = []; for (var i = 0; i < arg0; i++) { var tt = degtorad((_dizzy_timer * 6) + ((i * 360) / arg1)) % (2 * pi); if (array_length(drawtimers) == 0) { array_push(drawtimers, tt); } else { var added = false; for (var ii = 0; ii < array_length(drawtimers); ii++) { if (abs(pi - tt) < abs(pi - drawtimers[ii])) { added = true; array_insert(drawtimers, ii, tt); break; } } if (!added) array_push(drawtimers, tt); } } for (var i = 0; i < array_length(drawtimers); i++) { var xxx = sin(drawtimers[i]) * 40; var yyy = (cos(drawtimers[i] * 3) * 4) + (cos(drawtimers[i]) * 10); draw_sprite_ext(spr_weathervane_flower, 0, xx + xxx, yy + yyy, 2, 2, sin(_dizzy_timer * 0.1) * 8, merge_color(c_white, c_gray, 0.5 - (0.5 * cos(drawtimers[i]))), 1); } } function scr_gamepad_get_left_axis() { var _angle = -1; var gc = 1644; if (instance_exists(gc) && gc.gamepad_active) { var gpid = obj_gamecontroller.gamepad_id; var haxis = gamepad_axis_value(gpid, gp_axislh); var vaxis = gamepad_axis_value(gpid, gp_axislv); if (instance_exists(obj_time) && point_distance(0, 0, haxis, vaxis) >= obj_time.axis_value) _angle = point_direction(0, 0, haxis, vaxis); } debug_print_persistent("ang", string(_angle)); return _angle; }