<!DOCTYPE html>
<html>
    <head>
        <title>MOOOOOTS</title>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <script src="pixi.min.js"></script>
<style>
            body, html {
                height: 100%;
                display: grid;
                border: 0px;
                margin: 0px;
            }
            canvas {
                margin: auto;
            }
        </style>
    </head>
    <body>
    </body>
</html>

document.addEventListener("DOMContentLoaded", ready); // on attend que tout sois prêt

var app ; // global !
function ready()
{
   app = new PIXI.Application({width: 1000, height: 1000});
    var txt = PIXI.Texture.fromImage('canard.png');
    var canard = new PIXI.Sprite(txt);
     canard.interactive = true;
    app.stage.addChild(canard);
}

// fonction qui renvoie un nombre entre [min,max]
function rand(min, max)
{
    return Math.floor(Math.random() * (max - min + 1) + min);
}

function createSprite(texture, x, y, sprite)
{
    sprite = new PIXI.Sprite(txt);
    sprite.x = x;
    sprite.y = y;
    sprite.interactive=true ;
    app.stage.addChild(sprite);
    return sprite;
}

 var txt = PIXI.Texture.fromImage('canard.png');
var TabCanard=[]
for(var i=0;i<200;i++)
	TabCanard.push(createSprite(txt,rand(0,1000),rand(0,1000) );

    var debutb = +new Date(); // TIPS ! + permet de transformer directement en nombre
    app.ticker.add(function ()
    {
        var d = +new Date() - debutb;
        if (d > 50 && TabCanard.length > 0)
        {
            var aux = TabCanard.pop();
            app.stage.removeChild(aux); // +de 50 ms ! Quel horreur ! Retirons donc un canard
        }
        for (var i = 0; i < TabCanard.length; i++)
        {
            var c = TabCanard[i];
            c.x = c.x + rand(0, 4);  // le canard va de gauche à droite
            c.y = c.y - rand(-2, 2);  // et flottille un peu, pour éviter le chasseur
            if (c.x >1000 )
            { // le canard a disparu, on l'affiche à l'écran !
                c.x =  rand(-10, 1000);
                c.y =  rand(-10, 1000);
            }
        }
        debutb = +new Date();
    });

sprite.on('pointerdown', function () {
	// mettre le code ici
    });

Notre fonction de création de canard est donc maintenant :

var score=0 ;
var txt = PIXI.Texture.fromImage('canard.png');
var TabCanard=[]
for(var i=0;i<200;i++)
{
	var c=createSprite(txt,rand(0,1000),rand(0,1000) ;
	c.on('pointerdown', function () {
		score+=10 ;
		this.x=rand(-10,1000) ; // on replace le canard
		this.y=rand(-10,1000) ;
    		});
	TabCanard.push(c) ;
}

	
	var txtScore;
            function majScore()
            {
                if (txtScore !== undefined)
                {
                    app.stage.removeChild(txtScore);
                }
                txtScore = new PIXI.Text("score : " + score);
                txtScore.x = 50;
                txtScore.y = 50;
                app.stage.addChild(txtScore);
            }

            var score = 0;

<!DOCTYPE html>
<html>
    <head>
        <title>Tir au canard !</title>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <script src="pixi.min.js"></script>
        <script>
            function rand(min, max)
            {
                return Math.floor(Math.random() * (max - min + 1) + min);
            }

            function createSprite(txt, x, y, sprite)
            {
                sprite = new PIXI.Sprite(txt);
                sprite.x = x;
                sprite.y = y;
                sprite.interactive = true ;
                app.stage.addChild(sprite);
                return sprite;
            }

            var txtScore;
            function majScore()
            {
                if (txtScore !== undefined)
                {
                    app.stage.removeChild(txtScore);
                }
                txtScore = new PIXI.Text("score : " + score);
                txtScore.x = 50;
                txtScore.y = 50;
                app.stage.addChild(txtScore);
            }

            var score = 0;
            function initGFX()
            {
                majScore();
                var TabCanard = [];
                var txt = PIXI.Texture.fromImage('canard.png');
                for (var i = 0; i < 200; i++)
                {
                    var c = createSprite(txt, rand(0, 1000), rand(0, 1000)) ;
                    c.on('pointerdown', function () {
                        score += 10 ;
                        majScore();
                        this.x = rand(-100, 10) ;
                        this.y = rand(0, 1000) ;
                    });
                    TabCanard.push(c) ;
                }
                var debutb = +new Date(); // TIPS ! + permet de transformer directement en nombre
                app.ticker.add(function ()
                {
                    var d = +new Date() - debutb;
                    if (d > 50 && TabCanard.length > 0)
                    {
                        var aux = TabCanard.pop();
                        app.stage.removeChild(aux);
                    }
                    for (var i = 0; i < TabCanard.length; i++)
                    {
                        var c = TabCanard[i];
                        c.x = c.x + rand(0, 4);  // le canard va de gauche à droite
                        c.y = c.y - rand(-2, 2);  // et flottille un peu, pour éviter le chasseur
                        if (c.x > 1000)
                        { // le canard a disparu, on l'affiche à l'écran !
                            c.x = rand(-100, 10);
                            c.y = rand(0, 1000);
                        }
                    }
                    debutb = +new Date();
                });
            }

            var w = 1000;
            var h = 1000;
            document.addEventListener("DOMContentLoaded", ready); // on attend que tout sois prêt

            var app ; // global !
            function ready()
            {
                app = new PIXI.Application({width: w, height: h});
                app.renderer.backgroundColor = 0xaaaaaa ;
                document.body.appendChild(app.view);
                initGFX();
            }
        </script>
        <style>
            body, html {
                height: 100%;
                display: grid;
                border: 0px;
                margin: 0px;
            }

            canvas {
                margin: auto;
            }
        </style>
    </head>
    <body>
    </body>
</html>

    var w = window.innerWidth;
    var h = window.innerHeight;
    app = new PIXI.Application({width: w, height: h});
    w = Math.min(w, 1000);
    h = Math.min(h, 1000);
    app.stage.scale.x = w / 1000;
    app.stage.scale.y = h / 1000;
    var el = document.querySelector('canvas');
    el.setAttribute('width', w + "px");
    el.setAttribute('height', h + "px");

document.addEventListener("DOMContentLoaded", phone);
var isPhone=false ;
function phone()
{
    if (document.location.protocol === 'file:')
    {
        isPhone = true;
        document.addEventListener("deviceready", ready, false);
    } else
    {
        ready();
    }
}
function ready()
{
// içi votre jeu
}