Description

This function will draw a part of the chosen surface at the
given position following the same rules as per draw_surface_part, only now
you can scale the part, blend a colour with it, or change its alpha
when drawing it to the screen (the same as when drawing a surface
with draw_surface_ext).

NOTE: When working with surfaces there is the possibility
that they can cease to exist at any time due to them being stored
in texture memory. You should ALWAYS check that a surface
exists using surface_exists
before referencing them directly. For further information see
Surfaces.

Example:

draw_surface_part_ext(surf, 8, 8, 32, 32, x, y, 2,
0.5, c_black, 1);

This will draw a 32x32 pixel area from 8x8 pixels into the
surface indexed in the variable "surf". It will be stretched to
double its usual width but half its usual height. It will be opaque
and it will be blended with black (turning it into a
silhouette).