Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save antonioeduardofernandes/3d1ab814cc93570472ac67517a4a09e3 to your computer and use it in GitHub Desktop.
Save antonioeduardofernandes/3d1ab814cc93570472ac67517a4a09e3 to your computer and use it in GitHub Desktop.
await Dialog.prompt({
content: `
<h1>Current Weather</h1>
<select id="currentWeather">
<option value="noWind">No Winds</option>
<option value="lowWind">Low Winds</option>
<option value="highWind">High Winds</option>
</select>
`,
callback: html => {
let currentWeather = html.find('[id="currentWeather"]').val()
game.tables.getName(currentWeather).draw()
},
})
@DuncfordUK
Copy link

Sorry it's taken me so long to test it, I've been busy with other things.
That seems to work now!

I've got two thoughts:

  1. The dialog is changed slightly to be "Fine Weather", "Fair Weather", "Foul Weather". Each of those options makes a roll against two tables - Wind and Rain (Fine = noWind + noRain; Fair = lowWind + lightRain; Foul = highWind + heavyRain); OR
  2. Get rid of the dialog and the first execution of the Macro just rolls randomly against Wind and a Rain table.

Is it possible to concatenate the results, so that it rolls both a Wind and Rain in the background, and then presents them both together as a single result?

`let currentWind = html.find('[id="currentWind"]').val()
game.tables.getName(currentWind).draw()

let currentRain = html.find('[id="currentRain"]').val()
game.tables.getName(currentRain).draw()`

@DuncfordUK
Copy link

DuncfordUK commented Jun 1, 2022

await Dialog.prompt({
content:
<h1>Current Weather</h1>
<select id="currentWind">
<option value="noWind">No Winds</option>
<option value="lowWind">Low Winds</option>
<option value="highWind">High Winds</option>
</select>
<select id="currentRain">
<option value="noRain">No Rain</option>
<option value="lightRain">Light Rain</option>
<option value="heavyRain">Heavy Rain</option>
</select>
,
callback: html => {
let currentWind = html.find('[id="currentWind"]').val()
game.tables.getName(currentWind).draw()
let currentRain = html.find('[id="currentRain"]').val()
game.tables.getName(currentRain).draw()
},
})

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment