์ด๋ฒ์๋ ์บ๋ฆญํฐ๋ฅผ ๋ง๋ค์ด์ ์ ๋๋ฉ์ด์ ์ํค๊ณ ์ด๋ํ๋๊ฑธ ๊ตฌํํด๋ด
http://aaaga.dothome.co.kr/rpg/index.html
์ฌ๊ธฐ๋ก ์ ์ํ๋ฉด ์์ ์ย ๊ฒฐ๊ณผ๋ฅผ ๋ณผ์ ์์ด
์ด๊ฑด ์ฌ๊ธฐ์ ์ฌ์ฉํ img.png ํ์ผ ๋ด์ฉ์
์ด์ ย main.js ๋ด์ฉ์ ์ค๋ช ํด์ค๊ฒ
enchant(); // enchat.js ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์์ํ๋ค๋ ๋ป์
window.onload = function(){ // ์ด ์์ ์๋ ๋ด์ฉ์ ๋ฐ๋ผ ๊ฒ์ ๋ด์ฉ์ด ๋ฐ๋ { ๊ดํธ๊ฐ ์ด๋ ค์์ผ๋ ์ ์ผ ์๋์ชฝ์ }๋ก ๊ผญ ๋ซ์์ค์ผํจ.
var core = new Core(160, 160); // ์ด๋ถ๋ถ์ ๊ฒ์ํ๋ฉด์ ํฝ์ ํฌ๊ธฐ๋ฅผ ๋งํ๋ ๊ฑฐ์ ๊ฒ์ํ๋ฉด์ ์ ์ ๊ฐฏ์๊ฐ ๊ฐ๋ก๋ก 160๊ฐ ์ธ๋ก๋ก 160๊ฐ ๋ค์ด๊ฐ๋ค๋ ๋ป
core.preload ('img.png'); // ๊ฒ์์ด ์์ํ๊ธฐ ์ ์ ๋ฉ๋ชจ๋ฆฌ์ img.png ๋ผ๋ ํ์ผ์ ๋ถ๋ฌ๋๋๋ค๋ ๋ป.
core.onload = function(){ // ๋ณธ๊ฒฉ์ ์ผ๋ก ๊ฒ์์ด ์์ํ๋ฉด ์ด ์์ ์๋ ๋ด์ฉ๋ค์ด ์คํ๋จ { ๊ดํธ๊ฐ ์ด๋ ค์์ผ๋ ๋์ค์ }๋ก ๊ผญ ๋ซ์์ค์ผํจ
core.rootScene.backgroundColor = 'yellow'; // core์ ๋ฐฐ๊ฒฝ์ ๋ ธ๋๊ฒ ๋ฐ๊ฟ์ค. ๊ทผ๋ฐ ์ง๊ธ ์ํฉ์์๋ ์์ด๋ ๋ฌด๋ฐฉํด ๊ฒ์ ํ๋ฉด์ ๋ค๋ฅธ ์ค๋ธ์ ํธ๊ฐ ๊ฐ๋ฆฌ๊ณ ์์ผ๋๊น
var label = new Label('์๋ ์ธ๊ณ!') // label ์ด๋ผ๋ ์ด๋ฆ์ ๊ฐ์ง ์ค๋ธ์ ํธ๋ฅผ ๋ง๋ฌ. ํ ์คํธ๋ฅผ ํํํ๊ณ ๋ด์ฉ์ ์๋ ์ธ๊ณ! ์
var sprite = new Sprite(16,16); // sprite ๋ผ๋ ์ด๋ฆ์ ๊ฐ์ง ์ค๋ธ์ ํธ๋ฅผ ๋ง๋ฌ. ๊ทธ๋ฆผ์ ํํํ๊ณ ํฌ๊ธฐ๋ 16x16ํฝ์ ์
sprite.image = core.assets['img.png']; // sprite์ ์ฐ์ผ ๊ทธ๋ฆผ ํ์ผ์ ์ง์ ํด์ค ์๊น ๋ฉ๋ชจ๋ฆฌ์ ๋ฏธ๋ฆฌ ๋ถ๋ฌ๋จ๋ img.png ํ์ผ์
sprite.moveTo(16, 16); // sprite๋ฅผ ๊ฐ๋ก 16 ์ธ๋ก 16 ์์น๋ก ์ฎ๊ฒจ๋์
sprite.frame = [0,0,0,0,3,3,3,3]; // sprite๋ฅผ ์ ๋๋ฉ์ด์ ์ํด 0๋ฒ ๊ทธ๋ฆผ์ 4๋ฒ๋์ด๋ค์๋ 3๋ฒ ๊ทธ๋ฆผ์ 4๋ฒ๋์ฐ๊ณ ๋ค์ ๋ฐ๋ณต
var up = new Sprite(16, 16); // up ์ด๋ผ๋ ์ด๋ฆ์ ๊ฐ์ง ์ค๋ธ์ ํธ๋ฅผ ๋ง๋ฌ. ๊ทธ๋ฆผ์ ํํํ๊ณ ํฌ๊ธฐ๋ 16x16 ํฝ์ ์
up.image = core.assets['img.png']; // up์ ์ฐ์ผ ๊ทธ๋ฆผ ํ์ผ์ ์ง์ ํด์ค ์๊น ๋ฉ๋ชจ๋ฆฌ์ ๋ฏธ๋ฆฌ ๋ถ๋ฌ๋จ๋ img.png ํ์ผ์
up.moveTo(32, 112); // up์ ์์น๋ฅผ ํด๋น ์ขํ๋ก ์ฎ๊น
up.frame = 4; // up์ ๊ทธ๋ฆผ์ 4๋ฒ ๊ทธ๋ฆผ์ผ๋ก ๋ฐ๊ฟ
up.opacity = 0.3; // up์ ํฌ๋ช ๋๋ฅผ 30%๋ก ๋ฐ๊ฟ
up.on('touchstart',function(){sprite.moveBy(0,-16);}); //up์ ํฐ์นํ์๋ sprite๋ฅผ ์๋ก 16ํฝ์ ๋งํผ ์ด๋์ํด
var down = new Sprite(16, 16); // down ์ด๋ผ๋ ์ด๋ฆ์ ๊ฐ์ง ์ค๋ธ์ ํธ๋ฅผ ๋ง๋ฌ. ๊ทธ๋ฆผ์ ํํํ๊ณ ํฌ๊ธฐ๋ 16x16 ํฝ์ ์
down.image = core.assets['img.png']; // down์ ์ฐ์ผ ๊ทธ๋ฆผ ํ์ผ์ ์ง์ ํด์ค ์๊น ๋ฉ๋ชจ๋ฆฌ์ ๋ฏธ๋ฆฌ ๋ถ๋ฌ๋จ๋ img.png ํ์ผ์
down.moveTo(32, 144); // down์ ์์น๋ฅผ ํด๋น ์ขํ๋ก ์ฎ๊น
down.frame = 4; // down์ ๊ทธ๋ฆผ์ 4๋ฒ ๊ทธ๋ฆผ์ผ๋ก ๋ฐ๊ฟ
down.rotate(180); // down์ ๊ทธ๋ฆผ์ 180๋ ํ์ ์ํด
down.opacity = 0.3; // down์ ํฌ๋ช ๋๋ฅผ 30%๋ก ๋ฐ๊ฟ
down.on('touchstart',function(){sprite.moveBy(0,16);}); //down์ ํฐ์นํ์๋ sprite๋ฅผ ์๋๋ก 16ํฝ์ ๋งํผ ์ด๋์ํด
var left = new Sprite(16, 16); // left ๋ผ๋ ์ด๋ฆ์ ๊ฐ์ง ์ค๋ธ์ ํธ๋ฅผ ๋ง๋ฌ. ๊ทธ๋ฆผ์ ํํํ๊ณ ํฌ๊ธฐ๋ 16x16 ํฝ์ ์
left.image = core.assets['img.png']; // left์ ์ฐ์ผ ๊ทธ๋ฆผ ํ์ผ์ ์ง์ ํด์ค ์๊น ๋ฉ๋ชจ๋ฆฌ์ ๋ฏธ๋ฆฌ ๋ถ๋ฌ๋จ๋ img.png ํ์ผ์
left.moveTo(16,128); // left์ ์์น๋ฅผ ํด๋น ์ขํ๋ก ์ฎ๊น
left.frame = 4; // left์ ๊ทธ๋ฆผ์ 4๋ฒ ๊ทธ๋ฆผ์ผ๋ก ๋ฐ๊ฟ
left.rotate(270); // left์ ๊ทธ๋ฆผ์ 270๋ ํ์ ์ํด
left.opacity = 0.3; // left์ ํฌ๋ช ๋๋ฅผ 30%๋ก ๋ฐ๊ฟ
left.on('touchstart',function(){sprite.moveBy(-16,0);}); //left๋ฅผ ํฐ์นํ์๋ sprite๋ฅผ ์ผ์ชฝ์ผ๋ก 16ํฝ์ ๋งํผ ์ด๋์ํด
var right = new Sprite(16, 16);; // right ๋ผ๋ ์ด๋ฆ์ ๊ฐ์ง ์ค๋ธ์ ํธ๋ฅผ ๋ง๋ฌ. ๊ทธ๋ฆผ์ ํํํ๊ณ ํฌ๊ธฐ๋ 16x16 ํฝ์ ์
right.image = core.assets['img.png']; // right์ ์ฐ์ผ ๊ทธ๋ฆผ ํ์ผ์ ์ง์ ํด์ค ์๊น ๋ฉ๋ชจ๋ฆฌ์ ๋ฏธ๋ฆฌ ๋ถ๋ฌ๋จ๋ img.png ํ์ผ์
right.moveTo(48,128); // right์ ์์น๋ฅผ ํด๋น ์ขํ๋ก ์ฎ๊น
right.frame = 4; // right์ ๊ทธ๋ฆผ์ 4๋ฒ ๊ทธ๋ฆผ์ผ๋ก ๋ฐ๊ฟ
right.rotate(90); // right์ ๊ทธ๋ฆผ์ 180๋ ํ์ ์ํด
right.opacity = 0.3; // right์ ํฌ๋ช ๋๋ฅผ 30%๋ก ๋ฐ๊ฟ
right.on('touchstart',function(){sprite.moveBy(16,0);}); //right๋ฅผ ํฐ์นํ์๋ sprite๋ฅผ ์ค๋ฅธ์ชฝ์ผ๋ก 16ํฝ์ ๋งํผ ์ด๋์ํด
var map = new Map(16, 16); //map์ด๋ผ๋ ์ด๋ฆ์ ๊ฐ์ง ์ค๋ธ์ ํธ๋ฅผ ๊ฐ์ง ํ์ผ์ ์ด์ฉํด ๋ง๋ ๋งต์ ํํํจ ํ์ผ๋งต ํ์นธ์ ํฌ๊ธฐ๋ 16px
map.image = core.assets['img.png']; //map์ ์ฐ์ผ ๊ทธ๋ฆผ ํ์ผ์ ์ง์ ํด์ค ์๊น ๋ฉ๋ชจ๋ฆฌ์ ๋ฏธ๋ฆฌ ๋ถ๋ฌ๋จ๋ img.png ํ์ผ์
map.loadData([[2,2,2,2,2,2,2,2,2,2], //๋งต์ ๋ฐฐ์น. 2๋ฒ ๊ทธ๋ฆผ๊ณผ 1๋ฒ ๊ทธ๋ฆผ์ ์ฌ์ฉํด์ ๋ชจ์๊ณผ ๊ฐ์ด ๋ฐฐ์นํจ
[2,1,1,1,1,1,1,1,1,2],
[2,1,1,1,1,1,1,1,1,2],
[2,1,1,1,1,1,1,1,1,2],
[2,1,1,1,1,1,1,1,1,2],
[2,1,1,1,1,1,1,1,1,2],
[2,1,1,1,1,1,1,1,1,2],
[2,1,1,1,1,1,1,1,1,2],
[2,1,1,1,1,1,1,1,1,2],
[2,2,2,2,2,2,2,2,2,2]]);
core.rootScene.addChild(map); // ๊ฒ์ํ๋ฉด์ ์์ ์ค์ ํ map์ ๋ณด์ฌ์ค
core.rootScene.addChild(label);
core.rootScene.addChild(sprite);
core.rootScene.addChild(up);
core.rootScene.addChild(down);
core.rootScene.addChild(left);
core.rootScene.addChild(right);
}; // ์์ core.onload = function(){ ๋ฅผ ๋ง์น๋ ๊ดํธ
core.start(); // ์์ ์ค์ ํ๋๋ก ๊ฒ์์ ์คํํจ}; // ์์ window.onload = function(){ ๋ฅผ ๋ง์น๋ ๊ดํธ
๋ณด๋ผ์์ ๊ฒ์์ ์์ํ๊ธฐ ์ ์ ๋ฏธ๋ฆฌ ์ค์ ํ๋ ๋ด์ฉ์ด์ผ.
๋นจ๊ฐ์ ์์ ์๋ ๋ถ๋ถ์ ์คํํ๊ฒ ๋๋๊ฑฐ์
์ด๋ก์์ ๊ฐ์์ ์ค๋ธ์ ํธ๋ฅผ ์ค์ ์ ํ๋๊ฑฐ์
๊ฒ์์์ ๊ทธ ์ค๋ธ์ ํธ๋ฅผ ๋ณด์ฌ์ค
๊ธ์จ๋ก ๋์ด์์ด์ ๊ฐ ๋ด์ฉ์ด ๋ฌด์์ธ์ง ์ ์ดํด๊ฐ ์๋ ์ ์์ด
๊ทธ๋ ์ง๋ง ๋ฉ๋ชจ์ฅ์ ๋์๋๊ณ ๋ฐ๊พธ๊ณ ์ ์ฅํ๊ณ ๋ธ๋ผ์ฐ์ ๋ฅผ ์๋ก๊ณ ์นจ ํ๋๊ฑธ ๋ฐ๋ณตํ๋ฉด์
ํด๋น ๋ด์ฉ์ด ๋ญ ๋ปํ๋์ง ๊นจ๋ณ์ผ๋ฉด ์ฝ๊ฒ ๋ฐฐ์ธ ์ ์์๊ฑฐ๋ผ ์๊ฐํจ
์ด๋ฉ๋ ํ๋ฃจ๋ง์ ์ดํดํ๋ ๋ด์ฉ์ด๋๊น ์๋ฌด๊ฒ๋ ๋ชจ๋ฅด๋ ๊ฐค๋ผ๋ค๋ ์ด์ ๋ ๋ด์ฉ์ ์กฐ๊ธ๋ง ์ง์คํด์ ๋ณด๊ณ
์๋ก๊ณ ์นจํ๋ฉด์ ๋ญ๊ฐ ๋ณํ๋์ง ์คํํด๋ณด๋ฉด ๊ธ๋ฐฉ ๊นจ๋ณ์๊ฑฐ๋ผ ์๊ฐํจ
๋ณด์ด๊ธฐ๋ ๋ฌด์จ ํ๋ก๊ทธ๋๋ฐ ์ฒ๋ผ ๋ณด์ด๋๋ฐ ์์งํ ์ด๊ฑธ ํ๋ก๊ทธ๋๋ฐ์ด๋ผ๊ณ ํ๊ธฐ๋ ๋ฏผ๋งํจ ใ ใ ใ ใ ใ ใ
๋ด์ผ์ ์ข๋ ๋ํ ์ผํ ๋ถ๋ถ์ ์ค์ ํด๋ณด๋๊ฑธ๋ก ํ ๋ฏ
๋๊ธ 0