用户:
伴雪纷飞查看:1 回复:13 评论:1 创建时间:2023-01-21T23:14:51
没办法( )
编创协常态化崩溃
只能用编程猫的富文本再发一遍
>前要
首先你的感应门(左右各一个)
必须要有标签door
以及#轴的相减
这是伴雪两个门的配置 可以参考一下


>代码
!async function(){
world.querySelectorAll('.door').forEach(async(e)=>{
const info=e.tags().filter(e=>e.indexOf("#") != -1)[0].slice(1)
switch(info[0]){
case"z":
var ani=e.animate([
{ position: [e.position.x,e.position.y,e.position.z]},//,easeIn:'sine'},
{ position: [e.position.x,e.position.y,eval(`${e.position.z}${info.substring(info.length-2)}`)],easeIn:'sine'},
{ position: [e.position.x,e.position.y,e.position.z],easeIn:'sine'},
], {
duration: 16*1,
iterations: Infinity,
direction: Box3AnimationDirection.NORMAL,//让动画实体从终点回到起点
})
ani.cancel()
world.addZone({
selector: 'player',
bounds: {
lo: e.position.sub({x:5,y:5,z:5}),
hi: e.position.add({x:5,y:3,z:5}),
},
}).onEnter(()=>{
ani.play()
})
break;
case"y":
var ani=e.animate([
{ position: [e.position.x,e.position.y,e.position.z]},//,easeIn:'sine'},
{ position: [e.position.x,eval(`${e.position.y}${info.substring(info.length-2)}`),e.position.z],easeIn:'sine'},
{ position: [e.position.x,e.position.y,e.position.z],easeIn:'sine'},
], {
duration: 16*1,
iterations: Infinity,
direction: Box3AnimationDirection.NORMAL,//让动画实体从终点回到起点
})
ani.cancel()
world.addZone({
selector: 'player',
bounds: {
lo: e.position.sub({x:5,y:5,z:5}),
hi: e.position.add({x:5,y:3,z:5}),
},
}).onEnter(()=>{
ani.play()
})
break;
case"x":
var ani=e.animate([
{ position: [e.position.x,e.position.y,e.position.z]},//,easeIn:'sine'},
{ position: [eval(`${e.position.x}${info.substring(info.length-2)}`),e.position.y,e.position.z],easeIn:'sine'},
{ position: [e.position.x,e.position.y,e.position.z],easeIn:'sine'},
], {
duration: 16*1,
iterations: Infinity,
direction: Box3AnimationDirection.NORMAL,//让动画实体从终点回到起点
})
ani.cancel()
world.addZone({
selector: 'player',
bounds: {
lo: e.position.sub({x:5,y:5,z:5}),
hi: e.position.add({x:5,y:3,z:5}),
},
}).onEnter(()=>{
ani.play()
})
break;
}
})
}()
>效果
hTtps://static.codemao.cn/coco/player/unstable/SyEoBuKoo.video/mp4
#原本这是个iframe 结果连自己的容器都不支持 只能发网址了
没必要那么麻烦
代码:
c喵t door1 = world.querySelector('#玻璃门-1')//门名字要一样 door1.enableInteract = true; door1.interactRadius = 3 door1.interactHint = ('开门') door1.interactColor = new Box3RGBColor(1,0,1); c喵t door1_2 = world.querySelector('#玻璃门-2')//门名字要一样door1.onInteract(async({entity}) => { door1.position.x -= 3.9 door1_2.position.x += 3.9 await sleep(1000) door1.position.x += 3.9 door1_2.position.x -= 3.9 })
点赞1
评论
imgsrc="https://static.codemao.cn/emoji/codemao/%E7%BC%96%E7%A8%8B%E7%8C%AB_%E8%B0%A2%E8%B0%A2%E8%80%81%E6%9D%BF.gif"alt="emotion_编程猫_谢谢老板"
点赞0
评论
宇hengconst door1 = world.querySelector('#玻璃门-1')//门名字要一样 door1.enableInteract = true; door1.interactRadius = 3 door1.interactHint = ('开门') door1.interactColor = new Box3RGBColor(1,0,1); const door1_2 = world.querySelector('#玻璃门-2')//门名字要一样
door1.onInteract(async({entity}) => { door1.position.x -= 3.9 door1_2.position.x += 3.9 await sleep(1000) door1.position.x += 3.9 door1_2.position.x -= 3.9 })
点赞0
评论