HTML and CSS Reference
In-Depth Information
this._world = new B2d.World(this._gravity, true);
_.bindAll(this,"beginContact","endContact","postSolve");
this._listener = new B2d.Listener();
this._listener.BeginContact = this.beginContact;
this._listener.EndContact = this.endContact;
this._listener.PostSolve = this.postSolve;
this._world.SetContactListener(this._listener);
this.col = {};
this.scale = this.opts.scale;
this.entity.bind('step',this,'boxStep');
},
setCollisionData: function(contact,impulse) {
var spriteA = contact.GetFixtureA().GetBody().GetUserData(),
spriteB = contact.GetFixtureB().GetBody().GetUserData();
this.col["a"] = spriteA;
this.col["b"] = spriteB;
this.col["impulse"] = impulse;
this.col["sprite"] = null;
},
beginContact: function(contact) {
this.setCollisionData(contact,null);
this.col.a.trigger("contact",this.col.b);
this.col.b.trigger("contact",this.col.a);
this.entity.trigger("contact",this.col);
},
endContact: function(contact) {
this.setCollisionData(contact,null);
this.col.a.trigger("endContact",this.col.b);
this.col.b.trigger("endContact",this.col.a);
this.entity.trigger("endContact",this.col);
},
postSolve: function(contact, impulse) {
this.setCollisionData(contact,impulse);
this.col["sprite"] = this.col.b;
this.col.a.trigger("impulse",this.col);
this.col["sprite"] = this.col.a;
this.col.b.trigger("impulse",this.col);
this.entity.trigger("impulse",this.col);
},
Search WWH ::




Custom Search