enchant.js ¤Î¥Ð¥Ã¥¯¥¢¥Ã¥×º¹Ê¬(No.1)



  • Äɲ䵤줿¹Ô¤Ï¤³¤Î¿§¤Ç¤¹¡£
  • ºï½ü¤µ¤ì¤¿¹Ô¤Ï¤³¤Î¿§¤Ç¤¹¡£
[[Programing]]

¤³¤³¤Ï¡¢enchant.js¤ò¤Ï¤¸¤á¤ë¤È¤­¤ËɬÍפʡ¢¤´¤¯¤´¤¯´ðËÜŪ¤Ê¥³¡¼¥ÉÎà¤Î¤Þ¤È¤á¤Ç¤¹¡£enchant.js¤ËÉÕ°¤Î¥µ¥ó¥×¥ë¤Î¥¢¥¯¥·¥ç¥ó¥²¡¼¥à(\examples\action)¤È¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à(\examples\shooting)¤Ê¤É¤ò²þÎɤ·¤Æ¤¤¤­¤Þ¤¹¡£

enchant.js¤Ï¡¢¥²¡¼¥à¥×¥í¥°¥é¥à¤òºî¤ë¤¿¤á¤Î¥é¥¤¥Ö¥é¥ê¥×¥í¥°¥é¥à¤Ç¤¹(¥²¡¼¥à¥¨¥ó¥¸¥ó¤È¤â¸À¤¦)¡£

HTML5¤ÈJavascript¤È¤¤¤¦µ»½Ñ¤Çºî¤é¤ì¤Æ¤¤¤Æ¡¢¥Ñ¥½¥³¥ó¤À¤±¤¸¤ã¤Ê¤¯¥¹¥Þ¡¼¥È¥Õ¥©¥ó¤ä¥¿¥Ö¥ì¥Ã¥È¤Ë¤âÂбþ¤·¤¿¥²¡¼¥à¤òºîÀ®¤Ç¤­¤Þ¤¹¡£

¤³¤³¤Ç¤Ï¡¢¾¯¤·¤º¤Ä¥³¡¼¥É¤òÊ£»¨¤Ë¤·¤Æ¤¤¤Ã¤Æ¡¢¥¯¥Þ¤¬Áö¤ê²ó¤ë¥²¡¼¥à¤ò´°À®¤µ¤»¤Þ¤¹¡£

-[[9leap : 30Éᢥê¥ó¥´½¸¤á¥²¡¼¥à by y_catch - ¤É¤³¤Ç¤âÍ·¤Ù¤ë¡¢Åê¹Æ·¿¥²¡¼¥à¥µ¥¤¥È:http://9leap.net/games/1126]]
-30Éô֤ǡ¢¤Ç¤­¤ë¤À¤±¤¿¤¯¤µ¤ó¥ê¥ó¥´¤ò½¸¤á¤Æ¤¯¤À¤µ¤¤¡£
-º¸±¦¤ÎÌð°õ¥­¡¼¤Ç¡¢¥¯¥Þ¤¬Áö¤ê¤Þ¤¹¡£
-º¸²¼¤Î½½»ú¥¨¥ê¥¢¤ò»È¤¦¤È¡¢¥Þ¥¦¥¹¥¯¥ê¥Ã¥¯(¥Ñ¥½¥³¥ó)¡¢¥¿¥Ã¥Á(¥¹¥Þ¡¼¥È¥Õ¥©¥ó)¤Ç¤âÁàºî¤Ç¤­¤Þ¤¹¡£

¤â¤¦¾¯¤·¥²¡¼¥à¤é¤·¤¯¤·¤¿¡£

-[[9leap : 30Éᢥê¥ó¥´½¸¤á¥²¡¼¥àPart2:http://9leap.net/games/1176]]

#ref(1176_140.gif)



#contents

*¥À¥¦¥ó¥í¡¼¥É [#yc6b9b9f]

-[[enchant.js - HTML5 + JavaScript Game Engine:http://enchantjs.com/ja/]]


*ɬÍפʥե¡¥¤¥ë [#b8f4e08f]

enchant.js¤«¤é¡¢¼¡¤Î¥Õ¥¡¥¤¥ë¤ò¼è¤ê½Ð¤·¤Þ¤¹¡£

¥¯¥Þ²èÁü(bear.gif)¤Ï¡¢²þÎɤ·¤Æ¤¤¤Þ¤¹¡£

- enchant.js¡§enchant.jsËÜÂÎ
- game.js¡§¥²¡¼¥à¤Î¥á¥¤¥ó¥×¥í¥°¥é¥à
- index.html¡§¥á¥¤¥ó¥×¥í¥°¥é¥à¤ò¸Æ¤Ó½Ð¤¹HTML¥Õ¥¡¥¤¥ë¡£¤³¤ì¤ò¥Ö¥é¥¦¥¶¤Ç³«¤¯
- bear.gif:²èÁü¥Õ¥¡¥¤¥ë

#ref(bear.gif)

* index.html [#nde0ff97]

¥²¡¼¥à¤ò¼Â¹Ô¤¹¤ë¤Ë¤Ï¡¢ index.html¤ò¥À¥Ö¥ë¥¯¥ê¥Ã¥¯¡£¤³¤³¤«¤é¡¢¥á¥¤¥ó¥×¥í¥°¥é¥à¤Ç¤¢¤ëgame.js¤ä¡¢¥é¥¤¥Ö¥é¥ê¤Ç¤¢¤ëenchant.js¤ò¸Æ¤Ó½Ð¤·¤Æ¤¤¤Þ¤¹¡£

 <!DOCTYPE html>
 <html>
     <head>
         <meta charset="utf-8">
         <meta name="viewport" content="width=device-width, user-scalable=no"> 
         <meta name="apple-mobile-web-app-capable" content="yes"> 
         <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
         <title>Sample Game</title>
         <script type="text/javascript" src="enchant.js"></script>
         <script type="text/javascript" src="game.js"></script>
         <style type="text/css">
             body {
                 margin: 0;
             }
         </style>
     </head>
     <body>
     </body>
 </html>

* game.js¤Î´ðËÜ¥³¡¼¥É [#b1f8a8b5]

¥²¡¼¥à¤Î¥á¥¤¥ó¥×¥í¥°¥é¥à¤Ç¤¢¤ëgame.js¤Î´ðËÜŪ¤Ê¹½À®¤ò½çÈ֤ˤߤƤ¤¤­¤Þ¤¹¡£

**²¿¤â¤·¤Ê¤¤¥³¡¼¥É [#z5168b76]

¤³¤ì¤¬¡¢´ðËÜ·Á¡£¤¤¤Á¤ª¤¦¡¢²èÁü¥Õ¥¡¥¤¥ë(bear.gif)¤òÆɤ߹þ¤ó¤Ç¤¤¤ë¤±¤ì¤Éɽ¼¨¤Ï¤·¤Ê¤¤¡£

²¼µ­¤Î¥Æ¥­¥¹¥È¤ògame.js¤È¤¤¤¦¥Æ¥­¥¹¥È¥Õ¥¡¥¤¥ë¤È¤·¤ÆÊݸ¤¹¤ë¡£¤½¤·¤Æ¡¢index.html¤ò¸Æ¤Ó½Ð¤¹¤È¡¢¥×¥í¥°¥é¥à¼Â¹Ô¡£

 enchant();
 
 window.onload = function() {
 	var game = new Game(320, 320); 	//¥²¡¼¥à²èÌ̤òÀßÄê
 	game.preload('bear.gif');	//²èÁü¥Õ¥¡¥¤¥ë¤òÆɤ߹þ¤ß
 
 	game.onload = function() {
 		//¡Ö{¡×¤È¡Ö}¡×¤Î´Ö¤Ë¡¢¥²¡¼¥à¤ÎÆ°ºî¤òµ­½Ò¤¹¤ë
 	}
 	game.start();
 }

**²èÁü¤ò¤¿¤Àɽ¼¨¤¹¤ë [#qb76c8e5]

Á°½Ò¤Î¥Õ¥¡¥¤¥ë¤ò½ñ¤­´¹¤¨¤Æ¡¢¥¹¥×¥é¥¤¥Èµ¡Ç½(Sprite)¤Ç²èÁü¤òɽ¼¨¤¹¤ë¡£

 enchant();
 
 window.onload = function() {
 	var game = new Game(320, 320);
 	game.preload('bear.gif');
 
 	game.onload = function() {
 		var bear = new Sprite(20, 30);
       	¡¡¡¡¡¡¡¡bear.image = game.assets['bear.gif'];
 
 		game.rootScene.addChild(bear);
 	}
 	game.start();
 }

**ɽ¼¨¤¹¤ë²èÁü¤òÊѤ¨¤ë [#p7e99849]

Ê£¿ô¤Î¥¤¥á¡¼¥¸¤ò»ý¤Ã¤Æ¤¤¤ë²èÁü¤Î¾ì¹ç¡¢¥¹¥×¥é¥¤¥È¤ÇÊ̤Υ¤¥á¡¼¥¸¤òɽ¼¨¤¹¤ë¡£

¥¯¥Þ¤¬Ê⤤¤Æ¤¤¤ë¥¢¥Ë¥á¡¼¥·¥ç¥ó¤Ê¤É¤Ë»È¤¨¤Þ¤¹(¤Þ¤ÀÊ⤭¤Þ¤»¤ó)¡£

 enchant();
 
 window.onload = function() {
 	var game = new Game(320, 320);
 	game.preload('bear.gif');
 
 	game.onload = function() {
 		var bear = new Sprite(20, 30);
       	¡¡¡¡¡¡¡¡bear.image = game.assets['bear.gif'];
 		bear.frame = 1;
 
 		game.rootScene.addChild(bear);
 	}
 	game.start();
 }


**ɽ¼¨°ÌÃÖ¤ò»ØÄê [#mb934d47]

¥¹¥×¥é¥¤¥È¤Î°ÌÃÖ¤ò»ØÄê

 enchant();
 
 window.onload = function() {
 	var game = new Game(320, 320);
 	game.preload('bear.gif');
 
 	game.onload = function() {
 		var bear = new Sprite(20, 30);
       	¡¡¡¡¡¡¡¡bear.image = game.assets['bear.gif'];
 		bear.x = 150;
 		bear.y = 150;
 		bear.frame = 1;
 
 		game.rootScene.addChild(bear);
 	}
 	game.start();
 }

**¥­¡¼ÆþÎϤDzèÁü¤òÀÚ¤êÂؤ¨ [#s89a6625]

º¸±¦¤ÎÌð°õ¥­¡¼¤ò²¡¤·¤Æ¡¢²èÁü¤òÀÚ¤êÂؤ¨

 enchant();
 
 window.onload = function() {
 	var game = new Game(320, 320);
 	game.preload('bear.gif');
 
 	game.onload = function() {
 		var bear = new Sprite(20, 30);
       		bear.image = game.assets['bear.gif'];
 
       		bear.addEventListener('enterframe', function() {
 			bear.x = 150;
 			bear.y = 150;
 			if(game.input.left) bear.frame = 1;
 			if(game.input.right) bear.frame = 2;
 		});
 		game.rootScene.addChild(bear);
 	}
 	game.start();
 }

**¥¢¥Ë¥á¡¼¥·¥ç¥ó£± [#f6c15a11]

º¸±¦¤ÎÌð°õ¥­¡¼¤Ç¡¢¤½¤Î¾ì¤ÇÁö¤ë

 enchant();
 
 window.onload = function() {
 	var game = new Game(320, 320);
 	game.preload('bear.gif');
 
 	game.onload = function() {
 		var bear = new Sprite(20, 30);
       		bear.image = game.assets['bear.gif'];
 
       		bear.addEventListener('enterframe', function() {
			bear.x = 150;
			bear.y = 150;
			if(game.input.right) {
				if(bear.frame == 1) {
					bear.frame = 2;
				} else {
					bear.frame = 1;
				}
			}
			if(game.input.left) {
				if(bear.frame == 4) {
					bear.frame = 5;
				} else {
					bear.frame = 4;
				}
			}
 		});
 		game.rootScene.addChild(bear);
 	}
 	game.start();
 }

**¥¢¥Ë¥á¡¼¥·¥ç¥ó£² [#v06aaf4f]

º¸±¦¤ÎÌð°õ¥­¡¼¤ÇÁö¤ë¡£ÊɤÏ̵»ë¡£

 enchant();
 
 window.onload = function() {
 	var game = new Game(320, 320);
 	game.preload('bear.gif');
 
 	game.onload = function() {
 		var bear = new Sprite(20, 30);
       		bear.image = game.assets['bear.gif'];
 
       		bear.addEventListener('enterframe', function() {
			bear.y = 150;
			if(game.input.right) {
				if(bear.frame == 1) {
					bear.frame = 2;
				} else {
					bear.frame = 1;
				}
				bear.x += 5;	
			}
			if(game.input.left) {
				if(bear.frame == 4) {
					bear.frame = 5;
				} else {
					bear.frame = 4;
				}
				bear.x -= 5;	
			}
 		});
 		game.rootScene.addChild(bear);
 	}
 	game.start();
 }

**¥¢¥Ë¥á¡¼¥·¥ç¥ó£³ [#r9bd2f81]

º¸±¦¤ÎÌð°õ¥­¡¼¤ÇÁö¤ë¡£Êɤǻߤޤ롣

 enchant();
 
 window.onload = function() {
 	var game = new Game(320, 320);
 	game.preload('bear.gif');
 
 	game.onload = function() {
 		var bear = new Sprite(20, 30);
       		bear.image = game.assets['bear.gif'];
 
       		bear.addEventListener('enterframe', function() {
 			bear.y = 150;
 			if(game.input.right) {
 				if(bear.frame == 1) {
 					bear.frame = 2;
 				} else {
 					bear.frame = 1;
 				}
 				if (bear.x < 300) {
 					bear.x += 5;
 				} else {
 					bear.x = 300;
 				}
 			}
 			if(game.input.left) {
 				if(bear.frame == 4) {
 					bear.frame = 5;
 				} else {
 					bear.frame = 4;
 				}
 				if (bear.x > 0) {
 					bear.x -= 5;
 				} else {
 					bear.x = 0;
 				}
 			}
 		});
 		game.rootScene.addChild(bear);
 	}
 	game.start();
 }

**¥µ¥ó¥×¥ë [#t3df58f2]

-[[¥µ¥ó¥×¥ë¥×¥í¥°¥é¥à¤ò¼Â¹Ô¤¹¤ë:http://www.catch.jp/program/enchant.js/lesson_1/]]
-º¸±¦¤ÎÌð°õ¥­¡¼¤Ç¡¢¥¯¥Þ¤¬Áö¤ê¤Þ¤¹¡£
-[[¥½¡¼¥¹¥³¡¼¥É:http://www.catch.jp/program/enchant.js/lesson_1/game.js]]

¤³¤³¤Þ¤Ç¤Ç´°À®¤·¤¿¥Õ¥¡¥¤¥ë

#ref(enchant_sample_lesson1.lzh)

*ʸ»ú¤òɽ¼¨¤¹¤ë [#rff46cbc]

²èÌ̾å¤Ëʸ»ú¤òɽ¼¨¤¹¤ë¤Ë¤Ï¡¢¥é¥Ù¥ëµ¡Ç½(Label)¤ò»È¤¤¤Þ¤¹¡£


**²èÌ̾åÉô¤Ë¸ÇÄê¤Çʸ»ú¤òɽ¼¨¤¹¤ë [#u7bfd3f6]

¡ÖRunning Bear:¡×¤È¤¤¤¦Ê¸»ú¤òɽ¼¨¤¹¤ë

 enchant();
 
 window.onload = function() {
 	var game = new Game(320, 320);
 
 	var label = new Label("Running Bear:");
 	label.x = 0;
 	label.y = 0;
 	game.rootScene.addChild(label);
 
 	game.start();
 }


**ʸ»ú¤ò½ñ¤­´¹¤¨¤ë [#l4d79b5d]

¸ÇÄê¤Ç¤Ï¤Ê¤¯¡¢É½¼¨¤·¤Æ¤¤¤ëʸ»ú¤òÊѲ½¤µ¤»¤ë

 enchant();
 
 window.onload = function() {
 	var game = new Game(320, 320);
 	game.preload("bear.gif");
 
 	var label = new Label("Running Bear:");
 	label.x = 0;
 	label.y = 0;
 	game.rootScene.addChild(label);
 	
 	game.onload = function() {
 		var label_time = new Label();
 		label_time.x = 0;
 		label_time.y = 14;
 		
       		label_time.addEventListener('enterframe', function() {
 			label_time.text = game.frame;
 		});
 		game.rootScene.addChild(label_time);
 	}
 	game.start();
 }

**¥¢¥Ë¥á¡¼¥·¥ç¥ó¤Èʸ»úɽ¼¨ [#x93a3f15]

¥¯¥Þ¤¬Áö¤ê¡¢·Ð²á»þ´Ö¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£

¥¢¥Ë¥á¡¼¥·¥ç¥ó¤Î¥¹¥Ô¡¼¥É¤ò¡Ögame.fps = 15;¡×¤ÇÄ´À°¤·¤Æ¤¤¤Þ¤¹¡£
 
 enchant();
 
 window.onload = function() {
 	var game = new Game(320, 320);
 	game.preload("bear.gif");
 	game.fps = 15;
 
 	var label = new Label("Running Bear:");
 	label.x = 0;
 	label.y = 0;
 	game.rootScene.addChild(label);
 	
 	game.onload = function() {
		//¥é¥Ù¥ë¤Çʸ»úɽ¼¨
 		var label_time = new Label();
 		label_time.x = 0;
 		label_time.y = 14;
 				
       	¡¡¡¡¡¡¡¡label_time.addEventListener('enterframe', function() {
 			label_time.text = game.frame;
 		});
 		game.rootScene.addChild(label_time);
 
		//¥¹¥×¥é¥¤¥È¤Ç¥¯¥Þɽ¼¨
 		var bear = new Sprite(20, 30);
       	¡¡¡¡¡¡¡¡bear.image = game.assets['bear.gif'];
 		
 		bear.addEventListener('enterframe', function() {
 			if(bear.frame == 1) {
 				bear.frame = 2;
 			} else {
 				bear.frame = 1;
 			}
 			
 			bear.x += 5
 			if (bear.x > 300) {
 					bear.x = 0;
 			}
 			bear.y = 50;
 		});
 		game.rootScene.addChild(bear);
 	}
 	game.start();
 }


**¥µ¥ó¥×¥ë [#dcb86424]

-[[¥µ¥ó¥×¥ë¥×¥í¥°¥é¥à¤ò¼Â¹Ô¤¹¤ë:http://www.catch.jp/program/enchant.js/lesson_2/]]
-¥¯¥Þ¤¬Áö¤ê¡¢·Ð²á»þ´Ö¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
-[[¥½¡¼¥¹¥³¡¼¥É:http://www.catch.jp/program/enchant.js/lesson_2/game.js]]

¤³¤³¤Þ¤Ç¤Ç´°À®¤·¤¿¥Õ¥¡¥¤¥ë

#ref(enchant_sample_lesson2.lzh)



*¸ú²Ì²»¤ò½Ð¤¹ [#o4cfc1f5]

¥²¡¼¥à¤Ë¸ú²Ì²»¤¬¤Ä¤¯¤È¡¢³Ú¤·¤µÇÜÁý¤Ç¤¹¡£

**¤È¤Ë¤«¤¯²»¤ò½Ð¤¹ [#hab3d314]

¥µ¥¦¥ó¥É¥Õ¥¡¥¤¥ë()¤òÆɤ߹þ¤ó¤Ç¡¢¤½¤ì¤ò¡Ö.play¡×¤ÇºÆÀ¸¤·¤Þ¤¹¡£
 
 enchant();
 
 window.onload = function() {
     var game = new Game(320, 320);
     game.preload('jump.wav');
     game.onload = function() {
 	    var sound = game.assets['jump.wav'].play();
 	    sound.play();
     };
     game.start();
 };



**Áàºî¤Ë¤¢¤ï¤»¤Æ²»¤ò½Ð¤¹¡£ [#se2442cc]

²èÁüɽ¼¨¤Î¤È¤³¤í¤Ë¡¢ºÆÀ¸¤òÁȤ߹þ¤ß¤Þ¤¹¡£

¢¨¸ú²Ì²»¥Õ¥¡¥¤¥ë¤òÆɤ߹þ¤á¤Ê¤¯¤Æ¡¢²¿ÅÙ¤«¶ìÏ«¤·¤Þ¤·¤¿¡£enchant.js¤Î¥Ð¡¼¥¸¥ç¥ó¤¬¸Å¤¤¤È¤¦¤Þ¤¯¤¤¤«¤Ê¤¤»þ¤¬¤¢¤ê¤Þ¤·¤¿¡£

 enchant();
 
 window.onload = function() {
     var game = new Game(320, 320);
     game.preload('jump.wav', 'bear.gif');
     game.onload = function() {
 	    game.assets['jump.wav'].play();
 		
 		var bear = new Sprite(20, 30);
       	bear.image = game.assets['bear.gif'];
 		
 		bear.addEventListener('enterframe', function() {
 			if(game.input.right) {
 				var sound = game.assets['jump.wav'].clone();
 				sound.play();
 			}
 		});
 		game.rootScene.addChild(bear);
     };
     game.start();
 };

**¥µ¥ó¥×¥ë [#m807a206]

-[[¥µ¥ó¥×¥ë¥×¥í¥°¥é¥à¤ò¼Â¹Ô¤¹¤ë:http://www.catch.jp/program/enchant.js/lesson_4/]]
-±¦Ìð°õ¥­¡¼¤Ç²»¤¬½Ð¤Þ¤¹¡£
-[[¥½¡¼¥¹¥³¡¼¥É:http://www.catch.jp/program/enchant.js/lesson_4/game.js]]

¤³¤³¤Þ¤Ç¤Ç´°À®¤·¤¿¥Õ¥¡¥¤¥ë

#ref(enchant_sample_lesson4.lzh)

*²èÁü¤òÉôÉʲ½¤¹¤ë [#h52552ae]

¥×¥í¥°¥é¥à¤Ï¡¢¤¤¤¯¤Ä¤«¤ÎÉôÉʤÎÁȤ߹ç¤ï¤»¤È¤·¤Æºî¤ë¤È¡¢ºîÀ®¤·¤ä¤¹¤¯¤Ê¤ê¤Þ¤¹¡£

**¥­¥ã¥é²èÁü¤òÉôÉʲ½ [#n27ba729]

Kuma¤È¤¤¤¦ÉôÉÊ(¥ª¥Ö¥¸¥§¥¯¥È)¤òÄêµÁ¡£¤½¤ì¤òplayer1¤Èplayer2¤Ë³ä¤êÅö¤Æ¤Æ¤¤¤Þ¤¹¡£
¤Ò¤È¤Ä¤ÎÀ߷׿Þ(Kuma)¤«¤é¡¢Ê£¿ô¤ÎÉôÉʤòºî¤ê½Ð¤·¤Æ¤¤¤Þ¤¹¡£ÉôÉʤÎÄêµÁ¤Ï¡¢Æ¬Ê¸»ú¤òÂçʸ»ú¤Ë¤·¤Þ¤¹¡£³ä¤êÅö¤ÆÀè¤Ï¡¢Á´Éô¾®Ê¸»ú¤Ç½ñ¤¤¤Æ¤¤¤Þ¤¹¡£

 enchant();
 
 var Kuma = enchant.Class.create(enchant.Sprite, {
     initialize: function(x, y){
         enchant.Sprite.call(this, 20, 30);
         this.image = game.assets['bear.gif'];
         this.x = x; this.y = y; this.frame = 0;
         game.rootScene.addChild(this);
     }
 });
 
 window.onload = function() {
     game = new Game(320, 320); 
     game.preload('bear.gif');
     game.onload = function() {
 	player1 = new Kuma(0, 0);
 	player1.frame = 1;
 	player2 = new Kuma(30, 0);
 	player2.frame = 2;
     }
     game.start();
 }

**ÉôÉʲ½¤·¤¿²èÁü¤ò°ÜÆ° [#ia4fd2e6]

ÉôÉʤǤϡ¢ÉôÉʤÎÀ߷׿Þ¦¤ÇÆ°ºî¤òÄêµÁ¤Ç¤­¤Þ¤¹¡£¤³¤³¤Ç¤Ï¡¢KumaÉôÉʤˡ¢move_right¤Èmove_left¤òÄêµÁ¤·¤Æ¤¤¤Þ¤¹¡£¤½¤·¤Æ¡¢¥á¥¤¥óÉôʬ¤Ç¡¢²¡¤µ¤ì¤¿¥­¡¼¤Ë¹ç¤ï¤»¤Æ¡¢move_right¤Èmove_left¤ò¸Æ¤Ó½Ð¤·¤Æ¤¤¤Þ¤¹¡£

 enchant();
 
 var Kuma = enchant.Class.create(enchant.Sprite, {
     initialize: function(x, y){
         enchant.Sprite.call(this, 20, 30);
         this.image = game.assets['bear.gif'];
         this.x = x; this.y = y; this.frame = 0;
         game.rootScene.addChild(this);
     },
 	move_right: function() {
 		this.x += 5;
 	},
 	move_left: function() {
 		this.x -= 5;
 	}
 });
 
 window.onload = function() {
     game = new Game(320, 320); 
     game.preload('bear.gif');
     game.onload = function() {
 		player = new Kuma(0, 0);
 		
 		game.addEventListener('enterframe', function() {
 			if(game.input.right) {
 				player.move_right();
 			}
 			if(game.input.left) {
 				player.move_left();
 			}
 		});
     }
     game.start();
 }

**ÉôÉʲ½¤·¤¿¥­¥ã¥é¤Î¥¢¥Ë¥á¡¼¥·¥ç¥ó [#q6b81d2f]

¤¯¤Ã¤Ä¤±¤Æ¤ß¤¿¡£¥­¡¼ÆþÎϤθ¡½Ð¤Ï¡¢ÉôÉʦ¤Ë°ÜÆ°¤·¤¿¡£¤³¤ì¤Ç¡¢ËÜÂΦ¤Ï¤¹¤Ã¤­¤ê¡£
¥­¥ã¥é¤Ïº¸±¦¥­¡¼¤ÇÁà½Ä¤Ç¤­¤ë¡£

 enchant();
 SCREEN_WIDTH = 320;
 SCREEN_HEIGHT = 320;
 
 var Kuma = enchant.Class.create(enchant.Sprite, {
     initialize: function(x, y){
 		this.KUMA_WIDTH = 20;
 		this.KUMA_HEIGHT = 30;
 		this.KUMA_Y = 50;
 		this.dir = 0;		//¿Ê¹ÔÊý¸þ 0:±¦(right)¡¢1:º¸(left)
 		this.walk = 0;		//Êâ¹Ô¥Ý¡¼¥º 0:Ää»ß 1:±¦Â­ 2:º¸Â­
 		this.step = 5;
 		
 		enchant.Sprite.call(this, this.KUMA_WIDTH, this.KUMA_HEIGHT);
 		this.image = game.assets['bear.gif'];
 		this.x = x;
 		this.y = this.KUMA_Y;
 		this.frame = 0;
 
 		this.addEventListener('enterframe', function() {
 			if(game.input.right) {
 				this.move_right();
 			} else if(game.input.left) {
 				this.move_left();
 			} else {
 				this.move_stop();
 			}
 			this.change_frame();
 		});
 		game.rootScene.addChild(this);
 	},
 	move_right: function() {
 		this.dir = 0;
 		if((this.walk == 0) || (this.walk == 2)){
 			this.walk = 1;
 		} else if(this.walk == 1) {
 			this.walk = 2;
 		}
 		if (this.x < (SCREEN_WIDTH - this.KUMA_WIDTH)) {
 			this.x += this.step;
 		} else {
 			this.x = SCREEN_WIDTH - this.KUMA_WIDTH;
 		}
 	},
 	move_left: function() {
 		this.dir = 1;
 		if((this.walk == 0) || (this.walk == 2)){
 			this.walk = 1;
 		} else if(this.walk == 1) {
 			this.walk = 2;
 		}
 		if (this.x > 0) {
 			this.x -= this.step;
 		} else {
 			this.x = 0;
 		}
 	},
 	move_stop: function(){
 		if(this.walk !== 0) {
 			game.assets['jump.wav'].play();
 		}
 		this.walk = 0;
 	},
 	change_frame: function() {
 		this.frame = this.dir * 3 + this.walk;
 	}
 });
 
 window.onload = function() {
 	game = new Game(SCREEN_WIDTH, SCREEN_HEIGHT); 
 	game.preload('jump.wav', 'bear.gif');
 	game.onload = function() {
 		player = new Kuma(0, 0);
 	}
 	game.start();
 }

-[[¥µ¥ó¥×¥ë¥×¥í¥°¥é¥à¤ò¼Â¹Ô¤¹¤ë:http://www.catch.jp/program/enchant.js/lesson_5/]]
-º¸±¦¤ÎÌð°õ¥­¡¼¤Ç¥¯¥Þ¤¬Áö¤ê¤Þ¤¹¡£
-[[¥½¡¼¥¹¥³¡¼¥É:http://www.catch.jp/program/enchant.js/lesson_5/game.js]]

¤³¤³¤Þ¤Ç¤Ç´°À®¤·¤¿¥Õ¥¡¥¤¥ë

#ref(enchant_sample_lesson5.lzh)


*Ê£¿ô¤Î¥Ñ¡¼¥Ä¤òÆ°¤«¤¹ [#f49c9150]

¥¢¥¯¥·¥ç¥ó¥²¡¼¥à¤Ç¤Ï¡¢Ê£¿ô¤ÎŨµ¡¤ä¥¿¡¼¥²¥Ã¥È¤¬Åо줷¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢ð¨ÀФ¬Èô¤ó¤Ç¤¯¤ë¤È¤«¡¢¥¤¥ó¥Ù¡¼¥À¤¬¸½¤ì¤ë¤È¤¤¤Ã¤¿¶ñ¹ç¤Ç¤¹¡£¤³¤ì¤ò¼Â¸½¤¹¤ë¤¿¤á¤Ë¤Ï¡¢¶¦Ä̤Υѡ¼¥Ä¤òÊ£¿ôÅо줵¤»¤Æ¡¢Æ±»þ¤ËÆ°¤«¤¹É¬Íפ¬¤¢¤ê¤Þ¤¹¡£

**Ê£¿ô¤Î²èÁü¤òɽ¼¨¤¹¤ë [#he4e0e00]

¤Þ¤ºÊ£¿ô¤Î²èÁü¤òɽ¼¨¤¹¤ëÁ°¤Ë¡¢²èÁü¤ò¤Ò¤È¤Ä¤À¤±ÉôÉʲ½¤·¤Æɽ¼¨¤·¤Æ¤ß¤Þ¤·¤ç¤¦¡£¤³¤ì¤Ï¡¢Àè¤Û¤É¤Î¥­¥ã¥é¤òÉôÉʲ½¤¹¤ëÊýË¡¤È¤Û¤È¤ó¤ÉƱ¤¸¤Ç¡¢Apple¤È¤¤¤¦ÉôÉʤ¬¾å¤«¤é¹ß¤Ã¤Æ¤­¤Þ¤¹¡£Apple¤Ï¡¢1¤³¤À¤±É½¼¨¤µ¤ì¤Þ¤¹¡£°ã¤Ã¤Æ¤¤¤ë¤Î¤Ï¡¢¼ÂÂ⽤·¤¿ÉôÉʤò¾Ãµî¤Ç¤­¤ë¤è¤¦¤Ë¤·¤Æ¤¤¤ë¤È¤³¤í(remove)¤Ç¤¹¡£

 enchant();
 SCREEN_WIDTH = 320;
 SCREEN_HEIGHT = 320;
 
 var Apple = enchant.Class.create(enchant.Sprite, {
 	initialize: function(x, y){
 		this.WIDTH = 16;
 		this.HEIGHT = 16;
 		this.STEP = 5;
 		
 		enchant.Sprite.call(this, this.WIDTH, this.HEIGHT);
 		this.image = game.assets['icon0.gif'];
 		this.x = x;
 		this.y = y;
 		this.frame = 15;
 		this.addEventListener('enterframe', function(){
 			this.move_step();
 		});
 		game.rootScene.addChild(this);
 	},
 	move_step: function() {
 		this.y += this.STEP;
 		if (this.y >= (SCREEN_HEIGHT - this.HEIGHT)) {
 			this.remove();
 		}
 	},
 	remove: function(){
 		game.rootScene.removeChild(this);
 	}
 });
 
 window.onload = function() {
 	game = new Game(SCREEN_WIDTH, SCREEN_HEIGHT); 
 	game.fps = 15;
 	game.preload('icon0.gif');
 	game.onload = function() {
 		target = new Apple(100, 0);
 	}
 	game.start();
 }

**Ê£¿ô¤Î²èÁü¤òÆ°¤«¤¹ [#oda390f1]

¤³¤ì¤ò²þ¤¤·¤ÆÊ£¿ô¥­¥ã¥é¤òÆ°¤«¤»¤ë¤è¤¦¤Ë¤¹¤ë¤È¡¢¤³¤¦¤Ê¤ê¤Þ¤¹¡£Ê£¿ô¤ÎApple¤¬¾å¤«¤é¹ß¤Ã¤Æ¤­¤Þ¤¹¡£ÉôÉʤÎÉôʬ¤Ï¡¢Àè¤Û¤É¤ÈƱ¤¸¤Ç¤¹¤¬¡¢ËÜÂΦ¤ÇÊ£¿ô¤ÎApple¤ò¼ÂÂ⽤·¤Æ¤¤¤Þ¤¹¡£

 enchant();
 SCREEN_WIDTH = 320;
 SCREEN_HEIGHT = 320;
 
 var Apple = enchant.Class.create(enchant.Sprite, {
 	initialize: function(x, y){
 		this.WIDTH = 16;
 		this.HEIGHT = 16;
 		this.STEP = 5;
 		
 		enchant.Sprite.call(this, this.WIDTH, this.HEIGHT);
 		this.image = game.assets['icon0.gif'];
 		this.x = x;
 		this.y = y;
 		this.frame = 15;
 		this.addEventListener('enterframe', function(){
 			this.move_step();
 		});
 		game.rootScene.addChild(this);
 	},
 	move_step: function() {
 		this.y += this.STEP;
 		if (this.y >= (SCREEN_HEIGHT - this.HEIGHT)) {
 			this.remove();
 		}
 	},
 	remove: function(){
 		game.rootScene.removeChild(this);
 	}
 });
 
 window.onload = function() {
 	game = new Game(SCREEN_WIDTH, SCREEN_HEIGHT); 
 	game.fps = 15;
 	game.preload('icon0.gif');
 	game.onload = function() {
 		targets = [];
 		game.rootScene.addEventListener('enterframe', function(){
  			if((game.frame % 10) == 0){
 				var x = Math.floor(Math.random() * 300);
 				targets[game.frame] = new Apple(x, 0);
 			}
 		});
 	}
 	game.start();
 }

-[[¥µ¥ó¥×¥ë¥×¥í¥°¥é¥à¤ò¼Â¹Ô¤¹¤ë:http://www.catch.jp/program/enchant.js/lesson_6_2/]]
-[[¥½¡¼¥¹¥³¡¼¥É:http://www.catch.jp/program/enchant.js/lesson_6_2/game.js]]

¤³¤³¤Þ¤Ç¤Ç´°À®¤·¤¿¥Õ¥¡¥¤¥ë

#ref(enchant_sample_lesson6-2.lzh)

¤³¤ì¤Ë¡¢Ì£Êý¥­¥ã¥é¤òÉÕ¤±²Ã¤¨¤ë¤È¡¢¤½¤ì¤é¤·¤¯¤Ê¤Ã¤Æ¤­¤Þ¤¹¤Í¡£


**¼«¥­¥ã¥é(Áà½Ä¤Ç¤­¤ë)¤ÈŨ¥­¥ã¥é¤òƱ»þ¤Ëɽ¼¨¤¹¤ë [#v823b793]

º¸±¦¥­¡¼¤ÇÁà½Ä¤Ç¤­¤ë¼«¥­¥ã¥é¤È¡¢Å¨¥­¥ã¥é¤òƱ»þ¤Ëɽ¼¨¤¹¤ë¤È¡¢¤³¤¦¤Ê¤ê¤Þ¤¹¡£
 
 enchant();
 SCREEN_WIDTH = 320;
 SCREEN_HEIGHT = 320;
 
 //Áà½Ä¤Ç¤­¤ë¼«¥­¥ã¥é
 var Kuma = enchant.Class.create(enchant.Sprite, {
     initialize: function(x, y){
 		this.KUMA_WIDTH = 20;
 		this.KUMA_HEIGHT = 30;
 		this.KUMA_Y = 200;
 		this.dir = 0;		//¿Ê¹ÔÊý¸þ 0:±¦(right)¡¢1:º¸(left)
 		this.walk = 0;		//Êâ¹Ô¥Ý¡¼¥º 0:Ää»ß 1:±¦Â­ 2:º¸Â­
 		this.step = 5;
 		
 		enchant.Sprite.call(this, this.KUMA_WIDTH, this.KUMA_HEIGHT);
 		this.image = game.assets['bear.gif'];
 		this.x = x;
 		this.y = this.KUMA_Y;
 		this.frame = 0;
 
 		this.addEventListener('enterframe', function() {
 			if(game.input.right) {
 				this.move_right();
 			} else if(game.input.left) {
 				this.move_left();
 			} else {
 				this.move_stop();
 			}
 			this.change_frame();
 		});
 		game.rootScene.addChild(this);
 	},
 	move_right: function() {
 		this.dir = 0;
 		if((this.walk == 0) || (this.walk == 2)){
 			this.walk = 1;
 		} else if(this.walk == 1) {
 			this.walk = 2;
 		}
 		if (this.x < (SCREEN_WIDTH - this.KUMA_WIDTH)) {
 			this.x += this.step;
 		} else {
 			this.x = SCREEN_WIDTH - this.KUMA_WIDTH;
 		}
 	},
 	move_left: function() {
 		this.dir = 1;
 		if((this.walk == 0) || (this.walk == 2)){
 			this.walk = 1;
 		} else if(this.walk == 1) {
 			this.walk = 2;
 		}
 		if (this.x > 0) {
 			this.x -= this.step;
 		} else {
 			this.x = 0;
 		}
 	},
 	move_stop: function(){
 		if(this.walk !== 0) {
 			game.assets['jump.wav'].play();
 		}
 		this.walk = 0;
 	},
 	change_frame: function() {
 		this.frame = this.dir * 3 + this.walk;
 	}
 });
 
 //Ê£¿ôɽ¼¨¤µ¤ì¤ëÁê¼ê¥­¥ã¥é
 var Apple = enchant.Class.create(enchant.Sprite, {
 	initialize: function(x, y){
 		this.WIDTH = 16;
 		this.HEIGHT = 16;
 		this.STEP = 5;
 		
 		enchant.Sprite.call(this, this.WIDTH, this.HEIGHT);
 		this.image = game.assets['icon0.gif'];
 		this.x = x;
 		this.y = y;
 		this.frame = 15;
 		this.addEventListener('enterframe', function(){
 			this.move_step();
 		});
 		game.rootScene.addChild(this);
 	},
 	move_step: function() {
 		this.y += this.STEP;
 		if (this.y >= (SCREEN_HEIGHT - this.HEIGHT)) {
 			this.remove();
 		}
 	},
 	remove: function(){
 		game.rootScene.removeChild(this);
 	}
 });
 
 window.onload = function() {
 	game = new Game(SCREEN_WIDTH, SCREEN_HEIGHT); 
 	game.fps = 15;
 	game.preload('bear.gif', 'icon0.gif', 'jump.wav');
 	game.onload = function() {
 		player = new Kuma(0, 0);
 		targets = [];
 		game.rootScene.addEventListener('enterframe', function(){
  			if((game.frame % 10) == 0){
 				var x = Math.floor(Math.random() * 300);
 				targets[game.frame] = new Apple(x, 0);
 			}
 		});
 	}
 	game.start();
 }

-[[¥µ¥ó¥×¥ë¥×¥í¥°¥é¥à¤ò¼Â¹Ô¤¹¤ë:http://www.catch.jp/program/enchant.js/lesson_6_3/]]
-[[¥½¡¼¥¹¥³¡¼¥É:http://www.catch.jp/program/enchant.js/lesson_6_3/game.js]]

¤³¤³¤Þ¤Ç¤Ç´°À®¤·¤¿¥Õ¥¡¥¤¥ë

#ref(enchant_sample_lesson6-3.lzh)

¤³¤ì¤ËÅö¤¿¤êȽÄê¤òÉÕ¤±²Ã¤¨¤ë¤È¡¢¥²¡¼¥à¤Ã¤Ý¤¯¤Ê¤ê¤Þ¤¹¤Í¡£

**Åö¤êȽÄê [#vf730204]

¼«¥­¥ã¥é¤ÈÁê¼ê¥­¥ã¥é¤¬ÀÜ¿¨¤·¤¿¤«¤É¤¦¤«¡¢Åö¤êȽÄê¤ò¹Ô¤¤¤Þ¤¹¡£Åö¤êȽÄê¤Ï¡¢²èÁü¤òɽ¼¨¤¹¤ë¤¿¤á¤ÎÉôÉʤǤ¢¤ë¥¹¥×¥é¥¤¥È(Sprite)¤ÎÅö¤êȽÄêÌ¿Îá(intersect)¤ò»È¤¤¤Þ¤¹¡£¥ê¥ó¥´(Apple)¤¬°ÜÆ°¤·¤¿¤È¤­¡¢Ëè²ó¥¯¥Þ¤È¤ÎÅö¤êȽÄê¤ò¹Ô¤Ã¤Æ¡¢Åö¤¿¤Ã¤Æ¤¤¤¿¤é¡¢ÂоݤΥê¥ó¥´¤ò¾Ãµî¤·¸ú²Ì²»¤òÌĤ餷¤Þ¤¹¡£

 enchant();
 SCREEN_WIDTH = 320;
 SCREEN_HEIGHT = 320;
 score = 0;
 
 //Áà½Ä¤Ç¤­¤ë¼«¥­¥ã¥é
 var Kuma = enchant.Class.create(enchant.Sprite, {
     initialize: function(x, y){
 		this.KUMA_WIDTH = 20;
 		this.KUMA_HEIGHT = 30;
 		this.KUMA_Y = 200;
 		this.dir = 0;		//¿Ê¹ÔÊý¸þ 0:±¦(right)¡¢1:º¸(left)
 		this.walk = 0;		//Êâ¹Ô¥Ý¡¼¥º 0:Ää»ß 1:±¦Â­ 2:º¸Â­
 		this.step = 5;
 		
 		enchant.Sprite.call(this, this.KUMA_WIDTH, this.KUMA_HEIGHT);
 		this.image = game.assets['bear.gif'];
 		this.x = x;
 		this.y = this.KUMA_Y;
 		this.frame = 0;
 
 		this.addEventListener('enterframe', function() {
 			if(game.input.right) {
 				this.move_right();
 			} else if(game.input.left) {
 				this.move_left();
 			} else {
 				this.move_stop();
 			}
 			this.change_frame();
 		});
 		game.rootScene.addChild(this);
 	},
 	move_right: function() {
 		this.dir = 0;
 		if((this.walk == 0) || (this.walk == 2)){
 			this.walk = 1;
 		} else if(this.walk == 1) {
 			this.walk = 2;
 		}
 		if (this.x < (SCREEN_WIDTH - this.KUMA_WIDTH)) {
 			this.x += this.step;
 		} else {
 			this.x = SCREEN_WIDTH - this.KUMA_WIDTH;
 		}
 	},
 	move_left: function() {
 		this.dir = 1;
 		if((this.walk == 0) || (this.walk == 2)){
 			this.walk = 1;
 		} else if(this.walk == 1) {
 			this.walk = 2;
 		}
 		if (this.x > 0) {
 			this.x -= this.step;
 		} else {
 			this.x = 0;
 		}
 	},
 	move_stop: function(){
 		this.walk = 0;
 	},
 	change_frame: function() {
 		this.frame = this.dir * 3 + this.walk;
 	}
 });
 
 //Ê£¿ôɽ¼¨¤µ¤ì¤ëÁê¼ê¥­¥ã¥é
 var Apple = enchant.Class.create(enchant.Sprite, {
 	initialize: function(x, y){
 		this.WIDTH = 16;
 		this.HEIGHT = 16;
 		this.STEP = 5;
 		
 		enchant.Sprite.call(this, this.WIDTH, this.HEIGHT);
 		this.image = game.assets['icon0.gif'];
 		this.x = x;
 		this.y = y;
 		this.frame = 15;
 		this.addEventListener('enterframe', function(){
 			this.move_step();
 		});
 		game.rootScene.addChild(this);
 	},
 	move_step: function() {
 		this.y += this.STEP;
 
 		//Åö¤êȽÄê
 		if(this.intersect(player)){
 			this.remove();
 			game.assets['jump.wav'].play();
 		}
 		//²¼Ã¼¤ËÅþã
 		if (this.y >= (SCREEN_HEIGHT - this.HEIGHT)) {
 			this.remove();
 		}
 	},
 	remove: function(){
 		game.rootScene.removeChild(this);
 	}
 });
 
 window.onload = function() {
 	game = new Game(SCREEN_WIDTH, SCREEN_HEIGHT); 
 	game.fps = 15;
 	game.preload('bear.gif', 'icon0.gif', 'jump.wav');
 	game.onload = function() {
 		player = new Kuma(0, 0);
 		targets = [];
 		game.rootScene.addEventListener('enterframe', function(){
  			if((game.frame % 10) == 0){
 				var x = Math.floor(Math.random() * 300);
 				targets[game.frame] = new Apple(x, 0);
 			}
 		});
 	}
 	game.start();
 }

-[[¥µ¥ó¥×¥ë¥×¥í¥°¥é¥à¤ò¼Â¹Ô¤¹¤ë:http://www.catch.jp/program/enchant.js/lesson_7/]]
-[[¥½¡¼¥¹¥³¡¼¥É:http://www.catch.jp/program/enchant.js/lesson_7/game.js]]

¤³¤³¤Þ¤Ç¤Ç´°À®¤·¤¿¥Õ¥¡¥¤¥ë

#ref(enchant_sample_lesson7.lzh)

*¥²¡¼¥àºîÀ®¤ËÊØÍø¤Ê¥×¥é¥°¥¤¥ó [#o7f33f99]

enchant.js¤Ï¡¢¥×¥é¥°¥¤¥ó(plugin)¤Çµ¡Ç½¤ò³ÈÄ¥¤Ç¤­¤Þ¤¹¡£

¥²¡¼¥à¤òºî¤ë¤È¤­¤â¡¢¥×¥é¥°¥¤¥ó¤ò³èÍѤ¹¤ë¤Èºî¶È¸úΨ¤¬¾å¤¬¤ê¤Þ¤¹¡£

-[[plugin¡¿enchant.js - HTML5 + JavaScript Game Engine:http://enchantjs.com/ja/plugin.html]]

²¼µ­¤â»²¹Í¤Ë¤Ê¤ê¤Þ¤¹¡£

-[[enchant.js¤Çº£¤Þ¤Çºî¤Ã¤¿¥²¡¼¥à¤ò¡Ø9leap¡Ù»ÅÍͤˤ¹¤ëÊýË¡ | IDEA*IDEA:http://www.ideaxidea.com/archives/2011/05/for_9leap.html]]

**¥×¥é¥°¥¤¥ó¤Î»È¤¤Êý [#x47ae7cf]

¥×¥é¥°¥¤¥ó¤Ï¡¢enchant.js¤ÈƱ¤¸¥Õ¥©¥ë¥À¤«¡¢¤½¤Îľ²¼¤Îplugins¥Õ¥©¥ë¥À¤ËÊü¤ê¹þ¤à¤È¤¤¤¤¤Ç¤·¤ç¤¦¡£

enchant.js¤ò²òÅष¤¿¾ì¹ç¤Ï¡¢¸å¼Ô¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£

¤½¤ì¤«¤é¡¢¥×¥é¥°¥¤¥ó¤¬É¬ÍפȤ¹¤ë²èÁü¤òƱ¤¸¥Õ¥©¥ë¥À¤ËÍÑ°Õ¤·¤Þ¤¹¡£

-nineleap.enchant.js¤Î¾ì¹ç
--start.png
--end.png
--font.png
-ui.enchant.js¤Î¾ì¹ç
--apad.png
--pad.png

¤¢¤È¤Ï¡¢index.html¤Ë¥×¥é¥°¥¤¥ó¥Õ¥¡¥¤¥ë¤Îµ­½Ò¤òÄɲä·¤Þ¤¹¡£

 <!DOCTYPE html>
 <html>
     <head>
         <meta charset="utf-8">
         <meta name="viewport" content="width=device-width, user-scalable=no"> 
         <meta name="apple-mobile-web-app-capable" content="yes"> 
         <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
         <title>enchant</title>
         <script type="text/javascript" src="enchant.js"></script>
         <script type="text/javascript" src="plugins/nineleap.enchant.js"></script>
         <script type="text/javascript" src="plugins/util.enchant.js"></script>
         <script type="text/javascript" src="plugins/ui.enchant.js"></script>
         <script type="text/javascript" src="game.js"></script>
         <style type="text/css">
             body {margin: 0;}
         </style>
     </head>
     <body>
     </body>
 </html>

¾åµ­¤Ç¤Ï¡¢10-11¹ÔÌܤÇplugins¥Õ¥©¥ë¥À¤Ë¤¢¤ë¥×¥é¥°¥¤¥ó¥Õ¥¡¥¤¥ë(nineleap.enchant.js¡¢util.enchant.js)¤ò»ØÄꤷ¤Æ¤¤¤Þ¤¹¡£¥×¥é¥°¥¤¥ó¤Ï¡¢¥×¥í¥°¥é¥àËÜÂÎ(Îã:game.js)¤è¤êÁ°¤Ëµ­½Ò¤·¤Þ¤¹¡£

**¥¹¥¿¡¼¥È²èÌÌ [#g122127c]

nineleap.enchant.js¤òÆɤ߹þ¤à¤È¡¢¥²¡¼¥à¥¹¥¿¡¼¥È»þ¤Ë¼«Æ°Åª¤Ë¥¹¥¿¡¼¥ÈÍÑ¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£

**½ªÎ»²èÌÌ [#h45a6768]

nineleap.enchant.js¤òÆɤ߹þ¤ß¡¢¥²¡¼¥à½ªÎ»¤¹¤Ù¤­¤È¤³¤í¤Ë²¼µ­¤Î¥³¡¼¥É¤ò½ñ¤­¤Þ¤¹¡£

 game.end(game.score, "game end");

game.score¤Ï¡¢ÆÀÅÀ¤ò³ÊǼ¤·¤¿ÊÑ¿ô¡£


**¥¿¥¤¥àɽ¼¨ [#df53f786]

¥×¥í¥°¥é¥àËÜÂÎ(game.onload = function()¤Î¤È¤³¤í)¤Ë¡¢²¼µ­¤Î¥³¡¼¥É¤ò½ñ¤­¤Þ¤¹¡£¤³¤ì¤À¤È¡¢»þ´Ö¤¬Áý¤¨¤Æ¤¤¤¯(¥«¥¦¥ó¥È¥¢¥Ã¥×)¤Ë¤Ê¤ê¤Þ¤¹¡£

 timeLabel = new TimeLabel(8, 8);
 game.rootScene.addChild(timeLabel);

²¼µ­¤Î¤è¤¦¤Ë½ñ¤¯¤È¥«¥¦¥ó¥È¥À¥¦¥ó¡£

 timeLabel = new TimeLabel(8, 8, "countdown");
 timeLabel.time = 30;
 game.rootScene.addChild(timeLabel);

ɽ¼¨¤¹¤ë¥é¥Ù¥ë¤òÊѹ¹¤¹¤ë¤Ë¤Ï

 timeLabel.label = "LIFE:";

¸½ºß¤Î·Ð²á»þ´Ö¤ò¼è¤ê½Ð¤¹¤Ë¤Ï¡¢

 A = timeLabel.label;

**¥¹¥³¥¢É½¼¨ [#w26baaee]

¥×¥í¥°¥é¥àËÜÂΤνé´ü²½Éôʬ(window.onload = function() )¤Ë¡¢²¼µ­¤Î¥³¡¼¥É¤ò½ñ¤­¤Þ¤¹¡£¤³¤ì¤¬¡¢¥²¡¼¥à¤ÎÆÀÅÀ¤Ë¤Ê¤ê¤Þ¤¹¡£

 game.score = 0; //ÆÀÅÀ¤Î½é´ü²½

¥×¥í¥°¥é¥àËÜÂÎ(game.onload = function()¤Î¤È¤³¤í)¤Ë¡¢²¼µ­¤Î¥³¡¼¥É¤ò½ñ¤­¤Þ¤¹¡£¤³¤ì¤¬ÆÀÅÀ¤Îɽ¼¨

 scoreLabel = new ScoreLabel(40, 8);
 game.rootScene.addChild(scoreLabel);

¥²¡¼¥à¤ÎÆÀÅÀÄɲ峡¼¥É¤È¤·¤Æ¡¢²¼µ­¤Î¥³¡¼¥É¤ò½ñ¤­¤Þ¤¹¡£

 game.score += 10;

ɽ¼¨¤¹¤ë¥é¥Ù¥ë¤òÊѹ¹¤¹¤ë¤Ë¤Ï

 scoreLabel.label = "APPLE:";

**Íð¿ô¤òºî¤ë(¥é¥ó¥À¥àɽ¼¨) [#f8deb4c9]

Ũ¥­¥ã¥é¤ä¾ã³²Êª¤Ê¤É¤ò¥Ð¥é¥Ð¥é¤Ëɽ¼¨¤¹¤ë¤³¤È¤ò¥é¥ó¥À¥àɽ¼¨¤È¤¤¤¤¤Þ¤¹¤Í¡£¤³¤Î¥é¥ó¥À¥àɽ¼¨¤Ë¤Ï¡¢Íð¿ô¤ò»È¤¤¤Þ¤¹¡£Íð¿ô¤È¤Ï¡¢¤¿¤È¤¨¤Ð1¤«¤é10¤Þ¤Ç¤Î¿ô»ú¤ò¼¡¡¹¤ÈŬÅö¤Ëºî¤ê½Ð¤¹ÊýË¡¤Ç¤¹¡£util.enchant.js¥×¥é¥°¥¤¥ó¤ò»È¤¦¤È¡¢¤³¤ÎÍð¿ô¤ò¼¡¤Î¤è¤¦¤Ë´Êñ¤Ë°·¤¨¤Þ¤¹¡£

 A = rand(10); //

**¥¿¥Ã¥Á¥Ñ¥Ã¥ÉÂбþ [#y718b9d7]

¥¹¥Þ¡¼¥È¥Õ¥©¥ó¤Ê¤É¤Î¥¿¥Ã¥Á¥Ñ¥Ã¥ÉÂбþ¤Ë¤¹¤ë¤Ë¤Ï¡¢²¼µ­¤Î¥³¡¼¥É¤òÄɲä·¤Þ¤¹¡£¤³¤ì¤À¤±¤Ç¡¢»Ø¤ä¥Þ¥¦¥¹¤Ç¡¢Ìð°õ¥­¡¼¤ÈƱ¤¸¤è¤¦¤Ë¥²¡¼¥à¤òÁàºî¤Ç¤­¤Þ¤¹¡£

 var pad = new Pad();
 pad.x = 0;
 pad.y = 220;
 game.rootScene.addChild(pad);

pad.x¤Èpad.y¤Ç¡¢ÁàºîÍѥѥåɤÎɽ¼¨°ÌÃÖ¤ò»ØÄê¡£

**¥µ¥ó¥×¥ë [#t3df58f2]

-[[¥µ¥ó¥×¥ë¥×¥í¥°¥é¥à¤ò¼Â¹Ô¤¹¤ë:http://www.catch.jp/program/enchant.js/lesson_8/]]
-30Éô֤ǡ¢¤Ç¤­¤ë¤À¤±¤¿¤¯¤µ¤ó¥ê¥ó¥´¤ò½¸¤á¤Æ¤¯¤À¤µ¤¤¡£
-º¸±¦¤ÎÌð°õ¥­¡¼¤Ç¡¢¥¯¥Þ¤¬Áö¤ê¤Þ¤¹¡£
-º¸²¼¤Î½½»ú¥¨¥ê¥¢¤ò»È¤¦¤È¡¢¥Þ¥¦¥¹¥¯¥ê¥Ã¥¯(¥Ñ¥½¥³¥ó)¡¢¥¿¥Ã¥Á(¥¹¥Þ¡¼¥È¥Õ¥©¥ó)¤Ç¤âÁàºî¤Ç¤­¤Þ¤¹¡£
-[[¥½¡¼¥¹¥³¡¼¥É:http://www.catch.jp/program/enchant.js/lesson_8/game.js]]

¤³¤³¤Þ¤Ç¤Ç´°À®¤·¤¿¥Õ¥¡¥¤¥ë

#ref(enchant_sample_lesson8.lzh)


*¥²¡¼¥à²èÌ̤ò½Å¤Í¹ç¤ï¤»¤ë [#hfa3967f]

Ê£»¨¤Ê¥²¡¼¥à²èÌ̤òɽ¼¨¤µ¤»¤ë¤È¤­¤Ï¡¢½Å¤Í¹ç¤ï¤»¤ë¤è¤¦¤Ëºî¤ì¤ë¤ÈÊØÍø¤Ç¤¹¡£

enchant.js¤Ç¤Ï¡¢¤³¤Î¤è¤¦¤Ë½Å¤Í¤ë²èÌ̤ò¥·¡¼¥ó(Scene)¤È¸Æ¤Ó¤Þ¤¹¡£

-[[enchant.js¤Î¥µ¥ó¥×¥ë¥³¡¼¥É¤ò²òÆɤ¹¤ë¡ÊRPGÊÔ¤½¤Î1¡Ë | IDEA*IDEA:http://www.ideaxidea.com/archives/2011/04/enchant_rgb_undocumented.html]]
-[[¡Úenchant.js¡Û ¡ÖºÇ®¤Ç¥¯¥ë¥Þ¤ò¾è¤ê¤³¤Ê¤¹¥²¡¼¥à¡×¤Îµ»½ÑŪ²òÀâ | IDEA*IDEA:http://www.ideaxidea.com/archives/2011/04/cars_explained.html]]

*¥²¡¼¥à¤ò9leap¤Ç¸ø³«¤¹¤ë [#q01863b9]

9leap¤Ï¡¢enchant.js¤ò»È¤Ã¤¿¥²¡¼¥à¤ÎÅê¹Æ¥µ¥¤¥È¡£Åê¹Æ¤µ¤ì¤¿¥²¡¼¥à¤Ï¡¢¥Ñ¥½¥³¥ó¤Ç¤â¥¹¥Þ¡¼¥È¥Õ¥©¥ó¤Ç¤âÍ·¤Ù¤Þ¤¹¡£

-[[9leap : ¥È¥Ã¥×¥Ú¡¼¥¸ - ¤É¤³¤Ç¤âÍ·¤Ù¤ë¡¢Åê¹Æ·¿¥²¡¼¥à¥µ¥¤¥È:http://9leap.net/]]

 ¥í¥°¥¤¥ó¤¹¤ë¤È¥²¡¼¥à¤ÎÅê¹Æ¡¦¥³¥á¥ó¥È¤ÎÅê¹Æ¤¬²Äǽ¤Ë¤Ê¤ë¤Û¤«¡¢
 Ʊ¤¸¥²¡¼¥à¤Ç¥×¥ì¥¤¤·¤¿Twitter¤Ç¥Õ¥©¥í¡¼¤·¤Æ¤¤¤ë¿Í¤Î¾ðÊó¤ä¥Ï¥¤¥¹¥³¥¢¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
 ¥²¡¼¥à¤ò¤ªµ¤¤ËÆþ¤ê¤ËÄɲ䷤ơ¢¸å¤«¤éÍ·¤Ö¤³¤È¤â¤Ç¤­¤Þ¤¹¡£

9leap¤Ë¥í¥°¥¤¥ó¤¹¤ë¤Ë¤Ï¡¢Twitter¥¢¥«¥¦¥ó¥È¤¬É¬ÍפǤ¹¡£

**Åê¹ÆÊýË¡ [#r7d51209]

¤ä¤êÊý¤Ï¡¢¤³¤Á¤é¤¬»²¹Í¤Ë¤Ê¤ê¤Þ¤¹¡£

-[[iPad 2¤¬Åö¤¿¤ë¥×¥í¥°¥é¥ß¥ó¥°¥³¥ó¥Æ¥¹¥È¥µ¥¤¥È¡Ø9leap¡Ù¤Ë¥²¡¼¥à¤òÅê¹Æ¤¹¤ëÊýË¡ | IDEA*IDEA:http://www.ideaxidea.com/archives/2011/05/9leap.html]]

**9leap¤ËÅê¹Æ¤·¤Æ¤ß¤¿ [#c4044f76]

-[[9leap : 30Éᢥê¥ó¥´½¸¤á¥²¡¼¥à by y_catch - ¤É¤³¤Ç¤âÍ·¤Ù¤ë¡¢Åê¹Æ·¿¥²¡¼¥à¥µ¥¤¥È:http://9leap.net/games/1126]]

*ÇØ·Ê¡¿¥Þ¥Ã¥×¤Îɽ¼¨ [#m1aa7ffd]

¥²¡¼¥à¤òºî¤ë¤È¤­¡¢¥­¥ã¥é¥¯¥¿¡¼¤À¤±¤Ç¤Ï¤µ¤Ó¤·¤¤¤Î¤Ç¡¢Çطʤòɽ¼¨¤·¤Æ¤ß¤Þ¤¹¡£

Çطʤˤϡ¢ÇØ·Ê¿§¤ò»ØÄꤹ¤ëÊýË¡¤È²èÁü¤ò»ØÄꤹ¤ëÊýË¡¤¬¤¢¤ê¤Þ¤¹¡£

**ÇØ·Ê¿§¤Î»ØÄê [#g6911641]

ÇØ·Ê¿§¤ò»ØÄꤹ¤ë¤Ë¤Ï¡¢¼¡¤Î¤è¤¦¤Ë¥·¡¼¥ó(game.rootScene)¤ÎÇØ·Ê¿§(backgroundColor)¤òRGB¤ÇÀßÄꤷ¤Þ¤¹¡£

 game.rootScene.backgroundColor = 'rgb(182, 255, 255)';

**ÇطʲèÁü¤Îɽ¼¨ [#n13e96b1]

ÇطʲèÁü¤Îɽ¼¨¤¹¤ë¤Ë¤Ï¡¢¤Þ¤ºÇطʤθµ¤Ë¤Ê¤ëÁǺà²èÁü¤òÍÑ°Õ¤·¤Þ¤¹¡£º£²ó¤Ï¡¢¼¡¤Î¤è¤¦¤Ê9¡ß3¥Þ¥¹¤ÎÁǺà²èÁü(map2.gif)¤ò»È¤¤¤Þ¤¹¡£

#ref(map2.gif)

¤³¤Î9¡ß3¥Þ¥¹¤Î²èÁü¤Ï¡¢¼¡¤Î¤è¤¦¤ËÈÖ¹æ¤ò³ä¤êÅö¤Æ¤Þ¤¹¡£

  0, 1, 2, 3, 4, 5, 6, 7, 8
  9,10,11,12,13,14,15,16,17
 18,19,20,21,22,23,24,25,26

¼¡¤Ë¡¢¤³¤Î²èÁü¤ò¤É¤Î¤è¤¦¤Ë¤Ê¤é¤Ù¤ë¤«¡¢¿ôÃͤǻØÄꤷ¤Þ¤¹¡£

ÁǺà²èÁü¤òÇÛÃÖ¤·¤¿¤¤¤È¤³¤í¤Ë¤Ï¡¢¤½¤ÎÈÖ¹æ¤ò»ØÄꤷ¤Þ¤¹¡£
¤Ê¤Ë¤â¤Ê¤¤¤È¤³¤í¤Ï¡Ö-1¡×¤ò»ØÄꤷ¤Þ¤¹¡£

º£²ó¤Ï¡¢²£20¥Þ¥¹¡¢½Ä10¥Þ¥¹¤Î²èÁü¤òÇطʤȤ·¤Æɽ¼¨¤·¤Þ¤¹¡£

 var blocks = [
 	[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1],
 	[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1],
 	[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1],
 	[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1],
 	[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1],
 	[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1],
 	[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1],
 	[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1],
 	[4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4],
 	[3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3],
 ];¡¡

¤³¤ì¤ò¼ÂºÝ¤ËÇÛÃÖ¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¤è¤¦¤Ë¤·¤Þ¤¹¡£

-game.preload('bear.gif', 'map2.gif'); ¤ÇÁǺà²èÁü¤òÆɤ߹þ¤à
-¼¡¤Î¥³¡¼¥É¤ÇÇطʤò»ØÄê

 var map = new Map(16, 16);
 map.image = game.assets['map2.gif'];
 map.loadData(blocks);

-game.rootScene.addChild(map); ¤Ç¡¢ºÇ¸å¤ËÅÐÏ¿

**¥µ¥ó¥×¥ë [#b332014e]


-[[¥µ¥ó¥×¥ë¥×¥í¥°¥é¥à¤ò¼Â¹Ô¤¹¤ë:http://www.catch.jp/program/enchant.js/lesson_3/]]
-Çطʤ¬É½¼¨¤µ¤ì¡¢º¸±¦¤ÎÌð°õ¥­¡¼¤Ç¥¯¥Þ¤¬Áö¤ê¤Þ¤¹¡£
-[[¥½¡¼¥¹¥³¡¼¥É:http://www.catch.jp/program/enchant.js/lesson_3/game.js]]

¤³¤³¤Þ¤Ç¤Ç´°À®¤·¤¿¥Õ¥¡¥¤¥ë

#ref(enchant_sample_lesson3.lzh)

*nakamura001 ¥µ¥ó¥×¥ë½¸ [#z2822510]

¤³¤³¤Þ¤Ç¡¢¥·¥³¥·¥³¤Èenchant.js¤Î¥µ¥ó¥×¥ë¤òºî¤Ã¤Æ¤­¤¿¤é¡¢²¼µ­¤Î¥µ¥¤¥È¤Ë¤âÎɤ¯¤Þ¤È¤Þ¤Ã¤Æ¤¤¤ë¤Î¤òȯ¸«¡£¤¿¤À¡¢¥½¡¼¥¹¤È¥Ç¥â¤Ë¤¿¤É¤êÃ夯¤Î¤¬¾¯¤·¤À¤±ÌÌÅݤ˴¶¤¸¤Þ¤·¤¿¡£¤½¤³¤Ç¡¢¤³¤³¤«¤é¤â¥ê¥ó¥¯¤·¤Æ¤ª¤­¤Þ¤¹¡£

-[[nakamura001 @ ¥¦¥£¥­ - ¥È¥Ã¥×¥Ú¡¼¥¸/JavaScript¥²¡¼¥à/¥é¥¤¥Ö¥é¥ê/enchant.js/¥µ¥ó¥×¥ë:http://www32.atwiki.jp/nakamura001/pages/149.html]]

-¥­¥ã¥é¥¯¥¿¡¼¤ò±¦¤Ë°ÜÆ° [[¥½¡¼¥¹:http://tsuyobi.heteml.jp/html/javascript/enchantjs/samples/01.js]]¡¢[[¥Ç¥â:http://tsuyobi.heteml.jp/html/javascript/enchantjs/samples/01.html]]
-¥­¥ã¥é¥¯¥¿¡¼¤òÊý¸þ¥­¡¼¤Ç°ÜÆ° [[¥½¡¼¥¹:http://tsuyobi.heteml.jp/html/javascript/enchantjs/samples/02.js]]¡¢[[¥Ç¥â:http://tsuyobi.heteml.jp/html/javascript/enchantjs/samples/02.html]]
-±ýÉü°ÜÆ°½èÍý(¥­¥ã¥é¥¯¥¿¡¼¤Î²èÁüȿž) [[²òÀâ:http://d.hatena.ne.jp/nakamura001/20110503/1304432316]]
-¥¿¥Ã¥×¤·¤¿°ÌÃ֤˥­¥ã¥é¥¯¥¿¡¼¤ò°ÜÆ° [[¥½¡¼¥¹:http://tsuyobi.heteml.jp/html/javascript/enchantjs/samples/03.js]]¡¢[[¥Ç¥â:http://tsuyobi.heteml.jp/html/javascript/enchantjs/samples/03.html]]
-¥é¥Ù¥ë¤Îɽ¼¨ [[¥½¡¼¥¹:http://tsuyobi.heteml.jp/html/javascript/enchantjs/samples/04.js]]¡¢[[¥Ç¥â:http://tsuyobi.heteml.jp/html/javascript/enchantjs/samples/04.html]]

-Åö¤¿¤êȽÄê(¥é¥¤¥Ö¥é¥ê¤Î¥á¥½¥Ã¥É¤ò»È¤ï¤º¤Ë¼«Á°¤ÇȽÄê) [[¥½¡¼¥¹:http://tsuyobi.heteml.jp/html/javascript/enchantjs/samples/05.js]]¡¢[[¥Ç¥â:http://tsuyobi.heteml.jp/html/javascript/enchantjs/samples/05.html]]
-Åö¤¿¤êȽÄê(¥é¥¤¥Ö¥é¥ê¤Î¥á¥½¥Ã¥É¤ÇȽÄê) [[¥½¡¼¥¹:http://tsuyobi.heteml.jp/html/javascript/enchantjs/samples/06.js]]¡¢[[¥Ç¥â:http://tsuyobi.heteml.jp/html/javascript/enchantjs/samples/06.html]]
-¥­¥ã¥é¥¯¥¿¡¼¥¢¥Ë¥á¡¼¥·¥ç¥ó¤ÎÊýË¡ [[²òÀâ:http://d.hatena.ne.jp/nakamura001/20110421/1303383146]]
-¥­¥ã¥é¥¯¥¿¡¼¤ÎÄɲÃÊýË¡ [[²òÀâ:http://d.hatena.ne.jp/nakamura001/20110422/1303491804]]

-¼Ö¤Î°ÜÆ°½èÍý [[²òÀâ:http://d.hatena.ne.jp/nakamura001/20110423/1303565014]]
-¥ì¥¤¥ä¡¼¤ÎÁ°¸å´Ø·¸¤ò¹Íθ¤·¤¿¥­¥ã¥é¥¯¥¿¡¼ÄɲÃÊýË¡ [[²òÀâ:http://d.hatena.ne.jp/nakamura001/20110423/1303579051]]
-ÊüʪÀþ¾õ¤Ëʪ¤òÅꤲ¤ëÊýË¡ [[²òÀâ:http://d.hatena.ne.jp/nakamura001/20110503/1304433222]]

*git [#ecca0cf8]

-[[ycatch/test_enchant.js - GitHub:https://github.com/ycatch/test_enchant.js]]



¥È¥Ã¥×   °ìÍ÷ ñ¸ì¸¡º÷ ºÇ½ª¹¹¿·   ¥Ø¥ë¥×   ºÇ½ª¹¹¿·¤ÎRSS