CREATE YOUR WORLD
Scripting
Hello ZEPETOScript
12min
zepetoscript란 무엇인가요? zepetoscript는 zepeto world를 만들기 위해 사용되는 스크립팅 언어입니다 typescript 프로그래밍 언어를 지원합니다 zepetoscript는 zepeto world 내에서 행동과 기능을 정의하도록 설계되었습니다 포함된 내용은 객체의 이동, 물리학 및 상호작용 사용자 입력을 포함한 이벤트 처리 zepetoscriptbehaviour 클래스에서 상속되며, unity의 monobehaviour 인터페이스와 호환되도록 설계되었습니다 실행을 위해 장면의 활성 gameobjects에 부착할 수 있습니다 ❗️ 주의 zepeto world를 개발할 때 c# 스크립트는 패키지 빌드에 포함되지 않습니다 zepetoscript만 사용하여 구현해야 합니다 hello world 튜토리얼 1단계 zepetoscript 만들기 새로운 zepetoscript 파일을 만들기 위해, \[프로젝트]를 클릭하고 패널의 왼쪽 상단 모서리에 있는 \[+] 아이콘을 선택하거나 자산 → 생성 → zepeto → typescript를 클릭하세요 아래와 같이 새로운 zepetoscript가 생성된 것을 볼 수 있습니다 단계 2 zepetoscript를 gameobject에 추가하기 zepetoscript는 구성 요소로 gameobject에 첨부할 수 있으며, zepetoscript 파일을 gameobject로 드래그 앤 드롭하면 됩니다 👍 팁 구성 요소를 추가하려면 add component > zepeto script 옵션을 통해 추가할 수 있습니다 단계 3 테스트 코드 추가 또는 로그 출력 새로 생성된 zepetoscript는 아래에 표시됩니다 unity의 개발 도구를 사용하여 스크립트를 편집할 수 있습니다 newtypescript import { zepetoscriptbehaviour } from 'zepeto script'; export default class newtypescript extends zepetoscriptbehaviour { start() { } } start 함수 내에 로그 코드를 추가하여 zepetoscript가 작동하는지 테스트해 보세요 helloworld import { zepetoscriptbehaviour } from 'zepeto script'; export default class helloworld extends zepetoscriptbehaviour { start() { console log(`log hello world`); console warn(`warn hello world`); console error(`error hello world`); } } 아래의 테스트 코드 출력 화면을 확인하세요 zepetoscript 튜토리얼을 완료한 것을 축하합니다! 이전에 unity에서 c#으로 개발한 경험이 있는 분들이나 zepeto world 개발에 처음인 분들을 위해 zepetoscript의 기본을 살펴보겠습니다 zepetoscript에서 변수 선언하기 zepetoscript는 typescript 문법을 따릅니다 따라서 변수를 선언할 때 타입을 선언하는 것이 필수적입니다 변수 선언 예시 typescript import { zepetoscriptbehaviour } from 'zepeto script'; export default class hellozepetoscript extends zepetoscriptbehaviour { // 전역 변수 private number number = 10; private floatnumber number = 10 5; private word string = "zepeto!"; private istrue boolean = true; private list number\[] = \[1,2,3]; private listgeneric array\<number> = \[4,5,6]; start() { console log(this number); console log(this floatnumber); console log(`안녕하세요, ${this word}`); console log(this istrue); console log(this list); console log(this listgeneric); // 지역 변수 let a = 30; const b = 40; console log(a); console log(b); } } 맵 데이터 유형 사용하기 c#의 dictionary 데이터 유형 대신 typescript의 map 데이터 유형을 사용하여 키 값 쌍을 저장하고 관리하세요 이 데이터 유형은 멀티플레이어 월드를 구현할 때 플레이어 데이터를 관리하는 데 특히 편리합니다 map의 간단한 사용 예시 typescript import { zepetoscriptbehaviour } from 'zepeto script'; export default class hellozepetoscript extends zepetoscriptbehaviour { private mymap = new map\<string, string>(); start() { this mymap set("player1", "ze"); this mymap set("player2", "pe"); this mymap set("player3", "to"); this mymap foreach((value, key) => { console log(key, value); }); if(this mymap has("player2")) { let value string | undefined = this mymap get("player2"); console log(value); } this mymap delete("player2"); console log(this mymap has("player2")); } } json 활용하기 json 형식의 데이터로 작업할 때 typescript의 내장 함수를 사용할 수 있습니다 json 문자열을 객체로 변환하기 다음 사용 json parse() 메서드입니다 객체를 json 문자열로 변환하기 다음 사용 json stringify() 메서드입니다 json 활용 예시 typescript import { zepetoscriptbehaviour } from 'zepeto script'; export default class hellozepetoscript extends zepetoscriptbehaviour { start() { let jsondata = '{"id" "user1234", "name" "zepeto", "age" 15}'; // json 문자열을 객체로 변환하기 let userobject user = json parse(jsondata); console log(userobject id); console log(userobject name); console log(userobject age); userobject age = 16; // 객체를 json 문자열로 변환하기 let newjsondata = json stringify(userobject); console log(newjsondata); } } class user { constructor(public id string, public name string, public age number) {} } 자세한 구문은 typescript 문서를 참조하십시오 https //www typescriptlang org/docs/ https //www typescriptlang org/docs/