猫史档案馆


元气 代码开源

用户:seven葫中葫seven葫中葫查看:1127 回复:13 评论:1 创建时间:2021-11-14T08:18:44


因为编码喵把我从元气世界拉黑了,所以我就可以为所欲为了,本代码分为四部分:主体,举报功能,玩家脚本,怪物脚本(注意,需要把他们放在不同的模块里,模块名字也要一样)我会分开发

1

/***********************************************************/
/*                                                         */
/*                   元气世界 版本:V.0.2.5                  */
/*                 (c) 2021 版权所有,违者必究                */
/*                                                         */
/***********************************************************/
/*                  留言请留在“留言、.js”                     */
/************未经允许,代码不许改动、复制,违者拉黑****************/
console.error=function(va){
    world.say(va)
}
for(let x=0;x<127;x++){
    for(let y=0;y<127;y++){
        for(let z=0;z<127;z++){
            if(voxels.getVoxel(x,y,z)==voxels.id('grass')){
                voxels.setVoxel(x,y,z,'yellow_grass')
            }
            else if(voxels.getVoxel(x,y,z)==voxels.id('leaf_01')){
                voxels.setVoxel(x,y,z,'leaf_02')
            }
            else if(voxels.getVoxel(x,y,z)==voxels.id('green_leaf')){
                voxels.setVoxel(x,y,z,'leaf_03')
            }
            else if(voxels.getVoxel(x,y,z)==voxels.id('leaf_05')){
                voxels.setVoxel(x,y,z,'leaf_06')
            }
        }
    }
}


world.addCollisionFilter('player','player');
require("./玩家脚本.js");
require('./怪物脚本.js');
require('./举报功能.js');
//作者权限
const TEST_WRITE_PLAYER=["编码喵","CIBN酷喵",'战喵飙状态]'];
world.onPlayerJoin(({entity})=>{
    entity.enableDamage=true;
    if(!TEST_WRITE_PLAYER.includes(entity.player.name)){
        return;
    }
    entity.player.canFly=true;
})
function find(player){
    world.a;
    world.querySelectorAll("player").forEach((e)=>{
        if(e.player.name==player){
            world.a=e;
        }
    })
    return world.a;
}

async function typewriting(player,text,title,lookTarget,lookEye){
    var n=0;
    var t="";
    while(n<text.length){
        t+=text[n]
        var dlg=await player.player.dialog({
            type:'text',
            title:title,
            content:t,
            lookTarget:lookTarget,
            lookEye:lookEye
        })
        n++;
        await sleep(150);
        dlg.cancel();
    }
}

async function openBlack(entity){
        var blankUser=[]
        var option=[]
        for(const n of await db.sql`SELECT * FROM black`){
            blankUser.push({name:n.name,move:n.move,id:n.id});
            option.push(n.name)
        }
        if(option.length>0){
            var text=""
        }
        else{
            var text="面板里空空如也~"
        }
        var result=await entity.player.dialog({
            type:"select",
            title:"举报面板",
            options:option,
            content:text
        })
        if(!result||result.index==null||result.value==""){
            return;
        }
        var select=await entity.player.dialog({
            type:"select",
            title:"举报面板",
            content:`用户名:${blankUser[result.index].name}
            行为:${blankUser[result.index].move}
            id:${blankUser[result.index].id}`,
            options:["拉黑","删除"]
        })
        if(!select||select.index==null){
            openBlack(entity);
            return
        };
        if(select.index==0){
            await db.sql`DELETE FROM players WHERE id=${blankUser[result.index].id}`
            await db.sql`DELETE FROM black WHERE name=${blankUser[result.index].name}`
            var text='拉黑'
        }
        if(select.index==1){
            await db.sql`DELETE FROM black WHERE name=${blankUser[result.index].name}`
            var text='删除'
        }
        entity.player.dialog({
            type:'text',
            content:text+'成功~',
            title:text
        })
        openBlack(entity)
}

world.onChat(async({entity,message})=>{
    if(message[0]=="$"&&TEST_WRITE_PLAYER.includes(entity.player.name)){
        try{
            var code=eval(message.slice(1));
            world.say("~>"+code);
        }
        catch(e){
            world.say("Error:"+e.message)
        }
    }
    if(message=="/举报"){
        var blank=await entity.player.dialog({
            type:'input',
            title:'举报',
            content:"玩家名字:",
            confirmText: '下一步', // 确定按钮上面的文字。按下确定按钮后,提交回答。
            placeholder: '请输入玩家用户名',
        })
        if(!blank||blank==null)return;
        var move=await entity.player.dialog({
            type:"input",
            title:"举报",
            content:"举报对象行为",
            confirmText: '举报', 
            placeholder: '请输入举报对象的行为',
        })
        if(!move||move==null)return;
        var id=await db.sql`SELECT * FROM borad WHERE name=${blank}`;
        await db.sql`INSERT INTO black VALUES(${blank},${move},${id[0].id})`;
        entity.player.dialog({
            type:'text',
            title:'举报',
            content:'举报成功!'
        })
    }
    if(message=="/举报面板"&&TEST_WRITE_PLAYER.includes(entity.player.name)){
        openBlack(entity)
    }
})



const doctor1=world.querySelector("#护士");
doctor1.enableInteract=true;
doctor1.interactRadius=3;
doctor1.interactHint="护士";
doctor1.interactColor=new Box3RGBColor(1,1,1);
doctor1.onInteract(async({entity,targetEntity})=>{
    var orientation=new Box3Quaternion(0,0,0,1).rotateY(Math.atan2(entity.position.z-targetEntity.position.z,entity.position.x-targetEntity.position.x));
    targetEntity.meshOrientation.copy(orientation);
    var result=await entity.player.dialog({
        type:'select',
        title:'护士',
        content:'请问是否进入元气世界最好的医院',
        options:['进入','离开']
    })
    if(!result||result.index==null)return;
    if(result.index==0){
        entity.position.set(101,5,92);
    }
})

const scpdor=world.querySelector('#scp门');
scpdor.enableInteract=true;
scpdor.interactRadius=1.5;
scpdor.interactHint="离开";
scpdor.interactColor=new Box3RGBColor(1,1,1);
scpdor.onInteract(({entity})=>{
    entity.position.set(100,13,91);
})

const doctor=world.querySelector("#医生");
doctor.enableInteract=true;
doctor.interactRadius=3;
doctor.interactHint="医生";
doctor.onInteract(async({entity,targetEntity})=>{
    if(entity.hp==0)return;
    var orientation=new Box3Quaternion(0,0,0,1).rotateY(Math.atan2(entity.position.z-targetEntity.position.z,entity.position.x-targetEntity.position.x));
    targetEntity.meshOrientation.copy(orientation);
    var result=await entity.player.dialog({
        type:"select",
        title:'医生',
        content:"你好,"+entity.player.name+",请问你有什么需要?",
        options:["治病:"+Math.round(entity.maxHp*(1/50)),"药箱:15元"]
    })
    if(!result||result.index==null)return;
    switch(result.index){
        case 0:
        if(entity.hp!=entity.maxHp&&entity.money>=Math.round(entity.maxHp*(1/50))){
            entity.hp=entity.maxHp;
            entity.money-=Math.round(entity.maxHp*(1/50));
            entity.player.dialog({
                type:'text',
                content:'回血成功!'
            })
        }
        else if(entity.money>=Math.round(entity.maxHp*(1/50))&&entity.hp==entity.maxHp){
            entity.hurt(entity.maxHp);
            entity.player.dialog({
                type:'text',
                content:'你本来没病,医生把你治喵了'
            })
            entity.money-=Math.round(entity.maxHp*(1/50));
        }
        else{
            entity.player.dialog({
                type:'text',
                content:'你的钱不够'
            })
        }
        break;
        case 1:
        if(entity.money<15){
            entity.player.dialog({
                type:'text',
                content:'你的钱不够'
            })
            return;
        }
        else if(entity.bag.length>=25){
            entity.player.dialog({
                type:'text',
                content:'背包容量不足'
            })
            return;
        }
            entity.bag.push("药箱");
            entity.money-=15;
            entity.player.dialog({
                type:'text',
                content:'购买成功!'
            })
        break;
    }
})

async function selectReturn(player,value,mon){
    var name=value.slice(0,value.indexOf(":"));
    var select=await player.player.dialog({
        type:'select',
        title:name,
        content:'请问是否购买'+name,
        options:["购买","取消"]
    })
    if(!select||select.index==null)return false;
    if(select.index==0&&player.money>=mon){
        player.player.dialog({
            type:'text',
            content:'购买成功~'
        })
        return true;
    }
    if(select.index==1){
        return false;
    }
    if(select.index==0&&player.money<mon){
        player.player.dialog({
            type:'text',
            content:'你的钱不够'
        })
        return false;
    }
}

const person=world.querySelector('#老板');
person.enableInteract=true;
person.interactRadius=3;
person.interactHint="装备店老板";
person.onInteract(async({entity,targetEntity})=>{
    if(entity.hp===0)return;
    var orientation=new Box3Quaternion(0,0,0,1).rotateY(Math.atan2(entity.position.z-targetEntity.position.z,entity.position.x-targetEntity.position.x)+Math.PI/2);
    targetEntity.meshOrientation.copy(orientation);   
    var selectShop=await entity.player.dialog({
        type:'select',
        title:'装备店',
        content:'请选择你要购买的装备',
        options:["铁剑:20元","画戟:300元","金剑:60元","黄金战盔:60元","黄金战甲:75元","黄金战靴:45元","巴雷特:666元"]
    })
    if(!selectShop||selectShop.index==null)return;
    var returnv;
    switch(selectShop.index){
        case 0:
        returnv=await selectReturn(entity,selectShop.value,20);
        if(entity.bag.length<25&&returnv==true){
            entity.money-=20;
            entity.bag.push("铁剑");
            return;
        }
        if(returnv==false)return;
        break;
        
        case 1:
        returnv=await selectReturn(entity,selectShop.value,300);
        if(entity.bag.length<25&&returnv==true){
            entity.money-=300;
            entity.bag.push("画戟");
            return;
        }
        if(returnv==false)return;
        break;

        case 2:
        returnv=await selectReturn(entity,selectShop.value,60);
        if(entity.bag.length<25&&returnv==true){
            entity.money-=60;
            entity.bag.push("金剑");
            return;
        }
        if(returnv==false)return;
        break;

        case 3:
        returnv=await selectReturn(entity,selectShop.value,60);
        if(entity.bag.length<25&&returnv==true){
            entity.money-=60;
            entity.bag.push("黄金战盔");
            return;
        }
        if(returnv==false)return;
        break;

        case 4:
        returnv=await selectReturn(entity,selectShop.value,75);
        if(entity.bag.length<25&&returnv==true){
            entity.money-=75;
            entity.bag.push("黄金战甲");
            return;
        }
        if(returnv==false)return;
        break;

        case 5:
        returnv=await selectReturn(entity,selectShop.value,45);
        if(entity.bag.length<25&&returnv==true){
            entity.money-=45;
            entity.bag.push("黄金战靴");
            return;
        }
        if(returnv==false)return;
        break;

        case 6:
        returnv=await selectReturn(entity,selectShop.value,666);
        if(entity.bag.length<25&&returnv==true){
            entity.money-=666;
            entity.bag.push("巴雷特");
            return;
        }
        if(returnv==false)return;
        break;
    }
})

const tools_way={
    "铁剑":{name:'铁剑',need:"铁",num:4},
    "铁甲":{name:'铁甲',need:"铁",num:7},
    "铁头盔":{name:'铁头盔',need:'铁',num:5},
    "强化铁剑":{name:'强化铁剑',need:'铁剑',num:3},
    "钢盔":{name:'钢盔',need:'钢',num:5},
    "钢甲":{name:"钢甲",need:'钢',num:7},
    "钢剑":{name:"钢剑",need:"钢",num:4},
    "苦无":{name:"苦无",need:["钢","铁"],num:[4,2]},
    "普通机械部件":{name:"普通机械部件",need:["钢","铁"],num:[2,1]},
    "M416":{name:"M416",need:"普通机械部件",num:10},
    "铁战靴":{name:"铁战靴",need:"铁",num:4},
    "钢靴":{name:"钢靴",need:"钢",num:4},
    "钻石":{name:"钻石",need:["钛合金","玻璃"],num:[2,1]},
    "钻石战盔":{name:"钻石战盔",need:"钻石",num:4},
    "钻石战甲":{name:"钻石战甲",need:"钻石",num:5},
    "钻石战靴":{name:"钻石战靴",need:"钻石",num:3},
    "钻石剑":{name:"钻石剑",need:"钻石",num:4},
    "金刚锤":{name:"金刚锤",need:"钛合金",num:8},
    "高级机械部件":{name:"高级机械部件",need:["钛合金","钢","铁"],num:[3,2,1]},
    "火箭炮":{name:"火箭炮",need:["高级机械部件","钢"],num:[5,3]},
    "剧毒合金":{name:"剧毒合金",need:["剧喵水","钻石","钛合金"],num:[2,2,2]},
    "剧毒战盔":{name:"剧毒战盔",need:"剧毒合金",num:5},
    "剧毒战甲":{name:"剧毒战甲",need:"剧毒合金",num:7},
    "剧毒战靴":{name:"剧毒战靴",need:"剧毒合金",num:4},
    "剧毒剑":{name:"剧毒剑",need:"剧毒合金",num:4},
    "寒冰喵":{name:"寒冰喵",need:["钻石","钛合金","玻璃"],num:[10,5,5]},
    "激光喵":{name:"激光喵",need:"激光碎片",num:10},
    "末影戟":{name:"末影戟",need:["画戟","剧毒合金"],num:[1,4]},
    "烈焰合金":{name:"烈焰合金",need:["烈焰药水","剧毒合金","钻石"],num:[2,2,1]},
    "熔岩宝刀":{name:"熔岩宝刀",need:"烈焰合金",num:4},
    "熔岩战盔":{name:"熔岩战盔",need:"烈焰合金",num:6},
    "熔岩战甲":{name:"熔岩战甲",need:"烈焰合金",num:7},
    "熔岩战靴":{name:"熔岩战靴",need:"烈焰合金",num:4},
    "熔岩喵":{name:"熔岩喵",need:["烈焰合金","钛合金"],num:[10,5]},
    "冰火魔喵":{name:"冰火魔喵",need:["熔岩喵","寒冰喵"],num:[1,1]},
    "千鸟":{name:"千鸟",need:["雷霆之力","激光碎片"],num:[6,6]},
    "雷霆法杖":{name:"雷霆法杖",need:["千鸟","雷霆之力","激光碎片","烈焰合金"],num:[1,3,3,2]},
    "烈焰法杖":{name:"烈焰法杖",need:"烈焰合金",num:10},
    "附魔药水":{name:"附魔药水",need:["烈焰药水","剧喵水"],num:[3,2]},
    "附魔战盔":{name:"附魔战盔",need:["附魔药水","熔岩战盔","剧毒战盔"],num:[3,1,1]},
    "附魔战甲":{name:"附魔战甲",need:["附魔药水","熔岩战甲","剧毒战甲"],num:[3,1,1]},
    "附魔战靴":{name:"附魔战靴",need:["附魔药水","熔岩战靴","剧毒战靴"],num:[3,1,1]},
    "雷霆战盔":{name:"雷霆战盔",need:["附魔战盔","雷霆之力"],num:[1,5]},
    "雷霆战甲":{name:"雷霆战甲",need:["附魔战甲","雷霆之力"],num:[1,5]},
    "雷霆战靴":{name:"雷霆战靴",need:["附魔战靴","雷霆之力"],num:[1,5]},
    "半神之弓":{name:"半神之弓",need:["烈焰合金","钻石","雷霆之力","钛合金"],num:[5,3,10,2]}
}

const tools=['铁剑','铁甲','铁头盔','强化铁剑','钢盔',"钢甲","钢剑","苦无","普通机械部件","M416","铁战靴","钢靴","钻石","钻石战盔","钻石战甲",
"钻石战靴","钻石剑","金刚锤","高级机械部件","火箭炮",
"剧毒合金","剧毒战盔","剧毒战甲","剧毒战靴","剧毒剑","寒冰喵","激光喵","末影戟","烈焰合金","烈焰合金","熔岩宝刀","熔岩战盔",
"熔岩战甲","熔岩战靴","熔岩喵","冰火魔喵","千鸟","雷霆法杖","烈焰法杖","附魔药水","附魔战盔","附魔战甲","附魔战靴","雷霆战盔",
"雷霆战甲","雷霆战靴","半神之弓"
]

const robot=world.querySelector("#武器合成机器人");
robot.enableInteract=true;
robot.interactRadius=4;
robot.interactHint="武器合成机器人";
robot.onInteract(async({entity,targetEntity})=>{
    var orientation=new Box3Quaternion(0,0,0,1).rotateY(Math.atan2(entity.position.z-targetEntity.position.z,entity.position.x-targetEntity.position.x));
    targetEntity.meshOrientation.copy(orientation);
    var canmake=[];
    for(let a=0;a<tools.length;a++){
        if(tools_way[tools[a]].num.length){
            var ticket=0;
            for(var n=0;n<tools_way[tools[a]].num.length;n++){
                var has=[];
                for(let x=0;x<entity.bag.length;x++){
                    if(entity.bag[x]==tools_way[tools[a]].need[n]){
                        has.push(tools_way[tools[a]].need);
                    }
                }
                if(has.length>=tools_way[tools[a]].num[n]){
                    ticket++;
                }
            }
            if(ticket==tools_way[tools[a]].num.length){
                canmake.push(tools_way[tools[a]].name)
            }
        }
        else{
            if(entity.bag.indexOf(tools_way[tools[a]].need)){
                var has2=[];
                for(let x=0;x<entity.bag.length;x++){
                    if(entity.bag[x]==tools_way[tools[a]].need){
                        has2.push(tools_way[tools[a]].need);
                    }
                }
                if(has2.length>=tools_way[tools[a]].num){
                    canmake.push(tools_way[tools[a]].name);
                }
            }
        }
    }
    var select=await entity.player.dialog({
        type:'select',
        options:canmake,
        content:'有多余的零件都可以给我打造哦~',
        title:'武器打造'
    })
    if(!select||select.index===null||select.value==='')return;
    else{
    var next=await entity.player.dialog({
        type:'select',
        title:select.value,
        content:'请问是否打造'+select.value,
        options:['打造','取消']
    })
    if(!next||next.index==null)return;
    if(next.index==0){
        var tik=0;
        entity.bag.push(tools_way[select.value].name);
        if(tools_way[select.value].num.length){
            for(var n=0;n<tools_way[select.value].num.length;n++){
                var tick=0;
                for(let x=0;x<entity.bag.length;x++){
                    if(entity.bag[x]==tools_way[select.value].need[n]&&tick<tools_way[select.value].num[n]){
                        tick++;
                        entity.bag.splice(x,1);
                        x=0;
                    }
                }
            }
        }
        else{
        for(let n=0;n<entity.bag.length;n++){
            
            if(entity.bag[n]==tools_way[select.value].need&&tik<tools_way[select.value].num){
                    tik++;
                    entity.bag.splice(n,1);
                    n=0
            }
        }
        }
        entity.player.dialog({
            type:'text',
            content:'打造成功~',
            title:'武器打造'
        })
    }
    }
})

const canget=['铁',"钢","普通机械部件"];
const object={
    '铁':{money:10},
    "钢":{money:15},
    "普通机械部件":{money:40},
    "钛合金":{money:45},
    "玻璃":{money:45},
    "钻石":{money:100},
    "激光碎片":{money:300},
    "雷霆之力":{money:266}
}
const getPerson=world.querySelector("#金属回收员");
getPerson.enableInteract=true;
getPerson.interactRadius=4;
getPerson.interactHint='金属回收员';
getPerson.onInteract(async({entity,targetEntity})=>{
    var thing=[];
    var orientation=new Box3Quaternion(0,0,0,1).rotateY(Math.atan2(entity.position.z-targetEntity.position.z,entity.position.x-targetEntity.position.x));
    targetEntity.meshOrientation.copy(orientation); 
    for(let x=0;x<entity.bag.length;x++){
        if(canget.includes(entity.bag[x])){
            thing.push(entity.bag[x])
        }
    }
    var select=await entity.player.dialog({
        type:'select',
        title:'金属回收',
        content:'有多余的金属可以拿来给我换钱哦~',
        options:thing
    })
    if(!select||select.index==null||select.value=='')return;
    var next=await entity.player.dialog({
        type:'select',
        title:'金属回收',
        content:'请问是否换取?',
        options:["换取","取消"]
    })
    if(!next||next.index==null)return;
    if(next.index==0){
        entity.bag.splice(entity.bag.indexOf(select.value),1);
        entity.money+=object[select.value].money;
        entity.player.dialog({
            type:'text',
            content:'换取成功!你获得了'+object[select.value].money+"元",
        })
    }
})

const sign=world.querySelector("#操作指南");
sign.enableInteract=true;
sign.interactRadius=3;
sign.interactHint='游玩指南';
var movevisible=false;

sign.onInteract(async({entity})=>{
    var select=await entity.player.dialog({
        type:"select",
        title:'游玩指南',
        options:['操作指南','合成表']
    })
    if(!select||select.index==null)return;
    if(select.index==0){
        entity.player.dialog({
            type:'text',
            title:'操作指南',
            content:`
            攻击:鼠标左键(手机/平板:A)
            打开背包:鼠标右键:(手机/平板:B)
            飞行:双击跳跃键(手机/平板:飞行按钮)
            举报:在世界频道说:/举报
            `
        })
    }
    if(select.index==1){
        entity.player.dialog({
            type:'text',
            title:'合成表',
            content:`
            铁剑:铁*4
            铁头盔:铁*5
            铁甲:铁*7
            强化铁剑:铁剑*3
            钢盔:钢*5
            钢甲:钢*7
            钢剑:钢*4
            苦无:钢*4+铁*2
            普通机械部件:钢*2+铁*1
            M416:普通机械部件*10
            铁战靴:铁*4
            钢靴:钢*4
            钻石:钛合金*2+玻璃*1
            钻石战盔:钻石*4
            钻石战甲:钻石*5
            钻石战靴:钻石*3
            钻石剑:钻石*4
            金刚锤:钛合金*8
            高级机械部件:钛合金*3+钢*2+铁*1
            火箭炮:高级机械部件*5+钢*3
            剧毒合金:剧喵水*2+钻石*2+钛合金*2
            剧毒战盔:剧毒合金*5
            剧毒战甲:剧毒合金*7
            剧毒战靴:剧毒合金*4
            剧毒剑:剧毒合金*4
            寒冰喵:钻石*10+钛合金*5+玻璃*5
            激光喵:激光碎片*10
            末影戟:画戟*1+剧毒合金*4
            烈焰合金:烈焰药水*2+剧毒合金*2+钻石*1
            熔岩宝刀:烈焰合金*4
            熔岩战盔:烈焰合金*6
            熔岩战甲:烈焰合金*7
            熔岩战靴:烈焰合金*4
            熔岩喵:烈焰合金*10+钛合金*5
            冰火魔喵:熔岩喵*1+寒冰喵*1
            千鸟:雷霆之力*6+激光碎片*6
            雷霆法杖:千鸟*1+雷霆之力*3+激光碎片*3+烈焰合金*2
            烈焰法杖:烈焰合金*10
            附魔药水:烈焰药水*3+剧喵水*2
            附魔战盔:附魔药水*3+烈焰战盔*1+剧毒战盔*1
            附魔战甲:附魔药水*3+烈焰战甲*1+剧毒战甲*1
            附魔战靴:附魔药水*3+烈焰战靴*1+剧毒战靴*1
            雷霆战盔:附魔战盔*1+雷霆之力*5
            雷霆战甲:附魔战甲*1+雷霆之力*5
            雷霆战靴:附魔战靴*1+雷霆之力*5
            半神之弓:烈焰合金*5+钻石*3+雷霆之力*10+钛合金*2
            `
        })
    }
})
function textDlg(player,title,text){
    player.player.dialog({
        type:'text',
        title:title,
        content:text
    })
}
const things=[
    '钢','钢','钢','普通机械部件','你什么都没抽到','你什么都没抽到','强化铁剑','金剑',
    '你什么都没抽到','普通机械部件','普通机械部件','钢',
    '钢','钢','钢','苦无','苦无','钢',
    '钛合金','钛合金','苦无','M416',
    'M416','钢','钢','寒冰喵','你什么都没抽到',
    '钢','钢','钢','钢','你什么都没抽到',
    '钢','钢','钢','钢','钢','钢','钢','钢','你什么都没抽到',
    'M416','铁剑','铁甲','铁甲','剧毒剑','你什么都没抽到','你什么都没抽到'
    ,'你什么都没抽到','你什么都没抽到','你什么都没抽到','你什么都没抽到'
    ]
const choujiang=world.querySelector('#抽奖机');
choujiang.enableInteract=true;
choujiang.interactRadius=4;
choujiang.interactHint="抽奖机";
choujiang.onInteract(async({entity})=>{
    if(entity.bag.includes('抽奖券')){
        var select=await entity.player.dialog({
            type:'select',
            title:'抽奖机',
            content:'请问是否抽奖',
            options:['确定','取消']
        })
        if(!select||select.index==null)return;
        if(select.index==0){
            var range=things[Math.floor(Math.random()*things.length)];
            if(range!="你什么都没抽到"){
                textDlg(entity,'抽奖机','你获得了'+range)
                entity.bag.push(range);
            }
            else{
                textDlg(entity,'抽奖机','你什么都没抽到')
            }
            entity.bag.splice(entity.bag.indexOf('抽奖券'),1);
        }
    }
    else{
        textDlg(entity,'抽奖机','你没有抽奖券~')
    }
})





主体


回复

上一页第 1 页 / 共 1 页下一页
星辰Lolita星辰Lolita

繁杂得全部代码没啥功能比天启星河还多

点赞4


评论


seven葫中葫seven葫中葫

顶顶

 

点赞0


评论

.挖


HCLZQ退游HCLZQ退游

66666

点赞0


评论


难起的名字难起的名字

顶
我顶
必须顶
不得不顶
用尽全力顶
再加上千斤顶
总之把它顶到顶
接着使出葵花宝顶
就算顶到史前也要顶
老子看了会用道德经顶
孔子亲自拜你为师天天顶
秦始皇站在阿房宫上使劲顶
汉高祖挥师杀向东罗马为你顶
吕布抛弃了貂禅而选择了帮你顶
张三丰见了后用太极拳九式全力顶
左冷禅召开武林盟主大会商讨如何顶
西门吹雪从此学会了最强一招剑神一顶
龙剑飞的如来神掌最后一式改为万佛朝顶
陆小凤从此再也不管闲事了而专门来为你顶
四大名捕四面出击看天下还有没有人敢不在顶
顶到阎罗王说我制造噪音我刁根烟看看他继续顶
顶到火山喷发太平洋海啸我还要继续往喵里顶
顶到益阳地震山崩地裂地下水泛滥我还要顶
顶到地下水喷发造成洪灾损失惨重我也顶
要是你觉得敢兴趣你也可以过来一起顶
要是你看我不爽我没办法还要继续顶
要是**敢过来阻止我就更加要顶
要是别人见了骂我傻我还是要顶
要是踩到我脚喵我也继续顶
要是地面凹了我不管继续顶
要是天真塌下来了继续顶
就算天塌下来我都要顶
就算腾讯倒闭也要顶
就算鞋子烂也要顶
我用尽全力去顶
我非常用力顶
我很用力顶
我用力顶
我再顶
我顶
顶

点赞1


评论


难起的名字难起的名字

顶
我顶
必须顶
不得不顶
用尽全力顶
再加上千斤顶
总之把它顶到顶
接着使出葵花宝顶
就算顶到史前也要顶
老子看了会用道德经顶
孔子亲自拜你为师天天顶
秦始皇站在阿房宫上使劲顶
汉高祖挥师杀向东罗马为你顶
吕布抛弃了貂禅而选择了帮你顶
张三丰见了后用太极拳九式全力顶
左冷禅召开武林盟主大会商讨如何顶
西门吹雪从此学会了最强一招剑神一顶
龙剑飞的如来神掌最后一式改为万佛朝顶
陆小凤从此再也不管闲事了而专门来为你顶
四大名捕四面出击看天下还有没有人敢不在顶
顶到阎罗王说我制造噪音我刁根烟看看他继续顶
顶到火山喷发太平洋海啸我还要继续往喵里顶
顶到益阳地震山崩地裂地下水泛滥我还要顶
顶到地下水喷发造成洪灾损失惨重我也顶
要是你觉得敢兴趣你也可以过来一起顶
要是你看我不爽我没办法还要继续顶
要是**敢过来阻止我就更加要顶
要是别人见了骂我傻我还是要顶
要是踩到我脚喵我也继续顶
要是地面凹了我不管继续顶
要是天真塌下来了继续顶
就算天塌下来我都要顶
就算腾讯倒闭也要顶
就算鞋子烂也要顶
我用尽全力去顶
我非常用力顶
我很用力顶
我用力顶
我再顶
我顶
顶

点赞0


评论


浮生awa浮生awa

这代码太繁杂了吧?为什么npc不用函数化简,为什么卖装备不用object?为什么大部分对话框都不用函数?

点赞0


评论


灵清帝王吃爆一切厕所灵清帝王吃爆一切厕所

收藏~

点赞0


评论


星辰_零柒星辰_零柒

收藏~

点赞0


评论


十殿阎王十殿阎王

em,编码喵看见了你就无了()()()

点赞1


评论


egg鸡蛋蛋egg鸡蛋蛋

收藏

点赞0


评论


七叶寂照秘密主promax七叶寂照秘密主promax

顶
我顶
必须顶
不得不顶
用尽全力顶
再加上千斤顶
总之把它顶到顶
接着使出葵花宝顶
就算顶到史前也要顶
老子看了会用道德经顶
孔子亲自拜你为师天天顶
秦始皇站在阿房宫上使劲顶
汉高祖挥师杀向东罗马为你顶
吕布抛弃了貂禅而选择了帮你顶
张三丰见了后用太极拳九式全力顶
左冷禅召开武林盟主大会商讨如何顶
西门吹雪从此学会了最强一招剑神一顶
龙剑飞的如来神掌最后一式改为万佛朝顶
陆小凤从此再也不管闲事了而专门来为你顶
四大名捕四面出击看天下还有没有人敢不在顶
顶到阎罗王说我制造噪音我刁根烟看看他继续顶
顶到火山喷发太平洋海啸我还要继续往死里顶
顶到益阳地震山崩地裂地下水泛滥我还要顶
顶到地下水喷发造成洪灾损失惨重我也顶
要是你觉得敢兴趣你也可以过来一起顶
要是你看我不爽我没办法还要继续顶
要是**敢过来阻止我就更加要顶
要是别人见了骂我傻我还是要顶
要是踩到我脚骨折我也继续顶
要是地面凹了我不管继续顶
要是天真塌下来了继续顶
就算天塌下来我都要顶
就算腾讯倒闭也要顶
就算鞋子烂也要顶
我用尽全力去顶
我非常用力顶
我很用力顶
我用力顶
我再顶
我顶
顶

点赞0


评论


_HHHHHHHHHH__HHHHHHHHHH_

。。。

点赞0


评论


亖体亖体

顶
我顶
必须顶
不得不顶
用尽全力顶
再加上千斤顶
总之把它顶到顶
接着使出葵花宝顶
就算顶到史前也要顶
老子看了会用道德经顶
孔子亲自拜你为师天天顶
秦始皇站在阿房宫上使劲顶
汉高祖挥师杀向东罗马为你顶
吕布抛弃了貂禅而选择了帮你顶
张三丰见了后用太极拳九式全力顶
左冷禅召开武林盟主大会商讨如何顶
西门吹雪从此学会了最强一招剑神一顶
龙剑飞的如来神掌最后一式改为万佛朝顶
陆小凤从此再也不管闲事了而专门来为你顶
四大名捕四面出击看天下还有没有人敢不在顶
顶到阎罗王说我制造噪音我刁根烟看看他继续顶
顶到火山喷发太平洋海啸我还要继续往死里顶
顶到益阳地震山崩地裂地下水泛滥我还要顶
顶到地下水喷发造成洪灾损失惨重我也顶
要是你觉得敢兴趣你也可以过来一起顶
要是你看我不爽我没办法还要继续顶
要是**敢过来阻止我就更加要顶
要是别人见了骂我傻我还是要顶
要是踩到我脚骨折我也继续顶
要是地面凹了我不管继续顶
要是天真塌下来了继续顶
就算天塌下来我都要顶
就算腾讯倒闭也要顶
就算鞋子烂也要顶
我用尽全力去顶
我非常用力顶
我很用力顶
我用力顶
我再顶
我顶
顶

点赞0


评论