猫史档案馆


【小小的问题】(求助)

用户:牛升升魔王牛升升魔王查看:1 回复:2 评论:1 创建时间:2022-08-15T15:00:30


center_imagecenter_image

 为何在编辑界面时,实体血量被扣为0时,会显示报错呢?哪位大神能解答一下(最好支支招)

{
 const npc = world.querySelector('#门');
 npc.enableInteract = true;   // 开启实体互动功能
 npc.interactHint = '挡路的门';    // 进入互动范围时提示的文字 npc.interactColor = new Box3RGBColor(1,1,0); 
npc.interactRadius = 4;     // 互动范围大小




// 场景中所有可以互动的实体,互动时都会触发此事件 
world.onInteract( ({entity, targetEntity}) => {     
    targetEntity.say( entity.player.name+'对门造成了5点伤害');    
    npc.hp -= 20  
       if (npc.hp <= 0) { 
 

       npc.destroyed = true
 

      }
 

});
}


回复

上一页1 页 / 共 1下一页
星星上的雪花星星上的雪花

堪忧

点赞0


评论


LWKevin0wvf小号LWKevin0wvf小号

emmm··· 这个报错的信息看样子应该不是你给的那段代码中的问题,那个地图源代码的325行和408行有错误,很可能是world.onDie的问题,因为喵的不是玩家,所以没有entity.player.name这个参数,可以加一个判断

world.onDie(({原参数···})=>{/*本行可以不修改*/
    if (entity.isPlayer){
        /*world.onDie里的原代码*/
    }else{
        world.say(`${entity.id} 被 ${attacker.player.name} 击败了!`)
        entity.destroy() /*清除模型实体*/
        /* 其他操作··· */
    }
})

点赞1


评论