feat: icônes SVG art-déco pour tous les types d'item + icônes par défaut

- aspect.svg : diamant à facettes avec coupe brillant et reflet
- equipment.svg : clé vintage ornée avec tête circulaire et dents géométriques
- preCreateItem hook : définit img par défaut par type d'item

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
2026-03-31 00:53:30 +02:00
parent 2839a6a777
commit a316fb9c61
3 changed files with 92 additions and 1 deletions

View File

@@ -330,8 +330,21 @@ Hooks.on("preCreateItem", (item, data) => {
aspect: () => game.i18n.localize("TYPES.Item.aspect"),
equipment: () => game.i18n.localize("TYPES.Item.equipment"),
}
const defaultIcons = {
weapon: "systems/fvtt-celestopol/assets/icons/weapon.svg",
armure: "systems/fvtt-celestopol/assets/icons/armure.svg",
anomaly: "systems/fvtt-celestopol/assets/icons/anomaly.svg",
aspect: "systems/fvtt-celestopol/assets/icons/aspect.svg",
equipment: "systems/fvtt-celestopol/assets/icons/equipment.svg",
}
const updates = {}
const fn = defaultNames[item.type]
if (fn && (!data.name || data.name === "New Item" || data.name === item.type)) {
item.updateSource({ name: fn() })
updates.name = fn()
}
const defaultIcon = defaultIcons[item.type]
if (defaultIcon && (!data.img || data.img === "icons/svg/item-bag.svg")) {
updates.img = defaultIcon
}
if (Object.keys(updates).length) item.updateSource(updates)
})