var config = {
type: Phaser.AUTO,
parent: 'phaser-example',
scene: {
preload: preload,
create: create
},
width: 800,
height: 600
};
var game = new Phaser.Game(config);
var rt;
var fireball;
var fireFX;
function preload()
{
this.load.setBaseURL('https://cdn.phaserfiles.com/v355');
this.load.image('dude', 'assets/sprites/phaser-dude.png');
this.load.image('fire', 'assets/particles/muzzleflash3.png');
}
function create()
{
rt = this.make.renderTexture({ x: 0, y: 0, width: 800, height: 600 });
player = this.add.image(100, 300, 'dude');
fireball = this.add.follower(null, 50, 350, 'fire');
fireFX = this.tweens.add({
targets: fireball,
scaleX: 3,
scaleY: 3,
alpha: 0,
duration: 300,
ease: "Cubic.easeOut",
onComplete: function () { rt.clear(); fireball.alpha = 0 },
paused: true
});
fireFX.setCallback('onUpdate', draw, [], this);
this.input.on('pointerdown', function (pointer)
{
generate(pointer.x, pointer.y);
}, this);
}
function generate(x, y)
{
fireball.setPosition(player.x, player.y).setScale(0.5).setAlpha(1);
curve = new Phaser.Curves.Line(new Phaser.Math.Vector2(player.x, player.y), new Phaser.Math.Vector2(x, y));
fireball.setPath(curve);
fireball.startFollow(300);
fireFX.restart();
}
function draw()
{
rt.draw(fireball);
}
var config = {
type: Phaser.AUTO,
parent: 'phaser-example',
scene: {
preload: preload,
create: create
},
width: 800,
height: 600
};
var game = new Phaser.Game(config);
var rt;
var fireball;
var fireFX;
function preload()
{
this.load.setBaseURL('https://cdn.phaserfiles.com/v355');
this.load.image('dude', 'assets/sprites/phaser-dude.png');
this.load.image('fire', 'assets/particles/muzzleflash3.png');
}
function create()
{
rt = this.make.renderTexture({ x: 0, y: 0, width: 800, height: 600 });
player = this.add.image(100, 300, 'dude');
fireball = this.add.follower(null, 50, 350, 'fire');
fireFX = this.tweens.add({
targets: fireball,
scaleX: 3,
scaleY: 3,
alpha: 0,
duration: 300,
ease: "Cubic.easeOut",
onComplete: function () { rt.clear(); fireball.alpha = 0 },
paused: true
});
fireFX.setCallback('onUpdate', draw, [], this);
this.input.on('pointerdown', function (pointer)
{
generate(pointer.x, pointer.y);
}, this);
}
function generate(x, y)
{
fireball.setPosition(player.x, player.y).setScale(0.5).setAlpha(1);
curve = new Phaser.Curves.Line(new Phaser.Math.Vector2(player.x, player.y), new Phaser.Math.Vector2(x, y));
fireball.setPath(curve);
fireball.startFollow(300);
fireFX.restart();
}
function draw()
{
rt.draw(fireball);
}