This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/****************Dragonlance Moon Tracker***************** | |
A script to track the moon phases in a Dragonlance Game. | |
You'll need the accompanying images for the moon phases. | |
Put them in a table as specified. Create a character | |
named "MoonTracker", optionally, change the GM whisper | |
for Nuitari to whisper your black robed mages. Only they | |
can see Nuitari. | |
*********************************************************/ | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
A script to remove and restore rooftops when a player gets within range of the building. | |
To use this: | |
1: After first loading, use !RooftopCommands to make the use macros | |
2: Use the polygon tool to make your dynamic lighting lines on the building. | |
3: Move the player flag to the page you want to use this on. | |
4: Use a roof token, best if it's rotation is an integer multiple of 90 degrees (0, 90, 180, 270) | |
5: Name the roof token "roof", without the quotes. | |
6: Drag in player tokens. That is, tokens either assigned to players, or representing characters assigned to player | |
7: Type !RoofReady into chat, or better yet, use it from the macro. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
on("ready", function() { | |
on("chat:message", function (msg) { | |
if (msg.type === "api" && msg.content === "!NoWhisper") | |
{ | |
var characters = findObjs({type: 'character'}); | |
for (var i=0; i<characters.length; i++) | |
{ | |
if (getAttrByName(characters[i].id, 'wtype')) | |
{ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//TemplateGenerator | |
//Fill in the table TemplateShapes that the script makes using the images from the imgur link | |
//imgur link: https://imgur.com/a/vekJIAg | |
//Also make a macro called ShapeMaker or something, body should read: !ShapemakerMacro | |
//Share that macro with all players. | |
//Warning! This only works on the page that the player tab is on. Make sure to select a token before clicking the shape | |
on("ready", function() { |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
on("ready", function() { | |
"use strict"; | |
on("chat:message", function (msg) { | |
var args; | |
if (msg.type === "api"){ | |
args = msg.content.split(/\s+/); | |
if (args[0].match(/^!Clock/i)){ | |
let time = parseInt(args[1],10)||0; | |
if(time){ | |
let due = _.now()+time*1000, |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// a script to remove rooftops if a player enters a building | |
// move the player flag to the page you want to use this on | |
// draw your dynamic lighting lines on your building | |
// use a roof token, best if it's rotation is an integer multiple of 90 degrees (0, 90, 180, 270) | |
// name the roof token "roof", without the quotes. Preferable put it on map layer | |
// drag in player tokens. That is, tokens either assigned to players, or representing characters assigned to player | |
// type !RoofReady into chat, or better yet, use it from a macro. Alternatively, dragging the player flag to the page does this. | |
// should be good to go. Let me know if there are errors please :) | |
// other feature: !RoofDLOff and !RoofDLOn will now turn off or on the dynamic lighting interaction of the script. Default is 'on'. | |
// if you want default to be off, change the declaration on line 21 to read: var dlInteraction = false; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/************************************************************************************************************ | |
You will need to create a character named TMChar. Leave him empty, but in the attributes and abilities tab, | |
add two attributes: PoolThreat, and PoolMomentum. Set appropriate caps. Momentum caps at 6, I believe. | |
I chose 20 for a threat cap, but I'm not sure there is one. You can edit to remove the cap on threat, | |
or just set it very high on the sheet. | |
You will then need to make 5 macros, with the following bodies: | |
!TMReport | |
!TMThreatInc | |
!TMThreatDec | |
!TMMomentumInc |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
on("ready", function() | |
{ | |
on("chat:message", function (msg) | |
{ | |
if (msg.type === "api" && msg.content === "!DiceMacroSetup") | |
{ | |
if (playerIsGM(msg.playerid)) | |
{ | |
if (!findObjs({_type: 'macro', _playerid: msg.playerid, name: 'd2'})[0]) | |
{ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
&{template:npcaction} {{name=Size and Shape}} {{rname=Shape Maker}} {{description=**Circle Radius** | |
[5 ft](!TemplateGenerator Circle 5) | [10 ft](!TemplateGenerator Circle 10) | [20 ft](!TemplateGenerator Circle 20) | [30 ft](!TemplateGenerator Circle 30) | [40 ft](!TemplateGenerator Circle 40) | |
________________________ | |
**Square Side** | |
[10 ft](!TemplateGenerator Square 10) | [15 ft](!TemplateGenerator Square 15) | [20 ft](!TemplateGenerator Square 20) | [40 ft](!TemplateGenerator Square 40) | |
________________________ | |
**Cones** | |
[60](!TemplateGenerator Cone 60 135) -------- [60](!TemplateGenerator Cone 60 90) -------- [60](!TemplateGenerator Cone 60 45) | |
----[30](!TemplateGenerator Cone 30 135) ---- [30](!TemplateGenerator Cone 30 90) ---- [30](!TemplateGenerator Cone 30 45)---- | |
--------[15](!TemplateGenerator Cone 15 135) [15](!TemplateGenerator Cone 15 90) [15](!TemplateGenerator Cone 15 45)--------- |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/**************************************** Druid Shift **************************************** | |
This is for the 5E OGL sheet in Roll20. It will probably not work with any others without | |
some modification. Also, I didn't do much in the way of error checking. | |
The GM must make character named Druid X, where X is the creature being shifted into. | |
It is suggested that the GM duplicate existing creatures, rename them, and assign to the druid | |
player. The images for the characters must be uploaded and assigned to the avatar of the druid | |
form characters. The easiest way I've found it to open the character sheet, edit, right click | |
the picture in the avatar, copy, paste into your image program, save, upload and put it back in. | |
Maybe you could just upload it back into the avatar directly. Anyways, this won't work if you |
NewerOlder