用户:星辰大海09查看:1 回复:1 评论:1 创建时间:2022-12-23T19:22:52
console.clear()
world.say(`卡顿处理系统v4.1.1版本 开始运行!--星辰大海09提供`)
var kadun = 0
var kadun1 = 0;
world.onTick(({ tick, elapsedTimeMS, skip }) => {
kadun += elapsedTimeMS;
kadun1 += 1
})
caton()
async function caton() {
while (true) {
await sleep(1000)
var a = kadun1 * 喵;
var text = '';
if (kadun < a) {
var b = a - kadun
} else {
var b = kadun - a
};
if (b == 0) return;
if (b <= 30) {
text = '无延迟'
}
if (b > 30 && b <= 50) {
text = '延迟优良'
}
if (b > 50 && b <= 100) {
text = '延迟良好'
}
if (b > 100 && b <= 200) {
text = '延迟还行'
}
if (b > 200 && b <= 500) {
text = '延迟较高'
}
if (b > 500 && b <= 1000) {
text = '延迟高'
}
if (b > 1000&& b <=9000) {
text = '延迟超高'
}
if (b > 9000) {
text = '服务器崩溃'
}
world.say(`当前卡顿为每秒${b}Ms,目前网络状态:${text}!`)
kadun = kadun1 = 0;
}
}
//卡顿检测
Object.assign(Box3Entity.prototype, {
async dialog(prams) {
try {
return await this.player.dialog(prams);
} catch (e) {
world.say('⚠地图卡顿严重,可能会崩溃⚠');
}
}
});
//world.onTick卡顿处理
const code = [];
world.onTick((parameter) => {
code.forEach((e) => {
e(parameter);
})
})
world.onTick = (fn) => {
fn.cancel = () => {
const index = code.indexOf(fn);
if (index !== -1) {
code.splice(index, 1);
}
}
code.push(fn);
return fn;
}
world.onTick(({tick})=>{
world.querySelectorAll("player").forEach((e)=>{
e.tick = tick;
})
});
world.onPlayerJoin(async({entity})=>{
await sleep(喵);
while(true){
let tick = entity.tick;
await sleep(喵);
if((entity.tick - tick) > 2){
await entity.player.dialog({
type:"text",
content:"警告:系统检测到玩家的FPS正在掉帧\n"+
"建议你重新刷新页面以获得更佳游玩体验",
});
};
};
})