猫史档案馆


【代码岛3.0】传送代码(重发)

用户:传奇无敌传奇无敌查看:0 回复:4 评论:0 创建时间:2020-06-17T19:17:43


(重发是因为上次代码没出来)

今天,我们来讲一讲传送指令

顾名思义,就是把一个玩家传送到另一个玩家

首先,我们当然要一个:

world.onChat(({entity,message})=>{     

})

 emotion_编程猫_冷漠(这谁都知道) 接下来就是重点了!!!

我们要对message进行处理, 要用到startsWith函数  

比如说:

world.onChat(({entity,message})=>{     
    if (message.startsWith('a')){
         world.say('a')     
    } 
})

 如果你说:'as

结果:true emotion_雷电猴_哇噻

那么我们用/tp来代表传送: 

world.onChat(({entity,message})=>{
    if (message.startsWith('/tp')){        
    
    } 
}) 

 接着,我们要用到slice函数(要知道是谁嘛),并用一个变量刻印它

 var teleportPlayer = '' 
world.onChat(({entity,message})=>{
     if (message.startsWith('/tp')){
         teleportPlayer = message.slice(4)//这里是四因为要空格
     } 
})

 最后,遍历玩家列表,传送就行了    

完整代码:

var teleportPlayer = ''//定义传送玩家变量 
world.onChat(({entity,message})=>{
     if (message.startsWith('/tp')){//如果以'/tp'开头 
        teleportPlayer = message.slice(4)//这里是四因为要空格 
        world.querySelectorAll('player').forEach((x)=>{//遍历玩家列表 
            if (x.player.name == teleportPlayer){
                entity.position.copy(x.position)//传送 
                world.say('已将'+entity.player.name+'传至'+x.player.name)//提示语
            }
        })
     }
})

 emotion_编程猫_紧张

 挑战:做出把一个玩家(不是自己)传送至另一个玩家(也不是自己)的代码!(反正我已经有了) emotion_编程猫_点赞


回复

上一页1 页 / 共 1下一页
洛亦ly洛亦ly

沙发:顺便说谢谢

点赞0


评论


J_K_Hermione_build白泽J_K_Hermione_build白泽

D喵喵

点赞0


评论


洛亦ly洛亦ly

挑战的代码给我一下emotion_可怜

点赞2


评论


指令者指令者

emotion_编程猫_点赞

点赞1


评论