OSDN Git Service

Merge branch 'master' of https://scm.sourceforge.jp/gitroot/h58pcdgame/GameScriptCore...
authorttwilb <ttwilb@users.sourceforge.jp>
Wed, 4 Sep 2013 12:26:28 +0000 (21:26 +0900)
committerttwilb <ttwilb@users.sourceforge.jp>
Wed, 4 Sep 2013 12:26:28 +0000 (21:26 +0900)
Conflicts:
www/corelib/header.js

30 files changed:
documents/stages.txt
www/audio/eritou.mp3 [new file with mode: 0644]
www/auth.php
www/corelib/classes/BakingOvenObjectClass.js
www/corelib/classes/FreeItemClass.js
www/corelib/classes/MessageItemClass.js
www/corelib/classes/SlopeBlockClass.js
www/corelib/classes/StageObjectClass.js
www/corelib/classes/WarpItemClass.js
www/corelib/core.js
www/corelib/coredraw.js
www/corelib/coresubc.js
www/corelib/header.js
www/header.php
www/images/lotus1.png [new file with mode: 0644]
www/images/lotus2.png [new file with mode: 0644]
www/images/stair.png [new file with mode: 0644]
www/images/stair2.png [new file with mode: 0644]
www/images/stair3.png [new file with mode: 0644]
www/images/warning.png [new file with mode: 0644]
www/monitor.html
www/monitor.php
www/stage/city.js
www/stage/cselect.js
www/stage/onieasy.js [new file with mode: 0644]
www/stage/panya.js [new file with mode: 0644]
www/stage/pengin.js
www/stage/sselect.js
www/stage/test.js [new file with mode: 0644]
www/update.php

index c01060b..9eb26fc 100644 (file)
@@ -1,6 +1,6 @@
 login
 cselect // \83L\83\83\83\89\91I\91ð
-first  //\8aÈ\92P\82È\83X\83e\81[\83W
+onieasy        //\8aÈ\92P\82È\83X\83e\81[\83W
 panya  //\83p\83\93\82â\82Ì\82 \82é\83X\83e\81[\83W
 sselect        //\83X\83e\81[\83W\91I\91ð
 ... 
diff --git a/www/audio/eritou.mp3 b/www/audio/eritou.mp3
new file mode 100644 (file)
index 0000000..ae81727
Binary files /dev/null and b/www/audio/eritou.mp3 differ
index 983bc74..b59eb44 100644 (file)
@@ -143,7 +143,7 @@ if(isset($_GET['action'])){
                                        exit("eee");
                                }
                                $id = $_GET['id'];
-                               deleteUserStageObjectAll($db, $id);
+                               //deleteUserStageObjectAll($db, $id);
                                updateUserStage($db, $id, $name);
                                exit("success");
                }
index d316b53..b389904 100644 (file)
@@ -34,7 +34,6 @@ var BakingOvenObjectClass = function(ownerStage, args){
        {
                this.checkTouchingDirection();
                if((this.touchingDirection & CollideBody) == CollideBody){
-                       if(!this.ownerStage.manager.UIManager.keyState.select) this.selectKeyPushed = false;
                        if(this.ownerStage.manager.UIManager.keyState.select && !this.isSelecting && !this.selectKeyPushed){
                                this.selectKeyPushed = true;
                                var that = this;
@@ -121,6 +120,7 @@ var BakingOvenObjectClass = function(ownerStage, args){
                                        that.cookSound.pause();
                                }
                        }
+                       if(!this.ownerStage.manager.UIManager.keyState.select) this.selectKeyPushed = false;
                }
                if(this.isBaking){
                        //焼き途中
index 1262def..372290e 100644 (file)
@@ -16,6 +16,8 @@ var FreeItemClass = function(stage, args){
        //\83A\83C\83e\83\80\82ð\8eæ\93¾\82Å\82«\82é\89ñ\90\94\81B-1\82Å\96³\8cÀ
        this.times = -1;
        
+       this.size = new Point2D(32, 32);
+       
        //\83A\83C\83e\83\80\82ð\8eæ\93¾\82µ\82½\82Æ\82«\82É\8cÄ\82Î\82ê\82é\83R\81[\83\8b\83o\83b\83N\81B\88ø\90\94\82É\83A\83^\83b\83N\82µ\82Ä\82«\82½\83I\83u\83W\83F\83N\83g\82ª\8ew\92è\82³\82ê\82é
        //null\82Å\89½\82à\82µ\82È\82¢\83A\83C\83e\83\80\82É\82È\82é
        this.callback = args[1];
@@ -44,6 +46,7 @@ var FreeItemClass = function(stage, args){
                        this.ownerStage.mainContext.drawImage(this.image, x, y, this.size.x, this.size.y);
                        this.ownerStage.mainContext.globalAlpha = 1.0;
                }
+               /*
                if(this.debugMode && this.times > 0){
                        //\8ec\82è\8eæ\93¾\89ñ\90\94\82ð\95\\8e¦
                        this.ownerStage.mainContext.save();
@@ -53,7 +56,9 @@ var FreeItemClass = function(stage, args){
                        drawText(this.ownerStage.mainContext, this.times, x, y - 20);
                        this.ownerStage.mainContext.restore();
                }
+               */
                var tickCount = this.ownerStage.manager.tickCount;
+               /*
                if(this.debugMode && ((tickCount - this.lastTouchedTickCount)< this.touchInterval)){
                        //\8eæ\93¾\82Å\82«\82é\82æ\82¤\82É\82È\82é\82Ü\82Å\82Ì\8ec\82è\8e\9e\8aÔ\82ð\95\\8e¦
                        this.ownerStage.mainContext.save();
@@ -63,6 +68,7 @@ var FreeItemClass = function(stage, args){
                        drawText(this.ownerStage.mainContext, this.touchInterval - (tickCount - this.lastTouchedTickCount), x, y - 32);
                        this.ownerStage.mainContext.restore();
                }
+               */
        },
        debugDraw: function(x, y){
                //\8fÕ\93Ë\83}\83b\83v\82É\95`\89æ
index fb0f70b..ab54054 100644 (file)
@@ -9,3 +9,6 @@ var MessageItemClass = function(ownerStage, args)
        }]]);
        
 }.extend(FreeItemClass);
+
+
+//b : {base:MessageItemClass,args:["Hello!!"]},
\ No newline at end of file
index 5c1c6c0..6aafa00 100644 (file)
@@ -71,7 +71,7 @@ var SlopeBlockClass = function(ownerStage, args)
        },
        draw : function(x, y){
                SlopeBlockClass.base.prototype.draw.apply(this, arguments);
-               
+               /*
                if(this.enableDebugMode)
                {
                        var xz = this.origin.x - x;
@@ -88,6 +88,7 @@ var SlopeBlockClass = function(ownerStage, args)
                        this.ownerStage.mainContext.stroke();
                        this.ownerStage.mainContext.restore();
                }
+               */
        },
        debugDraw: function(x, y){
                var xz = this.origin.x - x;
@@ -106,7 +107,7 @@ var SlopeBlockClass = function(ownerStage, args)
                        this.ownerStage.collisionMapContext.lineTo(x + this.size.x, y + this.collisionRightHeight);
                        this.ownerStage.collisionMapContext.stroke();
                }
-       },
+       }
 });
 //\82±\82Ì\83N\83\89\83X\82Ì\83C\83\93\83X\83^\83\93\83X\82Ìtick\82ð\8cÄ\82Ñ\8fo\82³\82È\82¢\82æ\82¤\82É\90Ý\92è\81i\8d\82\91¬\89»\81j
 SlopeBlockClass.tick = function(){return false;};
index 1f4419e..a4d03df 100644 (file)
@@ -40,8 +40,6 @@ StageObject.prototype = {
                if(this.ownerUID != 0){
                        var c = this.ownerStage.mainContext;
                        c.save();
-                       c.fillStyle = "rgba(255,255,255,0.5)";
-                       c.strokeStyle = "rgba(0, 0, 0, 1)";
                        c.font = "normal 12px sans-serif";
                        drawText(c, this.ownerStage.manager.userManager.getUserNameByUID(this.ownerUID), x, y - 20);
                        c.restore();
@@ -119,7 +117,7 @@ StageObject.prototype = {
                        var cbx1 = this.origin.x + this.size.x - 1 - c.right;
                        var cby1 = this.origin.y + this.size.y - 1 - c.bottom;
                        // CollisionFrame\94Í\88Í\93à\82©\8am\94F
-                       if(obj.isOverlappedWith(cbx0 - r, cby0 - r, cbx1 + r, cby1 + r) && obj !== this){
+                       if(obj.isOverlappedWith(cbx0 - r, cby0 - r, cbx1 + r, cby1 + r) && obj !== this && !obj.isPhantom){
                                //\8fÕ\93Ë\82Ì\89Â\94\\90«\82ª\82 \82é\82Ì\82Å\8am\94F
                                if(obj.isOverlappedWith(cbx0, cby0, cbx1, cby1)){
                                        //body
index fead97e..c00712f 100644 (file)
@@ -3,11 +3,40 @@
 // args[2] : move_to y
 // args[3] : size_x
 // args[4] : size_y
-
-var WarpItemClass = function(){
-       WarpItemClass.base.apply(this, [false, function(main, obj_x, obj_y){
-               
-       }]);
+// args[5] : saveInertia  \8aµ\90«\8fó\91Ô\82ð\95Û\91
+var WarpItemClass = function(stage, args){
+       
+       var moveToX = args[1];
+       var moveToY = args[2];
+       var stgName = args[0];
+       var saveInertia = args[5] != undefined ? args[5] : false;
+       
+       WarpItemClass.base.apply(this, [stage, [false, function(main, obj_x, obj_y){
+               var spdx, spdy;
+               if(saveInertia)
+               {
+                       spdx = stage.userControlledCharacter.movingSpeed.x;
+                       spdy = stage.userControlledCharacter.movingSpeed.y;
+               }
+               if(stgName)
+               {
+                       stage.manager.loadStageFromNetwork(stgName);
+               }
+               var stg = stage.manager.runningStage;
+               if(moveToX != undefined)
+               {
+                       stg.userControlledCharacter.origin.x = moveToX;
+               }
+               if(moveToY != undefined)
+               {
+                       stg.userControlledCharacter.origin.y = moveToY;
+               }
+               if(saveInertia)
+               {
+                       stg.userControlledCharacter.movingSpeed.x = spdx;
+                       stg.userControlledCharacter.movingSpeed.y = spdy;
+               }
+       }]]);
        
        if(args[3])
        {
@@ -17,7 +46,6 @@ var WarpItemClass = function(){
        {
                this.size.y = args[4];
        }
-
 }.extend(FreeItemClass, {
-
+       
 });
\ No newline at end of file
index 3216dfc..85cec06 100644 (file)
@@ -64,7 +64,6 @@ HTMLDivElement.prototype.InitGameManager = function(stageName)
 //
 
 function GameManager(parent, debugTextName){
-       
        //引数チェック
        if(debugTextName == undefined) debugTextName = "DebugText";
        if(parent == undefined) parent = document.getElementById("MainArea");
@@ -91,8 +90,8 @@ function GameManager(parent, debugTextName){
                return null;
        }
        //描画コンテキストの初期設定
-       this.mainContext.fillStyle = "rgba(200,255,200,0.5)";
-       this.mainContext.strokeStyle = "rgba(0, 0, 0, 0.5)";
+       this.mainContext.fillStyle = "rgba(255,255,255,0.5)";
+       this.mainContext.strokeStyle = "rgba(0, 0, 0, 1)";
        this.mainContext.font = "normal 20px sans-serif";
        //実行中のGameStageオブジェクトを格納
        this.runningStage = null;
@@ -169,7 +168,7 @@ GameManager.prototype = {
                                        w.manager.UIManager.clearInput();
                                        w.manager.runningStage.userControlledCharacter.HP = w.manager.runningStage.userControlledCharacter.max_HP;
                                        if(w.manager.runningStageName){
-                                               w.manager.loadStageFromNetwork(w.manager.runningStageName);
+                                               w.manager.loadStageFromNetwork("panya");
                                        } else{
                                                //ローカルモード時は動作を停止させるだけ
                                                w.manager.stopStage();
@@ -195,6 +194,16 @@ GameManager.prototype = {
                if(this.runningStage){
                        this.stopStage();
                }
+               //ステージ名の変更
+               if(this.userID != 0){
+                       console.log(this.runningStageName);
+                       var rq2 = this.networkManager.CreateRequestObject();
+                       //同期モード
+                       rq2.open('GET', URL_PCD_Auth + "?action=chstg&name=" + this.runningStageName + "&id=" + this.userID);
+                       this.networkManager.RequestObjectDisableCache(rq2);
+                       rq2.send(null);
+                       console.log("changed.");
+               }
                //新たに開始するステージの初期化
                //GameManager側の情報をGameStageに渡す。
                stage.manager = this;
@@ -290,6 +299,7 @@ GameManager.prototype = {
                        //runningStageから設定解除することで、イベントの通知は行われなくなる。
                        var aGameStage = this.runningStage;
                        this.runningStage = null;
+                       this.runningStageName = null;
                        //GameStage側の終了処理を行わせる。
                        aGameStage.stopStage();
                        //GameStageインスタンスからGameManagerの情報を削除する。
@@ -335,16 +345,13 @@ GameManager.prototype = {
                if(request.status == 0){
                        alert("ネットワークにアクセスできません。" + request.status + ":" + request.statusText);
                }else if((200 <= request.status && request.status < 300) || (request.status == 304)){
-                       if(this.userID != 0){
-                               var rq2 = this.networkManager.CreateRequestObject();
-                               //同期モード
-                               rq2.open('GET', URL_PCD_Auth + "?action=chstg&name=" + name + "&id=" + this.userID);
-                               this.networkManager.RequestObjectDisableCache(rq2);
-                               rq2.send(null);
-                       }
                        var stage = eval(request.responseText);
-                       this.runStage(stage);
+                       this.stopStage();
                        this.runningStageName = name;
+                       if(this.runningStageName != name){
+                               alert("e");
+                       }
+                       this.runStage(stage);
                }else{
                        alert("サーバーがエラーを返しました。" + request.status + ":" + request.statusText);
                }
index f106b2a..ae7ef9c 100644 (file)
@@ -19,7 +19,7 @@ function drawText(gcontext, text, x, y)
        gcontext.fillRect(x, y, textsize.width, 20);
        gcontext.save();
        gcontext.fillStyle = gcontext.strokeStyle;
-       //fillTextの座標は文字列の左下!
+       //fillText引数の座標は文字列の左下!
        gcontext.fillText(text, x, y + 20 - 1);
        gcontext.restore();
 }
index c709c85..e53dbcf 100644 (file)
@@ -43,149 +43,160 @@ NetworkManager.prototype = {
                rq.setRequestHeader('If-Modified-Since', 'Thu, 01 Jun 1970 00:00:00 GMT');
                
        },
+       sendRequestSync: function(mode, url, data){
+               //同期モード
+               var q = this.CreateRequestObject();
+               q.open(mode, url, false);
+               q.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
+               this.RequestObjectDisableCache(q);
+               q.send(data);
+               if(q.status == 0){
+                       alert("ネットワークにアクセスできません。" + q.status + ":" + q.statusText);
+               }else if((200 <= q.status && q.status < 300) || (q.status == 304)){
+                       var res = q.responseText;
+                       if(isValidResponseText(res)){
+                               return res;
+                       }
+               }else{
+                       alert("サーバーがエラーを返しました。" + request.status + ":" + request.statusText);
+               }
+               return null;
+       },
+       sendRequestAsync: function(mode, url, data, callback){
+               //非同期モード
+               //callback(res);
+               var q = this.CreateRequestObject();
+               var that = this;
+               q.onreadystatechange = function(){
+                       if(q.readyState == 4){
+                               if(q.status == 0){
+                                       alert("ネットワークにアクセスできません。" + q.status + ":" + q.statusText);
+                               }else if((200 <= q.status && q.status < 300) || (q.status == 304)){
+                                       var res = q.responseText;
+                                       if(isValidResponseText(res)){
+                                               callback(res);
+                                       }
+                               }else{
+                                       alert("サーバーがエラーを返しました。" + request.status + ":" + request.statusText);
+                               }
+                       }
+               };
+               q.open(mode, url, true);
+               q.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
+               this.RequestObjectDisableCache(q);
+               q.send(data);
+       },
        sync: function(){
                //ネットワーク同期
                if(mainManager.userID != 0){
                        var s = mainManager.runningStage;
                        if(s && s.pendingGlobalStageObjectList.length > 0){
+                               console.log("Network:Send request to add " + s.pendingGlobalStageObjectList.length + " own object(s).");
                                //サーバーにオブジェクト追加情報をアップロード
-                               var request = this.CreateRequestObject();
                                //同期モード
-                               request.open('POST', URL_PCD_Root + "update.php?uid=" + mainManager.userID + "&action=add", false);
-                               request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
-                               //送信データを準備
-                               var aData = s.pendingGlobalStageObjectData;
-                               this.RequestObjectDisableCache(request);
-                               request.send(aData.data);
+                               var res = this.sendRequestSync("POST", URL_PCD_Root + "update.php?uid=" + mainManager.userID + "&action=add", s.pendingGlobalStageObjectData.data);
                                //エラーチェック省略
-                               if(request.status == 0){
-                                       alert("ネットワークにアクセスできません。" + request.status + ":" + request.statusText);
-                               }else if((200 <= request.status && request.status < 300) || (request.status == 304)){
-                                       var res = request.responseText;
-                                       if(isValidResponseText(res)){
-                                               var retArray = eval(res);
-                                               this.timeStamp = retArray[0];
-                                               //割り当てられたobjectIDを設定する
-                                               for(var i = 0, k = s.pendingGlobalStageObjectList.length; i < k; i++){
-                                                       s.pendingGlobalStageObjectList[i].objectID = retArray[1][i];
-                                                       s.globalStageObjectList.push(s.pendingGlobalStageObjectList[i]);
-                                               }
+                               if(res){
+                                       var retArray = eval(res);
+                                       this.timeStamp = retArray[0];
+                                       //割り当てられたobjectIDを設定する
+                                       for(var i = 0, k = s.pendingGlobalStageObjectList.length; i < k; i++){
+                                               console.log("Network:Object has allocated ID:" + retArray[1][i]);
+                                               s.pendingGlobalStageObjectList[i].objectID = retArray[1][i];
+                                               s.globalStageObjectList.push(s.pendingGlobalStageObjectList[i]);
                                        }
-                               }else{
-                                       alert("サーバーがエラーを返しました。" + request.status + ":" + request.statusText);
                                }
                                s.pendingGlobalStageObjectData = new RequestData();
                                s.pendingGlobalStageObjectList = new Array();
                        }
                        //ユーザーIDが設定されている=オンライン状態
                        //更新データを取得
-                       var request = this.CreateRequestObject();
-                       //同期モード
-                       request.open('POST', URL_PCD_Root + "update.php?uid=" + mainManager.userID + "&action=refresh", false);
-                       request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
                        //送信データを準備
-                       aData = new RequestData();
+                       var aData = new RequestData();
                        if(s){
                                s.appendSyncDataTo(aData);
                        }
                        //送信
-                       this.RequestObjectDisableCache(request);
-                       request.send(aData.data);
-                       //レスポンス確認
-                       if(request.status == 0){
-                               alert("ネットワークにアクセスできません。" + this.status + ":" + this.statusText);
-                       } else if((200 <= request.status && request.status < 300) || (request.status == 304)){
-                               var res = request.responseText;
-                               if(isValidResponseText(res)){
-                                       var retArray = eval(res);
-                                       this.timeStamp = retArray[0];
-                                       //削除処理
-                                       for(var i = 0; i < retArray[3].length; i++){
-                                               console.log("Network:removeObject:ObjectID=" + retArray[3][i] + "\n");
-                                               var anObject = s.getGlobalStageObject(retArray[3][i]);
-                                               if(anObject){
-                                                       s.removeStageObject(anObject);
-                                               }
-                                       }
-                                       //更新処理
-                                       for(var i = 0; i < retArray[1].length; i++){
-                                               //mainManager.debugOut("Network:refreshObject:ObjectID=" + retArray[1][i] + "\n");
-                                               var anArray = retArray[1][i];
-                                               var anObject = s.getGlobalStageObject(anArray[0]);
-                                               if(anObject){
-                                                       anObject.origin.x = anArray[1];
-                                                       anObject.origin.y = anArray[2];
-                                                       anObject.movingSpeed.x = anArray[3];
-                                                       anObject.movingSpeed.y = anArray[4];
-                                                       anObject.attribute = eval(anArray[6]); 
-                                                       anObject.updateAttribute();
-                                               }
-                                       }
-                                       //追加処理
-                                       for(var i = 0; i < retArray[2].length; i++){
-                                               var anArray = retArray[2][i];
-                                               var args = eval(anArray[7]);
-                                               var anObject = eval("new " + anArray[5] + "(s, args, true);");
-                                               if(anObject){
-                                                       console.log("Network:addObject:ObjectID=" + anArray[0] + "\n");
-                                                       anObject.objectID = anArray[0];
-                                                       anObject.ownerUID = anArray[8];
-                                                       anObject.origin.x = anArray[1];
-                                                       anObject.origin.y = anArray[2];
-                                                       anObject.movingSpeed.x = anArray[3];
-                                                       anObject.movingSpeed.y = anArray[4];
-                                                       anObject.attribute = eval(anArray[6]); 
-                                                       anObject.updateAttribute();
-                                                       s.addStageObject(anObject, true, true);
-                                               }
-                                       }
-                                       //ユーザーリスト
-                                       mainManager.userManager.userList = retArray[4];
-                                       return;
+                       //同期モード
+                       var res = this.sendRequestSync("POST", URL_PCD_Root + "update.php?uid=" + mainManager.userID + "&action=refresh", aData.data);
+                       this.syncSub(res);
+               }
+       },
+       syncSub: function(res){
+               if(res){
+                       var s = mainManager.runningStage;
+                       var retArray = eval(res);
+                       this.timeStamp = retArray[0];
+                       //削除処理
+                       for(var i = 0; i < retArray[3].length; i++){
+                               console.log("Network:removeObject:ObjectID=" + retArray[3][i] + "\n");
+                               var anObject = s.getGlobalStageObject(retArray[3][i]);
+                               if(anObject){
+                                       s.removeStageObject(anObject);
+                               }
+                       }
+                       //更新処理
+                       for(var i = 0; i < retArray[1].length; i++){
+                               //mainManager.debugOut("Network:refreshObject:ObjectID=" + retArray[1][i] + "\n");
+                               var anArray = retArray[1][i];
+                               var anObject = s.getGlobalStageObject(anArray[0]);
+                               if(anObject){
+                                       anObject.origin.x = anArray[1];
+                                       anObject.origin.y = anArray[2];
+                                       anObject.movingSpeed.x = anArray[3];
+                                       anObject.movingSpeed.y = anArray[4];
+                                       anObject.attribute = eval(anArray[6]); 
+                                       anObject.updateAttribute();
+                               }
+                       }
+                       //追加処理
+                       for(var i = 0; i < retArray[2].length; i++){
+                               var anArray = retArray[2][i];
+                               var args = eval(anArray[7]);
+                               var anObject = eval("new " + anArray[5] + "(s, args, true);");
+                               if(anObject){
+                                       console.log("Network:addObject:ObjectID=" + anArray[0] + "\n");
+                                       anObject.objectID = anArray[0];
+                                       anObject.ownerUID = anArray[8];
+                                       anObject.origin.x = anArray[1];
+                                       anObject.origin.y = anArray[2];
+                                       anObject.movingSpeed.x = anArray[3];
+                                       anObject.movingSpeed.y = anArray[4];
+                                       anObject.attribute = eval(anArray[6]); 
+                                       anObject.updateAttribute();
+                                       s.addStageObject(anObject, true, true);
                                }
-                       } else{
-                               alert("サーバーがエラーを返しました。" + request.status + ":" + request.statusText);
                        }
+                       //ユーザーリスト
+                       mainManager.userManager.userList = retArray[4];
                }
        },
        joinStage: function(stage){
                if(mainManager.userID != 0){
-                       var request = this.CreateRequestObject();
                        //同期モード
-                       request.open('POST', URL_PCD_Root + "update.php?uid=" + mainManager.userID + "&action=add", false);
-                       request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
-                       this.RequestObjectDisableCache(request);
-                       request.send(null);
+                       var res = this.sendRequestSync("POST", URL_PCD_Root + "update.php?uid=" + mainManager.userID + "&action=add", null);
                        
                        //レスポンス確認
-                       if(request.status == 0){
-                               alert("ネットワークにアクセスできません。" + this.status + ":" + this.statusText);
-                       }else if((200 <= request.status && request.status < 300) || (request.status == 304)){
-                               var res = request.responseText;
-                               if(isValidResponseText(res)){
-                                       var retArray = eval(res);
-                                       this.timeStamp = retArray[0];
-                                       for(var i = 0; i < retArray[2].length; i++){
-                                               var anArray = retArray[2][i];
-                                               var args = eval(anArray[7]);
-                                               var anObject = eval("new " + anArray[5] + "(stage, args, true);");
-                                               if(anObject){
-                                                       mainManager.debugOut("Network:addObject:ObjectID=" + anArray[0] + "\n");
-                                                       anObject.objectID = anArray[0];
-                                                       anObject.ownerUID = anArray[8];
-                                                       anObject.origin.x = anArray[1];
-                                                       anObject.origin.y = anArray[2];
-                                                       anObject.movingSpeed.x = anArray[3];
-                                                       anObject.movingSpeed.y = anArray[4];
-                                                       anObject.attribute = eval(anArray[6]);
-                                                       //stage.addStageObject(anObject, true, true);
-                                               }
+                       if(res){
+                               var retArray = eval(res);
+                               this.timeStamp = retArray[0];
+                               for(var i = 0; i < retArray[2].length; i++){
+                                       var anArray = retArray[2][i];
+                                       var args = eval(anArray[7]);
+                                       var anObject = eval("new " + anArray[5] + "(stage, args, true);");
+                                       if(anObject){
+                                               mainManager.debugOut("Network:addObject:ObjectID=" + anArray[0] + "\n");
+                                               anObject.objectID = anArray[0];
+                                               anObject.ownerUID = anArray[8];
+                                               anObject.origin.x = anArray[1];
+                                               anObject.origin.y = anArray[2];
+                                               anObject.movingSpeed.x = anArray[3];
+                                               anObject.movingSpeed.y = anArray[4];
+                                               anObject.attribute = eval(anArray[6]);
+                                               //stage.addStageObject(anObject, true, true);
                                        }
                                }
-                       }else{
-                               alert("サーバーがエラーを返しました。" + this.status + ":" + this.statusText);
                        }
-                       
                }
        },
        syncTimerTickEventListener: function(event){
@@ -305,42 +316,32 @@ function UserManager(mManager){
 }
 UserManager.prototype = {
        loginAs: function(userNameStr){
-               var request = mainManager.networkManager.CreateRequestObject();
-               
+               //呼び出し元stageにauthformがあることを前提とする
                var i = userNameStr.indexOf("@");
+               var url = URL_PCD_Auth + "?action=join&name=" + encodeURIComponent(mainManager.runningStage.authform.userName.value);
                if(i != -1){
                        //任意ステージの実行
                        var userName = userNameStr.substring(0, i);
                        var stageName = userNameStr.substring(i + 1);
-                       request.open('GET', URL_PCD_Auth + "?action=devjoin&name=" + encodeURIComponent(userName) + "&stage=" + encodeURIComponent(stageName), false);
-               } else{
-                       //通常モード
-                       request.open('GET', URL_PCD_Auth + "?action=join&name=" + encodeURIComponent(mainManager.runningStage.authform.userName.value), false);
+                       url = URL_PCD_Auth + "?action=devjoin&name=" + encodeURIComponent(userName) + "&stage=" + encodeURIComponent(stageName);
                }
-               mainManager.networkManager.RequestObjectDisableCache(request);
-                       request.send(null);
+               var res = mainManager.networkManager.sendRequestSync("GET", url, null);
                
-               if(request.status == 0){
-                       alert("ネットワークへのアクセスに失敗しました。");
-               }else if((200 <= request.status && request.status < 300) || (request.status == 304)){
-                       if(isValidResponseText(request.responseText)){
-                               result = eval(request.responseText);
-                               if(result[3] == 0){
-                                       alert("ログインできません。データベース通信エラーです。");
-                                       return;
-                               } else if(result[3] == 11){
-                                       alert("すでにその名前は使われています。他の名前を試してください。");
-                                       return;
-                               } else if(result[3] == 10){
-                                       alert("ID:" + result[0] + " でログインしました。");
-                                       mainManager.userID = result[0];
-                                       mainManager.timeStamp = result[1];
-                                       mainManager.loadStageFromNetwork(result[2]);
-                                       return;
-                               }
+               if(res){
+                       var result = eval(res);
+                       if(result[3] == 0){
+                               alert("ログインできません。データベース通信エラーです。");
+                               return;
+                       } else if(result[3] == 11){
+                               alert("すでにその名前は使われています。他の名前を試してください。");
+                               return;
+                       } else if(result[3] == 10){
+                               alert("ID:" + result[0] + " でログインしました。");
+                               mainManager.userID = result[0];
+                               mainManager.timeStamp = result[1];
+                               mainManager.loadStageFromNetwork(result[2]);
+                               return;
                        }
-               } else{
-                       alert("サーバーがエラーを返しました。" + request.status + ":" + request.statusText);
                }
        },
        getUserNameByUID: function(uid){
index 2b1a328..11f4360 100644 (file)
@@ -32,6 +32,7 @@ document.write("<script type='text/javascript' src='corelib/classes/EnemyCharact
 document.write("<script type='text/javascript' src='corelib/classes/FireObjectClass.js'></script>");
 document.write("<script type='text/javascript' src='corelib/classes/BreadItemWidgetClass.js'></script>");
 document.write("<script type='text/javascript' src='corelib/classes/TeleportMachineClass.js'></script>");
+document.write("<script type='text/javascript' src='corelib/classes/WarpItemClass.js'></script>");
 document.write("<script type='text/javascript' src='corelib/classes/EnemyCharacters/EnemyCharacterClass_Bear.js'></script>");
 document.write("<script type='text/javascript' src='corelib/classes/EnemyCharacters/EnemyCharacterClass_Farmer.js'></script>");
 document.write("<script type='text/javascript' src='corelib/classes/EnemyCharacters/EnemyCharacterClass_FastHotoke.js'></script>");
index 4a456a1..1946f81 100644 (file)
@@ -10,6 +10,10 @@ define("DATABASE_PWD", "MoonStone");
 //データベース名
 define("DATABASE_NAME", "pcd2013dev");
 
+//データベース生成SQL
+define("QUERY_CREATE_authUserTable", "");
+define("QUERY_CREATE_stageObjectTable", "");
+
 //SQL文 for authUserTable
 define("QUERY_SELECT_USER_ID", "SELECT id from authUserTable where name = ?");
 define("QUERY_SELECT_USER_ID_TYPES", "s");
@@ -25,6 +29,8 @@ define("QUERY_UPDATE_USER_TIMESTAMP", "UPDATE authUserTable SET lastResponseTime
 define("QUERY_UPDATE_USER_TIMESTAMP_TYPES", "ii");
 define("QUERY_SELECT_USER_TIMESTAMP", "SELECT lastResponseTimestamp from authUserTable where id = ?");
 define("QUERY_SELECT_USER_TIMESTAMP_TYPES", "i");
+define("QUERY_DELETE_OFFLINE_USER", "DELETE from authUserTable WHERE lastResponseTimestamp<=?");
+define("QUERY_DELETE_OFFLINE_USER_TYPES", "i");
 //SQL文 for stageObjectTable
 define("QUERY_ADD_OBJECT", "insert into stageObjectTable (locationX, locationY, velocityX, velocityY, stageName, className, objectAttribute, constructorArgs, ownerUserID, modifiedTimestamp, addedTimestamp) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)");
 define("QUERY_ADD_OBJECT_TYPES", "ddddssssiii");
@@ -42,11 +48,16 @@ define("QUERY_SELECT_ALL_OTHER_USER_OBJECT", "SELECT id, locationX, locationY, v
 define("QUERY_SELECT_ALL_OTHER_USER_OBJECT_TYPES", "sii");
 define("QUERY_CHECK_AND_SET_DELETED_OBJECT", "UPDATE stageObjectTable SET objectAttribute='Deleted', modifiedTimestamp=? WHERE modifiedTimestamp<=? AND objectAttribute<>'Deleted'");
 define("QUERY_CHECK_AND_SET_DELETED_OBJECT_TYPES", "ii");
+define("QUERY_DELETE_OFFLINE_OBJECT", "DELETE from stageObjectTable WHERE modifiedTimestamp<=?");
+define("QUERY_DELETE_OFFLINE_OBJECT_TYPES", "i");
 //デフォルト開始ステージ名
 define("DEFAULT_START_STAGE", "cselect");
 
-//ユーザー生存期間(ミリ秒)
+//生存期間(ミリ秒)
+define("OBJECT_ALIVE_TIME_MS", 2000);
+define("OBJECT_DELETE_TIME_MS", 30000);
 define("USER_ALIVE_TIME_MS", 2000);
+define("USER_DELETE_TIME_MS", 30000);
 
 function escapeMySQLArgumentString(&$str)
 {
diff --git a/www/images/lotus1.png b/www/images/lotus1.png
new file mode 100644 (file)
index 0000000..0998bb9
Binary files /dev/null and b/www/images/lotus1.png differ
diff --git a/www/images/lotus2.png b/www/images/lotus2.png
new file mode 100644 (file)
index 0000000..acd5bab
Binary files /dev/null and b/www/images/lotus2.png differ
diff --git a/www/images/stair.png b/www/images/stair.png
new file mode 100644 (file)
index 0000000..4b26b46
Binary files /dev/null and b/www/images/stair.png differ
diff --git a/www/images/stair2.png b/www/images/stair2.png
new file mode 100644 (file)
index 0000000..3f2d250
Binary files /dev/null and b/www/images/stair2.png differ
diff --git a/www/images/stair3.png b/www/images/stair3.png
new file mode 100644 (file)
index 0000000..bd44e2f
Binary files /dev/null and b/www/images/stair3.png differ
diff --git a/www/images/warning.png b/www/images/warning.png
new file mode 100644 (file)
index 0000000..a17df65
Binary files /dev/null and b/www/images/warning.png differ
index 3aa35ea..ae1768c 100644 (file)
 <script type="text/javascript" src="./corelib/header.js" charset="UTF-8"></script>
 <script type="text/javascript">
 
-//var mainManager = null;
+var networkManager = null;
 var userListBox = null;
+var objectListBox = null;
 var serverTimeIndicator = null;
 var serverTimeStamp = 0;
 onload = function() {
-       //ã\82²ã\83¼ã\83 マネージャー初期化
-       //mainManager = new GameManager();
+       //ã\83\8dã\83\83ã\83\88ã\83¯ã\83¼ã\82¯マネージャー初期化
+       networkManager = new NetworkManager();
        userListBox = document.getElementsByName("userListText")[0];
+       objectListBox = document.getElementsByName("objectListText")[0];
        serverTimeIndicator = document.getElementById("ts");
        window.setInterval(tick, 500);
 }
 
 function tick(){
-       request = NetworkManager.prototype.CreateRequestObject();
-       //同期モード
-       request.open('POST', URL_PCD_Root + "monitor.php", false);
-       NetworkManager.prototype.RequestObjectDisableCache(request);
-       request.send(null);
-       
-       if(request.status == 0){
-               alert("ネットワークにアクセスできません。" + this.status + ":" + this.statusText);
-       }else if((200 <= request.status && request.status < 300) || (request.status == 304)){
-               var res = request.responseText;
+       var res = networkManager.sendRequestSync("POST", URL_PCD_Root + "monitor.php", false, null);
+       if(res){
                retArray = eval(res);
                serverTimeStamp = retArray[0];
                serverTimeIndicator.innerHTML = "ServerTime:" +  serverTimeStamp;
@@ -47,8 +41,10 @@ function tick(){
                for(var i = 0; i < retArray[1].length; i++){
                        userListBox.value += retArray[1][i] + "\n";
                }
-       }else{
-               alert("サーバーがエラーを返しました。" + this.status + ":" + this.statusText);
+               objectListBox.value = "";
+               for(var i = 0; i < retArray[2].length; i++){
+                       objectListBox.value += retArray[2][i] + "\n";
+               }
        }
 }
 
index 1a0c8a7..b477283 100644 (file)
@@ -10,32 +10,68 @@ if (mysqli_connect_error()) {
 }
 // 文字化け防止
 $db->set_charset("utf8");
-//timestamp
-echo("[" . getTimeStampMs() . ",");
-//userList
-$stmt = $db->prepare("select id, name from authUserTable");
-$stmt->execute();
-$stmt->store_result();
-if($stmt->num_rows == 0){
-       exit("error1");
-}
-$stmt->bind_result($uid, $uname);
-echo ("[");
-while($stmt->fetch()){
-       echo("\"" . $uid . ":" . $uname . "\",");
-}
-echo ("],");
-$stmt->close();
-//objectlist
-echo("[]");
+//action解釈
+if(isset($_GET['action'])){
 
-echo("]");
-
-$stmt = $db->prepare(QUERY_CHECK_AND_SET_DELETED_OBJECT);
-$limittime = getTimeStampMs() - USER_ALIVE_TIME_MS;
-$stmt->bind_param(QUERY_CHECK_AND_SET_DELETED_OBJECT_TYPES, getTimeStampMs(), $limittime);
-$stmt->execute();
-$stmt->close();
+} else{
+       //action未指定のときはデフォルト動作
+       //timestamp
+       echo("[" . getTimeStampMs() . ",");
+       //userList
+       $stmt = $db->prepare("select id, name, lastResponseTimestamp, userStageName from authUserTable");
+       $stmt->execute();
+       $stmt->store_result();
+       if($stmt->errno != 0){
+               exit("error1");
+       }
+       $stmt->bind_result($uid, $uname, $rts, $stgname);
+       echo ("[");
+       while($stmt->fetch()){
+               echo("\"" . $rts . ": " . $uid . ": " . $uname . " in " . $stgname . "\",");
+       }
+       echo ("],");
+       $stmt->close();
+       //objectlist
+       $stmt = $db->prepare("select id,stageName,ownerUserID,className,modifiedTimestamp from stageObjectTable");
+       $stmt->execute();
+       $stmt->store_result();
+       if($stmt->errno != 0){
+               exit("error2");
+       }
+       $stmt->bind_result($id, $stgname, $uid, $cname, $mts);
+       echo ("[");
+       while($stmt->fetch()){
+               echo("\"" . $id . "@" . $stgname . " of UID=" . $uid . " (" . $cname . ") " . $mts . "\",");
+       }
+       echo ("],");
+       $stmt->close();
+       //end
+       echo("]");
+       
+       //一定時間更新されていないオブジェクトの削除マーキング処理
+       $stmt = $db->prepare(QUERY_CHECK_AND_SET_DELETED_OBJECT);
+       $limittime = getTimeStampMs() - OBJECT_ALIVE_TIME_MS;
+       $stmt->bind_param(QUERY_CHECK_AND_SET_DELETED_OBJECT_TYPES, getTimeStampMs(), $limittime);
+       $stmt->execute();
+       //エラーチェック省略
+       $stmt->close();
+       
+       //一定時間更新されていないユーザーの削除処理
+       $stmt = $db->prepare(QUERY_DELETE_OFFLINE_USER);
+       $limittime = getTimeStampMs() - USER_DELETE_TIME_MS;
+       $stmt->bind_param(QUERY_DELETE_OFFLINE_USER_TYPES, $limittime);
+       $stmt->execute();
+       //エラーチェック省略
+       $stmt->close();
+       
+       //一定時間更新されていないオブジェクトの削除処理
+       $stmt = $db->prepare(QUERY_DELETE_OFFLINE_OBJECT);
+       $limittime = getTimeStampMs() - OBJECT_DELETE_TIME_MS;
+       $stmt->bind_param(QUERY_DELETE_OFFLINE_OBJECT_TYPES, $limittime);
+       $stmt->execute();
+       //エラーチェック省略
+       $stmt->close();
+}
 
 //
 // response
index b0e1af2..6012c78 100644 (file)
@@ -13,6 +13,10 @@ var stgObjects = {
     //坂ブロック
     //45LU
     p : {base:SlopeBlockClass,args:['concrete2.png',0,31]},
+    z : {base:SlopeBlockClass,args:['window.png',500,500]},
+    Z : {base:SlopeBlockClass,args:['window.png',0,0]},
+    B : {base:SlopeBlockClass,args:['stair2.png',600,600]},
+    C : {base:BlockClass,args:'stair3.png'},
     //45RU
     q : {base:SlopeBlockClass,args:['concrete1.png',31,0]},
     //half
@@ -25,6 +29,8 @@ var stgObjects = {
     u : {base:SlopeBlockClass,args:['concrete6.png',15,31]},
     //slopeRUD
     v : {base:SlopeBlockClass,args:['concrete7.png',31,15]},
+    A : {base:SlopeBlockClass,args:['stair.png',31,1],prop:{forceTopMost:true}},
+    D : {base:SlopeBlockClass,args:['1138.png',31,31]},
     
     //道路
     w: {base:SlopeBlockClass,args:['road.png',15,15]},
@@ -39,10 +45,10 @@ var stgObjects = {
     
     //隠しブロック
     //下から当たったときのみ出現
-    f : {base:HiddenBlockClass,args:'1168.png', prop:{collidingMask:CollideBottom, collidingExcludeMask:(CollideRight | CollideTop | CollideLeft | CollideBody)}},
+    f : {base:HiddenBlockClass,args:'leaves.png', prop:{collidingMask:CollideBottom, collidingExcludeMask:(  CollideBody)}},
     //左から当たったときのみ出現
-    h : {base:HiddenBlockClass,args:'1168.png', prop:{collidingMask:CollideLeft, collidingExcludeMask:(CollideRight | CollideTop | CollideBody)}},
-    
+    H : {base:HiddenBlockClass,args:'warning.png', prop:{collidingMask:CollideRight, collidingExcludeMask:(CollideBody)}},
+    h : {base:HiddenBlockClass,args:'warning.png', prop:{collidingMask:CollideLeft, collidingExcludeMask:(CollideBody)}},
     //アイテム
     i :  {base:RandomIngredientItemClass,args:[],prop:{debugMode:true}},
     
@@ -72,33 +78,47 @@ function callback_test(){
 
 with(stgObjects){
        var tbl = [
-               [_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ],
-               [_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ],
-               [_,_,_,_,_,_,_,_,_,_,_,_,g,b,b,b,b,b,b,_,_,_,_,_,_,_,_,_,_,_,_,_, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ],
-               [_,_,_,_,_,_,_,_,_,_,_,_,g,j,k,j,k,j,g,_,_,_,_,d,c,e,_,_,_,_,d,c,e, , , , ,d,c,e, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ],
-               [_,_,_,_,_,_,_,_,_,_,_,_,g,k,k,k,k,k,b,_,_,_,d,c,c,c,e,_,_,d,c,c,c,e, , ,d,c,c,c,e, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ],
-               [_,_,_,_,_,_,_,_,_,_,_,_,g,k,i,k,k,k,g,_,_,_,d,c,c,c,e,_,_,d,c,c,c,e, , ,d,c,c,c,e, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,q,b,b,b,b,b,b,b,b,p, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ],
-               [_,_,_,_,_,_,_,_,_,_,_,_,g,b,b,b,b,b,b,_,_,d,c,c,a,c,c,e,d,c,c,a,c,c,e,d,c,c,a,c,c,e, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,q,b,b,b,b,b,b,b,b,b,b,b,b,p,_, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ],
-               [_,_,_,_,_,_,_,_,_,_,_,_,g,j,k,j,k,j,b,_,_,d,c,c,a,c,c,e,d,c,c,a,c,c,e,d,c,c,a,c,c,e, , , , , , , , , ,q,b,b,k,b,b,b,b,b,b,b,b,b,s,u, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,q,b,b,b,b,b,b,b,b,b,b,b,b,b,b,p,_, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ],
-               [_,_,_,_,_,_,_,_,_,_,_,_,g,k,k,k,k,k,b,_,_,_,_,_,a,_,_,_,_,_,_,a, , , , , , ,a, , , , , , , , , , , ,q,b,b,b,k,b,b,b,b,b,b,b,b,b,b,b,b,b,s,u, , , , , , , , , , , , , , , , , ,_,_,_, , , , , , , , , , , , , , , , , , , , , , ,q,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,p, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ],
-               [_,_,_,_,_,_,y,_,_,_,_,_,g,k,k,k,i,k,b,_,_,_,_,_,a,_,_,_,_,_,_,a, , , , , , ,a, , , , , , , , , , ,q,b,b,b,b,k,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,s,u, , , , , , , , , , , , , , ,_,_,_,_, , , , , , , , , , , , , , , , ,q,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,p, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ],
-               [_,_,_,_,_,_,_,_,_,_,_,_,g,b,b,b,b,b,b,_,_,_,_,_,a,_,_,_,_,_,_,a, , , , , , ,a, , , , , , , , , ,q,b,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,b,b,s,u, , , , , , , , , , , ,_,_,_, , , , , , , , , , , , , , , , , ,q,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,p, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ],
-               [b,b,b,b,s,u, ,_,_,_,_,_,g,j,k,j,k,j,g,_,_,_,_,v,a,_,_,_,_,_,_,a,_,_,_,_,_,_,a,_,r,u, , , , , ,q,b,b,k,k,k,k,k,k,k,k,k,k,k,i,k,k,k,k,k,k,i,k,b,b,b,b,s,u, , , , , , , , , ,_,_,_,_,_,_, , , , , , , , , , , , , ,q,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,p, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ],
-               [b,b,b,b,b,b,b,b,s,u,_,_,g,k,k,k,k,k,g,_,_,v,t,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,s,u, , ,q,b,b,b,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,b,b,b,b,b,b,s,u, , , , , ,_,_,_,r,r,r,r,b,b,b,b,p, , , , , , , , ,q,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,p, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,b],
-               [b,b,b,b,b,b,b,b,b,b,s,u,g,k,k,k,k,k,g,v,t,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,b,b,b,b,b,b,b,b,s,u,_,_,_,r,b,b,b,b,b,b,b,b,b,b,b,p, , , , , , ,q,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,p, , , , ,v,w,w,w,w,w,w,w,w,w,w,w,w,w,w,w,u,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b],
-               [b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,k,b,b,k,b,k,b,b,k,k,k,b,b,k,b,b,k,b,b,k,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b]
+               [_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,z,k,k,k,k,k,k,k,k,k,b, , , , , , , , ,_, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ],
+               [_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,z,k,i,k,k,k,k,k,k,k,b, , , , , , , , ,_,_,b, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ],
+               [_,_,_,_,_,_,_,_,_,_,_,_,g,b,b,b,b,b,b,_,_,_,_,_,_,_,_,_,_,_,_,_, , , , , , , , , , , , , , , , , , , , , , , ,d,c,e, , , , ,c,e, , , , , , , , , , ,r, , , , , ,r, , ,b,b,k,k,k,k,k,k,k,k,k,z, , , , , , , , ,_,_,Z, , , , , , , , ,_, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ],
+               [_,_,_,_,_,_,_,_,_,_,_,_,g,j,k,j,k,j,g,_,_,_,_,d,c,e,_,_,_,_,d,c,e, , , , ,d,c,e, , , , , , , , , , , , , , , ,d,c,e, , , ,d,c,c,e, , , ,_,_, , , , ,b,b,b,b,b,b,b, , , ,b,b,b,b,b,b,g,g,g,g,z, , , , , , , , ,_,_,Z, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ],
+               [_,_,_,_,_,_,_,_,_,_,_,_,g,k,k,k,k,k,b,_,_,_,d,c,c,c,e,_,_,d,c,c,c,e, , ,d,c,c,c,e, , , , , , , , , , , , , ,d,c,c,c,e, ,d,c,c,c,f,f, ,_,_,_, , , , ,b,g,g,g,g,g,b, , , ,Z,k,k,k,k,H,k,B,A,C,b,_, , , , , , , ,_,_,Z, , , , , , , , , ,_, , ,_, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ],
+               [_,_,_,_,_,_,_,_,_,_,_,_,g,k,i,k,k,k,g,_,_,_,d,c,c,c,e,_,_,d,c,c,c,e, , ,d,c,c,c,e, , , , , , , , , , , , , ,d,c,a,c,e, , , ,a, , , ,_,_,_,_,_, , , ,z,z,z,z,z,z,z, , , ,Z,k,i,k,k,H,B,A,C,C,b, , , , , , , , ,_,_,b, , , , , , , ,_, ,_, ,_,_,b,b,b,b,b,b,b,p, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ],
+               [_,_,_,_,_,_,_,_,_,_,_,_,g,b,b,b,b,b,b,_,_,d,c,c,a,c,c,e,d,c,c,a,c,c,e,d,c,c,a,c,c,e, , , , , , , , , , , , , , ,a, , , , , ,a, , , , , ,_, , , , , ,b,g,g,g,g,g,b, , ,b,b,k,k,k,k,H,A,C,C,C,b,_,_, , , , , , ,_,_,b, , , , , ,_, ,_,_,_,_,_,_,b,b,b,b,b,b,b,b,p,_, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ],
+               [_,_,_,_,_,_,_,_,_,_,_,_,g,j,k,j,k,j,b,_,_,d,c,c,a,c,c,e,d,c,c,a,c,c,e,d,c,c,a,c,c,e, , , , , , , , , ,q,b,b,k,b,b,b,b,b,b,b,b,b,s,u, , ,_, , , , , ,b,g,g,g,g,g,b, , , ,b,g,b,b,b,b,b,b,b,b,b, , , , , , , , ,_,_,b, , , ,_, ,_,_,_,_,_,_,_,_,b,b,b,b,b,b,b,b,b,p,_, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ],
+               [_,_,_,_,_,_,_,_,_,_,_,_,g,k,k,k,k,k,b,_,_,_,_,_,a,_,_,_,_,_,_,a, , , , , , ,a, , , , , , , , , , , ,q,b,b,b,k,b,b,b,b,b,b,b,b,b,b,b,b,b,s,u, , , , ,b,b,b,b,b,b,b, , , ,Z,k,k,k,k,h,k,k,k,k,b, , , , , , , , ,_,_,z, ,_,_,_, ,_,_,_,_,_,_,_,_,b,b,b,b,b,b,b,b,b,b,p, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ],
+               [_,_,_,_,_,_,y,_,_,_,_,_,g,k,k,k,i,k,b,_,_,_,_,_,a,_,_,_,_,_,_,a, , , , , , ,a, , , , , , , , , , ,q,b,b,b,b,k,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,s,u, , ,z,z,z,z,z,z,z, , , ,Z,k,i,k,k,h,k,k,k,k,b, , , , , , , , ,_,_,z,_,_,_,_,_,_,_,_,_,_,_,_,_,b,b,b,b,b,b,b,b,b,b,b,p, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ],
+               [_,_,_,_,_,_,_,_,_,_,_,_,g,b,b,b,b,b,b,_,_,_,_,_,a,_,_,_,_,_,_,a, , , , , , ,a, , , , , , , , , ,q,b,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,b,b,p,_,g,g,g,g,g,g,g, , ,b,b,k,k,k,k,h,k,k,k,k,z, , , , , , , , ,_,_,z,_,_,_,_,_,_,_,_,_,_,_,_,_,b,b,b,b,b,b,b,b,b,b,b,b,p, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ],
+               [b,b,b,b,s,u, ,_,_,_,_,_,g,j,k,j,k,j,g,_,_,_,_,v,a,_,_,_,_,_,_,a,_,_,_,_,_,_,a,_,r,u, , , , , ,q,b,b,k,k,k,k,k,k,k,k,k,k,k,i,k,k,k,k,k,k,i,k,b,b,b,_,b,b,b,b,b,b,b, , , ,b,b,b,b,b,b,g,g,g,g,z, ,h,h,h,h,h,h,h,h,h,b,_,_,_,_,_,_,_,_,_,_,_,_,_,b,b,b,b,b,b,b,b,b,b,b,b,b,p, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ],
+               [b,b,b,b,b,b,b,b,s,u,_,_,g,k,k,k,k,k,g,_,_,v,t,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,s,u, , ,q,b,b,b,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,b,b,b,_,b,g,g,g,g,g,b, ,_,_,z,k,k,k,k,k,k,B,A,C,b,b, , , , , , , ,_,_,b,_,_,_,_,_,_,_,_,_,_,_,_,_,b,b,b,b,b,b,b,b,b,b,b,b,b,b,p, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,b],
+               [b,b,b,b,b,b,b,b,b,b,s,u,g,k,k,k,k,k,g,v,t,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,b,b,b,_,z,z,z,z,z,z,z,_,_,_,z,k,k,k,k,k,B,A,C,C,b,_, , , , , ,_,_,_,_,b,_,_,_,_,_,_,_,_,_,_,_,_,_,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,p, , , , ,v,w,w,w,w,w,w,w,w,w,w,w,w,w,w,w,u,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b],
+               [b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,k,b,b,k,b,k,b,b,k,k,k,b,b,k,b,b,k,b,b,k,b,b,b,_,b,g,g,g,g,g,b,_,_,b,b,D,D,D,D,D,A,C,C,C,b,_,_,_,_,_,_,_,_,_,_,b,_,_,_,_,_,_,_,_,_,_,_,_,_,b,g,b,g,b,g,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b]
        ];
 }
 
+
 var stage = new PCDSLStageClass(stgInfo, tbl);
 
-stage.runStage = function(){
 
+stage.runStage = function(){
     PCDSLStageClass.prototype.runStage.apply(this, []);
-    //var main = new MainCharacterClass_Witch(stage);
-    //main.origin.x = 100;
+    var main = new MainCharacterClass_Witch(stage);
+    main.origin.x = 2100;
+    main.ownerUID = stage.manager.userID;
+    stage.userControlledCharacter = main;
        
     //はしご
+    
+        var out = new SlopeBlockClass(stage,['shitugaiki.png',20,20]);
+       out.origin.x = 2370;
+       out.origin.y = 330;
+       stage.addStageObject(out);
+
+       var out1 = new SlopeBlockClass(stage,['shitugaiki.png',20,20]);
+       out1.origin.x = 2370;
+       out1.origin.y = 200;
+       stage.addStageObject(out1);
+   
     for(var i = 0; i < 12; i++){
        var o = new LadderBlockClass(stage, ['metalladder.png']);
        o.origin.x = 384;
@@ -118,7 +138,173 @@ stage.runStage = function(){
        o.origin.x = 1728;
        o.origin.y = 224 + (i * 32);
        stage.addStageObject(o);
+    }  
+       
+    for(var i = 0; i < 7; i++){
+       var o = new LadderBlockClass(stage, ['metalladder.png']);
+       o.origin.x = 2720;
+       o.origin.y = 128 + (i * 32);
+       o.forceTopMost = true;
+       stage.addStageObject(o);
     }    
+var leaf = new BlockClass(stage,['1214.png']);
+leaf.origin.x = 2176;
+leaf.origin.y = 250;
+leaf.collisionMargin.top = 32;
+stage.addStageObject(leaf);
+
+var out = new SlopeBlockClass(stage,['shitugaiki.png',20,20]);
+out.origin.x = 2370;
+out.forceTopMost= true;
+out.origin.y = 330;
+stage.addStageObject(out);
+
+var out1 = new SlopeBlockClass(stage,['shitugaiki.png',20,20]);
+out1.origin.x = 2370;
+out1.origin.y = 200;
+out1.forceTopMost= true;
+stage.addStageObject(out1);
+
+var out2 = new SlopeBlockClass(stage,['shitugaiki.png',20,20]);
+out2.origin.x = 2400;
+out2.origin.y = 65;
+out2.forceTopMost= true;
+stage.addStageObject(out2);
+
+var out3 = new SlopeBlockClass(stage,['shitugaiki.png',20,20]);
+out3.origin.x = 2428;
+out3.origin.y = 65;
+out3.forceTopMost= true;
+stage.addStageObject(out3);
+
+var out4 = new SlopeBlockClass(stage,['shitugaiki.png',20,20]);
+out4.origin.x = 2528;
+out4.origin.y = 65;
+out4.forceTopMost= true;
+stage.addStageObject(out4);
+
+var i1 = new SlopeBlockClass(stage,['1138.png',600,600]);
+i1.origin.x = 2944;
+i1.origin.y = 384;
+
+stage.addStageObject(i1);
+
+var i2 = new SlopeBlockClass(stage,['1138.png',600,600]);
+i2.origin.x = 2912;
+i2.origin.y = 384;
+
+stage.addStageObject(i2);
+
+var i3 = new SlopeBlockClass(stage,['1138.png',600,600]);
+i3.origin.x = 2912;
+i3.origin.y = 416;
+
+stage.addStageObject(i3);
+
+var i3 = new SlopeBlockClass(stage,['1138.png',600,600]);
+i3.origin.x = 2880;
+i3.origin.y = 416;
+
+stage.addStageObject(i3);
+
+var i4 = new SlopeBlockClass(stage,['1138.png',600,600]);
+i4.origin.x = 2880;
+i4.origin.y = 448;
+
+stage.addStageObject(i4);
+
+var i5 = new SlopeBlockClass(stage,['1138.png',600,600]);
+i5.origin.x = 2848;
+i5.origin.y = 320;
+
+
+stage.addStageObject(i5);
+
+var i6 = new SlopeBlockClass(stage,['1138.png',600,600]);
+i6.origin.x = 2848;
+i6.origin.y = 288;
+
+
+stage.addStageObject(i6);
+
+var i7 = new SlopeBlockClass(stage,['1138.png',600,600]);
+i7.origin.x = 2848;
+i7.origin.y = 256;
+
+
+stage.addStageObject(i7);
+
+var i9 = new SlopeBlockClass(stage,['1138.png',600,600]);
+i9.origin.x = 2848;
+i9.origin.y = 192;
+
+
+
+stage.addStageObject(i9);
+
+var i10 = new SlopeBlockClass(stage,['1138.png',600,600]);
+i10.origin.x = 2848;
+i10.origin.y = 128;
+
+
+
+stage.addStageObject(i10);
+
+var i11 = new SlopeBlockClass(stage,['1138.png',600,600]);
+i11.origin.x = 2848;
+i11.origin.y = 160;
+
+stage.addStageObject(i11);
+
+var i12 = new SlopeBlockClass(stage,['1138.png',600,600]);
+i12.origin.x = 2880;
+i12.origin.y = 192;
+
+stage.addStageObject(i12);
+
+var i13 = new SlopeBlockClass(stage,['1138.png',600,600]);
+i13.origin.x = 2880;
+i13.origin.y = 160;
+
+stage.addStageObject(i13);
+
+var i14 = new SlopeBlockClass(stage,['1138.png',600,600]);
+i14.origin.x = 2912;
+i14.origin.y = 160;
+
+stage.addStageObject(i14);
+
+var i14 = new SlopeBlockClass(stage,['1138.png',600,600]);
+i14.origin.x = 2912;
+i14.origin.y = 128;
+
+stage.addStageObject(i14);
+
+var i15 = new SlopeBlockClass(stage,['1138.png',600,600]);
+i15.origin.x = 2944;
+i15.origin.y = 128;
+
+stage.addStageObject(i15);
+
+var ka1 = new BlockClass(stage,['kanban.png']);
+ka1.collisionMargin.top=10;
+ka1.collisionMargin.right= 20;
+ka1.origin.x = 3040;
+ka1.origin.y = 128;
+ka1.size.x= 70;
+ka1.size.y = 140;
+stage.addStageObject(ka1);
+
+
+
+
+
+
+
+
+
+
+
 }
 
 stage;
\ No newline at end of file
index 6955b94..3fcfcb6 100644 (file)
@@ -23,7 +23,7 @@ stage.runStage = function(){
                } else{
                        //次のステージへ移動
                        mainManager.userManager.characterBaseClass = retv[0].characterBaseClass;
-                       mainManager.loadStageFromNetwork("sselect");
+                       mainManager.loadStageFromNetwork("onieasy");
                }
        };
        
@@ -41,10 +41,10 @@ stage.addSelectWidgetItemFromCharacter = function(title, picName, baseClass, sel
 }
 
 //キャラクターリスト
-stage.addSelectWidgetItemFromCharacter("森の狩人", "bandit2.png", MainCharacterClass_Hunter, true);
+stage.addSelectWidgetItemFromCharacter("森の狩人", "bowman1.png", MainCharacterClass_Hunter, true);
 stage.addSelectWidgetItemFromCharacter("村の青年", "village2.png", MainCharacterClass_Man);
 stage.addSelectWidgetItemFromCharacter("酔っ払い", "nakedman2.png", MainCharacterClass_NakedMan);
-stage.addSelectWidgetItemFromCharacter("盗賊", "bowman.png", MainCharacterClass_Thief);
+stage.addSelectWidgetItemFromCharacter("盗賊", "bandit2.png", MainCharacterClass_Thief);
 stage.addSelectWidgetItemFromCharacter("魔女", "witch2.png", MainCharacterClass_Witch);
 stage.addSelectWidgetItemFromCharacter("町の少女", "villagewoman3.png", MainCharacterClass_Woman);
 
diff --git a/www/stage/onieasy.js b/www/stage/onieasy.js
new file mode 100644 (file)
index 0000000..62f0a84
--- /dev/null
@@ -0,0 +1,127 @@
+var stgObjects={
+
+a:{base:SlopeBlockClass,args:['1213.png',16,16],prop:{enableDebugMode:false}},
+b:{base:BlockClass, args:"1190.png"},
+c:{base:BlockClass, args:"1292.png"},
+d:{base:SlopeBlockClass,args:['1216.png',32,33]},
+e:{base:BlockClass, args:"glass.png"},
+f:{base:BlockClass, args:"1160.png"},
+g:{base:HiddenBlockClass, args:"leaves.png"},
+h:{base:BlockClass, args:"cow2.png"},
+i:{base:SlopeBlockClass,args:['1161.png',0,32],prop:{enableDebugMode:false}},
+j:{base:SlopeBlockClass,args:['1162.png',32,0],prop:{enableDebugMode:false}},
+k:{base:SlopeBlockClass,args:['1192.png',33,0],prop:{enableDebugMode:false}},
+l:{base:SlopeBlockClass,args:['1191.png',0,33],prop:{enableDebugMode:false}},
+n:{base:SlopeBlockClass,args:['toge.png',32,33]},
+m:{base:SlopeBlockClass,args:['stop.png',32,33]},
+o:{base:BlockClass, args:"toge.png"},
+p:{base:HiddenBlockClass, args:"1233.png"},
+q : {base:FreeItemClass,args:["1190.png",callBack],prop:{times:1}},
+r:{base:SlopeBlockClass,args:['kusa.png',32,32],prop:{enableDebugMode:false}},
+s:{base:BlockClass, args:"palm_body.png"},
+t:{base:BlockClass, args:"palm_leaf.png"},
+u : {base:HiddenBlockClass,args:'1190.png', prop:{collidingMask:CollideLeft, collidingExcludeMask:(CollideRight | CollideTop | CollideBody)}},
+v : {base:HiddenBlockClass,args:'1190.png', prop:{collidingMask:CollideRight, collidingExcludeMask:(CollideLeft | CollideTop | CollideBody)}},
+w : {base:HiddenBlockClass,args:'1190.png', prop:{collidingMask:CollideTop, collidingExcludeMask:( CollideBody)}},
+x:  {base:EnemyCharacterClass_Rat,args:'null'},
+y:  {base:EnemyCharacterClass_SlowHotoke,args:'null'},
+z: {base:EnemyCharacterClass_FastHotoke, args:[]},
+B:{base:SlopeBlockClass,args:['1166.png',0,16],prop:{enableDebugMode:false}},
+C:{base:SlopeBlockClass,args:['1167.png',16,0],prop:{enableDebugMode:false}},
+D:{base:SlopeBlockClass,args:['1197.png',16,0],prop:{enableDebugMode:false}},
+E:{base:SlopeBlockClass,args:['1196.png',0,16],prop:{enableDebugMode:false}},
+F:{base:BlockClass, args:"1163.png"},
+G:{base:BlockClass, args:"1193.png"},
+H:{base:BlockClass, args:"bridge.png"},
+I:{base:SlopeBlockClass,args:['fence.png',32,32],prop:{enableDebugMode:false}},
+J : {base:FreeItemClass,args:["bridge.png",callBack],prop:{times:1}},
+K:{base:HiddenBlockClass, args:"1190.png"},
+L : {base:FreeItemClass,args:["1190.png",callBack],prop:{times:1}},
+M : {base:SlopeBlockClass,args:['leaves.png',32,33]},
+N : {base:SlopeBlockClass,args:['leavesedge1.png',16,0],prop:{enableDebugMode:false}},
+O : {base:SlopeBlockClass,args:['leavesedge2.png',0,16],prop:{enableDebugMode:false}},
+P : {base:FreeItemClass,args:['1234.png', callback_test],prop:{times:5, debugMode:true}},
+Q : {base:RandomIngredientItemClass,args:[],prop:{times:5, debugMode:false}},
+R : {base:BakingOvenObjectClass,args:[]},
+S : {base:FreeItemClass,args:["1160.png",callBack],prop:{times:1}},
+T : {base:MessageItemClass,args:["敵キャラは頭を踏む、もしくはパン球(パンを数字キーによって選択し、Spaceキーを押すことで発射することが出来るというもの。これをパン球と名付ける。)によって倒すことが出来る。好敵手(ログインしている他の人。)には頭を踏んでも意味がない。また好敵手は倒すと相手の持ってるおいしい材料、パンが手に入るので倒すべきである。"]},
+U : {base:MessageItemClass,args:["ここで材料をパンに焼くことが出来る。このゲームが終わるまでに材料は全て焼ききることを推奨する。パンがおいしく焼けるまでの時間は10秒である。"]},
+V : {base:MessageItemClass,args:["材料はランダムである。どこにあるかは自分で探り出す。パンにしてまずそうなものは得点がマイナスとなるのでご注意を。"]},
+W : {base:MessageItemClass,args:["これらは隠しブロックである。これはどこにあるか見えないため要注意すべきものである。"]},
+X : {base:MessageItemClass,args:["この橋は崩れかかっているため消えるブロックがあることであろう。足場が消えるのにはご注意を。でも安心して。このステージでは落ちることはないのでね。"]},
+Y : {base:MessageItemClass,args:["このステージには各所にこのような看板が置いてある。この看板は有益な情報しか書いていないので読んでいくべきである。読まないやつはただの馬鹿か反抗してる俺かっこいいか俺説明書読まないでゲームする派だからという強がりのどれかとみなします。"]},
+Z : {base:MessageItemClass,args:["おめでとう、クリアだ。ただこのように親切な看板は以後ありません。また他のステージはこの二倍、いや二十倍は難しくいらいらすることもあります。頑張ってくださいね。by福嶋"]},
+
+
+
+
+_:null,
+
+};
+function callback_test(){
+}
+var stgInfo = {
+    width: 6400,                               //横サイズ
+    height: 480,                               //縦サイズ
+    background: "back2.png",   
+    BGM: "eritou.mp3",  
+};
+
+
+       
+with(stgObjects){
+       var tbl = [
+               [e,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
+               [e,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,j,S,S,S,S,S,S,S,S,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,a,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,j,i,_,_,_,_,_,_,e],
+               [e,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,j,f,S,S,S,S,S,S,S,S,S,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,a,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,j,f,f,i, , , , , ,e],
+               [e,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,Q,_,_,_,R,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,j,f,f,S,S,S,S,S,S,S,S,S,S,S,S,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,a,d,d,_,_,_,_,_,_,_,_,_,_,a,a,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,j,f,f,f,f,i,_,_,_,_,e],
+               [e,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,j,f,f,f,S,S,S,S,S,S,S,S,S,S,S,S,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,a,d,d,d,_,_,_,_,_,_,_,_,_,_,d,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,j,f,f,f,f,f,f,i,_,_,_,e],
+               [e,_,_,_,_,_,_,_,_,_,_,_,Y,_,_,_,I,V,I,I,I,U,I,I,I,I,I,I,I,I,I,I,I,I,I,I,I,I,I,I,I,_,_,_,_,_,_,_,_,_,_,_,_,j,f,f,f,f,S,S,S,S,S,S,S,S,S,S,S,S,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,_,_,_,_,_,_,_,_,_,_,_,_,_,_,a,d,d,d,d,_,_,_,_,_,_,g,g,g,g,d,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,j,f,f,f,f,f,f,f,f,i,Z,_,e],
+               [e,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,H,i,_,_,_,_,_,_,_,_,_,_,j,f,f,f,f,f,S,S,S,S,S,S,S,S,S,S,S,S,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,_,_,_,_,_,_,_,_,_,_,_,_,_,a,d,d,d,d,d,_,x,_,_,_,_,_,_,_,_,d,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,j,f,f,f,f,f,f,f,f,f,f,i,_,_],
+               [e,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,f,i,_,_,_,_,_,_,_,_,j,f,f,f,f,f,f,S,S,S,S,S,S,S,S,S,S,S,S,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,_,_,_,_,_,_,_,_,_,_,_,_,a,d,d,d,d,d,d,I,I,I,I,I,I,I,I,I,W,d,d,a,_,_,_,_,_,_,_,_,_,_,_,a,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_, , , , , , , , , , , , , , , , , , ,j,f,f,f,f,f,f,f,f,f,f,f,f,i,_],
+               [e,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,f,f,i,_,_,_,_,_,_,j,f,f,f,f,f,f,f,S,S,S,f,S,S,S,S,S,S,S,S,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,_,_,_,_,_,_,_,_,_,_,_,a,d,d,d,d,d,d,d,H,H,H,H,H,H,H,H,H,H,d,d,d,_,_,_,_,_,_,_,_,_,_,_,d,a,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,j,f,f,f,f,f,f,f,f,f,f,f,f,f,f,i],
+               [e,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,f,f,f,i,_,_,_,_,j,f,f,f,f,f,f,f,f,S,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,a,d,d,d,d,d,d,d,d,_,_,_,_,_,_,_,_,_,_,d,d,d,_,_,_,_,_,_,_,_,_,_,_,d,d,a,_,a,a,_,a,_,a,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,X,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,j,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f],
+               [e,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,f,f,f,f,i,_,_,j,f,f,f,f,f,f,f,f,f,S,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,a,d,d,d,d,d,d,d,d,d,_,_,_,_,_,_,_,_,_,_,d,d,d,a,a,_,_,_,_,_,_,_,_,a,d,d,d,_,d,d,_,d,_,d,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,a,I,I,I,I,I,I,I,I,I,I,I,I,I,I,I,I,I,I,I,I,I,I,_,_,_,j,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f],
+               [e,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,f,f,f,f,f,i,j,f,f,f,f,f,f,f,f,f,f,S,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,y,y,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,a,d,d,d,d,d,d,d,d,d,d,_,_,_,_,_,_,_,_,_,_,d,d,d,d,d,_,_,_,_,_,_,_,a,d,d,d,d,w,d,d,w,d,w,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,H,H,H,H,H,H,H,H,H,H,H,H,H,H,J,J,J,J,J,J,J,J,_,_,j,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f],
+               [e,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,S,_,_,_,_,_,_,_,_,_,_,_,T,_,_,_,_,_,_,_,_,_,_,_,r,r,r,r,r,_,_,_,_,_,_,_,a,d,d,d,d,d,d,d,d,d,d,d,_,_,_,_,_,_,_,_,_,_,d,d,d,d,d,_,_,_,_,_,_,_,d,d,d,d,d,_,d,d,_,d,_,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,j,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f],
+               [_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,_,_,_,_,_,_,a,d,d,d,d,d,d,d,d,d,d,d,d,_,_,_,_,_,_,_,_,_,_,d,d,d,d,d,_,_,_,a,a,a,_,d,d,d,d,d,_,d,d,_,d,_,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,j,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f],
+               [e,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,w,w,w,w,w,w,d,d,d,d,d,d,d,d,d,d,d,d,d,_,_,_,_,_,_,_,_,_,_,d,d,d,d,d,w,w,w,d,d,d,w,d,d,d,d,d,_,d,d,_,d,_,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,e,e,e,e,e,e,e,j,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f]
+       ];
+}
+var stage = new PCDSLStageClass(stgInfo, tbl);
+
+
+
+
+function callBack(obj, obj_x, obj_y)
+{
+       if(obj instanceof MainCharacterClass){
+
+       }
+}
+
+
+
+stage.runStage = function(){
+       PCDSLStageClass.prototype.runStage.apply(this, []);
+       //var main = MainCharacterClass.createCharacter(stage);
+
+       //main.origin.x = 50;
+       //main.origin.y =0;
+       //main.ownerUID = stage.manager.userID;
+       //stage.userControlledCharacter = main;
+       
+var barn = new BlockClass(stage, ["barn.png",]);
+       
+       barn.size.x = 600;
+       barn.size.y = 450;
+       barn.origin.x = 0;
+       barn.origin.y =50;
+       barn.collisionMargin.top = 140;
+       barn.collisionMargin.right = 30;
+       stage.addStageObject(barn);
+
+},
+stage;
\ No newline at end of file
diff --git a/www/stage/panya.js b/www/stage/panya.js
new file mode 100644 (file)
index 0000000..e0012bb
--- /dev/null
@@ -0,0 +1,160 @@
+
+var stgObjects={
+
+a:{base:SlopeBlockClass,args:['1213.png',16,16],prop:{enableDebugMode:false}},
+b:{base:BlockClass, args:"1190.png"},
+c:{base:BlockClass, args:"1292.png"},
+d:{base:SlopeBlockClass,args:['1216.png',32,33]},
+e:{base:BlockClass, args:"glass.png"},
+f:{base:BlockClass, args:"1160.png"},
+g:{base:HiddenBlockClass, args:"leaves.png"},
+h:{base:BlockClass, args:"cow2.png"},
+i:{base:SlopeBlockClass,args:['1161.png',0,32],prop:{enableDebugMode:false}},
+j:{base:SlopeBlockClass,args:['1162.png',33,0],prop:{enableDebugMode:false}},
+k:{base:SlopeBlockClass,args:['1192.png',33,0],prop:{enableDebugMode:false}},
+l:{base:SlopeBlockClass,args:['1191.png',0,33],prop:{enableDebugMode:false}},
+n:{base:SlopeBlockClass,args:['toge.png',32,33]},
+m:{base:SlopeBlockClass,args:['stop.png',32,33]},
+o:{base:BlockClass, args:"toge.png"},
+p:{base:HiddenBlockClass, args:"1233.png"},
+q : {base:FreeItemClass,args:["1190.png",callBack],prop:{times:1}},
+r:{base:SlopeBlockClass,args:['kusa.png',32,32],prop:{enableDebugMode:false}},
+s:{base:BlockClass, args:"palm_body.png"},
+t:{base:BlockClass, args:"palm_leaf.png"},
+u : {base:HiddenBlockClass,args:'1190.png', prop:{collidingMask:CollideLeft, collidingExcludeMask:(CollideRight | CollideTop | CollideBody)}},
+v : {base:HiddenBlockClass,args:'1190.png', prop:{collidingMask:CollideRight, collidingExcludeMask:(CollideLeft | CollideTop | CollideBody)}},
+w : {base:HiddenBlockClass,args:'1190.png', prop:{collidingMask:CollideTop, collidingExcludeMask:( CollideBody)}},
+x:  {base:EnemyCharacterClass_Rat,args:'null'},
+y:  {base:EnemyCharacterClass_Frog,args:'null'},
+z: {base:EnemyCharacterClass_FastHotoke, args:[]},
+B:{base:SlopeBlockClass,args:['1166.png',0,16],prop:{enableDebugMode:false}},
+C:{base:SlopeBlockClass,args:['1167.png',16,0],prop:{enableDebugMode:false}},
+D:{base:SlopeBlockClass,args:['1197.png',16,0],prop:{enableDebugMode:false}},
+E:{base:SlopeBlockClass,args:['1196.png',0,16],prop:{enableDebugMode:false}},
+F:{base:BlockClass, args:"1163.png"},
+G:{base:BlockClass, args:"1193.png"},
+H:{base:BlockClass, args:"bridge.png"},
+I:{base:SlopeBlockClass,args:['fence.png',32,32],prop:{enableDebugMode:false}},
+J : {base:FreeItemClass,args:["bridge.png",callBack],prop:{times:1}},
+K:{base:HiddenBlockClass, args:"1190.png"},
+L : {base:FreeItemClass,args:["1190.png",callBack],prop:{times:1}},
+M : {base:SlopeBlockClass,args:['leaves.png',32,33]},
+N : {base:SlopeBlockClass,args:['leavesedge1.png',16,0],prop:{enableDebugMode:false}},
+O : {base:SlopeBlockClass,args:['leavesedge2.png',0,16],prop:{enableDebugMode:false}},
+P : {base:FreeItemClass,args:['1234.png', callback_test],prop:{times:5, debugMode:true}},
+Q : {base:RandomIngredientItemClass,args:[],prop:{times:5, debugMode:false}},
+S : {base:BakingOvenObjectClass,args:[""]},
+R : {base:BakingOvenObjectClass,args:[]},
+_:null,
+
+};
+function callback_test(){
+}
+var stgInfo = {
+    width: 1600,                               //���T�C�Y
+    height: 480,
+     background: "DSC_0372.png",               //�w�i�摜�B������640px�ł����K�v�͂Ȃ��B
+    //BGM:   "yamamusic.mp3"
+                               //�c�T�C�Y
+       //�w�i�摜�B������640px�ł����K�v�͂Ȃ��B
+};
+
+with(stgObjects){
+       var tbl = [
+               [ ,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
+               [ ,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
+               [ ,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
+               [ ,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
+               [ ,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
+               [ ,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
+               [ ,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
+               [ ,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
+               [ ,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
+               [ ,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
+               [ ,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
+               [ ,_,_,_,_,_,_,_,_,R,_,_,_,_,_,L,K,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
+               [ ,_,_,_,_,Q,_,_,_,_,_,_,_,_,_,_,_,_,_,k,l,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
+               [ ,_,_,_,_,_,_,y,_,_,_,_,_,_,_,_,_,_,k,b,b,l,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
+               [b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b]
+       ];
+}
+var stage = new PCDSLStageClass(stgInfo, tbl);
+
+
+
+
+function callBack(obj, obj_x, obj_y)
+{
+       if(obj instanceof MainCharacterClass){
+
+       }
+}
+
+
+
+stage.runStage = function(){
+       PCDSLStageClass.prototype.runStage.apply(this, []);
+
+       var that = this;
+       var stageNameList = [];
+       var addSelectWidgetItemFromStageName = function(title, stgName, selected){
+               var item = new SelectWidgetItemClass(true, title, null, selected, title + "ステージへ移動します。\n難易度: ☆☆☆☆☆");
+               item.stgName = stgName;
+               stageNameList.push(item);
+       }
+       
+       addSelectWidgetItemFromStageName("街","city", true);
+       addSelectWidgetItemFromStageName("洞窟","fukushima");
+       addSelectWidgetItemFromStageName("山","koenma");
+       addSelectWidgetItemFromStageName("牧場","okubo");
+       addSelectWidgetItemFromStageName("森","pengin");
+       addSelectWidgetItemFromStageName("海","sea");
+       
+       var bakery1 = new FreeItemClass(stage, ["bakery.png", function(){
+               var stageSelectorClosed = function(retv){
+                       var tryAgain = true;
+                       if(retv != null)
+                       {
+                               if(retv){
+                                       if(retv.length == 1){
+                                               tryAgain = false;
+                                       }
+                               }
+                               if(tryAgain){
+                                       //もう一度選択させる
+                                       var sw = new SelectWidgetClass(mainManager, [stageNameList, stageSelectorClosed, false, 0, true]);
+                                       //sw.enableCancel = false;
+                                       mainManager.addWidget(sw);
+                               } else{
+                                       //次のステージへ移動
+                                       mainManager.loadStageFromNetwork(retv[0].stgName);
+                               }
+                       }
+               };
+       
+               var stageSelector = new SelectWidgetClass(mainManager, [stageNameList, stageSelectorClosed, false, 0, true]);
+               //stageSelector.enableCancel = false;
+               mainManager.addWidget(stageSelector);
+       }]);
+       var s;
+       //ステージ
+       
+       bakery1.size.x = 512;
+       bakery1.size.y = 384;
+       bakery1.origin.x = 800;
+       bakery1.origin.y = 85;
+       bakery1.mustSelectKey = true;
+       stage.addStageObject(bakery1);
+
+       var warpLeft = new WarpItemClass(stage, [false, 1568, undefined, 32, 480, false]);
+       warpLeft.origin.x = -32;
+       warpLeft.origin.y = 0;
+       var warpRight = new WarpItemClass(stage, [false, 0, undefined, 32, 480, false]);
+       warpRight.origin.x = 1600;
+       warpRight.origin.y = 0;
+       stage.addStageObject(warpLeft);
+       stage.addStageObject(warpRight);
+};
+
+stage;
\ No newline at end of file
index 07d97b3..2db8581 100644 (file)
@@ -27,6 +27,7 @@ x:  {base:EnemyCharacterClass_Rat,args:'null'},
 y:  {base:EnemyCharacterClass_Bear,args:'null'},
 z: {base:EnemyCharacterClass_PanTank, args:[]},
 Q : {base:RandomIngredientItemClass,args:[],prop:{times:5, debugMode:false}},
+R : {base:BakingOvenObjectClass,args:[]},
 _:null,
 
 };
@@ -42,40 +43,24 @@ var stgInfo = {
 };
 
  
-with(stgObjects){var tbl=[
-
-[e,g,_,_,_,_,g,_,g,_,_,_,b,_,_,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,v,_,x,Q,x,Q,Q,Q,Q,x,u,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
-
-[e,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b,_,_,b,_,_,q,q,_,_,_,_,_,_,_,_,_,_,_,b,q,_,_,b,b,b,b,b,b,b,b,b,b,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,Q,_,_,_,Q,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
-
-[e,_,_,g,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b,_,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b,_,b,_,b,b,b,b,b,b,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
-
-[e,g,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,,_,b,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
-
-[e,_,_,_,_,_,g,_,a,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b,b,_,b,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
-
-[e,_,_,_,_,_,_,_,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b,_,_,b,q,b,g,g,b,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
-
-[e,_,_,g,_,_,_,_,d,_,_,_,q,q,q,q,q,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,g,g,g,g,g,g,g,g,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
-
-[e,g,_,_,_,_,_,_,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b,_,_,b,_,_,b,_,_,_,_,a,_,_,_,_,_,_,_,a,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,g,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b,_,_,_,_,b,_,_,_,_,b,_,_,_,b,_,b,_,_,_,_,_,b,_,_,_,_,b,_,_,_,_,b,_,_,_,_,_,_,_,_,_,_],
-
-[e,_,_,_,_,_,g,_,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,p,_,_,p,_,_,_,_,_,_,_,_,_,_,_,_,d,_,_,_,_,s,a,a,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b,_,_,_,_,_,_,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
-
-[e,_,_,_,_,_,_,_,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,g,q,_,_,_,_,_,b,_,_,_,_,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,d,w,_,a,w,s,d,d,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,z,_,_,_,_,_,_,g,_,_,_,_,_,_,_,g,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
-
-[e,_,_,g,_,_,_,_,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,Q,_,_,_,_,_,_,_,_,_,_,_,_,_,d,_,_,d,_,s,d,d,d,b,_,_,_,_,_,_,_,_,_,v,_,_,Q,_,_,x,x,u,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
-
-[e,g,_,_,_,_,_,_,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,j,f,i,_,_,_,_,_,_,_,_,_,_,_,_,_,d,w,_,d,w,s,d,d,d,_,b,_,_,q,_,q,_,b,_,b,b,b,b,b,b,b,b,b,_,_,_,_,_,b,b,b,b,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,Q,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
-
-[e,_,_,_,_,_,v,_,d,_,_,_,_,_,b,_,_,_,b,_,_,_,_,b,b,b,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,j,f,f,f,i,_,_,_,_,_,_,_,_,_,_,_,_,d,_,_,d,_,s,d,d,d,_,_,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,a,_,_,_,_,_,x,_,x,_,_,_,_,_,x,_,_,_,x,_,_,_,_,_,_,_,_,y,_,x,_,_,Q,Q,Q,Q,_,_,a,_,_,_,_,b,b,b,q,b,b,b,_,_,_,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
-
-[e,_,_,_,x,_,_,_,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,j,f,f,f,f,f,i,_,_,_,_,_,_,_,_,_,_,_,d,w,_,d,w,s,d,d,d,_,_,_,b,b,b,b,b,b,q,q,q,q,q,q,q,q,q,q,_,_,_,_,_,_,_,_,_,_,_,_,d,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,x,r,r,r,r,x,r,r,r,r,r,x,r,r,r,r,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
-
-[e,f,f,f,f,f,f,f,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,f,f,f,f,f,f,f,f,f,f,f,_,_,_,_,_,_,_,_,_,_,d,_,_,d,_,s,d,d,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,d,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,_,_,_,_,_,_,_,_,_,_],
-
-
-];
+with(stgObjects){
+       var tbl = [
+               [e,g,_,_,_,_,g,_,g,_,_,_,b,_,_,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,v,_,x,Q,x,Q,_,_,Q,x,u,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
+               [e,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b,_,_,b,_,_,q,q,_,_,_,_,_,_,_,_,Q,_,_,b,q,_,_,b,b,b,b,b,b,b,b,b,b,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,Q,_,_,_,Q,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
+               [e,_,_,g,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,Q,_,_,_,_,b,g,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b,_,b,_,b,b,b,b,b,b,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
+               [e,g,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_, ,_,b,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
+               [e,_,_,_,_,_,g,_,a,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b,b,g,b,b,g,g,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
+               [e,_,_,_,_,_,_,_,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b,_,_,b,q,b,g,g,b,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
+               [e,_,_,g,_,_,_,_,d,_,_,_,q,q,q,q,q,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,g,g,g,g,g,g,g,g,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b,_,_,_,_,_,_,Q,_,_,_,_,_,_,_,_,_,_,_,_,_,_, , , , , ],
+               [e,g,_,_,_,_,_,_,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b,_,_,b,_,_,b,_,_,_,_,a,_,_,_,_,_,_,_,a,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,g,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b,_,_,_,_,b,_,_,_,_,b,_,_,_,b,_,b,_,_,_,_,_,b,_,_,_,_,b,_,_,_,_,b,_,_,_,_,_,_,_,_,_,_, , , , , , , , , , ],
+               [e,_,_,_,_,_,g,_,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,p,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,d,_,_,_,_,s,a,a,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,R,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b,_,_,_,_,_,_,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
+               [e,_,_,_,_,_,_,_,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,g,q,_,_,_,_,_,b,_,_,_,_,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,d,w,_,a,w,s,d,d,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,g,_,_,_,_,_,_,_,g,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_, , , , , , , , , ],
+               [e,_,_,g,_,_,_,_,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,Q,_,_,_,_,_,_,_,_,_,_,_,_,_,d,_,_,d,_,s,d,d,d,b,_,_,_,_,_,_,_,_,_,v,_,_,Q,_,_,x,x,u,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_],
+               [e,g,_,_,_,_,_,_,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,j,f,i,_,_,_,_,_,_,_,_,_,_,_,_,_,d,w,_,d,w,s,d,d,d,_,b,_,_,q,_,q,_,b,_,b,b,b,b,b,b,b,b,b,_,_,_,_,_,b,b,b,b,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,Q,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,Q,_,_,R,_,_,_,_,_,_,_,_,_,_,_,_,_],
+               [e,_,_,_,_,_,v,_,d,_,_,_,_,_,b,_,_,_,b,_,_,_,_,b,b,b,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,j,f,f,f,i,_,_,_,_,_,_,_,_,_,_,_,_,d,_,_,d,_,s,d,d,d,_,_,b,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,a,_,_,_,_,_,x,_,x,_,_,_,_,_,x,_,_,_,x,_,_,R,_,_,_,_,_,y,_,x,_,_,Q,Q,Q,Q,_,_,a,_,_,_,_,b,b,b,q,b,b,b,_,_,_,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,_,_,_,_,_,_,_,_],
+               [e,_,_,_,x,_,_,_,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,j,f,f,f,f,f,i,_,_,_,_,_,_,_,_,_,_,_,d,w,_,d,w,s,d,d,d,_,_,_,b,b,b,b,b,b,q,q,q,q,q,q,q,q,q,q,_,_,_,_,_,_,_,_,_,_,_,_,d,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,x,r,r,r,r,x,r,r,r,r,r,x,r,r,r,r,_,_,_,_,_,_,_,_,_],
+               [e,f,f,f,f,f,f,f,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,f,f,f,f,f,f,f,f,f,f,f,_,_,_,_,_,_,_,_,_,_,d,_,_,d,_,s,d,d,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,d,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,d,_,_,_,_,_,_,_,_,_,_,_,_,_,_,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,_,_,_,_,_,_,_,_,_]
+       ];
 }
 var stage = new PCDSLStageClass(stgInfo, tbl);
 
@@ -91,9 +76,9 @@ function callBack(obj, obj_x, obj_y)
 
 stage.runStage = function(){
        PCDSLStageClass.prototype.runStage.apply(this, []);
-       var main = new MainCharacterClass_Thief(stage);
+       var main = new MainCharacterClass_Witch(stage);
 
-       main.origin.x = 50;
+       main.origin.x = 1850;
        main.origin.y =0;
        main.ownerUID = stage.manager.userID;
        stage.userControlledCharacter = main;
index c0e4c7d..1b786da 100644 (file)
@@ -2,11 +2,11 @@
 
 stage = new GameStage();
 
-stage.stageNameList = new Array();
+
 
 stage.runStage = function(){
        GameStage.prototype.runStage.apply(this, []);
-       
+       stage.stageNameList = new Array();
        var that = this;
        var stageSelectorClosed = function(retv){
                var tryAgain = true;
diff --git a/www/stage/test.js b/www/stage/test.js
new file mode 100644 (file)
index 0000000..4a7d6e4
--- /dev/null
@@ -0,0 +1,79 @@
+// StageObjects\82Í\83X\83e\81[\83W\82É\95\8e\9a\83V\83\93\83{\83\8b\82Æ\82µ\82Ä\94z\92u\82µ\82½\82¢\83I\83u\83W\83F\83N\83g\92è\8b`\82Ì\98A\91z\94z\97ñ\82Å\82 \82é\81B
+// StageObject\82Ì\8ae\8d\80\96Ú\82Ì\8ew\92è\95û\96@\82Í\88È\89º\82Ì\93ñ\92Ê\82è\82 \82é\81B
+// \81E\83N\83\89\83X\96¼\8ew\92è ... \83R\83\93\83X\83g\83\89\83N\83^\82ª\82É\88ø\90\94\82ª\95s\97v\82È\8e\9e
+// a : BlockClass
+// \81E\8ag\92£\8ew\92è
+// a : {base : FreeItemClass,                  //\92\92\8c^\82Æ\82È\82é\83N\83\89\83X\96¼
+//      args : '1190.png',                             //\83R\83\93\83X\83g\83\89\83N\83^\82É\8ew\92è\82·\82é\88ø\90\94(\88ê\82Â\82¾\82¯\82Ì\8fê\8d\87) stage\82Í\8e©\93®\82Å\8ew\92è\82³\82ê\82é\82Ì\82Å\95s\97v
+//      args : ['1190.png', callback], //\93ñ\82Â\88È\8fã\82Ì\8fê\8d\87\81B\82â\82Í\82è\91æ\88ê\88ø\90\94\82Ìstage\82Í\95s\97v
+//      prop : {times : 1},                            //\8ae\83C\83\93\83X\83^\83\93\83X\82É\8ew\92è\82µ\82½\82¢\83v\83\8d\83p\83e\83B\82Ì\98A\91z\94z\97ñ\81B(\8fÈ\97ª\89Â)
+                                                                               //\82±\82Ì\97á\82Å\82ÍaFreeItemClass.times\83v\83\8d\83p\83e\83B\82ð1\82É\8ew\92è\82µ\82Ä\82¢\82é
+//      adjust : [-50, 50],                            //\88Ê\92u\82Ì\94÷\92²\90®\81B\95K\82¸X\8dÀ\95W\81AY\8dÀ\95W\82Ì\91\8a\91Î\88Ê\92u\82ð\8e¦\82·\94z\97ñ\82É\82·\82é\81B(\8fÈ\97ª\89Â)
+//      extid : 19                                             //\83l\83b\83g\83\8f\81[\83N\82ð\92´\82¦\82Ä\88ê\82Â\82Ì\83I\83u\83W\83F\83N\83g\82Å\82 \82é\95K\97v\82ª\82 \82é\8fê\8d\87\82É\82Í\83[\83\8d\82Å\82Í\82È\82¢\92l\82ð\8eæ\82é\81i\83X\83e\81[\83W\93à\82Å\8cÅ\97L\82Ì\92l, \8fÈ\97ª\89Â; \8aù\92è0\81j
+//             sync : true                                             //\83l\83b\83g\83\8f\81[\83N\93¯\8aú\82ð\97L\8cø\82É(addStageObject\82Ì\91æ\93ñ\88ø\90\94)(\8fÈ\97ª\89Â; \8aù\92èfalse)
+
+var stgObjects = {
+       
+       // BlockClass : \95\81\92Ê\82Ì\83u\83\8d\83b\83N\81\88ø\90\94\82É\89æ\91\9c\96¼\82ð\8ew\92è
+    a : {base:BlockClass,args:'1190.png'},
+    
+    // SlopeBlockClass : \93\96\82½\82è\94»\92è\82ª\8eÎ\82ß\82Ì\83u\83\8d\83b\83N\81B
+    // \88ø\90\94 : \89æ\91\9c\96¼, \93\96\82½\82è\94»\92è\97Ì\88æ\8d\91¤\82Ì\8aJ\8en\88Ê\92u\82Ì\83u\83\8d\83b\83N\8fã\95Ó\82©\82ç\82Ì\8d\82\82³, \93\96\82½\82è\94»\92è\97Ì\88æ\89E\91¤\82Ì...
+    //        \82½\82Æ\82¦\82Î\81A\82±\82Ì\97á\82Ì\82æ\82¤\82É 0, 32 \82Æ\8ew\92è\82·\82ê\82Î\89E\89º\82ª\82è\82Ì\8dâ\82É\82È\82è\81A32, 0\82Æ\8ew\92è\82·\82ê\82Î\8d\89º\82ª\82è\81A 16, 16\82Æ\8ew\92è\82·\82ê\82Î\94¼\95ª\82Ì\8d\82\82³\82Ì\92·\95û\8c`\82É\82È\82é
+    // enableBlockMode : \93\96\82½\82è\94»\92è\97Ì\88æ\82ð\83f\83o\83b\83O\95\\8e¦\82·\82é\81B
+    b : {base:SlopeBlockClass,args:['1191.png',0,32],prop:{enableDebugMode:true}},
+    
+    // FreeItemClass : \83L\83\83\83\89\82ª\8eæ\93¾\82·\82é\82Æ\83R\81[\83\8b\83o\83b\83N\82ª\8eÀ\8ds\82³\82ê\82é\83A\83C\83e\83\80
+    // callback : \92N\82©\82É\8eæ\93¾\82³\82ê\82½\82Æ\82«\82É\94­\90\82·\82é\83R\81[\83\8b\83o\83b\83N\81B\83A\83^\83b\83N\82µ\82½\90l\81A\82»\82Ì\83A\83^\83b\83N\92¼\8cã\82Ìx, y\8dÀ\95W\82ª\88ø\90\94\82É\83Z\83b\83g\82³\82ê\82é\81B
+    // times : \8eæ\93¾\82Å\82«\82é\89ñ\90\94\82Å\81A-1\82Å\96³\8cÀ\81B
+    c : {base:WarpItemClass,args:["city",200, 0, 32,32,true]},
+    
+    // \89½\82à\83u\83\8d\83b\83N\82ð\92u\82©\82È\82¢\88Ê\92u\82Ì\82½\82ß\82É\82©\82È\82ç\82¸\82±\82Ì\82æ\82¤\82È\83G\83\93\83g\83\8a\81[\82ð\8bL\8fq
+    _ : null
+};
+
+// FreeItemClass\82Ì\83R\81[\83\8b\83o\83b\83N
+function callBack(obj, obj_x, obj_y)
+{
+       if(obj instanceof MainCharacterClass){
+
+       }
+}
+
+var stgInfo = {
+    width: 6400,                               //\89¡\83T\83C\83Y
+    height: 480,                               //\8fc\83T\83C\83Y
+    background: "back2.png"            //\94w\8ci\89æ\91\9c\81B\89¡\95\9d\82Í640px\82Å\82 \82é\95K\97v\82Í\82È\82¢\81B
+};
+
+with(stgObjects) {
+    var tbl = [
+        [],
+        [],
+        [],
+        [],
+        [],
+        [],
+        [],
+        [],
+        [],
+        [],
+        [b],
+        [_,b],
+        [_,_,b],
+        [_,_,_,b,_,_,_,_,_,c],
+        [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],
+    ];
+}
+
+//\96ñ\91©\8e\96
+var stage = new PCDSLStageClass(stgInfo, tbl);
+
+stage.runStage = function(){
+       PCDSLStageClass.prototype.runStage.apply(this, []);
+       
+},
+
+
+stage;
+                                       
\ No newline at end of file
index f5f74f1..1d8e731 100644 (file)
@@ -172,7 +172,7 @@ function getAllOtherUserObjectArrayString($db, $userID, $stageName)
 {
        $retary = array();
        $stmt = $db->prepare(QUERY_SELECT_ALL_OTHER_USER_OBJECT);
-       $limittime = getTimeStampMs() - USER_ALIVE_TIME_MS;
+       $limittime = getTimeStampMs() - OBJECT_ALIVE_TIME_MS;
        $stmt->bind_param(QUERY_SELECT_ALL_OTHER_USER_OBJECT_TYPES, $stageName, $userID, $limittime);
        $stmt->execute();
        if($stmt->errno != 0){