surface_copy_part


Syntaxe:

surface_copy_part(destination, x, y, source, xs, ys, ws, hs);

Argument La description
destination L'ID de la surface à copier l'autre surface.
x La position x à copier vers.
y La position y à copier.
source L'identifiant de la surface à copier
xs La position x dans la surface source à partir de laquelle copier.
ys La position y dans la surface source à partir de laquelle copier.
ws La largeur de la zone dans la surface source à copier.
hs La hauteur de la zone dans la surface source à partir de laquelle copier.


Résultats:

N/A


La description

Cette fonction prend simplement l'image d'une surface et la copie sur une autre à la position locale spécifiée dans cette surface (où la position (0,0) est le coin supérieur gauche de la surface de destination). Vous pouvez spécifier une position x et y locale à copier, ainsi que la largeur et la hauteur de la section. Veuillez noter qu'il s'agit de coordonnées basées sur la taille de la surface et non sur la position à laquelle la surface est dessinée dans la pièce (voir la page principale sur Surfaces pour plus d'informations). Si la surface de destination possède déjà des informations ce sera écrasé par la copie et la fonction ne change pas la surface de la source de quelque façon.

REMARQUE: Lorsque vous travaillez avec des surfaces, il est possible qu'elles cessent d'exister à tout moment en raison de leur stockage dans la mémoire de texture. Vous devez TOUJOURS vérifier qu'une surface existe en utilisant surface_exists avant de les référencer directement. Pour plus d'informations, voir Surfaces.


Exemple:

if view_current == 0
   {
   surface_copy_part(surf, 0, 0, temp_surf, 0, 0, view_xview[1] - mouse_x, view_yview[1] - mouse_y);
   }
else
   {
   draw_surface(surf, 0, 0);
   }

Le code ci-dessus va vérifier la vue courante en cours de dessin et si c'est la vue [0] il copie la surface indexée dans la variable "temp_surf" sur la surface indexée dans la variable "surf". La zone copiée correspond à un rectangle formé par la position relative de la souris dans la surface telle qu'elle serait dessinée [1]. Si la vue actuelle est autre que la vue [0], la surface "surf" est dessinée à l'écran.