리버티게임:자바스크립트 게임 만들기

리버티게임, 모두가 만들어가는 자유로운 게임
리버티게임의 정책과 지침
대원칙
가이드라인
절차
사용자

리버티게임의 모든 정책과 지침 보기

단축:
버:JS,
버:자스,
버:스크립트,
버:자바스크립트


게임을 만들다가 위키 엔진의 한계를 느끼셨나요? 플래시 없이 돈슨 수준의 게임을 만들고 싶으신가요? 그렇다면 자바스크립트를 만나보세요! 자바스크립트 하나로 미디어위키와 웹의 모든 기능을 활용하실 수 있으며, 심지어는 돈슨은 물론이고 당신이 아는 수많은 게임에서도 활용하고 있는 상용 엔진도 지원합니다! 정말 놀랍지 않나요? 자바스크립트를 사용해 리버티게임에서 상상을 초월하는 어마어마한 게임을 한번 만들어 보세요!

게임 만들기의 기초[원본 편집]

이 부분의 본문은 리버티게임:게임 만들기입니다.

로딩 시스템[원본 편집]

리버티게임에서 자바스크립트를 로드하는 시스템은 여러 가지가 있습니다.

  • 플러그인: 자바스크립트에 대한 설명이 잘 되어있어 플러그인을 사용하지 않더라도 읽어보는 것을 추천합니다.
  • pluginX
  • 소도구

브라우저 개발자 도구[원본 편집]

대부분의 데스크톱 브라우저에는 F12를 눌러 개발자 도구를 띄울 수 있습니다. 개발자 도구에는 현재 화면에 존재하는 HTML 요소와 CSS 속성을 실시간으로 확인할 수 있고, 원본 소스 코드를 확인할 수 있으며 자바스크립트 코드를 직접 실행해볼 수 있습니다.

사용자 스크립트[원본 편집]

로딩 시스템을 통해서 스크립트를 페이지 로드와 함께 실행하는 것과 페이지가 모두 로딩되고 나서 개발자 도구를 통해 실행하는 것은 서로 다른 결과가 나올 수 있습니다. 특히 플러그인소도구 또는 미디어위키: 이름공간의 인터페이스 문서를 통해 실행되는 스크립트는 let, const, class, async, await, import, export 등 ES6 이후 문법이 지원되지 않습니다. 따라서 실제 환경과 유사한 환경에서 자기 자신에게만 영향을 주는 사용자 스크립트 문서를 활용해서 미리 테스트해보는 것이 권장됩니다.

사용자 스크립트는 .js 확장자로 끝나는 사용자 하위 문서예) 사용자:너/common.js로, 다음과 같은 종류가 있습니다.

  • /common.js: 모든 스킨에서 동작하는 스크립트로, 특별하지 않은 일반적인 상황에서는 이 문서를 사용합니다.
  • /(스킨명).js: 특정한 스킨에서만 동작되는 스크립트입니다. 리버티게임에서 사용 가능한 스킨의 종류는 리버티게임:스킨을 참고하세요.

미디어위키 인터페이스[원본 편집]

미디어위키에서는 미디어위키의 여러 기능을 자바스크립트로 활용하고 조정할 수 있도록 자바스크립트 인터페이스를 제공하고 있습니다. 대부분 mw 객체에 속해있습니다. 자세한 내용은 미디어위키 자바스크립트 코드 설명문서를 참고하세요.

타입스크립트[원본 편집]

타입스크립트를 활용해서 스크립트를 만들고 있나요? 그런 당신을 위해 리버티게임과 미디어위키의 타입을 미리 정의해둔 패키지가 있습니다!

통합 패키지[원본 편집]

  • 리버티게임 타입: 별도의 패키지가 없는 리버티게임의 전역 변수/상수 및 함수와 소도구 모듈의 타입입니다. 후술할 미디어위키 타입과 jQuery 타입이 포함되어 있습니다.
  • 미디어위키 타입: 미디어위키의 자바스크립트 전역 변수/상수 및 함수의 타입입니다. jQuery 타입이 포함되어 있습니다.

전용 패키지[원본 편집]

  • jQuery 타입: 미디어위키와 리버티게임에서 많이 활용하는 유명한 라이브러리인 jQuery의 타입입니다. 리버티게임 자체 변수/함수나 미디어위키 인터페이스를 사용하지 않지만 jQuery($)만 활용할 때 사용하세요.
  • OOUI 타입: 미디어위키에서 UI를 만드는 데 활용되는 표준 라이브러리인 OOUI의 타입입니다. 통합 패키지에 포함되어있지 않으므로 별도로 사용해야 합니다.
  • OOjs 타입: OOUI와 함께 사용되는 기반 라이브러리인 OOjs의 타입입니다. OOUI를 사용하는 경우 OOUI 타입에 포함되어 있으므로 별도로 설치할 필요가 없습니다.

도보시오[원본 편집]

  • mw:Manual:Coding conventions/JavaScript: 미디어위키 코어나 확장 기능에서 준수해야 하는 자바스크립트 코딩 규칙입니다. 리버티게임에서는 무조건 준수할 필요는 없지만, 참고하면 더 좋은 스크립트를 만들 수 있습니다.