변수 활용하기 - 점수판 만들기





앞에서는 엔트리에서 변수를 사용하는 방법을 알려주기 위해 하나씩 빠르게 설명하고 넘어갔습니다.

그럼 여기서는 왜 그렇게 되는지를 한 번 알아보겠습니다.


위의 그림에서 우리가 원하는 것을 말로 설명해보면,

  1. 위쪽 화살표 버튼을 누르면 왼쪽의 0이 1씩 커지게 할 것이다.
  2. 아래쪽 화살표 버튼을 누르면 왼쪽의 0이 1씩 작아지게 할 것이다.


어떻게 하면 될까요?


한 오브젝트가 다른 오브젝트를 변하게 만들어야 합니다.


위쪽 화살표 버튼: 야, 글상자! 너 1커져!

글상자: ...


오브젝트는 다른 오브젝트가 뭘 하는지 알지도 못하고 관심도 없습니다.

오브젝트가 다른 오브젝트에게 뭔가 알릴때 사용했던 게 있죠! 바로 '신호'!

'1 커지기' 신호를 만들어서 보내면 '글상자' 오브젝트도 신호를 받고 뭔가를 할 수 있을 것 같습니다.


이렇게 직접 연락하는 방법도 있지만, 변수를 통해서 알려주는 방법도 있습니다.

변수를 만들면 모든 오브젝트는 변수만 바라보고 일을 하면 됩니다.





글상자 오브젝트는 '점수' 변수에 저장되어있는 값을 계속 가져와서 지금 숫자를 바꿔줍니다.

엄청 빠른 속도로 계속이요.

처음 시작했을 때 '점수' 변수에 저장되어있는 값은 0이니까 계속 가져와서 다시 써도 0입니다.


그러다가 사용자가 위쪽 방향 버튼을 한번 클릭 합니다.

위쪽 방향 버튼은 누가 변수를 어떻게 바꾸든 관심없습니다.

자기가 한 번 클릭되면 '점수' 변수에 있는 값에 +1을 해서 다시 저장하라고 명령합니다.


사용자가 위쪽 방향 버튼을 클릭해서 '점수' 변수 값은 이제 1이 됐습니다.

그 순간에도 '글상자' 오브젝트는 계속 점수 변수의 값을 가져가서 쓰고 있습니다.

점수 변수의 값이 1이 되서 글상자 오브젝트에 써지는 숫자도 1이 됐습니다.


  1. 사용자가 위쪽 방향 버튼을 클릭
  2. 위쪽 방향 버튼이 '점수 변수에 1 만큼 더하기' 명령 실행
  3. 점수 변수 값 1 저장
  4. 글상자 오브젝트의 '점수값 으로 글쓰기' 명령 실행
  5. 글상자 오브젝트에 표시되는 글자 1로 바뀜


이런 과정이 됩니다.

변수를 통해서 위쪽 방향 버튼을 클릭했을 때, 글상자 오브젝트의 숫자가 1 올라가게 된거죠.





이렇게 여러 오브젝트가 하나의 변수값을 바라보고 각자 맡은 일을 하면서 어떤 기능이 완성됩니다.

변수는 오브젝트끼리 정보를 전달해 주는 도구가 되는 것이죠.


이번 예제는 변수의 가장 간단한 사용방법입니다.


복잡한 기능에서 변수가 2개, 3개로 늘어나면 이해가 어려울 수 있으니, 1개짜리 이 과정을 잘 이해해 보세요.










댓글

로그인 후 댓글을 남길 수 있습니다.