猫史档案馆


【box3】检测挂机代码

用户:Chengxuyee_已退Chengxuyee_已退查看:7 回复:23 评论:7 创建时间:2021-04-19T19:38:46


中手信息课上搞出来的() varguaji=[];//会将检测到的挂机玩家的识别码加入此列表,当挂机玩家重新进入游戏时删除他的识别码。 world.onPlayerJoin(({entity})=>{ entity.player.jilu=0; entity.player.jilu2=0; //一些玩家的私有变量 }) world.onTick(({})=>{ world.querySelectorAll('player').forEach(async(e)=>{ if(!guaji.includes(e.player.userKey)){//如果已经提示过玩家就不再提示了。 e.player.jilu=e.position; if(e.player.jilu==e.position){//检测玩家位置是否变化 e.player.jilu2+=1; if(e.player.jilu2>=300){//检测玩家是否长时间位置不变化,是则判定挂机。可以改变数值以改变判定挂机的秒数,此代码默认300Tick。 e.player.invisible=true;//也可以根据游戏内容改为其他事件。 e.player.spectator=true; e.player.directMessage('系统检测到你在挂机,自动退出游戏。') e.player.directMessage('若想重新加入游戏,请说“加入游戏”')//提示玩家 guaji.push(e.player.userKey) } }else{ e.player.jilu2=0;//玩家进行移动,重新开始计算是否挂机。 } } }) }) world.onChat(({entity,message})=>{ entity.player.jilu2=0;//防止有些玩家因为打字而不移动位置。 if(message=='加入游戏'){//挂机玩家重新进入游戏 if(guaji.includes(entity.player.userKey)){ guaji.splice(guaji.indexOf(entity.player.userKey)); entity.player.directMessage('已加入游戏。') entity.player.invisible=false;//取消之前对玩家的改变 entity.player.spectator=false; }else{ entity.player.directMessage('你不在挂机!')//防止玩家不在挂机时输入此内容。 } } })


回复

上一页1 页 / 共 1下一页
SKQASKQA

varguaji=[]//会将检测到的挂机玩家的识别码加入此列表,当挂机玩家重新进入游戏时删除他的识别码 world.onPlayerJoin(({entity})=>{ entity.player.jilu=0 entity.player.jilu2=0//一些玩家的私有变量 }) world.onTick(({})=>{ world.querySelectorAll('player').forEach(async(e)=>{ if(!guaji.includes(e.player.userKey)){//如果已经提示过玩家就不再提示了。 e.player.jilu=e.position if(e.player.jilu==e.position){//检测玩家位置是否变化 e.player.jilu2+=1 if(e.player.jilu2>=300){//检测玩家是否长时间位置不变化,是则判定挂机。可以改变数值以改变判定挂机的秒数,此代码默认300Tick。 e.player.invisible=true//也可以根据游戏内容改为其他事件 e.player.spectator=true e.player.directMessage('系统检测到你在挂机,自动退出游戏。') e.player.directMessage('若想重新加入游戏,请说“加入游戏”')//提示玩家 guaji.push(e.player.userKey) } }else{ e.player.jilu2=0//玩家进行移动,重新开始计算是否挂机 } } }) }) world.onChat(({entity,message})=>{ entity.player.jilu2=0//防止有些玩家因为打字而不移动位置 if(message=='加入游戏'){//挂机玩家重新进入游戏 if(guaji.includes(entity.player.userKey)){ guaji.splice(guaji.indexOf(entity.player.userKey)) entity.player.directMessage('已加入游戏') entity.player.invisible=false//取消之前对玩家的改变 entity.player.spectator=false }else{ entity.player.directMessage('你不在挂机!')//防止玩家不在挂机时输入此内容 } } })

点赞0


评论


ymd1010catymd1010cat

()varguaji=[];//会将检测到的挂机玩家的识别码加入此列表,当挂机玩家重新进入游戏时删除他的识别码。world.onPlayerJoin(({entity})=>{entity.player.jilu=0;entity.player.jilu2=0;//一些玩家的私有变量})world.onTick(({})=>{world.querySelectorAll('player').forEach(async(e)=>{if(!guaji.includes(e.player.userKey)){//如果已经提示过玩家就不再提示了。e.player.jilu=e.position;if(e.player.jilu==e.position){//检测玩家位置是否变化e.player.jilu2+=1;if(e.player.jilu2>=300){//检测玩家是否长时间位置不变化,是则判定挂机。可以改变数值以改变判定挂机的秒数,此代码默认300Tick。e.player.invisible=true;//也可以根据游戏内容改为其他事件。e.player.spectator=true;e.player.directMessage('系统检测到你在挂机,自动退出游戏。')e.player.directMessage('若想重新加入游戏,请说“加入游戏”')//提示玩家guaji.push(e.player.userKey)}}else{e.player.jilu2=0;//玩家进行移动,重新开始计算是否挂机。}}})})world.onChat(({entity,message})=>{entity.player.jilu2=0;//防止有些玩家因为打字而不移动位置。if(message=='加入游戏'){//挂机玩家重新进入游戏if(guaji.includes(entity.player.userKey)){guaji.splice(guaji.indexOf(entity.player.userKey));entity.player.directMessage('已加入游戏。')entity.player.invisible=false;//取消之前对玩家的改变entity.player.spectator=false;}else{entity.player.directMessage('你不在挂机!')//防止玩家不在挂机时输入此内容。}}})

点赞0


评论


TLOCKTLOCK

varguaji=[]//会将检测到的挂机玩家的识别码加入此列表,当挂机玩家重新进入游戏时删除他的识别码world.onPlayerJoin(({entity})=>{entity.player.jilu=0entity.player.jilu2=0//一些玩家的私有变量})world.onTick(({})=>{world.querySelectorAll('player').forEach(async(e)=>{if(!guaji.includes(e.player.userKey)){//如果已经提示过玩家就不再提示了。e.player.jilu=e.positionif(e.player.jilu==e.position){//检测玩家位置是否变化e.player.jilu2+=1if(e.player.jilu2>=300){//检测玩家是否长时间位置不变化,是则判定挂机。可以改变数值以改变判定挂机的秒数,此代码默认300Tick。e.player.invisible=true//也可以根据游戏内容改为其他事件e.player.spectator=truee.player.directMessage('系统检测到你在挂机,自动退出游戏。')e.player.directMessage('若想重新加入游戏,请说“加入游戏”')//提示玩家guaji.push(e.player.userKey)}}else{e.player.jilu2=0//玩家进行移动,重新开始计算是否挂机}}})})world.onChat(({entity,message})=>{entity.player.jilu2=0//防止有些玩家因为打字而不移动位置if(message=='加入游戏'){//挂机玩家重新进入游戏if(guaji.includes(entity.player.userKey)){guaji.splice(guaji.indexOf(entity.player.userKey))entity.player.directMessage('已加入游戏')entity.player.invisible=false//取消之前对玩家的改变entity.player.spectator=false}else{entity.player.directMessage('你不在挂机!')//防止玩家不在挂机时输入此内容}}})

点赞0


评论


可爱的独角蛛P8wG可爱的独角蛛P8wG

谢谢

点赞0


评论


async_functionasync_function

varguaji=[] //会将检测到的挂机玩家的识别码加入此列表,当挂机玩家重新进入游戏时删除他的识别码world.onPlayerJoin(({entity})=>{entity.player.jilu=0entity.player.jilu2= 0//一些玩家的私有变量 }) world.onTick(({})=>{world.querySelectorAll('player').forEach(async(e)=>{if(!guaji.includes(e.player.userKey)){ //如果已经提示过玩家就不再提示了。e.player.jilu=e.positionif(e.player.jilu==e.position){ //检测玩家位置是否变化 e.player.jilu2+=1if(e.player.jilu2>=300){ //检测玩家是否长时间位置不变化,是则判定挂机。可以改变数值以改变判定挂机的秒数,此代码默认300Tick。 e.player.invisible=true//也可以根据游戏内容改为其他事件e.player.spectator=truee.player.directMessage('系统检测到你在挂机,自动退出游戏。') e.player.directMessage('若想重新加入游戏,请说“加入游戏”')//提示玩家guaji.push(e.player.userKey)} }else{e.player.jilu2=0 //玩家进行移动,重新开始计算是否挂机}}})})world.onChat(({entity,message})=>{entity.player.jilu2=0//防止有些玩家因为打字而不移动位置if(message=='加入游戏'){//挂机玩家重新进入游戏if(guaji.includes(entity.player.userKey)){guaji.splice(guaji.indexOf(entity.player.userKey))entity.player.directMessage('已加入游戏')entity.player.invisible=false//取消之前对玩家的改变entity.player.spectator=false}else{entity.player.directMessage('你不在挂机!')//防止玩家不在挂机时输入此内容}}})

点赞0


评论


IaeaIaea

呵呵

点赞0


评论


无尽深空无尽深空

中手信息课上搞出来的()varguaji=[];//会将检测到的挂机玩家的识别码加入此列表,当挂机玩家重新进入游戏时删除他的识别码。world.onPlayerJoin(({entity})=>{entity.player.jilu=0;entity.player.jilu2=0;//一些玩家的私有变量})world.onTick(({})=>{world.querySelectorAll('player').forEach(async(e)=>{if(!guaji.includes(e.player.userKey)){//如果已经提示过玩家就不再提示了。e.player.jilu=e.position;if(e.player.jilu==e.position){//检测玩家位置是否变化e.player.jilu2+=1;if(e.player.jilu2>=300){//检测玩家是否长时间位置不变化,是则判定挂机。可以改变数值以改变判定挂机的秒数,此代码默认300Tick。e.player.invisible=true;//也可以根据游戏内容改为其他事件。e.player.spectator=true;e.player.directMessage('系统检测到你在挂机,自动退出游戏。')e.player.directMessage('若想重新加入游戏,请说“加入游戏”')//提示玩家guaji.push(e.player.userKey)}}else{e.player.jilu2=0;//玩家进行移动,重新开始计算是否挂机。}}})})world.onChat(({entity,message})=>{entity.player.jilu2=0;//防止有些玩家因为打字而不移动位置。if(message=='加入游戏'){//挂机玩家重新进入游戏if(guaji.includes(entity.player.userKey)){guaji.splice(guaji.indexOf(entity.player.userKey));entity.player.directMessage('已加入游戏。')entity.player.invisible=false;//取消之前对玩家的改变entity.player.spectator=false;}else{entity.player.directMessage('你不在挂机!')//防止玩家不在挂机时输入此内容。}}})

点赞0


评论


BSS梅者如西BSS梅者如西

//测试可不可以发代码

点赞0


评论


没尾巴的鲸鱼没尾巴的鲸鱼

...

点赞0


评论


无尽深空无尽深空

中手信息课上搞出来的()varguaji=[];//会将检测到的挂机玩家的识别码加入此列表,当挂机玩家重新进入游戏时删除他的识别码。world.onPlayerJoin(({entity})=>{entity.player.jilu=0;entity.player.jilu2=0;//一些玩家的私有变量})world.onTick(({})=>{world.querySelectorAll('player').forEach(async(e)=>{if(!guaji.includes(e.player.userKey)){//如果已经提示过玩家就不再提示了。e.player.jilu=e.position;if(e.player.jilu==e.position){//检测玩家位置是否变化e.player.jilu2+=1;if(e.player.jilu2>=300){//检测玩家是否长时间位置不变化,是则判定挂机。可以改变数值以改变判定挂机的秒数,此代码默认300Tick。e.player.invisible=true;//也可以根据游戏内容改为其他事件。e.player.spectator=true;e.player.directMessage('系统检测到你在挂机,自动退出游戏。')e.player.directMessage('若想重新加入游戏,请说“加入游戏”')//提示玩家guaji.push(e.player.userKey)}}else{e.player.jilu2=0;//玩家进行移动,重新开始计算是否挂机。}}})})world.onChat(({entity,message})=>{entity.player.jilu2=0;//防止有些玩家因为打字而不移动位置。if(message=='加入游戏'){//挂机玩家重新进入游戏if(guaji.includes(entity.player.userKey)){guaji.splice(guaji.indexOf(entity.player.userKey));entity.player.directMessage('已加入游戏。')entity.player.invisible=false;//取消之前对玩家的改变entity.player.spectator=false;}else{entity.player.directMessage('你不在挂机!')//防止玩家不在挂机时输入此内容。}}})

点赞0


评论


ymd1010catymd1010cat

varguaji=[];//会将检测到的挂机玩家的识别码加入此列表,当挂机玩家重新进入游戏时删除他的识别码。world.onPlayerJoin(({entity})=>{entity.player.jilu=0;entity.player.jilu2=0;//一些玩家的私有变量})world.onTick(({})=>{world.querySelectorAll('player').forEach(async(e)=>{if(!guaji.includes(e.player.userKey)){//如果已经提示过玩家就不再提示了。e.player.jilu=e.position;if(e.player.jilu==e.position){//检测玩家位置是否变化e.player.jilu2+=1;if(e.player.jilu2>=300){//检测玩家是否长时间位置不变化,是则判定挂机。可以改变数值以改变判定挂机的秒数,此代码默认300Tick。e.player.invisible=true;//也可以根据游戏内容改为其他事件。e.player.spectator=true;e.player.directMessage('系统检测到你在挂机,自动退出游戏。')e.player.directMessage('若想重新加入游戏,请说“加入游戏”')//提示玩家guaji.push(e.player.userKey)}}else{e.player.jilu2=0;//玩家进行移动,重新开始计算是否挂机。}}})})world.onChat(({entity,message})=>{entity.player.jilu2=0;//防止有些玩家因为打字而不移动位置。if(message=='加入游戏'){//挂机玩家重新进入游戏if(guaji.includes(entity.player.userKey)){guaji.splice(guaji.indexOf(entity.player.userKey));entity.player.directMessage('已加入游戏。')entity.player.invisible=false;//取消之前对玩家的改变entity.player.spectator=false;}else{entity.player.directMessage('你不在挂机!')//防止玩家不在挂机时输入此内容。}}})

点赞0


评论


varguaji=[]//会将检测到的挂机玩家的识别码加入此列表,当挂机玩家重新进入游戏时删除他的识别码world.onPlayerJoin(({entity})=>{entity.player.jilu=0entity.player.jilu2=0//一些玩家的私有变量})world.onTick(({})=>{world.querySelectorAll('player').forEach(async(e)=>{if(!guaji.includes(e.player.userKey)){//如果已经提示过玩家就不再提示了。e.player.jilu=e.positionif(e.player.jilu==e.position){//检测玩家位置是否变化e.player.jilu2+=1if(e.player.jilu2>=300){//检测玩家是否长时间位置不变化,是则判定挂机。可以改变数值以改变判定挂机的秒数,此代码默认300Tick。e.player.invisible=true//也可以根据游戏内容改为其他事件e.player.spectator=truee.player.directMessage('系统检测到你在挂机,自动退出游戏。')e.player.directMessage('若想重新加入游戏,请说“加入游戏”')//提示玩家guaji.push(e.player.userKey)}}else{e.player.jilu2=0//玩家进行移动,重新开始计算是否挂机}}})})world.onChat(({entity,message})=>{entity.player.jilu2=0//防止有些玩家因为打字而不移动位置if(message=='加入游戏'){//挂机玩家重新进入游戏if(guaji.includes(entity.player.userKey)){guaji.splice(guaji.indexOf(entity.player.userKey))entity.player.directMessage('已加入游戏')entity.player.invisible=false//取消之前对玩家的改变entity.player.spectator=false}else{entity.player.directMessage('你不在挂机!')//防止玩家不在挂机时输入此内容}}})

点赞0


评论


Architect_皮卡awaArchitect_皮卡awa

https://box3.codemao.cn/e/412e9897826f喵27345c?p=iBvoj%2BENuYZBuGbIfDwuWpzyK9zmJd4unogMLroIAJA8%2F%2B9h6XLwblhajogYw%3D

点赞0


评论


Architect_皮卡awaArchitect_皮卡awa

varguaji=[]//会将检测到的挂机玩家的识别码加入此列表,当挂机玩家重新进入游戏时删除他的识别码world.onPlayerJoin(({entity})=>{entity.player.jilu=0entity.player.jilu2=0//一些玩家的私有变量})world.onTick(({})=>{world.querySelectorAll('player').forEach(async(e)=>{if(!guaji.includes(e.player.userKey)){//如果已经提示过玩家就不再提示了。e.player.jilu=e.positionif(e.player.jilu==e.position){//检测玩家位置是否变化e.player.jilu2+=1if(e.player.jilu2>=300){//检测玩家是否长时间位置不变化,是则判定挂机。可以改变数值以改变判定挂机的秒数,此代码默认300Tick。e.player.invisible=true//也可以根据游戏内容改为其他事件e.player.spectator=truee.player.directMessage('系统检测到你在挂机,自动退出游戏。')e.player.directMessage('若想重新加入游戏,请说“加入游戏”')//提示玩家guaji.push(e.player.userKey)}}else{e.player.jilu2=0//玩家进行移动,重新开始计算是否挂机}}})})world.onChat(({entity,message})=>{entity.player.jilu2=0//防止有些玩家因为打字而不移动位置if(message=='加入游戏'){//挂机玩家重新进入游戏if(guaji.includes(entity.player.userKey)){guaji.splice(guaji.indexOf(entity.player.userKey))entity.player.directMessage('已加入游戏')entity.player.invisible=false//取消之前对玩家的改变entity.player.spectator=false}else{entity.player.directMessage('你不在挂机!')//防止玩家不在挂机时输入此内容}}})

点赞0


评论


科技改变时代科技改变时代

varguaji=[]//会将检测到的挂机玩家的识别码加入此列表,当挂机玩家重新进入游戏时删除他的识别码world.onPlayerJoin(({entity})=>{entity.player.jilu=0entity.player.jilu2=0//一些玩家的私有变量})world.onTick(({})=>{world.querySelectorAll('player').forEach(async(e)=>{if(!guaji.includes(e.player.userKey)){//如果已经提示过玩家就不再提示了。e.player.jilu=e.positionif(e.player.jilu==e.position){//检测玩家位置是否变化e.player.jilu2+=1if(e.player.jilu2>=300){//检测玩家是否长时间位置不变化,是则判定挂机。可以改变数值以改变判定挂机的秒数,此代码默认300Tick。e.player.invisible=true//也可以根据游戏内容改为其他事件e.player.spectator=truee.player.directMessage('系统检测到你在挂机,自动退出游戏。')e.player.directMessage('若想重新加入游戏,请说“加入游戏”')//提示玩家guaji.push(e.player.userKey)}}else{e.player.jilu2=0//玩家进行移动,重新开始计算是否挂机}}})})world.onChat(({entity,message})=>{entity.player.jilu2=0//防止有些玩家因为打字而不移动位置if(message=='加入游戏'){//挂机玩家重新进入游戏if(guaji.includes(entity.player.userKey)){guaji.splice(guaji.indexOf(entity.player.userKey))entity.player.directMessage('已加入游戏')entity.player.invisible=false//取消之前对玩家的改变entity.player.spectator=false}else{entity.player.directMessage('你不在挂机!')//防止玩家不在挂机时输入此内容}}})

点赞0


评论


一只屑流苏呀一只屑流苏呀

varguaji=[];//会将检测到的挂机玩家的识别码加入此列表,当挂机玩家重新进入游戏时删除他的识别码。world.onPlayerJoin(({entity})=>{entity.player.jilu=0;entity.player.jilu2=0;//一些玩家的私有变量})world.onTick(({})=>{world.querySelectorAll('player').forEach(async(e)=>{if(!guaji.includes(e.player.userKey)){//如果已经提示过玩家就不再提示了。e.player.jilu=e.position;if(e.player.jilu==e.position){//检测玩家位置是否变化e.player.jilu2+=1;if(e.player.jilu2>=300){//检测玩家是否长时间位置不变化,是则判定挂机。可以改变数值以改变判定挂机的秒数,此代码默认300Tick。e.player.invisible=true;//也可以根据游戏内容改为其他事件。e.player.spectator=true;e.player.directMessage('系统检测到你在挂机,自动退出游戏。')e.player.directMessage('若想重新加入游戏,请说“加入游戏”')//提示玩家guaji.push(e.player.userKey)}}else{e.player.jilu2=0;//玩家进行移动,重新开始计算是否挂机。}}})})world.onChat(({entity,message})=>{entity.player.jilu2=0;//防止有些玩家因为打字而不移动位置。if(message=='加入游戏'){//挂机玩家重新进入游戏if(guaji.includes(entity.player.userKey)){guaji.splice(guaji.indexOf(entity.player.userKey));entity.player.directMessage('已加入游戏。')entity.player.invisible=false;//取消之前对玩家的改变entity.player.spectator=false;}else{entity.player.directMessage('你不在挂机!')//防止玩家不在挂机时输入此内容。}}})

点赞0


评论


搬码喵搬码喵

 

//正确的:
var varguaji=[]; world.onPlayerJoin(({entity})=>{ entity.player.jilu=0; entity.player.jilu2=0;  }) ;world.onTick(({})=>{ world.querySelectorAll('player').forEach(async(e)=>{ if(!guaji.includes(e.player.userKey)){ e.player.jilu=e.position; if(e.player.jilu==e.position){ e.player.jilu2+=1; if(e.player.jilu2>=300){ e.player.invisible=true; e.player.spectator=true; e.player.directMessage('系统检测到你在挂机,自动退出游戏。') ;e.player.directMessage('若想重新加入游戏,请说“加入游戏”'); guaji.push(e.player.userKey) } }else{ e.player.jilu2=0; } } }) }); world.onChat(({entity,message})=>{ entity.player.jilu2=0; if(message=='加入游戏'){ if(guaji.includes(entity.player.userKey)){ guaji.splice(guaji.indexOf(entity.player.userKey)); entity.player.directMessage('已加入游戏。') ;entity.player.invisible=false; entity.player.spectator=false; }else{ entity.player.directMessage('你不在挂机!') } } })

点赞0


评论


搬码喵搬码喵

var guaji = []
world.onTick(() => {
    world.querySelectorAll("player").forEach((e) => {
        if (!guaji.includes(e.player.userKey)) {
            guaji.push(e.player.userKey)
        }
        if(e.time >= 180){
            e.player.kick()
            guaji.splice(1,guaji.indexOf(e.player.userKey))
            e.time = 0
            
        }
    })

    
})
world.onTick(({ tick }) => {
    if (tick % 15 == 0) {
        
        world.querySelectorAll("player").forEach((e) => {
            e.positionAction = e.position

            if (e.position == e.positionAction) {
                e.time += 1
            }
        })
    }
})
world.onPlayerJoin(({ entity }) => {
    entity.time = 0
    entity.positionAction = entity.position
})

点赞0


评论


libra_libra_

评论区中毒啦?()

点赞0


评论


萌新大佬萌新大佬

var guaji=[];//会将检测到的挂机玩家的识别码加入此列表,当挂机玩家重新进入游戏时删除他的识别码。
world.onPlayerJoin(({entity})=>{
    entity.player.jilu=0;
    entity.player.jilu2=0;//一些玩家的私有变量
});
world.onTick(({})=>{
    world.querySelectorAll('player').forEach(async(e)=>{
        if(!guaji.includes(e.player.userKey)){//如果已经提示过玩家就不再提示了。
            e.player.jilu=e.position;
            if(e.player.jilu==e.position){//检测玩家位置是否变化
                e.player.jilu2+=1;
                if(e.player.jilu2>=300){//检测玩家是否长时间位置不变化,是则判定挂机。可以改变数值以改变判定挂机的秒数,此代码默认300Tick。
                    e.player.invisible=true;//也可以根据游戏内容改为其他事件。
                    e.player.spectator=true;
                    e.player.directMessage('系统检测到你在挂机,自动退出游戏。')
                    e.player.directMessage('若想重新加入游戏,请说“加入游戏”')//提示玩家
                    guaji.push(e.player.userKey)
                }
            }else{
                e.player.jilu2=0;//玩家进行移动,重新开始计算是否挂机。
            }
        }
    })
})
world.onChat(({entity,message})=>{
    entity.player.jilu2=0;//防止有些玩家因为打字而不移动位置。
    if(message=='加入游戏'){//挂机玩家重新进入游戏
        if(guaji.includes(entity.player.userKey)){
            guaji.splice(guaji.indexOf(entity.player.userKey));
            entity.player.directMessage('已加入游戏。')
            entity.player.invisible=false;//取消之前对玩家的改变
            entity.player.spectator=false;
        }else{
            entity.player.directMessage('你不在挂机!')//防止玩家不在挂机时输入此内容。
        }
    }
})

↑作者代码整理

代码格式化,纠错后↓

var guaji = [];    //会将检测到的挂机玩家的识别码加入此列表,当挂机玩家重新进入游戏时删除他的识别码。
world.onPlayerJoin(({ entity }) => {
    entity.player.jilu = 0;
    entity.player.jilu2 = 0;    //一些玩家的私有变量
});
world.onTick(() => {
    world.querySelectorAll('player').forEach((e) => {
        if (!guaji.includes(e.player.userKey)) {    //如果已经提示过玩家就不再提示了。
            if (e.player.jilu == e.position) {    //检测玩家位置是否变化
                e.player.jilu2 += 1;
                if (e.player.jilu2 >= 300) {    //检测玩家是否长时间位置不变化,是则判定挂机。可以改变数值以改变判定挂机的秒数,此代码默认300Tick。
                    e.player.invisible = true;    //也可以根据游戏内容改为其他事件。
                    e.player.spectator = true;
                    e.player.directMessage('系统检测到你在挂机,自动退出游戏。');
                    e.player.directMessage('若想重新加入游戏,请说“加入游戏”');    //提示玩家
                    guaji.push(e.player.userKey);
                }
            } else {
                e.player.jilu = e.position;    //更新玩家位置
                e.player.jilu2 = 0;    //玩家进行移动,重新开始计算是否挂机。
            }
        }
    });
});
world.onChat(({ entity, message }) => {
    entity.player.jilu2 = 0;    //防止有些玩家因为打字而不移动位置。
    if (message == '加入游戏') {    //挂机玩家重新进入游戏
        if (guaji.includes(entity.player.userKey)) {
            guaji.splice(guaji.indexOf(entity.player.userKey));
            entity.player.directMessage('已加入游戏。');
            entity.player.invisible = false;    //取消之前对玩家的改变
            entity.player.spectator = false;
        } else {
            entity.player.directMessage('你不在挂机!');    //防止玩家不在挂机时输入此内容。
        }
    }
});

点赞0


评论


萌新大佬萌新大佬

欸,谁挖的????

点赞0


评论


Aaa求佛yaAaa求佛ya

emotion_编程猫_翻白眼

点赞0


评论


帅气的浩轩帅气的浩轩

var guaji = []

world.onTick(() => {

    world.querySelectorAll("player").forEach((e) => {

        if (!guaji.includes(e.player.userKey)) {

            guaji.push(e.player.userKey)

        }

        if(e.time >= 180){

            e.player.kick()

            guaji.splice(1,guaji.indexOf(e.player.userKey))

            e.time = 0

            

        }

    })

 

    

})

world.onTick(({ tick }) => {

    if (tick % 15 == 0) {

        

        world.querySelectorAll("player").forEach((e) => {

            e.positionAction = e.position

 

            if (e.position == e.positionAction) {

                e.time += 1

            }

        })

    }

})

world.onPlayerJoin(({ entity }) => {

    entity.time = 0

    entity.positionAction = entity.position

})

点赞0


评论