diff --git a/CHANGELOG.md b/CHANGELOG.md index f4d6bd7..8de4e73 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,19 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## Unreleased + +## [2.3.2] 2024-01-23 + +### Added + +- Grabbed poison macros from SWADE for use in SWPF until I can write something + else or they appear in SWPF. + +### Changed + +- Added Dodge as a detected edge on a target for roll modifiers + ## [2.3.1] 2023-12-26 ### Added diff --git a/module.json b/module.json index 8a44d73..24dcd9f 100644 --- a/module.json +++ b/module.json @@ -2,7 +2,7 @@ "id": "swade-mb-helpers", "title": "SWADE Helpers (MB)", "description": "Mike's collection of swade helpers", - "version": "2.3.1", + "version": "2.3.2", "authors": [ { "name": "Mike" @@ -136,4 +136,4 @@ "download": "https://git.bloy.org/foundryvtt/swade-mb-helpers/archive/main.zip", "license": "./LICENSE", "readme": "./README.md" -} \ No newline at end of file +} diff --git a/packs/common-actions/000005.ldb b/packs/common-actions/000005.ldb index c15ed10..ae175c1 100644 Binary files a/packs/common-actions/000005.ldb and b/packs/common-actions/000005.ldb differ diff --git a/packs/common-actions/CURRENT b/packs/common-actions/CURRENT index 1a84852..f7753e2 100644 --- a/packs/common-actions/CURRENT +++ b/packs/common-actions/CURRENT @@ -1 +1 @@ -MANIFEST-000002 +MANIFEST-000006 diff --git a/packs/common-actions/LOG b/packs/common-actions/LOG index 3203f10..ab540b6 100644 --- a/packs/common-actions/LOG +++ b/packs/common-actions/LOG @@ -1,5 +1,8 @@ -2023/12/26-22:07:49.642359 7f460bfff700 Delete type=3 #1 -2023/12/26-22:07:49.645609 7f4609ffb700 Level-0 table #5: started -2023/12/26-22:07:49.649148 7f4609ffb700 Level-0 table #5: 12215 bytes OK -2023/12/26-22:07:49.652094 7f4609ffb700 Delete type=0 #3 -2023/12/26-22:07:49.652273 7f4609ffb700 Manual compaction at level-0 from '!folders!0nDRFmMBs5DBJU9M' @ 72057594037927935 : 1 .. '!items.effects!RC1Nz6iph8wPPK1B.g9W5hJisq3MsCpZW' @ 0 : 0; will stop at (end) +2024/01/23-00:18:56.675911 7f4ade7fc700 Recovering log #4 +2024/01/23-00:18:56.738874 7f4ade7fc700 Delete type=3 #2 +2024/01/23-00:18:56.738909 7f4ade7fc700 Delete type=0 #4 +2024/01/23-00:29:20.133558 7f4add894700 Level-0 table #9: started +2024/01/23-00:29:20.133612 7f4add894700 Level-0 table #9: 0 bytes OK +2024/01/23-00:29:20.143404 7f4add894700 Delete type=0 #7 +2024/01/23-00:29:20.163727 7f4add894700 Manual compaction at level-0 from '!folders!0nDRFmMBs5DBJU9M' @ 72057594037927935 : 1 .. '!items.effects!RC1Nz6iph8wPPK1B.g9W5hJisq3MsCpZW' @ 0 : 0; will stop at (end) +2024/01/23-00:29:20.163836 7f4add894700 Manual compaction at level-1 from '!folders!0nDRFmMBs5DBJU9M' @ 72057594037927935 : 1 .. '!items.effects!RC1Nz6iph8wPPK1B.g9W5hJisq3MsCpZW' @ 0 : 0; will stop at (end) diff --git a/packs/common-actions/LOG.old b/packs/common-actions/LOG.old new file mode 100644 index 0000000..30e8ec9 --- /dev/null +++ b/packs/common-actions/LOG.old @@ -0,0 +1,5 @@ +2024/01/23-00:18:27.881231 7f35497bc700 Delete type=3 #1 +2024/01/23-00:18:27.884346 7f3548d42700 Level-0 table #5: started +2024/01/23-00:18:27.891583 7f3548d42700 Level-0 table #5: 12257 bytes OK +2024/01/23-00:18:27.900568 7f3548d42700 Delete type=0 #3 +2024/01/23-00:18:27.900668 7f3548d42700 Manual compaction at level-0 from '!folders!0nDRFmMBs5DBJU9M' @ 72057594037927935 : 1 .. '!items.effects!RC1Nz6iph8wPPK1B.g9W5hJisq3MsCpZW' @ 0 : 0; will stop at (end) diff --git a/packs/common-actions/MANIFEST-000002 b/packs/common-actions/MANIFEST-000002 deleted file mode 100644 index 0916a64..0000000 Binary files a/packs/common-actions/MANIFEST-000002 and /dev/null differ diff --git a/packs/common-actions/MANIFEST-000006 b/packs/common-actions/MANIFEST-000006 new file mode 100644 index 0000000..f1fa5c7 Binary files /dev/null and b/packs/common-actions/MANIFEST-000006 differ diff --git a/packs/common-actions/_source/Power_Effect_vrfo9zsECbxan4dt.json b/packs/common-actions/_source/Power_Effect_vrfo9zsECbxan4dt.json index b364ca6..ab1faae 100644 --- a/packs/common-actions/_source/Power_Effect_vrfo9zsECbxan4dt.json +++ b/packs/common-actions/_source/Power_Effect_vrfo9zsECbxan4dt.json @@ -37,7 +37,7 @@ "swid": "power-effect" }, "effects": [], - "folder": "0nDRFmMBs5DBJU9M", + "folder": null, "ownership": { "default": 0, "R9ZgY0IvWl8ovIuT": 3 @@ -50,8 +50,8 @@ "systemVersion": "3.2.5", "coreVersion": "11.315", "createdTime": 1695081676167, - "modifiedTime": 1702839170550, - "lastModifiedBy": "sVoCvBU1knmXzoYe" + "modifiedTime": 1705985534930, + "lastModifiedBy": "Aqnn9hCDQPbyTWiq" }, "_id": "vrfo9zsECbxan4dt", "sort": 100000, diff --git a/packs/gear/CURRENT b/packs/gear/CURRENT index 1a84852..f7753e2 100644 --- a/packs/gear/CURRENT +++ b/packs/gear/CURRENT @@ -1 +1 @@ -MANIFEST-000002 +MANIFEST-000006 diff --git a/packs/gear/LOG b/packs/gear/LOG index bb3ca1a..6a721d9 100644 --- a/packs/gear/LOG +++ b/packs/gear/LOG @@ -1,5 +1,8 @@ -2023/12/26-22:07:50.435159 7f7f1dfbe700 Delete type=3 #1 -2023/12/26-22:07:50.437815 7f7c7ffff700 Level-0 table #5: started -2023/12/26-22:07:50.440822 7f7c7ffff700 Level-0 table #5: 6787 bytes OK -2023/12/26-22:07:50.443689 7f7c7ffff700 Delete type=0 #3 -2023/12/26-22:07:50.443866 7f7c7ffff700 Manual compaction at level-0 from '!items!JWyBQe4tnOYljFAF' @ 72057594037927935 : 1 .. '!items!tWWSfEMmLmws6Yb1' @ 0 : 0; will stop at (end) +2024/01/23-00:18:56.843484 7f4ade7fc700 Recovering log #4 +2024/01/23-00:18:56.864139 7f4ade7fc700 Delete type=3 #2 +2024/01/23-00:18:56.864175 7f4ade7fc700 Delete type=0 #4 +2024/01/23-00:29:20.143450 7f4add894700 Level-0 table #9: started +2024/01/23-00:29:20.143470 7f4add894700 Level-0 table #9: 0 bytes OK +2024/01/23-00:29:20.153694 7f4add894700 Delete type=0 #7 +2024/01/23-00:29:20.163757 7f4add894700 Manual compaction at level-0 from '!items!JWyBQe4tnOYljFAF' @ 72057594037927935 : 1 .. '!items!tWWSfEMmLmws6Yb1' @ 0 : 0; will stop at (end) +2024/01/23-00:29:20.163861 7f4add894700 Manual compaction at level-1 from '!items!JWyBQe4tnOYljFAF' @ 72057594037927935 : 1 .. '!items!tWWSfEMmLmws6Yb1' @ 0 : 0; will stop at (end) diff --git a/packs/gear/LOG.old b/packs/gear/LOG.old new file mode 100644 index 0000000..5448ea1 --- /dev/null +++ b/packs/gear/LOG.old @@ -0,0 +1,5 @@ +2024/01/23-00:18:28.637614 7f0b2bfff700 Delete type=3 #1 +2024/01/23-00:18:28.639916 7f0b29d41700 Level-0 table #5: started +2024/01/23-00:18:28.647114 7f0b29d41700 Level-0 table #5: 6787 bytes OK +2024/01/23-00:18:28.656131 7f0b29d41700 Delete type=0 #3 +2024/01/23-00:18:28.656231 7f0b29d41700 Manual compaction at level-0 from '!items!JWyBQe4tnOYljFAF' @ 72057594037927935 : 1 .. '!items!tWWSfEMmLmws6Yb1' @ 0 : 0; will stop at (end) diff --git a/packs/gear/MANIFEST-000002 b/packs/gear/MANIFEST-000002 deleted file mode 100644 index aa2beac..0000000 Binary files a/packs/gear/MANIFEST-000002 and /dev/null differ diff --git a/packs/gear/MANIFEST-000006 b/packs/gear/MANIFEST-000006 new file mode 100644 index 0000000..d34f090 Binary files /dev/null and b/packs/gear/MANIFEST-000006 differ diff --git a/packs/helper-actors/CURRENT b/packs/helper-actors/CURRENT index 1a84852..f7753e2 100644 --- a/packs/helper-actors/CURRENT +++ b/packs/helper-actors/CURRENT @@ -1 +1 @@ -MANIFEST-000002 +MANIFEST-000006 diff --git a/packs/helper-actors/LOG b/packs/helper-actors/LOG index 171c8bb..7be870b 100644 --- a/packs/helper-actors/LOG +++ b/packs/helper-actors/LOG @@ -1,5 +1,8 @@ -2023/12/26-22:07:51.015156 7fb5f1747700 Delete type=3 #1 -2023/12/26-22:07:51.017707 7fb5caffd700 Level-0 table #5: started -2023/12/26-22:07:51.020762 7fb5caffd700 Level-0 table #5: 1751 bytes OK -2023/12/26-22:07:51.023614 7fb5caffd700 Delete type=0 #3 -2023/12/26-22:07:51.023794 7fb5caffd700 Manual compaction at level-0 from '!actors!U5v4gFHquo0Y1SAq' @ 72057594037927935 : 1 .. '!actors!U5v4gFHquo0Y1SAq' @ 0 : 0; will stop at (end) +2024/01/23-00:18:56.740909 7f4adf7fe700 Recovering log #4 +2024/01/23-00:18:56.840838 7f4adf7fe700 Delete type=3 #2 +2024/01/23-00:18:56.840874 7f4adf7fe700 Delete type=0 #4 +2024/01/23-00:29:20.120832 7f4add894700 Level-0 table #9: started +2024/01/23-00:29:20.120853 7f4add894700 Level-0 table #9: 0 bytes OK +2024/01/23-00:29:20.133493 7f4add894700 Delete type=0 #7 +2024/01/23-00:29:20.163695 7f4add894700 Manual compaction at level-0 from '!actors!U5v4gFHquo0Y1SAq' @ 72057594037927935 : 1 .. '!actors!U5v4gFHquo0Y1SAq' @ 0 : 0; will stop at (end) +2024/01/23-00:29:20.163811 7f4add894700 Manual compaction at level-1 from '!actors!U5v4gFHquo0Y1SAq' @ 72057594037927935 : 1 .. '!actors!U5v4gFHquo0Y1SAq' @ 0 : 0; will stop at (end) diff --git a/packs/helper-actors/LOG.old b/packs/helper-actors/LOG.old new file mode 100644 index 0000000..179deac --- /dev/null +++ b/packs/helper-actors/LOG.old @@ -0,0 +1,5 @@ +2024/01/23-00:18:29.347314 7f2735fbd700 Delete type=3 #1 +2024/01/23-00:18:29.349652 7f2734fbb700 Level-0 table #5: started +2024/01/23-00:18:29.356788 7f2734fbb700 Level-0 table #5: 1751 bytes OK +2024/01/23-00:18:29.365740 7f2734fbb700 Delete type=0 #3 +2024/01/23-00:18:29.365852 7f2734fbb700 Manual compaction at level-0 from '!actors!U5v4gFHquo0Y1SAq' @ 72057594037927935 : 1 .. '!actors!U5v4gFHquo0Y1SAq' @ 0 : 0; will stop at (end) diff --git a/packs/helper-actors/MANIFEST-000002 b/packs/helper-actors/MANIFEST-000002 deleted file mode 100644 index e01a079..0000000 Binary files a/packs/helper-actors/MANIFEST-000002 and /dev/null differ diff --git a/packs/helper-actors/MANIFEST-000006 b/packs/helper-actors/MANIFEST-000006 new file mode 100644 index 0000000..8fdb90d Binary files /dev/null and b/packs/helper-actors/MANIFEST-000006 differ diff --git a/packs/helper-macros/000005.ldb b/packs/helper-macros/000005.ldb index a77123e..0af7919 100644 Binary files a/packs/helper-macros/000005.ldb and b/packs/helper-macros/000005.ldb differ diff --git a/packs/helper-macros/CURRENT b/packs/helper-macros/CURRENT index 1a84852..f7753e2 100644 --- a/packs/helper-macros/CURRENT +++ b/packs/helper-macros/CURRENT @@ -1 +1 @@ -MANIFEST-000002 +MANIFEST-000006 diff --git a/packs/helper-macros/LOG b/packs/helper-macros/LOG index 373eea1..1b14cf7 100644 --- a/packs/helper-macros/LOG +++ b/packs/helper-macros/LOG @@ -1,5 +1,8 @@ -2023/12/26-22:07:51.541685 7f8180fbd700 Delete type=3 #1 -2023/12/26-22:07:51.544374 7f817ffbb700 Level-0 table #5: started -2023/12/26-22:07:51.547717 7f817ffbb700 Level-0 table #5: 13110 bytes OK -2023/12/26-22:07:51.550539 7f817ffbb700 Delete type=0 #3 -2023/12/26-22:07:51.550708 7f817ffbb700 Manual compaction at level-0 from '!folders!hIbrWxg1nDutCSwt' @ 72057594037927935 : 1 .. '!macros!wU2mAUnw3RW9qMT8' @ 0 : 0; will stop at (end) +2024/01/23-00:18:56.652697 7f4adf7fe700 Recovering log #4 +2024/01/23-00:18:56.674434 7f4adf7fe700 Delete type=3 #2 +2024/01/23-00:18:56.674462 7f4adf7fe700 Delete type=0 #4 +2024/01/23-00:29:20.110936 7f4add894700 Level-0 table #9: started +2024/01/23-00:29:20.110960 7f4add894700 Level-0 table #9: 0 bytes OK +2024/01/23-00:29:20.120503 7f4add894700 Delete type=0 #7 +2024/01/23-00:29:20.120676 7f4add894700 Manual compaction at level-0 from '!folders!A3iVDJD2cTuTLpBu' @ 72057594037927935 : 1 .. '!macros!wU2mAUnw3RW9qMT8' @ 0 : 0; will stop at (end) +2024/01/23-00:29:20.120710 7f4add894700 Manual compaction at level-1 from '!folders!A3iVDJD2cTuTLpBu' @ 72057594037927935 : 1 .. '!macros!wU2mAUnw3RW9qMT8' @ 0 : 0; will stop at (end) diff --git a/packs/helper-macros/LOG.old b/packs/helper-macros/LOG.old new file mode 100644 index 0000000..ef326c1 --- /dev/null +++ b/packs/helper-macros/LOG.old @@ -0,0 +1,5 @@ +2024/01/23-00:18:29.989483 7f531d7bd700 Delete type=3 #1 +2024/01/23-00:18:29.992182 7f507ffff700 Level-0 table #5: started +2024/01/23-00:18:29.999633 7f507ffff700 Level-0 table #5: 18890 bytes OK +2024/01/23-00:18:30.009033 7f507ffff700 Delete type=0 #3 +2024/01/23-00:18:30.009135 7f507ffff700 Manual compaction at level-0 from '!folders!A3iVDJD2cTuTLpBu' @ 72057594037927935 : 1 .. '!macros!wU2mAUnw3RW9qMT8' @ 0 : 0; will stop at (end) diff --git a/packs/helper-macros/MANIFEST-000002 b/packs/helper-macros/MANIFEST-000002 deleted file mode 100644 index cedf5a9..0000000 Binary files a/packs/helper-macros/MANIFEST-000002 and /dev/null differ diff --git a/packs/helper-macros/MANIFEST-000006 b/packs/helper-macros/MANIFEST-000006 new file mode 100644 index 0000000..56393c4 Binary files /dev/null and b/packs/helper-macros/MANIFEST-000006 differ diff --git a/packs/helper-macros/_source/Knockout_Poison_4yXWP6VCi8wsmdVw.json b/packs/helper-macros/_source/Knockout_Poison_4yXWP6VCi8wsmdVw.json new file mode 100644 index 0000000..10e0e84 --- /dev/null +++ b/packs/helper-macros/_source/Knockout_Poison_4yXWP6VCi8wsmdVw.json @@ -0,0 +1,33 @@ +{ + "name": "Knockout Poison", + "type": "script", + "author": "sVoCvBU1knmXzoYe", + "img": "icons/magic/acid/dissolve-drip-droplet-smoke.webp", + "scope": "global", + "command": "const speaker = ChatMessage.implementation.getSpeaker();\ntoken = (canvas.ready ? canvas.tokens.get(speaker.token) : null);\nactor = token?.actor || game.actors.get(speaker.actor);\nif (!actor.status.isDistracted) {\n const dist = game.swade.util.getStatusEffectDataById('distracted')\n await actor.toggleActiveEffect(dist, {active: true})\n}\nconst duration = new Roll('2d6')\nawait duration.toMessage(options={flavor: \"Knockout Poison Duration (hours)\"})\nif (!actor.status.isIncapacitated) {\n const incap = game.swade.util.getStatusEffectDataById('incapacitated')\n await actor.toggleActiveEffect(incap, {active: true})\n}", + "folder": "DbVwJ0fIfuijv8Nu", + "ownership": { + "default": 0, + "sVoCvBU1knmXzoYe": 3 + }, + "flags": { + "core": {}, + "exportSource": { + "world": "swade-test", + "system": "swade", + "coreVersion": "11.315", + "systemVersion": "3.2.5" + } + }, + "_stats": { + "systemId": "swade", + "systemVersion": "3.2.5", + "coreVersion": "11.315", + "createdTime": 1705988837960, + "modifiedTime": 1705990319268, + "lastModifiedBy": "sVoCvBU1knmXzoYe" + }, + "_id": "4yXWP6VCi8wsmdVw", + "sort": 200000, + "_key": "!macros!4yXWP6VCi8wsmdVw" +} diff --git a/packs/helper-macros/_source/Lethal_Poison_mMSTm47fgx77GqAO.json b/packs/helper-macros/_source/Lethal_Poison_mMSTm47fgx77GqAO.json new file mode 100644 index 0000000..dcfbabb --- /dev/null +++ b/packs/helper-macros/_source/Lethal_Poison_mMSTm47fgx77GqAO.json @@ -0,0 +1,33 @@ +{ + "name": "Lethal Poison", + "type": "script", + "author": "sVoCvBU1knmXzoYe", + "img": "icons/magic/acid/dissolve-bone-skull.webp", + "scope": "global", + "command": "const speaker = ChatMessage.implementation.getSpeaker();\ntoken = (canvas.ready ? canvas.tokens.get(speaker.token) : null);\nactor = token?.actor || game.actors.get(speaker.actor);\nif (!actor.status.isDistracted) {\n const dist = game.swade.util.getStatusEffectDataById('distracted')\n await actor.toggleActiveEffect(dist, {active: true})\n}\nif (!actor.status.isStunned) {\n const stun = game.swade.util.getStatusEffectDataById('stunned')\n await actor.toggleActiveEffect(stun, {active: true})\n}\nconst poison = await Dialog.wait({\n title: `Apply Lethal Poison to ${actor.name}`,\n content: `

What was the result of the vigor roll against the lethal poison? (If ${actor.name} succeeded, you can close out of this dialog to cancel)

`,\n buttons: {\n fail: {\n icon: '',\n label: \"Failure\"\n },\n critFail: {\n icon: '',\n label: \"Critical Failure\"\n }\n }\n})\nconst wounds = actor.system.wounds\nconst p = poison === 'fail' ? 1 : 2\nconst newWounds = wounds.value + p\nactor.update({'system.wounds.value': newWounds})\nif (newWounds > wounds.max) {\n if (!actor.status.isIncapacitated) {\n const incap = game.swade.util.getStatusEffectDataById('incapacitated')\n await actor.toggleActiveEffect(incap, {active: true})\n }\n}\nconst duration = new Roll('2d6')\nawait duration.toMessage(options={flavor: `${actor.name} will perish from the lethal poison in this many rounds`});\nactor.createEmbeddedDocuments('ActiveEffect', [{\n name: 'Lethal Poison',\n duration: {\n rounds: duration.total\n },\n icon: 'icons/magic/acid/dissolve-bone-skull.webp',\n statuses: ['perish'],\n flags: {swade: {expiration: 0}}\n}])", + "folder": "DbVwJ0fIfuijv8Nu", + "ownership": { + "default": 0, + "sVoCvBU1knmXzoYe": 3 + }, + "flags": { + "core": {}, + "exportSource": { + "world": "swade-test", + "system": "swade", + "coreVersion": "11.315", + "systemVersion": "3.2.5" + } + }, + "_stats": { + "systemId": "swade", + "systemVersion": "3.2.5", + "coreVersion": "11.315", + "createdTime": 1705988835525, + "modifiedTime": 1705990319268, + "lastModifiedBy": "sVoCvBU1knmXzoYe" + }, + "_id": "mMSTm47fgx77GqAO", + "sort": 300000, + "_key": "!macros!mMSTm47fgx77GqAO" +} diff --git a/packs/helper-macros/_source/Mild_Poison_McmMNB2mI5xejauq.json b/packs/helper-macros/_source/Mild_Poison_McmMNB2mI5xejauq.json new file mode 100644 index 0000000..43fe190 --- /dev/null +++ b/packs/helper-macros/_source/Mild_Poison_McmMNB2mI5xejauq.json @@ -0,0 +1,33 @@ +{ + "name": "Mild Poison", + "type": "script", + "author": "sVoCvBU1knmXzoYe", + "img": "icons/magic/acid/dissolve-pool-bubbles.webp", + "scope": "global", + "command": "const speaker = ChatMessage.implementation.getSpeaker();\ntoken = (canvas.ready ? canvas.tokens.get(speaker.token) : null);\nactor = token?.actor || game.actors.get(speaker.actor);\nif (!actor.status.isDistracted) {\n const dist = game.swade.util.getStatusEffectDataById('distracted')\n await actor.toggleActiveEffect(dist, {active: true})\n}\nconst poison = await Dialog.wait({\n title: `Apply Mild Poison to ${actor.name}`,\n content: `

What was the result of the vigor roll against the mild poison? (If ${actor.name} succeeded, you can close out of this dialog to cancel)

`,\n buttons: {\n fail: {\n icon: '',\n label: \"Failure\"\n },\n critFail: {\n icon: '',\n label: \"Critical Failure\"\n }\n }\n})\nconst fatigue = actor.system.fatigue\nconst p = poison === 'fail' ? 1 : 2\nactor.update({'system.fatigue.value': Math.min(fatigue.max, fatigue.value + p)})", + "folder": "DbVwJ0fIfuijv8Nu", + "ownership": { + "default": 0, + "sVoCvBU1knmXzoYe": 3 + }, + "flags": { + "core": {}, + "exportSource": { + "world": "swade-test", + "system": "swade", + "coreVersion": "11.315", + "systemVersion": "3.2.5" + } + }, + "_stats": { + "systemId": "swade", + "systemVersion": "3.2.5", + "coreVersion": "11.315", + "createdTime": 1705988833306, + "modifiedTime": 1705990319268, + "lastModifiedBy": "sVoCvBU1knmXzoYe" + }, + "_id": "McmMNB2mI5xejauq", + "sort": 100000, + "_key": "!macros!McmMNB2mI5xejauq" +} diff --git a/packs/helper-macros/_source/Paralyzing_Poison_P4MNq8EUR8ReFr9C.json b/packs/helper-macros/_source/Paralyzing_Poison_P4MNq8EUR8ReFr9C.json new file mode 100644 index 0000000..b46d451 --- /dev/null +++ b/packs/helper-macros/_source/Paralyzing_Poison_P4MNq8EUR8ReFr9C.json @@ -0,0 +1,33 @@ +{ + "name": "Paralyzing Poison", + "type": "script", + "author": "sVoCvBU1knmXzoYe", + "img": "icons/magic/acid/dissolve-arm-flesh.webp", + "scope": "global", + "command": "const speaker = ChatMessage.implementation.getSpeaker();\ntoken = (canvas.ready ? canvas.tokens.get(speaker.token) : null);\nactor = token?.actor || game.actors.get(speaker.actor);\nif (!actor.status.isDistracted) {\n const dist = game.swade.util.getStatusEffectDataById('distracted')\n await actor.toggleActiveEffect(dist, {active: true})\n}\nconst stun = game.swade.util.getStatusEffectDataById('stunned')\nconst poison = await Dialog.wait({\n title: `Apply Paralyzing Poison to ${actor.name}`,\n content: `

How many rounds of paralysis?

`,\n buttons: {\n duration: {\n icon: '',\n label: \"Duration\",\n callback: (html) => {\n stun.duration.rounds = parseInt(html.find('#paralyzingPoisonDuration')[0].value)\n if (Number.isNaN(stun.duration.rounds)) stun.duration.rounds = 1\n }\n },\n default: {\n icon: '',\n label: \"Default Stun\"\n }\n }\n})\nawait actor.toggleActiveEffect(stun, {active: true})", + "folder": "DbVwJ0fIfuijv8Nu", + "ownership": { + "default": 0, + "sVoCvBU1knmXzoYe": 3 + }, + "flags": { + "core": {}, + "exportSource": { + "world": "swade-test", + "system": "swade", + "coreVersion": "11.315", + "systemVersion": "3.2.5" + } + }, + "_stats": { + "systemId": "swade", + "systemVersion": "3.2.5", + "coreVersion": "11.315", + "createdTime": 1705988829990, + "modifiedTime": 1705990353747, + "lastModifiedBy": "sVoCvBU1knmXzoYe" + }, + "_id": "P4MNq8EUR8ReFr9C", + "sort": 0, + "_key": "!macros!P4MNq8EUR8ReFr9C" +} diff --git a/packs/helper-macros/_source/Poison_DbVwJ0fIfuijv8Nu.json b/packs/helper-macros/_source/Poison_DbVwJ0fIfuijv8Nu.json new file mode 100644 index 0000000..18c697b --- /dev/null +++ b/packs/helper-macros/_source/Poison_DbVwJ0fIfuijv8Nu.json @@ -0,0 +1,19 @@ +{ + "name": "Poison", + "sorting": "a", + "folder": null, + "type": "Macro", + "_id": "DbVwJ0fIfuijv8Nu", + "sort": 0, + "color": null, + "flags": {}, + "_stats": { + "systemId": "swade", + "systemVersion": "3.2.5", + "coreVersion": "11.315", + "createdTime": 1705990230579, + "modifiedTime": 1705990230579, + "lastModifiedBy": "sVoCvBU1knmXzoYe" + }, + "_key": "!folders!DbVwJ0fIfuijv8Nu" +} diff --git a/packs/helper-macros/_source/SWPF_Reference_Journals_YPsHqNBWR9AHkfeR.json b/packs/helper-macros/_source/SWPF_Reference_Journals_YPsHqNBWR9AHkfeR.json new file mode 100644 index 0000000..d3c9dd6 --- /dev/null +++ b/packs/helper-macros/_source/SWPF_Reference_Journals_YPsHqNBWR9AHkfeR.json @@ -0,0 +1,27 @@ +{ + "name": "SWPF Reference Journals", + "type": "script", + "scope": "global", + "author": "Aqnn9hCDQPbyTWiq", + "img": "icons/svg/book.svg", + "command": "var s = game.modules.get(\"penllawen-compendium-table-maker\").api.getCompendiumSummariser();\n\nawait s.makeNewJournalNamed('Character Items')\n\nawait s.addJournalPageNamed('Ancestries')\n .addInputCompendium('swpf-core-rules.swpf-abilities')\n .includeItemsByCategory('Ancestries')\n .addInputCompendium('swpf-apg.swpf-apg-ancestry')\n .includeItemsByCategory('Ancestries')\n .includeItemsByCategory('Aasimar Abilities')\n .includeItemsByCategory('Catfolk Abilities')\n .includeItemsByCategory('Dhampirs Abilities')\n .includeItemsByCategory('Goblin Abilities')\n .includeItemsByCategory('Tiefling Abilities')\n .writeJournalPage()\n\nawait s.addJournalPageNamed('Skills')\n .addInputCompendium('swpf-core-rules.swpf-skills')\n .excludeItemsByName('Unskilled Attempt')\n .addInputCompendium('swpf-apg.swpf-apg-skills')\n .excludeItemsByName('Animal Handling')\n .writeJournalPage()\n\nawait s.addJournalPageNamed('Hindrances')\n .addInputCompendium('swpf-core-rules.swpf-hindrances')\n .addInputCompendium('swpf-apg.swpf-apg-hindrances')\n .writeJournalPage()\n\nawait s.addJournalPageNamed('Class Edges')\n .addInputCompendium('swpf-core-rules.swpf-edges')\n .includeItemsByCategory('Barbarian')\n .includeItemsByCategory('Bard')\n .includeItemsByCategory('Cleric')\n .includeItemsByCategory('Druid')\n .includeItemsByCategory('Fighter')\n .includeItemsByCategory('Monk')\n .includeItemsByCategory('Paladin')\n .includeItemsByCategory('Ranger')\n .includeItemsByCategory('Rogue')\n .includeItemsByCategory('Sorcerer')\n .includeItemsByCategory('Wizard')\n .includeItemsByCategory('Prestige Edges')\n .addInputCompendium('swpf-apg.swpf-apg-edges')\n .includeItemsByCategory('Alchemist')\n .includeItemsByCategory('Cavalier')\n .includeItemsByCategory('Inquisitor')\n .includeItemsByCategory('Monk')\n .includeItemsByCategory('New Class Edges')\n .includeItemsByCategory('Oracle')\n .includeItemsByCategory('Prestige Edges')\n .includeItemsByCategory('Summoner')\n .includeItemsByCategory('Witch')\n .writeJournalPage()\n\nawait s.addJournalPageNamed('Class Abilities')\n .addInputCompendium('swpf-core-rules.swpf-abilities')\n .includeItemsByCategory('Barbarian')\n .includeItemsByCategory('Bard')\n .includeItemsByCategory('Bloodlines')\n .includeItemsByCategory('Cleric')\n .includeItemsByCategory('Deities and Domains')\n .includeItemsByCategory('Druid')\n .includeItemsByCategory('Fighter')\n .includeItemsByCategory('Monk')\n .includeItemsByCategory('Paladin')\n .includeItemsByCategory('Ranger')\n .includeItemsByCategory('Rogue')\n .includeItemsByCategory('Schools of Magic Favored')\n .includeItemsByCategory('Schools of Magic Opposition')\n .includeItemsByCategory('Sorcerer')\n .includeItemsByCategory('Wizard')\n .writeJournalPage()\n\nawait s.addJournalPageNamed('Edges')\n .addInputCompendium('swpf-core-rules.swpf-edges')\n .excludeItemsByCategory('Barbarian')\n .excludeItemsByCategory('Bard')\n .excludeItemsByCategory('Cleric')\n .excludeItemsByCategory('Druid')\n .excludeItemsByCategory('Fighter')\n .excludeItemsByCategory('Monk')\n .excludeItemsByCategory('Paladin')\n .excludeItemsByCategory('Ranger')\n .excludeItemsByCategory('Rogue')\n .excludeItemsByCategory('Sorcerer')\n .excludeItemsByCategory('Wizard')\n .excludeItemsByCategory('Prestige Edges')\n .addInputCompendium('swpf-apg.swpf-apg-edges')\n .excludeItemsByCategory('Alchemist')\n .excludeItemsByCategory('Cavalier')\n .excludeItemsByCategory('Inquisitor')\n .excludeItemsByCategory('Monk')\n .excludeItemsByCategory('New Class Edges')\n .excludeItemsByCategory('Oracle')\n .excludeItemsByCategory('Prestige Edges')\n .excludeItemsByCategory('Summoner')\n .excludeItemsByCategory('Witch')\n .writeJournalPage()\n\nawait s.addJournalPageNamed('Powers')\n .addInputCompendium('swpf-core-rules.swpf-powers')\n .excludeItemsByName('Elemental Manipulation') \n .excludeItemsByName('Entangle') \n .excludeItemsByName('Summon Ally') \n .excludeItemsByName('Telekinesis') \n .excludeItemsByName('Time Stop') \n .addInputCompendium('swpf-apg.swpf-apg-powers')\n .writeJournalPage()\n\nawait s.addJournalPageNamed('Abilities')\n .addInputCompendium('swpf-bestiary.swpf-bestiary-abilities')\n .writeJournalPage()", + "folder": "A3iVDJD2cTuTLpBu", + "ownership": { + "default": 0, + "Aqnn9hCDQPbyTWiq": 3 + }, + "flags": { + "core": {} + }, + "_stats": { + "systemId": "swade", + "systemVersion": "3.2.5", + "coreVersion": "11.315", + "createdTime": 1705874432655, + "modifiedTime": 1705945710985, + "lastModifiedBy": "Aqnn9hCDQPbyTWiq" + }, + "_id": "YPsHqNBWR9AHkfeR", + "sort": 0, + "_key": "!macros!YPsHqNBWR9AHkfeR" +} diff --git a/packs/helper-macros/_source/System_Reference_A3iVDJD2cTuTLpBu.json b/packs/helper-macros/_source/System_Reference_A3iVDJD2cTuTLpBu.json new file mode 100644 index 0000000..9c3ef03 --- /dev/null +++ b/packs/helper-macros/_source/System_Reference_A3iVDJD2cTuTLpBu.json @@ -0,0 +1,19 @@ +{ + "name": "System Reference", + "sorting": "a", + "folder": null, + "type": "Macro", + "_id": "A3iVDJD2cTuTLpBu", + "sort": 0, + "color": null, + "flags": {}, + "_stats": { + "systemId": "swade", + "systemVersion": "3.2.5", + "coreVersion": "11.315", + "createdTime": 1705945264804, + "modifiedTime": 1705945264804, + "lastModifiedBy": "Aqnn9hCDQPbyTWiq" + }, + "_key": "!folders!A3iVDJD2cTuTLpBu" +} diff --git a/packs/module-docs/CURRENT b/packs/module-docs/CURRENT index 1a84852..f7753e2 100644 --- a/packs/module-docs/CURRENT +++ b/packs/module-docs/CURRENT @@ -1 +1 @@ -MANIFEST-000002 +MANIFEST-000006 diff --git a/packs/module-docs/LOG b/packs/module-docs/LOG index 44cd61f..2916c13 100644 --- a/packs/module-docs/LOG +++ b/packs/module-docs/LOG @@ -1,5 +1,8 @@ -2023/12/26-22:07:52.151167 7f49617be700 Delete type=3 #1 -2023/12/26-22:07:52.153966 7f495ffbb700 Level-0 table #5: started -2023/12/26-22:07:52.157487 7f495ffbb700 Level-0 table #5: 15582 bytes OK -2023/12/26-22:07:52.160656 7f495ffbb700 Delete type=0 #3 -2023/12/26-22:07:52.160808 7f495ffbb700 Manual compaction at level-0 from '!journal!HbtPlHNFO1L6RVj0' @ 72057594037927935 : 1 .. '!journal.pages!w4TImRTAiNiqDWeL.vQhO6BVdKZOubTUQ' @ 0 : 0; will stop at (end) +2024/01/23-00:18:56.630149 7f4ade7fc700 Recovering log #4 +2024/01/23-00:18:56.650675 7f4ade7fc700 Delete type=3 #2 +2024/01/23-00:18:56.650720 7f4ade7fc700 Delete type=0 #4 +2024/01/23-00:29:20.101770 7f4add894700 Level-0 table #9: started +2024/01/23-00:29:20.101849 7f4add894700 Level-0 table #9: 0 bytes OK +2024/01/23-00:29:20.110784 7f4add894700 Delete type=0 #7 +2024/01/23-00:29:20.120658 7f4add894700 Manual compaction at level-0 from '!journal!HbtPlHNFO1L6RVj0' @ 72057594037927935 : 1 .. '!journal.pages!w4TImRTAiNiqDWeL.vQhO6BVdKZOubTUQ' @ 0 : 0; will stop at (end) +2024/01/23-00:29:20.120804 7f4add894700 Manual compaction at level-1 from '!journal!HbtPlHNFO1L6RVj0' @ 72057594037927935 : 1 .. '!journal.pages!w4TImRTAiNiqDWeL.vQhO6BVdKZOubTUQ' @ 0 : 0; will stop at (end) diff --git a/packs/module-docs/LOG.old b/packs/module-docs/LOG.old new file mode 100644 index 0000000..ba600fd --- /dev/null +++ b/packs/module-docs/LOG.old @@ -0,0 +1,5 @@ +2024/01/23-00:18:30.653831 7f5d3d7be700 Delete type=3 #1 +2024/01/23-00:18:30.656398 7f5d3bd42700 Level-0 table #5: started +2024/01/23-00:18:30.673900 7f5d3bd42700 Level-0 table #5: 15582 bytes OK +2024/01/23-00:18:30.683252 7f5d3bd42700 Delete type=0 #3 +2024/01/23-00:18:30.683426 7f5d3bd42700 Manual compaction at level-0 from '!journal!HbtPlHNFO1L6RVj0' @ 72057594037927935 : 1 .. '!journal.pages!w4TImRTAiNiqDWeL.vQhO6BVdKZOubTUQ' @ 0 : 0; will stop at (end) diff --git a/packs/module-docs/MANIFEST-000002 b/packs/module-docs/MANIFEST-000002 deleted file mode 100644 index 991e3ba..0000000 Binary files a/packs/module-docs/MANIFEST-000002 and /dev/null differ diff --git a/packs/module-docs/MANIFEST-000006 b/packs/module-docs/MANIFEST-000006 new file mode 100644 index 0000000..b4ad2d2 Binary files /dev/null and b/packs/module-docs/MANIFEST-000006 differ diff --git a/scripts/rollHelpers.js b/scripts/rollHelpers.js index 8a606a5..7c44607 100644 --- a/scripts/rollHelpers.js +++ b/scripts/rollHelpers.js @@ -47,6 +47,9 @@ export async function preTraitRollModifiers (actor, trait, roll, modifiers, opti if (scaleMod !== 0) { modifiers.push({ label: 'Scale', value: scaleMod, ignore: false }) } + if (target.actor.items.find(e => e.type === 'edge' && e.system.swid === 'dodge')) { + modifiers.push({ label: 'Dodge', value: -2, ignore: true }) + } if (trait?.type === 'skill' && trait?.system?.swid === 'fighting') { const gangUpBonus = calcGangup(token, target) if (gangUpBonus > 0) {