4.1. 이동 방향으로 (숫자) 만큼 움직이기4.2. 화면 끝에 닿으면 튕기기4.3. x좌표를 (숫자) 만큼 바꾸기4.4. y좌표를 (숫자) 만큼 바꾸기4.5. (숫자1) 초 동안 x:(숫자2) y:(숫자3) 만큼 움직이기4.6. x (숫자) 위치로 이동하기4.7. y (숫자) 위치로 이동하기4.8. x(숫자1) y(숫자2) 위치로 이동하기4.9. (숫자)초 동안 x:(숫자2) y:(숫자3) 위치로 이동하기4.10. <오브젝트> 위치로 이동하기4.11. (숫자) 초 동안 {<오브젝트>/마우스포인터} 위치로 이동하기4.12. 방향을 (숫자) 만큼 회전하기4.13. 이동 방향을 (숫자) 만큼 회전하기4.14. (숫자) 초 동안 방향을 (숫자2)만큼 회전하기4.15. (숫자) 초 동안 이동 방향을 (숫자2) 만큼 회전하기4.16. 방향을 (숫자)로 정하기4.17. 이동 방향을 (숫자)로 정하기4.18. {<오브젝트>/마우스포인터}쪽 바라보기4.19. (숫자) 방향으로 (숫자2) 만큼 움직이기
5.1. 모양 보이기5.2. 모양 숨기기5.3. (글자)를 (숫자)초 동안 말하기/생각하기5.4. (글자)를 말하기/생각하기5.5. 말하기 지우기5.6. <모양>모양으로 바꾸기5.7. {색깔/밝기/투명도} 효과를 (숫자)만큼 주기5.8. {색깔/밝기/투명도} 효과를 (숫자)로 정하기5.9. 효과 모두 지우기5.10. 크기를 (숫자) 만큼 바꾸기5.11. 크기를 (숫자)로 정하기5.12. 상하 모양 뒤집기5.13. 좌우 모양 뒤집기5.14. {맨 앞으로/앞으로/뒤로/맨 뒤로}보내기
8.1. 소리 <소리> 재생하기8.2. 소리 <소리> (숫자) 초 재생하기8.3. 소리 <소리> (숫자) 초 부터 (숫자) 초까지 재생하기8.4. 소리 <소리> 재생하고 기다리기8.5. 소리 <소리> (숫자) 초 재생하기8.6. 소리 <소리> (숫자) 초 부터 (숫자) 초까지 재생하고 기다리기8.7. 소리 크기를 (숫자)% 만큼 바꾸기8.8. 소리 크기를 (숫자)% 로 정하기8.9. 모든 소리 멈추기
시작하기 버튼을 클릭하면 연결된 코드를 실행하는 가장 기본적인 코드. 이걸로 대부분의 코드를 시작시킬 수 있다. 단 새로운 장면으로 넘어갈 경우 이 코드가 실행이 안 되니 장면을 넘길 경우에는 장면이 시작되었을때 코드를 사용해야 한다.
#!syntax python
def when_press_key("<키코드>"):
<키코드>에 입력된 키를 눌렀을 경우 연결된 코드를 실행한다.
이 코드로 대부분의 조작을 하게 할 수 있으며 가능한 키코드는 위쪽 화살표, 아래쪽 화살표, 왼쪽 화살표, 오른쪽 화살표, 스페이스바, enter, ctrl, shift[2], alt, tab, esc, back-space, 숫자 0~9, 알파벳 a~z다.
예전에는 엔트리에서 ctrl, shift, alt, tab, esc, back-space를 쓸 수 없었다. 다만 이것은 많이 쓸 경우 오류가 생기기 때문에 만약 코드가 더 자주 이용된다.
ex) w키를 눌러 y 좌표를 5 움직이게 하고 싶을 때:
#!syntax python
def when_click_mouse_on():
마우스로 화면의 아무 곳이나 클릭했을 때[주의][모든_클릭] 연결된 코드를 실행한다.
이 코드는 엔트리로 시뮬레이션 게임 혹은 노가다 게임을 만들때 많이 쓰인다. 또한 모바일에서도 터치하면 인식되기 때문에 모바일에서도 실행 가능한 작품을 만들 수 있다.
#!syntax python
def when_click_mouse_off():
마우스로 화면의 아무 곳이나 클릭 후 떼면[주의][모든_클릭] 연결된 코드를 실행한다.
마우스를 떼면 코드가 아래 코드가 실행되며, 꾹 눌러서 연결된 코드를 연속적으로 실행하는 것을 막을 수 있다.
#!syntax python
def when_click_object_on():
마우스로 오브젝트를 클릭했을 때 연결된 코드를 실행한다.
#!syntax python
def when_click_object_off():
마우스로 오브젝트를 클릭하고 해제했을 때 연결된 코드를 실행한다.
#!syntax python
def when_get_signal(<신호이름>):
<신호이름>신호를 받았을 때 연결된 코드를 실행한다.
특정 신호를 받았을 때 아래에 연결된 코드를 실행하는 코드이다. 다른 오브젝트끼리 서로 신호를 주고받을 때 많이 쓰인다. 만든 신호가 하나도 없을때 이 코드를 사용하면 오류가 걸리니 주의하자.또한 다른 장면끼리는 서로 신호를 주고받을 수 없다.신호를 받는 대상이 여러 개여도 된다.
이 코드가 실행되면 <신호이름> 신호를 보낸다. <신호이름>신호를 받았을 때 코드와 마찬가지로 신호를 주는 대상이 여러 개여도 된다.
<신호이름> 신호를 보내고 기다리기 블럭은 해당 신호에 의해 실행된 모든 코드들이 실행 완료될 때까지 대기한다. 유저들이 모양 바꾸기 코드와 함께 애용하는 경고 발생 코드다.
#!syntax python
def when_start_scene():
해당 장면이 시작되었을때 아래에 있는 코드를 실행시킨다. 장면이 하나일때는 시작하기 버튼을 클릭했을 때 코드를 사용해도 문제될 것이 없지만 장면이 2개 이상인 경우 <장면>장면 시작하기를 이용해 다른 장면으로 넘어갔을 경우에는 '시작하기 버튼을 클릭했을 때'코드가 실행되지 않는다.따라서 이 코드가 필요하다.간혹 시작한 장면을 다시 실행해야 하는 경우가 있기 때문에 시작 장면에도 이 코드를 붙이는 경우가 많다.
#!syntax python
Entry.start_scene(<장면>)
해당 장면을 시작할 때 쓰인다. 다른 장면 시작 코드로는 '{다음/이전}장면 시작하기'가 있지만 앞, 뒤 장면만 가능하다는 점에서 이 코드가 더 많이 쓰인다.
#!syntax python
Entry.start_scene_of({next/prev})
다음 장면 또는 이전 장면을 실행시킨다.그러나 '<장면>장면 시작하기'를 쓰는 것이 대부분의 경우 더 편리하다는 점때문에 많이 쓰이지는 않는다.
(숫자)번 코드를 반복한다.[8] (숫자)에 음수를 적으면 실행시 오류가 난다.
* 계속 반복하기 () -
코드명
계속 반복하기 () -
이미지
특징
'반복 중단하기'코드를 쓰지 않는 이상 무한히 끼워져 있는 코드를 반복한다.
엔트리파이선
while true:
안에 들어간 코드를 계속 반복하는 코드.
<판단>{이 될 때까지/인 동안} 반복하기 () -
코드명
<판단>{이 될 때까지/인 동안} 반복하기 () -
이미지
특징
'이 될 때까지'인 경우 <판단>이 참이 될 때까지 끼워져 있는 코드를 반복한다
'인 동안'인 경우 <판단>이 거짓이 될 때까지 끼워져 있는 코드를 반복한다
엔트리파이선
while not <판단> / while <판단>
'<판단>이 될 때까지 기다리기'코드와 비슷하다. 차이점은 '<판단>{이 될 때까지/인 동안} 반복하기 () - '는 기다리는 동안 무엇을 할 수 있다는 것이다.
반복 중단하기
코드명
반복 중단하기
이미지
특징
이 블록을 감싸는 가장 가까운 반복 블록의 반복을 멈춘다
엔트리파이선
break
만일 <판단>(이)라면 () -
코드명
만일 <판단>(이)라면 () -
이미지
특징
만약 <판단>이 참이라면 감싸는 코드를 실행시킨다
엔트리파이선
if True:
만일<판단>(이)라면 () 아니면 () -
코드명
만일<판단>(이)라면 () 아니면 () -
이미지
특징
만약 <판단>이 참이라면 '만일 <판단>이라면'과 '아니면' 사이의 감싸는 코드를 실행시킨다. 거짓이라면 '아니면'과 -사이의 코드를 실행시킨다.
엔트리파이선
if True:
else:
만일 <판단>(이)라면 () - 코드를 2개 이어붙이고 만일 p라면과 만일 ~p라면으로 만드는 것과의 차이점은 '만일 p라면'이 만족되었을 경우 감싸는 코드를 실행시켜 ~p가 참이되게 해서 만일 ~p라면 코드까지 실행시키는 경우가 있는데 이 코드는 둘 중에 하나만 실행시킨다.
<판단>이 {될 때까지/인 동안} 기다리기
코드명
<판단>이 될 때까지 기다리기
이미지
특징
<판단>이 참이 될 때까지 기다린다.
엔트리파이선
Entry.wait.until({True/false})
<판단>{이 될 때까지/인 동안} 반복하기 ()- 코드와 유사하다. 하지만 이 코드는 주어진 동안 아무 반복도 하지 않는다.
자주 쓰는 코드를 이 블록 아래에 조립하여 함수로 만듭니다. '함수 정의하기'의 오른쪽 빈칸에 '이름'을 조립하여 함수의 이름을 정할 수 있습니다. 함수를 실행하는데 입력값이 필요한 경우 빈칸에 '문자/숫자값' '판단값'을 조립하여 매개변수로 사용합니다. -엔트리 블록 도움말
함수는 함수 분류 코드 목록에서 정의할 수 있다. 정의한 후 아래에 코드를 붙일 수 있는데 그러면 정의된 함수는 아래에 붙인 코드가 된다.
함수 이름 뒤에 추가할 수 있는 블록이 3개 있다.
이름
여기에 써넣은 텍스트는 함수의 이름이 된다. 그냥은 필요없고 이름과 이름 사이에 다른 추가 블록을 넣을 때 쓰인다
문자/숫자값
함수 안에서의 변수라고 할 수 있다. 이 블록을 끼워넣은 후 원형 부분만 함수의 실제 코드에 넣으면 그대로 적용된다.
함수안에 해당함수를 넣어서 무한히 작동되는 함수
'계속반복하기'나 '( )번 반복하기'는 한번 코드를 작동시킬때마다 1프레임씩 걸리기 때문에 빠른 계산이 힘들다,[20]
이와 달리 재귀함수를 통해 반복시키면 모든 작동이 1프레임만에 작동되어 빠른계산이 가능하다. 업데이트로 함수의 호출횟수가 약 1500회가 되면 튕기기때문에 변수를 만들어서 호출횟수가 1500회가 되면 멈추게 하는것이 좋다.
몇몇 유저들이 직접 블록을 만들기도 한다.
js코드를 작성하여 개발자 도구(콘솔)에 입력하는 형식이다.
2021년 3월 엔트리 리뉴얼 이후 대부분의 비공식 블록이 호환성 문제가 발생했다. 리뉴얼 이후 엔트리 관련 링크들이 대부분 변경되어 게시판에 글 올리기, 엔트리 커뮤니티에 검색하기 등의 블럭들이 실행해도 오류가 난다. 그나마 나중에 특급 블럭에서 바뀐 엔트리 API를 사용하는 블록 몇 개가 추가되었다.
그런데 또 문제가 생긴게, 엔트리 작품 만들기 화면에서는 정상적으로 비공식 블록 로드가 잘 되는데 작품 보기 화면에서 Entry 객체 사용이 막힌 이후, 작품 보기 화면에서는 로드하면 페이지가 멈춰버리는 문제가 발생한다.
리포지토리 링크 엔트리 최초의 비공식 블록이다. 장점:
MIT License가 적용되어 있어 이 블록을 기반으로 다른 비공식 블록을 제작할 수 있다. 단점: 몇 개월 째 업데이트가 진행되지 않고 있어서 오류가 난 블록은 사용이 불가능하다.
2022년 7월 5일 기준 현재 삭제되었다. 많은 유저들이 이 블록을 기반으로 비공식 블록을 만들었는데 삭제되었다. 그나마 삭제되기 전 마지막 버전이였던 2.2 버전의 블록들이 거의 대부분 특급 블럭에 들어가있다.
리포지토리 링크 장점: 대형화면 만들기, 붓의 색을 16진수 RGB로 정하기 등 다른 비공식 블록에는 찾아보기 힘든 블럭이 있다. 단점: 다른 비공식 블록에는 없는 코드 위주이고, 블록이 많지 않아서 단독으로 사용하여 작품을 만들기 어렵다. 또한 버전을 알 수 없다.
2022년 7월 5일 기준 현재 삭제되었다.
리포지토리 링크
README 링크
장점: 무려 47개의 블록이 있어 한때 블록이 가장 많기로 유명했던 스페셜 블록의 32개를 넘은 개수이다. 그리고 GET 가져오기를 String 형식으로 변환, 클립보드에 복사하는 등의 코드가 내장되어 있다.
단점: 4.5.2버전까지 Danger Blocks 목록의 블록이 경고창 없이 바로 실행되어 논란이 되어 사용량이 줄어들었다. 제작자는 5.0 업데이트에 경고창을 추가하였다. 그리고 특정 유저의 기본 학급을 가져오는 코드까지 있어 유저들의 악용 가능성이 높다[23]
이외에도 종류가 다양하다. 기본적으로
JavaScript만 알면 쉽게 만들수 있어서 그렇다. 잘하면 버그 코드를 만들 수 있다[24] 비공식 블록도 저장이 된다. 다만, 코드 보기, 작품 보기 화면에서 사용했던 비공식 블록을 다시 로드해야 한다.
[1]
이 블록을 말한다
[2]
이 경우에 왼쪽/오른쪽 시프트 모두 적용된다.
[주의]
단 플레이 화면 밖을 클릭하는 경우는 제외한다.
[모든_클릭]
마우스의 모든 클릭을 인식한다. 뒤로 가기, 앞으로 가기, 왼쪽/오른쪽 클릭을 인식한다.
[주의]
단 플레이 화면 밖을 클릭하는 경우는 제외한다.
[모든_클릭]
마우스의 모든 클릭을 인식한다. 뒤로 가기, 앞으로 가기, 왼쪽/오른쪽 클릭을 인식한다.
[주의사항1]
참고로 엔트리가 블록코딩이라 그런지 많이 느려 한 코드를 실행하는데 0.01~0.02초정도 걸린다.이 시간이 평소에는 큰 영향을 주지 않을 수 있지만 매우 짧은 시간을 기다릴 때는 영향을 상당히 주기 때문에 주의하자. 참고로 이 점을 역이용해 0.0초를 입력할수도 있다.
[8]
(숫자)에 수가 아닌것을 입력하면 '계속 반복하기 () -'코드와 같은 효과를 보인다. 반복할때마다 수가 1씩 증가하고 만일 그 수에 다다르면 종료하는 방식인데 텍스트를 입력하면 그 텍스트에 영원히 다다를수 없어 발생하는 문제.
[9]
그 외에는 아무 코드도 받지 못한다
[10]
자기 자신이 복제본이 아닐 경우
아무 일도 일어나지 않는다
[11]
엔트리에는 생성할 수 있는 복제본 수가 약 360개정도 된다. 이 수치를 넘어버리면 더이상 생성되지 않는다
[12]
단위 '1이동방향'은 'x 좌표 1'과 길이가 같다.
[자세한내용]
아래쪽 벽은 -90도, 위쪽 벽은 90도,왼쪽 벽과 오른쪽 벽은 180-(이동방향)이다.
[14]
이는 n번 반복하기 블록에 있는 숫자을 넣는 부분과 동일한 모양이다
[15]
{a,b,c....}형식은 서술된 코드 작성법과 맞지 않지만 '/'은 나눗셈을 의미해서 {a/b/c...}형식으로 하면 혼동될 수 있어 이 방법을 사용한다
[연산목록]
제곱/루트/사인값/코사인값/탄젠트값/아크사인값/아크탄젠트값/로그값/자연로그값/소수점 부분/소수점 버림값/소수점 올림값/소수점 반올림값/팩토리얼값
[연산목록]
제곱/루트/사인값/코사인값/탄젠트값/아크사인값/아크탄젠트값/로그값/자연로그값/소수점 부분/소수점 버림값/소수점 올림값/소수점 반올림값/팩토리얼값
[18]
리뉴얼 이전에는 닉네임이 없고 아이디만 있었다.
[19]
(글자) 부분에 띄어쓰기을 한 공백은 오류가 발생하지 않는다.
[20]
평균프레임이 약 64FPS 이니 딜레이는 0.015625초정도 된다.
[21]
2022-07-05 기준, 제작자의 리포지토리, 엔트리 커뮤니티 글 참고하여 넣음
[업데이트중단]
더 이상 업데이트되지 않는 블럭
[23]
지금은 작동하지 않는다.
[24]
리뉴얼 전 한 유저가 실행하면 정지할 수 없는 버그 코드를 만들어서 인작에 올랐다. 후에 이 유저는 영구정지 되었다.