2013-04-08 20 views
0

我想在我的椋鳥遊戲中使用物理噴射器,並且在「。」上得到這個錯誤。我的在Starling中使用物理噴射器不工作

static var PhysInjector.STARLING = true; 

聲明。 ''這裏是不允許的。在Physics Injector博客上說「只需將靜態變量PhysInjector.STARLING設置爲true,就是這樣!」

我是否在錯誤的地方設置了它?我究竟做錯了什麼?

 private function injectPhysics():void 
    { 
     static var PhysInjector.STARLING = true; 
     physics = new PhysInjector (stage, new b2Vec2(0, 60), true) 
     var floorObject:PhysicsObject = physics.injectPhysics(floor, PhysInjector.SQUARE, new PhysicsProperties({isDynamic:false, friction:0.5, restitution:0.5})); 
     var presentP:PhysicsObject = physics.injectPhysics(present, PhysInjector.SQUARE, new PhysicsProperties({isDynamic:true, friction:0.2, restitution:0.5})); 
    } 
+0

取出來的話「靜止無功」我不認爲他們希望你嘗試重新定義變量,而只是分配給它。 http://reycogames.com/physinjector/docs/com/reyco1/physinjector/PhysInjector.html#STARLING – shaunhusain 2013-04-08 07:41:40

回答

0

不知道更多有關如何PhysInjector初始化試試這個:

private function injectPhysics():void { 
    PhysInjector.STARLING = true; 
    physics = new PhysInjector (stage, new b2Vec2(0, 60), true); 
    var floorObject:PhysicsObject = physics.injectPhysics(floor, PhysInjector.SQUARE, new PhysicsProperties({isDynamic:false, friction:0.5, restitution:0.5})); 
    var presentP:PhysicsObject = physics.injectPhysics(present, PhysInjector.SQUARE, new PhysicsProperties({isDynamic:true, friction:0.2, restitution:0.5})); 
} 

如果不行,試試這個:

private function injectPhysics():void { 
    physics = new PhysInjector (stage, new b2Vec2(0, 60), true); 
    physics.STARLING = true; 
    var floorObject:PhysicsObject = physics.injectPhysics(floor, PhysInjector.SQUARE, new PhysicsProperties({isDynamic:false, friction:0.5, restitution:0.5})); 
    var presentP:PhysicsObject = physics.injectPhysics(present, PhysInjector.SQUARE, new PhysicsProperties({isDynamic:true, friction:0.2, restitution:0.5})); 
} 
+0

第一個應該將STARLING var設置爲從該點創建的所有PhysInjector實例的真。第二個應該使STARLING var僅適用於物理實例。 – 2013-04-08 08:24:26

0

只是刪除了 「靜態」 和「 var「namspaces從你的代碼。

static var PhysInjector.STARLING = true; 

應該

PhysInjector.STARLING = true;