diff --git a/assets/logos/hawkmoon_logo.webp b/assets/logos/hawkmoon_logo.webp new file mode 100644 index 0000000..969c64a Binary files /dev/null and b/assets/logos/hawkmoon_logo.webp differ diff --git a/assets/logos/mournblade_logo_chaos.webp b/assets/logos/mournblade_logo_chaos.webp deleted file mode 100644 index a5ae37a..0000000 Binary files a/assets/logos/mournblade_logo_chaos.webp and /dev/null differ diff --git a/assets/logos/mournblade_logo_texte.webp b/assets/logos/mournblade_logo_texte.webp deleted file mode 100644 index a2aaac4..0000000 Binary files a/assets/logos/mournblade_logo_texte.webp and /dev/null differ diff --git a/assets/tokens/token_chaos.webp b/assets/tokens/token_chaos.webp deleted file mode 100644 index 5906817..0000000 Binary files a/assets/tokens/token_chaos.webp and /dev/null differ diff --git a/assets/tokens/token_chaos2.webp b/assets/tokens/token_chaos2.webp deleted file mode 100644 index 77980c1..0000000 Binary files a/assets/tokens/token_chaos2.webp and /dev/null differ diff --git a/assets/tokens/token_chaos3.webp b/assets/tokens/token_chaos3.webp deleted file mode 100644 index bbdf74b..0000000 Binary files a/assets/tokens/token_chaos3.webp and /dev/null differ diff --git a/assets/tokens/token_hawkmoon_PJ.webp b/assets/tokens/token_hawkmoon_PJ.webp new file mode 100644 index 0000000..0bd1b4e Binary files /dev/null and b/assets/tokens/token_hawkmoon_PJ.webp differ diff --git a/assets/tokens/token_hawkmoon_PNJ.webp b/assets/tokens/token_hawkmoon_PNJ.webp new file mode 100644 index 0000000..3aefa68 Binary files /dev/null and b/assets/tokens/token_hawkmoon_PNJ.webp differ diff --git a/assets/tokens/token_loi.webp b/assets/tokens/token_loi.webp deleted file mode 100644 index 2ed7924..0000000 Binary files a/assets/tokens/token_loi.webp and /dev/null differ diff --git a/assets/tokens/token_loi2.webp b/assets/tokens/token_loi2.webp deleted file mode 100644 index 24c523b..0000000 Binary files a/assets/tokens/token_loi2.webp and /dev/null differ diff --git a/assets/tokens/token_loi3.webp b/assets/tokens/token_loi3.webp deleted file mode 100644 index 613303a..0000000 Binary files a/assets/tokens/token_loi3.webp and /dev/null differ diff --git a/assets/tokens/token_loi4.webp b/assets/tokens/token_loi4.webp deleted file mode 100644 index ec64aed..0000000 Binary files a/assets/tokens/token_loi4.webp and /dev/null differ diff --git a/assets/ui/fond_hawkmoon.webp b/assets/ui/fond_hawkmoon.webp new file mode 100644 index 0000000..7ec04e2 Binary files /dev/null and b/assets/ui/fond_hawkmoon.webp differ diff --git a/assets/ui/fond_mournblade.webp b/assets/ui/fond_mournblade.webp deleted file mode 100644 index b066a93..0000000 Binary files a/assets/ui/fond_mournblade.webp and /dev/null differ diff --git a/modules/hawkmoon-actor-sheet.js b/modules/hawkmoon-actor-sheet.js index 6240eec..a7c2ca4 100644 --- a/modules/hawkmoon-actor-sheet.js +++ b/modules/hawkmoon-actor-sheet.js @@ -154,6 +154,8 @@ export class HawkmoonActorSheet extends ActorSheet { let autoresult = HawkmoonAutomation.processAutomations("on-drop", item, this.actor) if ( autoresult.isValid ) { super._onDropItem(event, dragData) + } else { + ui.notifications.warn( autoresult.warningMessage) } } diff --git a/modules/hawkmoon-actor.js b/modules/hawkmoon-actor.js index 86e62c6..c19c4f6 100644 --- a/modules/hawkmoon-actor.js +++ b/modules/hawkmoon-actor.js @@ -228,12 +228,18 @@ export class HawkmoonActor extends Actor { return {isValid: false} } /* -------------------------------------------- */ - checkCompetenceLevel(compName, minLevel) { + checkAttributOrCompetenceLevel(compName, minLevel) { let comp = this.items.find(i => i.type == "competence" && i.name.toLowerCase() == compName.toLowerCase() && i.system.niveau >= minLevel) if ( comp) { return {isValid: true, item: duplicate(comp) } + } else { + for (let attrKey in this.system.attributs) { + if ( this.system.attributs[attrKey].label.toLowerCase() == compName.toLowerCase() && this.system.attributs[attrKey].value >= minLevel ) { + return {isValid: true, item: duplicate(this.system.attributs[attrKey]) } + } + } } - return {isValid: false, warningMessage: `Prérequis insuffisant : la compétence ${compName} doit être de niveau ${minLevel} au minimum`} + return {isValid: false, warningMessage: `Prérequis insuffisant : la compétence/attribut ${compName} doit être de niveau ${minLevel} au minimum`} } /* -------------------------------------------- */ addCompetenceBonus(compName, bonus, baCost) { diff --git a/modules/hawkmoon-automation.js b/modules/hawkmoon-automation.js index de02cc2..fd2160e 100644 --- a/modules/hawkmoon-automation.js +++ b/modules/hawkmoon-automation.js @@ -31,13 +31,22 @@ export class HawkmoonAutomation { if ( !relevantAutomations || relevantAutomations.length == 0) { return {isValid: true} } - + + let validTab = [] for(let auto of relevantAutomations) { - if ( event == "on-drop") { - return actor.checkCompetenceLevel( auto.competence, auto.minLevel) + if ( event == "on-drop") { + validTab.push( actor.checkAttributOrCompetenceLevel( auto.competence, auto.minLevel) ) } } - return {isValid: false} + + // Post process validation array + for (let ret of validTab) { + if ( !ret.isValid) { + return ret + } + } + + return {isValid: true} } } \ No newline at end of file diff --git a/styles/simple.css b/styles/simple.css index d3649d6..c8121d1 100644 --- a/styles/simple.css +++ b/styles/simple.css @@ -1269,7 +1269,7 @@ ul, li { color: #CCC } #pause > img { - content: url(../assets/logos/mournblade_logo_chaos.webp); + content: url(../assets/logos/hawkmoon_logo.webp); height: 256px; width: 256px; top: -80px; @@ -1277,7 +1277,7 @@ ul, li { } #logo { - content : url(../assets/logos/mournblade_logo_texte.webp); + content : url(../assets/logos/hawkmoon_logo.webp); width: 120px; height: 40px; }