Javascript 拖动第一个到phaser中的最上面一个后,在que中无限堆叠瓷砖(对象/精灵)

Javascript 拖动第一个到phaser中的最上面一个后,在que中无限堆叠瓷砖(对象/精灵),javascript,phaser-framework,Javascript,Phaser Framework,我正在使用phaser制作一个游戏,我想制作无限数量的瓷砖,让它们像堆叠的瓷砖一样思考。当用户拖动最上面的磁贴并将其放置在放置区域时,其下方的相同磁贴应显示并可拖动 我现时的守则:` var greenTile = this.add.sprite(250,500,'greenTile'); greenTile.inputEnabled=true; greenTile.input.enableDrag();

我正在使用phaser制作一个游戏,我想制作无限数量的瓷砖,让它们像堆叠的瓷砖一样思考。当用户拖动最上面的磁贴并将其放置在放置区域时,其下方的相同磁贴应显示并可拖动

我现时的守则:`

var greenTile = this.add.sprite(250,500,'greenTile');       
                   greenTile.inputEnabled=true;
                   greenTile.input.enableDrag();
                   greenTile.events.onDragStart.add(onDragStart, this);
                   greenTile.events.onDragStop.add(onDragStop, this);` 
我的游戏状态的总代码是:- `

当我在“greenTile”变量下面添加一个input.enable代码时,我也面临着一个问题。那么,任何人都可以告诉我为什么会发生这种情况。


我可以通过添加一个函数并在drag start事件中调用它来解决这个问题,如下所示:-

我增加的功能是:-

addGreenTiles: function(){

    this.greenTile1 = this.add.sprite(250,500,'greenTile');
    this.greenTile1.inputEnabled=true;
    this.greenTile1.input.enableSnap(canvasZoom, canvasZoom, false, true);
    this.greenTile1.input.enableDrag();
    this.greenTile1.originalPosition = this.greenTile1.position.clone();
    this.greenTile1.events.onDragStart.add(this.addGreenTiles, this);
    this.greenTile1.events.onDragStop.add(function(currentSprite){
            this.stopDrag(currentSprite, this.greenTile1);
}, this);
然后我在以下位置调用了此函数:

this.greenTile1.events.onDragStart.add(this.addGreenTiles, this);
this.greenTile1.events.onDragStart.add(this.addGreenTiles, this);