오픈 소스/스크래치

[스크래치] 스프라이트 숨기기와 이름 변경은 어떻게 하나요?

Linuxpia4U 2023. 3. 30. 12:12
반응형

스크래치 스프라이트 숨기기

스크래치 스프라이트는 무대 주인공입니다. 코드를 작성하면 스프라이트가 무대에서 코딩 내용대로 동작합니다. 무대에 스프라이트가 보일 필요가 없는 경우에는 스프라이트를 숨길 수 있습니다. 스프라이트가 보이지 않는다고 코딩이 적용 안 되는 것은 아닙니다.

스프라이트가 보이는 경우
스프라이트를 숨긴 경우

스프라이트를 숨기면 무대에서는 보이지 않지만 코드 편집기에는 그대로 주인공이 '고양이'라는 것을 알리고 있습니다. 스프라이트를 숨겨 보이지 않는다고 코딩이 안 되는 것은 아니라는 얘기입니다.

 

스프라이트를 삭제하면 대상이 없어지기 때문에 코드 작성이 안됩니다. 편집기가 보이지만 열리지 않은 상태입니다. 코드 편집기는 항상 대상이 선택되어야 합니다. 그것이 스프라이트가 됐던 무대가 됐던.

스프라이트를 삭제한 경우

  

 

스프라이트 이름 변경

스프라이트에는 반드시 이름이 있습니다. 프로그램에 등장하는 스프라이트 이름이 중복될 수도 없습니다. 프로그램에서 개체를 확인하는 아이디인 셈입니다.

 

아래 스크래치에 등장한 스프라이트 이름은 'Abby'입니다. 'Abby'를 스코틀랜드 민요에 나오는 'Anny'로 변경하고자 합니다. 방법은 스프라이트 이름을 변경하는 것으로 해결됩니다. 

변경 전 이름 'Abby'
변경 후 이름 'Anny'

이름만 바뀌었을 뿐 다른 것은 하나도 달라진 것이 없습니다. 달라진 스프라이트 'Anny'에게 다른 색의 옷을 입혀 볼까요. 스프라이트 모양을 변경하려면 편집기에서 '코드' 대신 '모양'을 탭 합니다.

편집기 '모양' 선택

색상을 바꿀 의상을 선택합니다. 스프라이트 'Abby'의 상의를 초록색에서 빨간색으로 변경하겠습니다.

상의 색상이 달라진 스프라이트 'Anny'

색상이 달라진 결과는 무대에 등장한 스프라이트에도 적용됐습니다. 그런데 문제가 있네요. 그 문제점을 찾아보기로 하겠습니다.

스프라이트 변경의 문제점

스프라이트는 내부적으로 각각 다른 모양의 스프라이트 변형들이 있습니다. 거기에도 이름이 있습니다. 스프라이트 대표명은 변경됐지만 내부에는 적용되지 않습니다. 결국 이름이 이중적이 되는군요.

변경된 스프라이트
내부 스프라이트 이름과 색상은 변화가 없음

스프라이트 내부에는 이름도 그대로이고 색상도 그대로입니다. 단 대표격인 첫 번째 스프라이트만 색이 바뀔 뿐입니다. 제대로 변경하려면 내부 이름과 색까지 모두 변경할 수밖에 없습니다.

 

완성하기까지

내부 스프라이트 색상까지 모두 변경했습니다. 모두 상의 색이 빨간색이 됐습니다. 한 가지 남은 것은 이름입니다. 

내부 스프라이트 색 변경

내부 스프라이트의 이름 변경은 각 스프라이트를 선택하면 오른쪽에 이름이 나타납니다. 그 이름을 변경하면 됩니다. 대표명 뒤에 대시하고 알파벳이 붙여집니다. 물론 임의로 이름을 달리할 수도 있습니다.

이름을 변경한경우

이와 같은 과정을 거쳐서 모든 스프라이트 이름과 색상을 변경했습니다.

모든 스프라이트 이름과 색 변경

 

정리

스크래치에서 제공하는 많은 스프라이트가 있습니다. 이 스프라이트는 벡터 이미지이기 때문에 모양이나 색을 변경하는 것이 비교적 자유롭습니다. 또한 이름도 변경할 수 있습니다.

 

이름은 대표명만 있는 것이 아니고, 내부 스프라이트에도 이름이 있습니다. 대표 스프라이트의 색을 바꿨다고 내부에 있는 부속된 스프라이트 색이 바뀌는 것은 아닙니다.

 

 

반응형