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

JavaScript/tmlib.js ¤Î¥Ð¥Ã¥¯¥¢¥Ã¥×¥½¡¼¥¹(No.22)

¼¡¤Î¥¤¥Ù¥ó¥È¤Ë»²²Ã¤·¤Æ¿§¡¹¶µ¤¨¤Æ¤¤¤¿¤À¤­¤Þ¤·¤¿¡£~
[[¡ÚTechBuzz¡Ûtmlib.js hackthon #1 ¡ÁJavaScript ¤ò¤è¤ê»È¤¤¤ä¤¹¤¯, ¤è¤êÊØÍø¤Ë, ¤½¤·¤Æ¤è¤êË­¤«¤Ë¤ò¥â¥Ã¥È¡¼¤È¤¹¤ë¡Ötmlib.js¡×¤Î¥Ï¥Ã¥«¥½¥ó¥¤¥Ù¥ó¥È³«ºÅ¡Á>http://atnd.org/events/34279]]~
[[¥¹¥é¥¤¥É¥·¥ç¡¼>http://www.rvl.io/phi/tmlibjs_hackathon/fullscreen#/]]
~
tmlib.js¤È¤ÏPC/iPhone/Android¤Ê¤É¤Î¥Ö¥é¥¦¥¶¤ÇÆ°¤¯web¥¢¥×¥ê¤ò³«È¯¤Ç¤­¤ëJavaScript¥é¥¤¥Ö¥é¥ê¤Ç¤¹¡£
¤â¤Á¤í¤ó¥Æ¥­¥¹¥È¥¨¥Ç¥£¥¿¤ÈFTP¥½¥Õ¥È¤È¤«¤Ç³«È¯¤Ç¤­¤ë¤Î¤Ç¤¹¤¬¡¢º£²ó¤Ïjsdo.it¤È¤¤¤¦¥Ö¥é¥¦¥¶¾å¤Çhtml/css/JavaScript¤Ê¤É¤Î³«È¯¤¬¹Ô¤¨¤ëweb¥µ¡¼¥Ó¥¹¤Ç³«È¯¤·¤Þ¤·¤¿¡£
¤³¤Á¤é¤¬Ìܤ«¤é¥¦¥í¥³¤Ç¤·¤Æ¡¢¼¡¤Î¤è¤¦¤Ê¼ê½ç¤Ç´Êñ¤Ë³«È¯¤Ç¤­¤Þ¤·¤¿¡£
+twitter, facebook¤Ê¤É¤Çjsdo.it¤Ë¥í¥°¥¤¥ó
+¼«Ê¬ÍѤΥե©¥ë¥À̾¤òÆþ¤ì¤ë(»ä¤Ïpapuujp)
+Start coding¥Ü¥¿¥ó¤ò²¡¤¹¤È¡¢ºÇÄã¸Â¤Îindex.html, index.js, style.css¤¬¥µ¡¼¥Ð¾å¤Çºî¤é¤ì¡¢¥Ö¥é¥¦¥¶¤ÇÊÔ½¸²Äǽ¤È¤Ê¤ë
+ +¥Ü¥¿¥ó¤Ç»È¤¤¤¿¤¤JavaScript¥é¥¤¥Ö¥é¥ê(jQuery Mobile, tmlib.js, enchant.js¤Ê¤É)¤òÄɲ乤ë
+index.js¤Ëºî¤ê¤¿¤¤¥³¡¼¥É¤ò½ñ¤¤¤Æ¡¢command + s(mac)¤äcontrol + s(windows)¤ÇÊݸ¤¹¤ë¤È¡¢¥×¥ì¥Ó¥å¡¼¥¦¥£¥ó¥É¥¦¤Çɽ¼¨¤µ¤ì¤ë

²¿¤¬¤¤¤¤¤«¤È¤¤¤¦¤È¡¢FTP¤Ç¥¢¥Ã¥×¤·¤Ê¤¯¤Æ¤â¥µ¡¼¥Ð¾å¤Ç¤¹¤°¤Ë¸ø³«¤µ¤ì¤¿¾õÂ֤ǻ¤ë¤³¤È¤Ç¤¹¡£
Î㤨¤Ðº£²óºî¤Ã¤¿¥µ¥ó¥×¥ë¤Ï¤³¤Á¤é¤È¤Ê¤ê¤Þ¤¹¡£¥Þ¥¦¥¹¤ä¥¹¥Þ¥Û¾å¤Î»Ø¥¹¥é¥¤¥É¤Ç¼«µ¡¤òº¸±¦¤ËÆ°¤«¤·¡¢À±¤òÈò¤±¤ë¥²¡¼¥à¤Ç¤¹¡£~
http://jsrun.it/papuujp/star-game2
~
¥½¡¼¥¹¤â¸ø³«¤Ç¤­¤Æ¡¢¤³¤Á¤é¤È¤Ê¤ê¤Þ¤¹¡£Èó¸ø³«¤È¤¹¤ë¤³¤È¤â²Äǽ¤Ç¤¹¡£~
http://jsdo.it/papuujp/star-game2
~
jsdo.it¤ò»È¤¦¤ÈiPad¤Ç¤âweb¥¢¥×¥ê³«È¯¤¬¹Ô¤Ê¤¨¤Þ¤¹¤·¡¢JavaScript¤äjQuery Mobile¤Ê¤É¤Î¼Â½¬·Á¼°¤ÎÊÙ¶¯²ñ¤È¤«¤Ç¤â¼ê·Ú¤Ë»È¤¨¤½¤¦¤Ç¤¹¡£~
¡Ê¥Ç¥Ð¥Ã¥°µ¡Ç½¤¬¼å¤¤¤Î¤Ç¡¢¤½¤Á¤é¤ÏGoogle Chrome Developer¥Ä¡¼¥ë¤ò°ì½ï¤Ë³«¤±¤Ð¤¤¤¤¤È¤¤¤¦¤³¤È¤â¶µ¤¨¤Æ¤¤¤¿¤À¤­¤Þ¤·¤¿¡£¤È¤Æ¤âÊØÍø¤Ç¤·¤¿¡Ë~
~
tmlib.js¼«¿È¤Ï¼¡¤Î¤è¤¦¤Ë¿§¡¹¤Ê²ÄǽÀ­¤ò´¶¤¸¤Þ¤·¤¿¡£
-¼ê·Ú¤Ë»î¤»¤ë
-¥¢¥Ë¥á¡¼¥·¥ç¥ó¤È¤«¤¬ÆÀ°Õ
-¥¹¥Þ¥Û¥¿¥Ã¥Á¤äPC¤Ç¤Î¥Þ¥¦¥¹Áàºî¤Î°ã¤¤¤òµÛ¼ý¤·¤ÆξÂбþ¤Îweb¥¢¥×¥ê¤òºî¤ì¤ë
-AppStore¤È¤«¤Ë¸ø³«¤·¤Ê¤¤¤Ç¤â¤¹¤°¤Ë¥ê¥Ã¥Á¤Êweb¥¢¥×¥ê¤ò¸ø³«¤Ç¤­¤ë
-facebook¥¢¥×¥ê¤âºî¤ì¤½¤¦
-Titanium Mobile¤ÎWebView¤ËÆþ¤ì¤Æ¡¢²èÌÌɽ¼¨¤ò¥ê¥Ã¥Á¤Ë»È¤¨¤½¤¦
~
tmlib¤Ç²¿¤¬ºî¤ì¤ë¤«¤Ï¡¢¥Ô¥ó¤­¤ê¤Ç¤¹¤¬¼¡¤Ç¤ª»î¤·¤¯¤À¤µ¤¤¡£~
http://jsdo.it/search?q=tmlib



*¥¹¥Ë¥Ú¥Ã¥È
**¥á¥¤¥ó½èÍý
 // main ½èÍý
 tm.main(function() {
     alert("tmlib.js ¤Á¤ã¤ó¤È»È¤¨¤Æ¤ë¤è¡Á¤ó¢ö");
 });



**¥¯¥é¥¹ÄêµÁ
 var Hoge = tm.createClass({
     init: function(num) {
         this.num = num;
     },
     toString: function() {
         return "»ä¤Î¿ôÃͤÏ{num}¤Ç¤¹!!".format(this);
     }
 });
 var hoge = Hoge(128);
 document.write(hoge.toString());
 document.write("<br />");



**¥¨¥Í¥ß¡¼¥¯¥é¥¹ÄêµÁ
ÇÛÎóÊÑ¿ôenemyList¤ò»È¤Ã¤¿Å¨½èÍý¤¬ÊÙ¶¯¤Ë¤Ê¤Ã¤¿¤Î¤Ç¥½¡¼¥¹°ìÉô¤ò°úÍѤ·¤Þ¤·¤¿¡£¼¡¤ÎÅÀ¤ËÃí°Õ¤·¤Æ¸«¤ë¤ÈÊÙ¶¯¤Ë¤Ê¤ê¤Þ¤¹¡£
-enemyList¤ò½é´ü²½¤¹¤ë°ÌÃÖ ... ¥á¥¤¥ó¥·¡¼¥ó¤Î½é´ü²½½èÍý
-enemyList¤ÎÃæ¤ËÆþ¤ì¤ëEnemy¥¯¥é¥¹¤ÎÄêµÁÊýË¡
-Enemy¥¤¥ó¥¹¥¿¥ó¥¹¤ÎÀ¸À®¡¢¥·¡¼¥ó¤ª¤è¤ÓenemyList¤Ø¤ÎÄɲÃ
-Enemy¥¤¥ó¥¹¥¿¥ó¥¹¤Î¥·¡¼¥ó¤ª¤è¤ÓenemyList¤«¤é¤Îºï½ü
¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à¤ÎÁ´¥³¡¼¥É¤Ï[[JavaScript/tmlib.js/sample/Èò¤±¥²¡¼(³«»Ï, ½ªÎ»²èÌ̤¢¤ê)]]¤Ë°úÍѤµ¤»¤Æ¤¤¤¿¤À¤¤¤Æ¤Þ¤¹¡£¥ª¥ê¥¸¥Ê¥ë¤Ï[[¤³¤Á¤é>http://jsdo.it/phi/2moF]]¤Ç¤¹¡£

#pre{{
/*
 * ¥°¥í¡¼¥Ð¥ëÊÑ¿ô
 */
var enemyList = null;

/*
 * ¥¨¥Í¥ß¡¼
 */
var Enemy = tm.createClass({
    superClass: tm.app.StarShape,
    // ½é´ü²½
    init: function() {
        this.superInit(PLAYER_SIZE, PLAYER_SIZE);
    },
    // ¹¹¿·
    update: function(app) {
        this.y += 8;         // °ÜÆ°
        this.rotation += 15; // ²óž
        // ºï½üȽÄê
        if (this.y > SCREEN_HEIGHT) {
            this.remove();
            enemyList.erase(this);
        }
    }
});

// ¥á¥¤¥ó¥·¡¼¥ó 
var MainScene = tm.createClass({
    superClass: tm.app.Scene,
    init: function() {
        this.superInit();
        
        enemyList = [];
        
        // ¥×¥ì¥¤¥ä¡¼
        this.player = Player();
        this.addChild(this.player);
        this.player.x = SCREEN_CENTER_X;
        this.player.y = SCREEN_HEIGHT-100;
    },
    
    update: function() {
        // ¥¨¥Í¥ß¡¼À¸À®
        if (app.frame % 8 == 0) {
            // ¥¨¥Í¥ß¡¼
            var enemy = Enemy();
            enemy.x = tm.util.Random.randint(0, SCREEN_WIDTH);
            enemy.y = -50;
            this.addChild(enemy);  // ¥·¡¼¥ó¤ËÄɲÃ
            enemyList.push(enemy); // ¥ê¥¹¥È¤ËÄɲÃ
        }
        
        // ¥×¥ì¥¤¥ä¡¼, ¥¨¥Í¥ß¡¼¾×ÆÍȽÄê
        for (var i=0,len=enemyList.length; i<len; ++i) {
            var enemy = enemyList[i];
            // ¾×ÆÍȽÄê
            if (this.player.isHitElement(enemy)) {
                // Game Over
                app.replaceScene(ResultScene());
            }
        }
    }
});
}}




*¥ê¥ó¥¯
-[[tmlib.js¤Î¥µ¥ó¥×¥ë>http://phi1618.github.io/tmlib.js/test/app/?tests.benchmark.CrashScene]]
-[[tmlib.js API Documentation GitHubÈÇ>http://phi1618.github.com/tmlib.js/docs/]]
-[[tmlib.js API Documentation TM LifeÈÇ>http://tmlife.net/lib/tmlib/doc/index.html]]
-[[tmlib.js latest | jsdo.it>http://jsdo.it/phi/tmlib.js-latest]] ... tmlib.js ºÇ¿·ÈǤΥ½¡¼¥¹
-[[tmlib.js | GitHub>https://github.com/phi1618/tmlib.js/]]
-[[tmlib.js / starter / main.js | GitHub>https://github.com/phi1618/tmlib.js/blob/develop/starter/main.js]] ... tmlib.js¤Î¥·¥ó¥×¥ë¤Ê¥µ¥ó¥×¥ë¡£tm.app¤ò»È¤Ã¤¿²èÌ̹¹¿·¤ò´Þ¤ß¡¢¤¿¤á¤Ë¤Ê¤ë¥µ¥ó¥×¥ë¤Ç¤¹¡£
-[[tmlib.js / plugins / fade.tm.js | GitHub>https://github.com/phi1618/tmlib.js/blob/develop/plugins/fade.tm.js]] ... tmlib.js¤ÈÁȤ߹ç¤ï¤»¤ë¤È¡¢¥Õ¥§¡¼¥É¥¤¥ó¡¦¥Õ¥§¡¼¥É¥¢¥¦¥È¤¬´Êñ¤Ë»È¤¨¤ë¥×¥é¥°¥¤¥ó¡£¤ªµ¤¤ËÆþ¤ê¢ö
-[[phi»á¤Îjsdo.it¸ø³«web¥¢¥×¥ê>http://jsdo.it/phi]]
-[[TM Life tmlib.js¥«¥Æ¥´¥ê>http://tmlife.net/tag/tmlib-js]]
-[[JavaScript ¥é¥¤¥Ö¥é¥ê tmlib.js ¤ò»È¤Ã¤Æ10ÉäÇÍ·¤Ù¤ë¥²¡¼¥à¤òºî¤ê¤Þ¤·¤¿ | TM Life>http://tmlife.net/programming/javascript/javascript-tmlib-js-10-play-game-create.html]] ... Enclose Circle¥²¡¼¥à¤Î¥½¡¼¥¹¡£¥á¥Ë¥å¡¼¤È¤«¥Õ¥§¡¼¥É½èÍý¤È¤«¤¬¤«¤Ã¤³¤è¤¯¤Æ»²¹Í¤È¤Ê¤ê¤Þ¤¹¡£
-[[tmlib.js ÅÜÞ¹¤Î 100 ¥µ¥ó¥×¥ë!! &#8211; Graphics(HTML5 Canvas) ÊÔ | TM Life>http://tmlife.net/programming/javascript/tmlib-js-dotou-100-sample-graphics-html5-canvas.html]]
-[[¡Ötmlib.js ÅÜÞ¹¤Î 100 ¥µ¥ó¥×¥ë!!¡×¤ò»î¤¹ | ³ÚͷƲ>http://rakuyudo.com/tag/tmlib-js/]]
-[[JavaScriptÃÆËë¥é¥¤¥Ö¥é¥ê>https://github.com/daishihmr/bulletml.js]]
-[[¥µ¥ó¥×¥ë¤Çºî¤Ã¤¿¡ùÈò¤±¥²¡¼¥à+¥á¥Ë¥å¡¼¡¢¥²¡¼¥à¥ª¡¼¥Ð¡¼²èÌÌ>http://jsdo.it/phi/2moF]]
-[[¥µ¥ó¥×¥ë¤Çºî¤Ã¤¿¡ùÈò¤±¥²¡¼¥à¤ò¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à¤Ëºî¤êÂؤ¨¤¿¥³¡¼¥É>http://jsdo.it/alkaid_72th/jsQ3]]
-[[JavaScript¥é¥¤¥Ö¥é¥ê¡Ötmlib.js¡×¤Ç¥·¥ó¥×¥ë¤Ê¥¿¥Ã¥Á¥²¡¼¥à¤òºî¤ë¥Á¥å¡¼¥È¥ê¥¢¥ë | TEST CORDING>http://testcording.com/?p=1342]] ... ¡ù¡ù¡ùScene¤ò»È¤Ã¤¿¥²¡¼¥àºîÀ®ÊýË¡¤Ë¤Ä¤¤¤Æ¾Ü¤·¤¯²òÀ⤵¤ì¤Æ¤¤¤Þ¤¹¡£bgm, seºÆÀ¸ÊýË¡¤ä¡¢¥Í¡¼¥à¥¹¥Ú¡¼¥¹¤ÎÀÚ¤êÊý¡¢¥°¥í¡¼¥Ð¥ëÊÑ¿ô¤Î¥Õ¥¡¥¤¥ë¤òʬ³ä¤·¤¿¤êÂ礭¤¤¥×¥í¥°¥é¥à¤òÀ߷פ¹¤ë»²¹Í¤Ë¤Ê¤ê¤Þ¤¹¡£
-[[¥Ñ¥º¥ë¥²¡¼¥à - tmlib.js 0.1.5 | phi»á>http://jsdo.it/phi/qwbs]]
-[[JavaScript ¥é¥¤¥Ö¥é¥ê¤Î tmlib.js ¤ò»È¤Ã¤Æ iPhone ¤Î¥²¡¼¥à¤ò Web ¤Ë°Ü¿¢¤·¤Æ¤ß¤¿ | ¤Ê¤ó¤«¤â¤¦¼Â¸³Åª>http://craft-notes.com/iphone/cocos2d/tmlib-js-%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6-iphone-%E3%81%AE%E3%82%B2%E3%83%BC%E3%83%A0%E3%82%92-web-%E3%81%AB%E7%A7%BB%E6%A4%8D%E3%81%97%E3%81%A6%E3%81%BF%E3%81%9F/]] ... tmlib.js¤ÎÊØÍø¤ÊÅÀ¤ä³µÍפˤĤ¤¤Æ²òÀâ
-[[tmlib.js¤Ç¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à¤òºî¤ë¥Á¥å¡¼¥È¥ê¥¢¥ë | ¤Ê¤ó¤«¤â¤¦¼Â¸³Åª>http://goo.gl/dIvPl]] ... tmlib.js¤Ç¤Î¥¯¥é¥¹ÄêµÁÊýË¡¡¢¥·¡¼¥óÍøÍÑÊýË¡¡¢JSON¤Ç¤Î¥é¥Ù¥ëÄêµÁÊýË¡¡¢¥Ä¥¤¡¼¥ÈÊýË¡¤Ê¤É³Æ¼ï¥Æ¥¯¥Ë¥Ã¥¯
-[[tmlib + box2dweb | jsdo.it v416»á >http://jsdo.it/v416/8Nc4]] ... tmlib.js¤Èbox2d¤òÁȤ߹ç¤ï¤»¤ÆʪÍý¥·¥ß¥å¥ì¡¼¥·¥ç¥ó¤·¤¿¥µ¥ó¥×¥ë
-[[¥Þ¥Ã¥×¥Á¥Ã¥×ɽ¼¨ + ¥¹¥×¥é¥¤¥È¥¢¥Ë¥á¡¼¥·¥ç¥ó - tmlib.js | jsdo.it>http://jsdo.it/omatoro/sVun]] ... ¿§¡¹±þÍѤǤ­¤½¤¦
-[[tmlife-storage | phi»á>https://code.google.com/p/tmlife-storage/source/browse/trunk/gl-enchant-js/avoid9/lib/tmlib-js/tmlib.js?r=370]] ... JavaScript¤ÎÊØÍø´Ø¿ô¡©
-[[JavaScript¥é¥¤¥Ö¥é¥ê¡Ötmlib.js¡×¤Ç¥í¡¼¥°¥é¥¤¥¯¤òºî¤Ã¤Æ¤ß¤¿ | TEST CORDING>http://testcording.com/?p=1251]]
-[[JavaScript+canvas¤ÇiPhoneÉ÷¥Ô¥Ã¥«¡¼¤òºî¤Ã¤Æ¤ß¤¿ | TEST CORDING>http://testcording.com/?p=1225]]
-[[tmlib.js ÆþÌç ¥¹¥é¥¤¥É¥Ñ¥º¥ë¤¬´Êñ¤Ë¤Ç¤­¤Á¤ã¤Ã¤¿ | Nobuhide Tsuda»á>http://vivi.dyndns.org/tech/puzzle/SBP.html]] ¡ù¡ù
-[[canvas¤ÇiPhoneÉ÷¥­¡¼¥Ü¡¼¥É(¸«¤¿ÌܤÀ¤±) | jsdo.it phi»á>http://jsdo.it/omatoro/zp3A]] ... tmlib.js¤Ç¥Ü¥Ã¥¯¥¹¤Î±Æ¤òÉÁ²è¤¹¤ë¤È¤­¤Î»²¹Í¤È¤Ê¤ê¤Þ¤¹
-[[¥Þ¥Ã¥×¥Á¥Ã¥×ɽ¼¨ + ¥¹¥×¥é¥¤¥È¥¢¥Ë¥á¡¼¥·¥ç¥ó | omatoro»á jsdo.it>http://jsdo.it/omatoro/sVun]]
-[[tmlib.js - ¥É¥é¥Ã¥°¾ðÊó¤ò¼èÆÀ¤Ç¤­¤ë¤è¤¦³ÈÄ¥ | omatoro»á jsdo.it>http://jsdo.it/omatoro/hNBP]]
-[[³°Éô¤ÎSpriteSheet¥Ç¡¼¥¿(JSON)¤òÆɤ߹þ¤à - tmlib.js - 0.1.7 | jsdo.it phi»á>http://jsdo.it/phi/qXgX]]
-[[»ä¤¬enchant.js¤Ç¤Ï¤Ê¤¯tmlib.js¤Ç¥²¡¼¥à¤òºî¤ë5¤Ä¤ÎÍýͳ | TEST CORDING>http://testcording.com/?p=1433]]
-[[JavaScript¥é¥¤¥Ö¥é¥ê¡Ötmlib.js¡×¤Çºî¤Ã¤¿¥í¡¼¥°¥é¥¤¥¯¥²¡¼¥à¤ò²þÎɤ·¤Æ¤ß¤¿ - RoguePlus | TEST CORDING>http://testcording.com/?p=1283]]
-[[¼ê΢·õºî¤Ã¤Æ¤ß¤¿ - tmlib.js 0.1.6 | jsdo.it phi»á>http://jsdo.it/phi/5U94]] ... ¼ê΢·õ¤òÅꤲ¤ë»þ¤Î¥¹¥ï¥¤¥×Áàºî¤Ç¿§¡¹±þÍѤǤ­¤½¤¦¤Ç¤¹¡£
-[[tmlib.js ¥²¡¼¥à¥×¥í¥°¥é¥ß¥ó¥°¥Á¥å¡¼¥È¥ê¥¢¥ë - º£Î®¹Ô¤Î¥Õ¥é¥Ã¥È¥Ç¥¶¥¤¥ó¤ò»È¤Ã¤¿¥¿¥Ã¥Á¥²¡¼¥à¤òºî¤í¤¦ | TM Life>http://tmlife.net/programming/javascript/tmlib-js-flat-design-game-tutorial.html]]
-[[Tweener sample - tmlib.js 0.1.7 | jsdo.it phiȇ>http://jsdo.it/phi/wYnm]]
-[[Çúȯ¤¯¤ó | jsdo.it>http://jsdo.it/daishi.hmr/scAh]] ... ²èÁü(SpriteSheet)¤È¤·¤ÆÊݸ¤Ç¤­¤ë¡£