Я пробую игру-шутер с использованием aframe.
Мне бы хотелось, чтобы компонент маркера в следующем коде создавался с помощью экранной кнопки вместо пробела.
AFRAME.registerComponent('gun', {
schema: {
bulletTemplate: {default: '#bullet-template'},
triggerKeyCode: {default: 32} // spacebar
},
init: function() {
var that = this;
document.body.onkeyup = function(e){
if(e.keyCode == that.data.triggerKeyCode){
that.shoot();
}
}
},
shoot: function() {
this.createBullet();
},
createBullet: function() {
var el = document.createElement('a-entity');
el.setAttribute('networked', 'template:' + this.data.bulletTemplate);
el.setAttribute('remove-in-seconds', 3);
el.setAttribute('forward', 'speed:0.3');
var tip = document.querySelector('#player');
el.setAttribute('position', this.getInitialBulletPosition(tip));
el.setAttribute('rotation', this.getInitialBulletRotation(tip));
var scene = document.querySelector('a-scene');
scene.appendChild(el);
},