4 <meta http-equiv="X-UA-Compatible" content="IE=9">
6 <title>HTML5Test</title>
7 <style type="text/css">
12 font-family: Consolas, 'Courier New', Courier, Monaco, monospace;
17 <script type="text/javascript" src="./corelib/header.js" charset="UTF-8"></script>
18 <script type="text/javascript">
20 var mainManager = null;
23 var val = localStorage.getItem("savedat");
26 document.getElementById("stageCode").value = val;
30 mainManager = new GameManager();
36 var stage = document.getElementById("stageCode").value;
37 mainManager.loadStageFromLocal(stage, null);
41 mainManager.stopStage();
46 localStorage.setItem('savedat', document.getElementById('stageCode').value);
52 <div id="MainArea" style="position: inline"></div>
53 <div id="Resources"></div>
54 <div style="z-index: 1; top: 520px; position: absolute; left: 0;">
55 <form><textarea id="DebugText" rows="8" cols="64"></textarea></form></div>
56 <div style="position: absolute; left: 650px; top: 0; right: 0; z-index: 100">
58 <textarea id="stageCode" rows="60" style="width: 100%; height: 90%; z-index: 100">
61 // StageObjectsはステージに文字シンボルとして配置したいオブジェクト定義の連想配列である。
62 // StageObjectの各項目の指定方法は以下の二通りある。
63 // ・クラス名指定 ... コンストラクタがに引数が不要な時
66 // a : {base : FreeItemClass, //鋳型となるクラス名
67 // args : '1190.png', //コンストラクタに指定する引数(一つだけの場合) stageは自動で指定されるので不要
68 // args : ['1190.png', callback], //二つ以上の場合。やはり第一引数のstageは不要
69 // prop : {times : 1}, //各インスタンスに指定したいプロパティの連想配列。(省略可)
70 //この例ではaFreeItemClass.timesプロパティを1に指定している
71 // adjust : [-50, 50]}, //位置の微調整。必ずX座標、Y座標の相対位置を示す配列にする。(省略可)
75 // BlockClass : 普通のブロック。 引数に画像名を指定
76 a : {base:BlockClass,args:'1190.png'},
78 // SlopeBlockClass : 当たり判定が斜めのブロック。
79 // 引数 : 画像名, 当たり判定領域左側の開始位置のブロック上辺からの高さ, 当たり判定領域右側の...
80 // たとえば、この例のように 0, 32 と指定すれば右下がりの坂になり、32, 0と指定すれば左下がり、 16, 16と指定すれば半分の高さの長方形になる
81 // enableBlockMode : 当たり判定領域をデバッグ表示する。
82 b : {base:SlopeBlockClass,args:['1191.png',0,32],prop:{enableDebugMode:true}},
84 // FreeItemClass : キャラが取得するとコールバックが実行されるアイテム
85 // callback : 誰かに取得されたときに発生するコールバック。アタックした人、そのアタック直後のx, y座標が引数にセットされる。
86 // times : 取得できる回数で、-1で無限。
87 c : {base:FreeItemClass,args:["1234.png",callBack],prop:{times:1}},
89 // 何もブロックを置かない位置のためにかならずこのようなエントリーを記述
93 // FreeItemClassのコールバック
94 function callBack(obj, obj_x, obj_y)
96 if(obj instanceof MainCharacterClass){
104 background: "back2.png" //背景画像。横幅は640pxである必要はない。
122 [_,_,_,b,_,_,_,_,_,c],
123 [a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a],
128 var stage = new PCDSLStageClass(stgInfo, tbl, null);
131 var main = new MainCharacterClass(stage, [["kuma1.png","kuma2.png","kuma3.png", "kuma4.png", "kuma3.png", "kuma2.png"], ["kumaready.png"]]);
136 stage.operatingCharacter = main;
137 stage.addStageObject(main);
143 <input type="button" onclick="run(); return false;" value="run"><input type="button" onclick="stop(); return false;" value="stop"><input type="button" onclick="save(); return false;" value="save"><br>
144 ※すべてのコードを消したうえでセーブし更新すると最初のコードに戻ります。