OSDN Git Service

キャラの動きの調整と当たり判定bug fix
[h58pcdgame/GameScriptCoreLibrary.git] / www / index_local_debug.html
index 7b8de2f..177487a 100644 (file)
@@ -9,20 +9,32 @@
 <script type="text/javascript">
 
 var mainManager = null;
-var run = function() {
+onload = function()
+{
+       var val = localStorage.getItem("savedat");
+       if(val)
+       {
+               document.getElementById("stageCode").value = val;
+       }
        
        //ゲームマネージャー初期化
        mainManager = new GameManager();
+       
+};
+
+var run = function(){
+
        var stage = document.getElementById("stageCode").value;
        mainManager.loadStageFromLocal(stage, null);
 };
 
-function reset(){
-       obj=document.getElementById("MainArea");
-       for(var item in obj.childNodes)
-       {
-               obj.removeChild(item);
-       }
+function stop(){
+       mainManager.stopStage();
+}
+
+function save()
+{
+       localStorage.setItem('savedat', document.getElementById('stageCode').value);
 }
 
 </script>
@@ -35,65 +47,51 @@ function reset(){
        <div style="position: absolute; left: 650px; top: 0; right: 0; z-index: 1">
                <form>
                <textarea id="stageCode" rows="60" style="width: 100%; height: 90%">
-               
-//ステージの設定
-//     グローバル名前空間にmainManagerがすでに存在する状況下で呼ばれる。
-//     最初の行で新たなインスタンスを生成し、最後のreturnでそれを返す。
 
-stage = new GameStage();
 
-stage.moveForce = 50;
 
-//関数のオーバーライド
-stage.runStage = function(){
-       //元々定義されていた、疑似スーパークラス(prototype)の関数を呼び出す。
-       GameStage.prototype.runStage.apply(this, []);
-       for(i = 0; i < 2; i++){
-               aCircle = new CharacterClass(this);
-               aCircle.origin.x = 16 + 16 * i;
-               aCircle.origin.y = 16 + 16 * i;
-               aCircle.frame.origin.x = - (8 + i);
-               aCircle.frame.origin.y = - (8 + i);
-               aCircle.frame.size.x = 2 * (8 + i);
-               aCircle.frame.size.y = 2 * (8 + i);
-               
-               this.addStageObject(aCircle);
-       }
-}
-stage.timerTick = function(){
-       GameStage.prototype.timerTick.apply(stage, []);
-       if(this.manager.keyState.upArrow){
-               //上カーソル
-               for(i = 0; i < this.stageObjectList.length; i++){
-                       this.stageObjectList[i].movingSpeed.y -= this.moveForce;
-               }
-       }
-       if(this.manager.keyState.downArrow){
-               //下カーソル
-               for(i = 0; i < this.stageObjectList.length; i++){
-                       this.stageObjectList[i].movingSpeed.y += this.moveForce;
-               }
-       }
-       if(this.manager.keyState.leftArrow){
-               //左カーソル
-               for(i = 0; i < this.stageObjectList.length; i++){
-                       this.stageObjectList[i].movingSpeed.x -= this.moveForce;
-               }
-       }
-       if(this.manager.keyState.rightArrow){
-               //右カーソル
-               for(i = 0; i < this.stageObjectList.length; i++){
-                       this.stageObjectList[i].movingSpeed.x += this.moveForce;
-               }
-       }
+var stgObjects = {
+    a : {base:BlockClass,args:'1190.png'},
+    _ : null
+};
 
+var stgInfo = {
+    width: 6400,
+    height: 480
 };
 
-stage;
+with(stgObjects) {
+    var tbl = [
+        [],
+        [],
+        [],
+        [],
+        [],
+        [],
+        [],
+        [],
+        [],
+        [],
+        [],
+        [],
+        [],
+        [],
+        [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],
+    ];
+}
+
 
-               
+var stage = new PCDSLStageClass(stgInfo, tbl, null);
+var main = new MainCharacterClass(stage, ["kuma1.png","kuma2.png","kuma3.png"]);
+
+main.origin.x = 50;
+main.origin.y = 250;
+stage.operatingCharacter = main;
+stage.addStageObject(main);
+stage;
                </textarea>
-               <input type="button" onclick="run(); return false;" value="run"><input type="button" onclick="reset(); return false;" value="reset">
+               <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>
+               ※すべてのコードを消したうえでセーブし更新すると最初のコードに戻ります。
                </form>
        </div>
 </body>