diff --git a/.github/CHANGELOG.md b/.github/CHANGELOG.md index bc6153b2b..d6e00811b 100644 --- a/.github/CHANGELOG.md +++ b/.github/CHANGELOG.md @@ -1,7 +1,7 @@ # :warning: Important note - :warning: __MAKE A COPY OF YOUR WORLD BEFORE UPGRADING__ -- please report any bug encountered on GitHub, specify if you used V10 version. +- please report any bug encountered on GitHub Happy gaming ! @@ -9,6 +9,13 @@ Happy gaming ! When not specified, all changes were made by @castanhocorreia, @HavlockV, and @snap01. +## Version 0.10.2 + +When not specified, all changes were made by @castanhocorreia, @HavlockV, and @snap01. + +- Fix adding (Any) specialisation skills to actors if both requiresname and picknameonly are not set +- Fix migrated skills with eras not having a CoC ID preventing migration completing + ## Version 0.10.1 When not specified, all changes were made by @castanhocorreia, @HavlockV, and @snap01. diff --git a/.github/ISSUE_TEMPLATE/bug-report.md b/.github/ISSUE_TEMPLATE/bug-report.md index e0351f830..a3b49cd33 100644 --- a/.github/ISSUE_TEMPLATE/bug-report.md +++ b/.github/ISSUE_TEMPLATE/bug-report.md @@ -12,6 +12,7 @@ assignees: '' +- [ ] Have you checked the Upcoming Release section of the changelog to see if the issue will be resolved in the next release? https://github.com/Miskatonic-Investigative-Society/CoC7-FoundryVTT/blob/develop/.github/CHANGELOG.md - [ ] Are you running the latest version of both Foundry VTT and Call of Cthulhu 7th Edition? - [ ] Have you tested whether the bug persists without any other modules activated or on Foundry Launch in Safe Configuration? diff --git a/module/actors/actor.js b/module/actors/actor.js index 7c9e42c93..600d52e12 100644 --- a/module/actors/actor.js +++ b/module/actors/actor.js @@ -929,6 +929,7 @@ export class CoCActor extends Actor { let addThis = true if (CoC7Item.isAnySpec(data)) { + const isAnyButNotFlagged = (!(data.system.properties?.requiresname) ?? false) && !(data.system.properties?.picknameonly ?? false) let skillList = [] const group = game.system.api.cocid.guessGroupFromDocument(data) if (group) { @@ -977,7 +978,7 @@ export class CoCActor extends Actor { } const skillData = await SkillSpecializationSelectDialog.create({ skills: skillList, - allowCustom: (data.system.properties?.requiresname ?? false), + allowCustom: (isAnyButNotFlagged || (data.system.properties?.requiresname ?? false)), fixedBaseValue: (data.system.properties?.keepbasevalue ?? false), specializationName: data.system.specialization, label: data.name, diff --git a/module/apps/coc-id-batch.js b/module/apps/coc-id-batch.js index 354880eee..692a80e2f 100644 --- a/module/apps/coc-id-batch.js +++ b/module/apps/coc-id-batch.js @@ -147,7 +147,7 @@ export class CoCIDBatch extends FormApplication { for (const item of actorData.items) { const itemData = item instanceof CONFIG.Item.documentClass ? item.toObject() : item if (itemData.type === 'skill') { - if (!itemData.flags.CoC7?.cocidFlag?.id.match(/^i.skill/)) { + if (!itemData.flags.CoC7?.cocidFlag?.id?.match(/^i.skill/)) { if (typeof missingNames[itemData.name] === 'undefined') { missingNames[itemData.name] = '' } @@ -167,7 +167,7 @@ export class CoCIDBatch extends FormApplication { for (const item of game.items.contents) { const itemData = item instanceof CONFIG.Item.documentClass ? item.toObject() : item if (itemData.type === 'skill') { - if (!itemData.flags.CoC7?.cocidFlag?.id.match(/^i.skill/)) { + if (!itemData.flags.CoC7?.cocidFlag?.id?.match(/^i.skill/)) { if (typeof missingNames[itemData.name] === 'undefined') { missingNames[itemData.name] = '' } @@ -189,7 +189,7 @@ export class CoCIDBatch extends FormApplication { for (const item of actorData.items ?? []) { const itemData = item instanceof CONFIG.Item.documentClass ? item.toObject() : item if (itemData.type === 'skill') { - if (!itemData.flags.CoC7?.cocidFlag?.id.match(/^i.skill/)) { + if (!itemData.flags.CoC7?.cocidFlag?.id?.match(/^i.skill/)) { if (typeof missingNames[itemData.name] === 'undefined') { missingNames[itemData.name] = '' } diff --git a/module/items/item.js b/module/items/item.js index 45a960971..d2a231509 100644 --- a/module/items/item.js +++ b/module/items/item.js @@ -313,7 +313,7 @@ export class CoC7Item extends Item { return [ game.i18n.localize('CoC7.AnySpecName').toLowerCase(), 'any' - ].includes(CoC7Item.getNameWithoutSpec(item).toLowerCase()) + ].includes(CONFIG.Item.documentClasses.skill.guessNameParts(item.name).skillName.toLowerCase()) } async checkSkillProperties () { diff --git a/system.json b/system.json index 4be1a2110..a536fb0ea 100644 --- a/system.json +++ b/system.json @@ -2,7 +2,7 @@ "id": "CoC7", "title": "Call of Cthulhu 7th Edition", "description": "An implementation of the Call of Cthulhu 7th Edition game system for Foundry Virtual Tabletop.", - "version": "0.10.1", + "version": "0.10.2", "authors": [ { "name": "Miskatonic Investigative Society"