Minimal DM - EricEisaman/cs1-ide GitHub Wiki

client


export default(()=>{
  
document.addEventListener('gameStart',e=>{
    
  CS1.myPlayer.setAttribute('dm','');
     
});  

AFRAME.registerComponent('dm', {
  schema: {
    myproperty: {default: true}
  },
  
  init: function(){
    
    CS1.socket.on('dm', d=>{
    
      CS1.log(`${d.name} - ${d.msg}`);
    
    });
    
  },
  
  send: function(msg,name){
       
     CS1.socket.emit('dm',{msg:msg,name:name});
  
  }
  
});
  
})()

server


const addon = {
  name: 'addon',
  init: (socket,state) => {
  
   this.socket = socket;
   this.state = state;
   const self = this;
    
   socket.on('dm',d=>{
   
     const id = Object.keys(state.players).filter(key=>{
			 return state.players[key].name == d.name
			});
     if(id)
       socket.broadcast.to(id).emit('dm',{msg:d.msg,name:socket.name});
   
   });