fix: Correct critical bugs and complete Creature/Group DataModel implementation
- Fix TypeError: controls.find is not a function in hooks.mjs - Fix undefined 'npc' variable in applications.mjs - Fix CONFIG.VERMINE.model undefined by checking game.system.template existence - Fix TypeError: html.find(...).forEach is not a function in roll.mjs - Fix Cannot set properties of undefined (setting 'initial') in actor.mjs - Fix Cannot read properties of undefined (reading 'difficulty') in actor.mjs - Fix ActiveEffect application phase 'initial' already completed by adding combatStatus to base template - Fix Missing helper: 'select' in roll-dialog.hbs (removed invalid Handlebars select block) - Add SIZE_LEVELS labels to creatureSizeLevels config - Add SIZE_LEVELS translations to fr.json - Add combatStatus to base actor template - Convert all .html templates to .hbs for Foundry v14 compatibility - Update item-sheet.mjs to use .hbs extension - Update handlebars-manager.mjs to use .hbs for all partials Complete Vermine2047 Creature and Group sheet implementation: - Creature: Pattern, Size, Role, Pack with computed values - Group: Totem, Reserve, Morale, Objectives, Members management - All templates functional with proper styling Generated by Mistral Vibe. Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
This commit is contained in:
+366
-10
@@ -25,6 +25,10 @@
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 2
|
||||
},
|
||||
"combatStatus": {
|
||||
"label": "",
|
||||
"difficulty": 7
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -385,8 +389,330 @@
|
||||
"templates": [
|
||||
"base"
|
||||
],
|
||||
"age": 15,
|
||||
"skills": "",
|
||||
"identity": {
|
||||
"name": "",
|
||||
"profile": "",
|
||||
"origin": "",
|
||||
"totem": "",
|
||||
"theme": "",
|
||||
"notes": ""
|
||||
},
|
||||
"attributes": {
|
||||
"xp": {
|
||||
"value": 0,
|
||||
"max": 10
|
||||
},
|
||||
"reputation": {
|
||||
"value": 0,
|
||||
"max": 10
|
||||
},
|
||||
"self_control": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5
|
||||
},
|
||||
"effort": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5
|
||||
}
|
||||
},
|
||||
"abilities": {
|
||||
"vigor": {
|
||||
"value": 1,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "physical"
|
||||
},
|
||||
"health": {
|
||||
"value": 1,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "physical"
|
||||
},
|
||||
"precision": {
|
||||
"value": 1,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "manual"
|
||||
},
|
||||
"reflexes": {
|
||||
"value": 1,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "manual"
|
||||
},
|
||||
"knowledge": {
|
||||
"value": 1,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "mental"
|
||||
},
|
||||
"perception": {
|
||||
"value": 1,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "mental"
|
||||
},
|
||||
"will": {
|
||||
"value": 1,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "social"
|
||||
},
|
||||
"empathy": {
|
||||
"value": 1,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "social"
|
||||
}
|
||||
},
|
||||
"skill_categories": {
|
||||
"preferred": "",
|
||||
"man": {
|
||||
"label": "VERMINE.skill_category.man",
|
||||
"preferred": false
|
||||
},
|
||||
"animal": {
|
||||
"label": "VERMINE.skill_category.animal",
|
||||
"preferred": false
|
||||
},
|
||||
"tool": {
|
||||
"label": "VERMINE.skill_category.tool",
|
||||
"preferred": false
|
||||
},
|
||||
"weapon": {
|
||||
"label": "VERMINE.skill_category.weapon",
|
||||
"preferred": false
|
||||
},
|
||||
"survival": {
|
||||
"label": "VERMINE.skill_category.survival",
|
||||
"preferred": false
|
||||
},
|
||||
"world": {
|
||||
"label": "VERMINE.skill_category.world",
|
||||
"preferred": false
|
||||
}
|
||||
},
|
||||
"skills": {
|
||||
"arts": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "man",
|
||||
"rarity": 1
|
||||
},
|
||||
"civilization": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "man",
|
||||
"rarity": 2
|
||||
},
|
||||
"psychology": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "man",
|
||||
"rarity": 1
|
||||
},
|
||||
"rumors": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "man",
|
||||
"rarity": 0
|
||||
},
|
||||
"healing": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "man",
|
||||
"rarity": 1
|
||||
},
|
||||
"animalism": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "animal",
|
||||
"rarity": 1
|
||||
},
|
||||
"dissection": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "animal",
|
||||
"rarity": 2
|
||||
},
|
||||
"fauna": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "animal",
|
||||
"rarity": 1
|
||||
},
|
||||
"repulsion": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "animal",
|
||||
"rarity": 1
|
||||
},
|
||||
"tracks": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "animal",
|
||||
"rarity": 0
|
||||
},
|
||||
"crafting": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "tool",
|
||||
"rarity": 2
|
||||
},
|
||||
"diy": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "tool",
|
||||
"rarity": 0
|
||||
},
|
||||
"mecanical": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "tool",
|
||||
"rarity": 2
|
||||
},
|
||||
"piloting": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "tool",
|
||||
"rarity": 1
|
||||
},
|
||||
"technology": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "tool",
|
||||
"rarity": 2
|
||||
},
|
||||
"firearms": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "weapon",
|
||||
"rarity": 2
|
||||
},
|
||||
"archery": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "weapon",
|
||||
"rarity": 0
|
||||
},
|
||||
"armory": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "weapon",
|
||||
"rarity": 2
|
||||
},
|
||||
"throwing": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "weapon",
|
||||
"rarity": 0
|
||||
},
|
||||
"melee": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "weapon",
|
||||
"rarity": 0
|
||||
},
|
||||
"alertness": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "survival",
|
||||
"rarity": 0
|
||||
},
|
||||
"athletics": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "survival",
|
||||
"rarity": 0
|
||||
},
|
||||
"food": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "survival",
|
||||
"rarity": 0
|
||||
},
|
||||
"stealth": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "survival",
|
||||
"rarity": 0
|
||||
},
|
||||
"close": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "survival",
|
||||
"rarity": 0
|
||||
},
|
||||
"environment": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "world",
|
||||
"rarity": 1
|
||||
},
|
||||
"flora": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "world",
|
||||
"rarity": 1
|
||||
},
|
||||
"road": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "world",
|
||||
"rarity": 0
|
||||
},
|
||||
"toxics": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "world",
|
||||
"rarity": 2
|
||||
},
|
||||
"ruins": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 5,
|
||||
"category": "world",
|
||||
"rarity": 1
|
||||
}
|
||||
},
|
||||
"combatStatus": {
|
||||
"label": "",
|
||||
"difficulty": 9
|
||||
},
|
||||
"equipment": {
|
||||
"description": ""
|
||||
},
|
||||
"threat": {
|
||||
"value": 1,
|
||||
"min": 1,
|
||||
@@ -401,7 +727,8 @@
|
||||
"value": 1,
|
||||
"min": 1,
|
||||
"max": 4
|
||||
}
|
||||
},
|
||||
"skills": ""
|
||||
},
|
||||
"group": {
|
||||
"templates": [
|
||||
@@ -414,17 +741,15 @@
|
||||
"theme": "",
|
||||
"instincts": "",
|
||||
"prohibits": "",
|
||||
"major_objectives": "",
|
||||
"minor_objectives": "",
|
||||
"notes": ""
|
||||
},
|
||||
"equipment": {
|
||||
"description": ""
|
||||
},
|
||||
"level": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 3
|
||||
"value": 1,
|
||||
"min": 1,
|
||||
"max": 10
|
||||
},
|
||||
"reputation": {
|
||||
"value": 10,
|
||||
@@ -434,9 +759,19 @@
|
||||
"morale": {
|
||||
"level": "high",
|
||||
"value": 7,
|
||||
"min": 1,
|
||||
"min": 0,
|
||||
"max": 7
|
||||
},
|
||||
"reserve": {
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 10
|
||||
},
|
||||
"objectives": {
|
||||
"major": [],
|
||||
"minor": []
|
||||
},
|
||||
"groupAbilities": [],
|
||||
"members": [],
|
||||
"encounters": []
|
||||
},
|
||||
@@ -444,6 +779,13 @@
|
||||
"templates": [
|
||||
"base"
|
||||
],
|
||||
"identity": {
|
||||
"profile": "",
|
||||
"origin": "",
|
||||
"theme": "",
|
||||
"notes": "",
|
||||
"biography": ""
|
||||
},
|
||||
"skills": "",
|
||||
"modes": {
|
||||
"survival": true,
|
||||
@@ -458,7 +800,7 @@
|
||||
"size": {
|
||||
"value": 1,
|
||||
"min": 1,
|
||||
"max": 4
|
||||
"max": 3
|
||||
},
|
||||
"role": {
|
||||
"value": 1,
|
||||
@@ -469,6 +811,20 @@
|
||||
"value": 0,
|
||||
"min": 0,
|
||||
"max": 3
|
||||
},
|
||||
"computed": {
|
||||
"attack": 0,
|
||||
"damage": 0,
|
||||
"vigor": 0,
|
||||
"reaction": 0,
|
||||
"reactionBonus": 0,
|
||||
"pools": 0,
|
||||
"gear": 9,
|
||||
"gearHindrance": 0,
|
||||
"protection": 1
|
||||
},
|
||||
"equipment": {
|
||||
"description": ""
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user