У меня есть игра с фоном и автомобильным спрайтом.
Теперь машина едет справа налево. Я пытаюсь сделать так, чтобы когда игрок нажимал на машину, машина ускорялась и продолжала двигаться намного быстрее.
Мой код до сих пор:
var game = new Phaser.Game(800, 500, Phaser.AUTO, '', { preload: preload, create: create, update: update });
var text;
var counter = 0;
function preload() {
game.load.image('background', 'images/backgrounds/bg_g1a.png');
game.load.image('car', 'images/items/car.png');
}
function create() {
// enable the Arcade Physics system
game.physics.startSystem(Phaser.Physics.ARCADE);
// Game background
game.add.sprite(0, 0, 'background');
//add car
var sprite = game.add.sprite(700, 300, 'car');
game.physics.arcade.enable(sprite);
// add movement from right to left
var demoTween = game.add.tween(sprite).to({x:-200,y:300},2000);
// start again when out of the game
demoTween.onComplete.add(function(){
sprite.x = 700; sprite.y = 300;
demoTween.start();
});
demoTween.start();
//enable input on car
sprite.inputEnabled = true;
//counter
text = game.add.text(250, 16, '', { fill: '#ffffff' });
//start listener function on input
sprite.events.onInputDown.add(listener, this);
}
function update() {
}
// car has been clicked
function listener (sprite) {
counter++;
text.text = "You clicked " + counter + " times!";
sprite.body.acceleration = -2000;
}
Я пробовал в последней строке:
sprite.body.acceleration = -2000;
Я пробовал разные методы от скорости до изменения данных анимации, но ни один из них не работает. Счетчик считает, но машина продолжает двигаться как раньше. Что я делаю не так?