if (!visible) exit; if (blend_mode != 0) draw_set_blend_mode(blend_mode); if (shader == 1) { shader_replace_simple_set_hook(41); shader_set_uniform_f(u1_forceColor, color_get_red(image_blend) / 255, color_get_green(image_blend) / 255, color_get_blue(image_blend) / 255); } else if (shader == 2) { shader_replace_simple_set_hook(10); shader_set_uniform_f(u2_grayscalefade, shader2_greyscale_fade); } else if (shader == 3) { shader_replace_simple_set_hook(38); } var num_particles = array_length(particle_data); for (var i = 0; i < num_particles; i++) { with (particle_data[i]) draw_sprite_ext(sprite_index, image_index, x, y, image_xscale, image_yscale, image_angle, image_blend, image_alpha * other.image_alpha); } if (blend_mode != 0) draw_set_blend_mode(bm_normal); if (shader > 0) shader_replace_simple_reset_hook();