surface_copy 함수 설명

surface_copy 함수는 한 서피스의 이미지를 다른 서피스의 지정된 위치에 복사하는 기능을 제공합니다. 복사할 위치는 대상 서피스의 (0, 0) 좌표가 왼쪽 상단 모서리에 해당합니다. 만약 대상 서피스에 이미 정보가 있다면, 복사된 내용으로 덮어쓰게 되며, 이 함수는 원본 서피스에는 아무런 영향을 미치지 않습니다.

문법

surface_copy(destination, x, y, source);

인자 설명

인자 타입 설명
destination Surface 다른 서피스를 복사할 대상 서피스입니다.
x Real 복사할 x 위치입니다.
y Real 복사할 y 위치입니다.
source Surface 복사할 서피스입니다.

반환값

  • N/A

예제 코드

if (view_current == 0) {
    surface_copy(surf, 0, 0, temp_surf);
} else {
    draw_surface(surf, 0, 0);
}

위의 코드는 현재 그려지고 있는 뷰를 확인합니다. 만약 view[0]이면, temp_surf 변수에 저장된 서피스를 surf 변수에 복사합니다. 현재 뷰가 view[0]이 아닌 경우, surf 서피스가 화면에 그려집니다.

활용 예제

예제 1: 서피스 복사 후 변형

surface_copy(surf, 50, 50, temp_surf);
draw_surface(surf, 0, 0);

이 코드는 temp_surfsurf의 (50, 50) 위치에 복사한 후, surf를 화면에 그립니다.

예제 2: 여러 서피스 복사

surface_copy(surf1, 0, 0, temp_surf1);
surface_copy(surf2, 100, 100, temp_surf2);

이 코드는 두 개의 서피스를 각각 다른 위치에 복사합니다.

예제 3: 조건부 서피스 복사

if (condition) {
    surface_copy(surf, 0, 0, temp_surf);
} else {
    draw_surface(surf, 0, 0);
}

조건에 따라 서피스를 복사하거나 그립니다.

예제 4: 서피스 복사 후 애니메이션 효과

surface_copy(surf, x, y, temp_surf);
draw_surface(surf, x + 10, y + 10);

서피스를 복사한 후, 약간 이동하여 애니메이션 효과를 줍니다.