{ "name": "Page FX", "script": "PageFX.js", "version": "1.3", "previousversions": ["1.0", "1.1", "1.2"], "description": "# Page FX\r\r_v1.3 Updates_\r* A PageFX token's bar 1 current and max values can now be used to specify a range for randomly setting its time interval.\r\rThis script allows GMs to set up environmental special effects for their maps by producing customizable, randomly distributed fx over some area. This can be used to produce various sorts of atmospheric effects like rain, geysers, steam, bubbling magma, sparks, etc.\r\rThis script also exposes a ```PageFX``` object to allow script writers to use it programmatically.\r\rPage FX are only active on the page with the Player Ribbon on them.\r\r## Creating effects\r\rAll the effects created with this script are centered around PageFX tokens which designate the effect's center, their area, their spawn rate, and the type of effect that is produced. To create an effect:\r\r1. Create a token named \"PageFX\".\r2. In its ```GM Notes``` property, specify the type of effect to produce. E.g. \"explode-fire\".\r3. In its ```Bar 1 value``` property specify the spawn rate (in milliseconds) of the effect. You can also put a number in its ```Bar 1 max``` property to specify the spawn rate to be randomly between current and max.\r4. In its ```Aura 1``` property, specify the area of effect either as a circle or square with the desired radius.\r5. If the effect is a beam-like effect (\"beam\", \"breath\", or \"splatter\"), specify the X and Y offsets (in units) of the effect's end point using the ```Bar 2 value``` and ```Bar 2 max``` properties, respectively. This can be set to \"random\" to make the effect fire in a random direction.\r\rPageFX will start automatically when they are created and when the page is changed. When the active page is changed, all currently active effects will end and the new page's effects will begin automatically.\r\r## Disabling effects\r\rAn effect can be disabled by setting its ```interdiction``` status marker. (The one that looks like this: http://game-icons.net/icons/lorc/originals/png/interdiction.png)\r\r## NullFX Areas\r\rNullFX areas can be used to prevent PageFX from being spawned in a square or\rcircular area. To create a NullFX area:\r\r1. Create a token named \"NullFX\".\r2. In its ```Aura 1``` property, specify the area of effect either as a circle or square with the desired radius.\r\r## Chat commands\r\r#### Turn on all PageFX\r\rThe ```!pageFX on``` command can be used to reactivate all the PageFX on the current page, except those that are disabled.\r\r#### Turn off all PageFX\r\rThe ```!pageFX off``` command can be used to deactivate all the PageFX.\r\r## Known issues:\r* If the Roll20 game's tab becomes inactive, PageFX will continue to run because there currently isn't a way from the API to tell whether the Roll20 tab has become inactive. This can cause some significant lag when the user returns to the tab, especially for PageFX with a fast spawn rate.\r", "authors": "Stephen Lindberg", "roll20userid": 46544, "useroptions": [], "dependencies": [], "modifies": { "custfx:_id": "read", "graphic:aura1_radius": "read", "graphic:aura1_square": "read", "graphic:bar1_value": "read", "graphic:bar2_max": "read", "graphic:bar2_value": "read", "graphic:gmnotes": "read", "graphic:name": "read", "graphic:status_interdiction": "read" }, "conflicts": [] }