Files
phaser/examples/physics/mass velocity test.js
photonstorm a25f6dbc3b Physics.processRebound now takes Body direction into account, helps with body-body collision bounces (thanks ram64)
Fixed the Example / physics / mass velocity test.
Fixed readme typo.
2014-02-24 21:43:02 +00:00

65 lines
1.5 KiB
JavaScript

var game = new Phaser.Game(800, 600, Phaser.CANVAS, 'phaser-example', { preload: preload, create: create, update: update, render: render });
function preload() {
game.load.image('car', 'assets/sprites/car90.png');
game.load.image('baddie', 'assets/sprites/space-baddie.png');
}
var car;
var aliens;
function create() {
aliens = game.add.group();
for (var i = 0; i < 50; i++)
{
var s = aliens.create(game.world.randomX, game.world.randomY, 'baddie');
s.name = 'alien' + s;
s.body.collideWorldBounds = true;
s.body.bounce.setTo(0.8, 0.8);
s.body.linearDamping = 0.1;
s.body.minVelocity.setTo(0, 0);
s.body.velocity.setTo(10 + Math.random() * 40, 10 + Math.random() * 40);
}
car = game.add.sprite(400, 300, 'car');
car.name = 'car';
car.anchor.setTo(0.5, 0.5);
car.body.collideWorldBounds = true;
car.body.allowRotation = true;
car.body.immovable = true;
}
function update() {
game.physics.collide(car, aliens);
car.body.velocity.x = 0;
car.body.velocity.y = 0;
car.body.angularVelocity = 0;
if (game.input.keyboard.isDown(Phaser.Keyboard.LEFT))
{
car.body.angularVelocity = -200;
}
else if (game.input.keyboard.isDown(Phaser.Keyboard.RIGHT))
{
car.body.angularVelocity = 200;
}
if (game.input.keyboard.isDown(Phaser.Keyboard.UP))
{
car.body.velocity.copyFrom(game.physics.velocityFromAngle(car.angle, 300));
}
}
function render() {
}