forked from public/fvtt-cthulhu-eternal
		
	
		
			
				
	
	
		
			33 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			33 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| 
 | |
| /**
 | |
|  * Handles socket events based on the provided action.
 | |
|  *
 | |
|  * @param {Object} [params={}] The parameters for the socket event.
 | |
|  * @param {string|null} [params.action=null] The action to be performed.
 | |
|  * @param {Object} [params.data={}] The data associated with the action.
 | |
|  * @returns {*} The result of the action handler, if applicable.
 | |
|  */
 | |
| export function handleSocketEvent({ action = null, data = {} } = {}) {
 | |
|   console.debug("handleSocketEvent", action, data)
 | |
|   switch (action) {
 | |
|     case "fortune":
 | |
|       return CthulhuEternalFortune.handleSocketEvent(data)
 | |
|     case "askRoll":
 | |
|       return _askRoll(data)
 | |
|   }
 | |
| }
 | |
| 
 | |
| /**
 | |
|  * Handles the socket event to ask for a roll.
 | |
|  *
 | |
|  * @param {Object} [options={}] The options object.
 | |
|  * @param {string} [options.userId] The ID of the user who initiated the roll.
 | |
|  */
 | |
| export function _askRoll({ userId } = {}) {
 | |
|   console.debug(`handleSocketEvent _askRoll from ${userId} !`)
 | |
|   const currentUser = game.user._id
 | |
|   if (userId === currentUser) {
 | |
|     foundry.audio.AudioHelper.play({ src: "/systems/fvtt-cthulhu-eternal/sounds/drums.wav", volume: 0.8, autoplay: true, loop: false }, false)
 | |
|   }
 | |
| }
 |