Javascript-生成之间的时间延迟

时间:2019-09-26 08:54:18

标签: javascript algorithm google-play-games 2d-games

我具有此功能(如果需要,请随意使用),可以在游戏区域之外的任意位置为我生成怪物。生成怪兽后,怪兽会跟随角色进入角色。

但是,问题在于,所有怪物都是同时产生的。我正在尝试做的是在生成之间设置一些时间延迟。例如,游戏开始时会生成第一个怪物。我想在1秒后生成第二个怪物。有什么想法可以实现吗?

我尝试制作一个时间变量,该变量会进行迭代,然后在counter> time时生成一个敌人。但这似乎并不正确


function init(){

}

function update(dt){

}

function signal(name, value){

    let x1 = 6;
    let x2 = -6;
    let y1 = 20;
    let y2 = 1;
    let cadran =  Math.floor(Math.random() * (+4 - +1)) + +1; 
    if(value){
        for(i=0;i<5;i++){

            if(cadran == 1){
                monsterGenerator(this,x2,x1,y1 ,1);
            }

            if(cadran == 2){
                monsterGenerator(this,x2,x1,y2,2);
            }

            if(cadran == 3){
                monsterGenerator(this,y2,y1,x1,3);
            }


            if(cadran == 4){
                monsterGenerator(this,y2,y1,x2,4);
            }

            cadran++;
            if(cadran==5){
                cadran = 1;
            }
        }
    }

}

function monsterGenerator(ob,min,max,stat,rand) {

    let assetName = ob.attribute('Asset Name');
    let ent = ob.scene().create(assetName);
    if(ent == null) error('Asset "'+assetName+'" does not exist');
    let pos = ob.entity().worldPosition();
    let rot = ob.entity().rotation();
    let scl = ob.entity().scale();
    let random = Math.floor(Math.random() * (+max - +min)) + +min; 

       if(rand==1){
        ent.setPosition(pos.x = random, pos.y =stat , pos.z);
       }
       if(rand==2){
        ent.setPosition(pos.x = random, pos.y =stat , pos.z);
       }
       if(rand==3){
        ent.setPosition(pos.x = stat, pos.y =random , pos.z);
       }
       if(rand==4){
        ent.setPosition(pos.x = stat, pos.y =random , pos.z);
       }

    ent.setRotation(rot.x, rot.y, rot.z);
    ent.setScale(scl.x, scl.y, scl.z);


}

0 个答案:

没有答案