36 lines
1.3 KiB
HTML
36 lines
1.3 KiB
HTML
|
|
<script src="https://aframe.io/releases/1.6.0/aframe.min.js"></script>
|
|
<script src="https://xrsh.isvery.ninja/xrsh.js"></script>
|
|
|
|
<a-scene>
|
|
<a-entity isoterminal position="0 1.6 -0.3"></a-entity>
|
|
|
|
<a-entity id="left-hand" hand-tracking-grab-controls="hand: left; modelColor: #EEEEEE; hoverEnabled:true"
|
|
laser-controls="hand: left" raycaster="objects:.ray,[html]"></a-entity>
|
|
<a-entity id="right-hand" hand-tracking-grab-controls="hand: right; modelColor: #EEEEEE; hoverEnabled:true"
|
|
laser-controls="hand: right"
|
|
raycaster="objects:.ray,[html]"></a-entity>
|
|
</a-scene>
|
|
|
|
<script>
|
|
document.querySelector('a-scene').addEventListener('isoterminal_init', function(e){
|
|
// override/extend bootmenu-array with your own REPL(s)
|
|
// see com/isoterminal/feat/boot.REPL.*.js for examples
|
|
ISOTerminal.prototype.boot.menu.push({
|
|
key: "f",
|
|
title: (opts) => `other awesome NLnet FOSS projects ❤️`,
|
|
init: function( mainmenu ){
|
|
window.open('https://nlnet.nl/project/current.html','_blank')
|
|
// return to main menu
|
|
mainmenu()
|
|
},
|
|
keyHandler: function(ch){
|
|
this.send("\n\ryou typed:"+ch) // write to term
|
|
}
|
|
})
|
|
|
|
// AFRAME exposes THREE by default
|
|
console.log( THREE )
|
|
})
|
|
</script>
|
|
|