OSDN Git Service

collisionMap を無効にできるようにした(aManager.enableStageDebug)
authorttwilb <ttwilb@users.sourceforge.jp>
Wed, 21 Aug 2013 11:21:59 +0000 (20:21 +0900)
committerttwilb <ttwilb@users.sourceforge.jp>
Wed, 21 Aug 2013 11:21:59 +0000 (20:21 +0900)
www/corelib/classes/BlockClass.js
www/corelib/classes/GameStageClass.js
www/corelib/classes/HorizonalScrollStageClass.js
www/corelib/classes/StageObjectClass.js
www/corelib/core.js

index 54c88b0..46fa2df 100644 (file)
@@ -16,7 +16,10 @@ var BlockClass = function(ownerStage, args)
                }
                //\8fÕ\93Ë\83}\83b\83v\82É\95`\89æ
                if(this.ownerStage.className == "HorizonalScrollStageClass"){
-                       strokeRect(this.ownerStage.collisionMapContext, x, y, this.size.x, this.size.y);
+                       if(this.ownerStage.collisionMapContext)
+                       {
+                               strokeRect(this.ownerStage.collisionMapContext, x, y, this.size.x, this.size.y);
+                       }
                }
        },
        
index 7c92a1b..641d896 100644 (file)
@@ -114,18 +114,24 @@ GameStage.prototype = {
                //\83X\83e\81[\83W\8f\89\8aú\89»\8f\88\97\9d
                this.tickCount = 0;
                //\8fÕ\93Ë\83}\83b\83v\8f\89\8aú\89»
-               this.collisionMapCanvas = createCanvas("collisionMapCanvas", this.mainCanvas.width, this.mainCanvas.height, this.mainCanvas.width, 0, 1, this.manager.mainArea);
-               this.collisionMapContext = this.collisionMapCanvas.getContext('2d');
-               this.collisionMapContext.fillStyle = "rgba(0,0,0, 0.2)";
-               this.collisionMapContext.strokeStyle = "rgba(0,0,0, 0.2)";
-               this.collisionMapContext.scale(1, 1);
+               if(this.manager.enableStageDebug)
+               {
+                       this.collisionMapCanvas = createCanvas("collisionMapCanvas", this.mainCanvas.width, this.mainCanvas.height, this.mainCanvas.width, 0, 1, this.manager.mainArea);
+                       this.collisionMapContext = this.collisionMapCanvas.getContext('2d');
+                       this.collisionMapContext.fillStyle = "rgba(0,0,0, 0.2)";
+                       this.collisionMapContext.strokeStyle = "rgba(0,0,0, 0.2)";
+                       this.collisionMapContext.scale(1, 1);
+               }
        },
        stopStage: function(){
                //\83X\83e\81[\83W\8fI\97¹\8f\88\97\9d
-               destroyDOMObjectByID(this.collisionMapCanvas.id);
-               this.collisionMapCanvas = null;
-               this.collisionMapContext = null;
-               this.stageObjectList = null;
+               if(this.manager.enableStageDebug)
+               {
+                       destroyDOMObjectByID(this.collisionMapCanvas.id);
+                       this.collisionMapCanvas = null;
+                       this.collisionMapContext = null;
+                       this.stageObjectList = null;
+               }
        },
        addStageObject: function(aStageObject, isGlobalObject){
                //stageObject\82ð\83\8a\83X\83g\82É\92Ç\89Á\82·\82é
index b32fba6..647a1d3 100644 (file)
@@ -51,7 +51,10 @@ var HorizonalScrollStageClass = function()
                        //\83L\83\83\83\93\83o\83X\82ð\91S\8fÁ\8b\8e
                        this.mainContext.clearRect(0, 0, this.mainCanvas.width, this.mainCanvas.height);
                }
-               this.collisionMapContext.clearRect(0, 0, this.collisionMapCanvas.width, this.collisionMapCanvas.height);
+               if(this.collisionMapContext)
+               {
+                       this.collisionMapContext.clearRect(0, 0, this.collisionMapCanvas.width, this.collisionMapCanvas.height);
+               }
        },
        
        //\83X\83N\83\8d\81[\83\8b\82µ\82½\82¢\82Æ\82«\82É\81Atick\96\88\82É\8cÄ\82Ô\81B
index 16d0409..436161b 100644 (file)
@@ -40,7 +40,10 @@ StageObject.prototype = {
                }
                //\8fÕ\93Ë\83}\83b\83v\82É\95`\89æ
                if(this.ownerStage.className == "HorizonalScrollStageClass"){
-                       strokeRect(this.ownerStage.collisionMapContext, x, y, this.size.x, this.size.y);
+                       if(this.ownerStage.collisionMapContext)
+                       {
+                               strokeRect(this.ownerStage.collisionMapContext, x, y, this.size.x, this.size.y);
+                       }
                }
        },
        isCollided: function()
index ab784ed..3e50212 100644 (file)
@@ -78,6 +78,9 @@ function GameManager(parent, debugTextName){
        this.mainContext = this.mainCanvas.getContext('2d');
        this.debugText = document.getElementById(debugTextName);        //要素が存在しないとnullになり、デバッグが無効になる
        if(!this.debugText) this.debugText = null;
+       
+       // ステージのデバッグ表示を有効にするか
+       this.enableStageDebug = false;
 
        
        //ブラウザチェック