#97 particulière pour armes lentes

Pas de particulières en rapidité pour les armes lentes.

Le corps à corps est considéré comme rapide.

Standardise le corps à corps:  centraliser la construction d'un objet
pour le corps à corps

Convertion de compétences de créature en arme

Petit fix sur HUD: le click est sur le div uniquement (au lieu
du label avant, ou d'un mix avec un fix précédent...)
This commit is contained in:
Vincent Vandemeulebrouck
2021-01-04 00:17:22 +01:00
parent 3d98d57fb5
commit 3ac2be74fd
11 changed files with 124 additions and 91 deletions

View File

@ -1,4 +1,4 @@
import { RdDItemCompetenceCreature } from "./item-competencecreature.js"
const nomCcategorieParade = {
"sans-armes": "Sans arme / armes naturelles",
@ -13,34 +13,29 @@ const nomCcategorieParade = {
"lances": "Lances",
}
/* -------------------------------------------- */
export class RdDItemArme extends Item {
static isArme(item) {
return (item.type == 'competencecreature' && item.data.iscombat) || item.type == 'arme';
}
/* -------------------------------------------- */
static getArmeData(item) {
switch (item ? item.data.type : '') {
case 'arme': return item.data;
case 'competencecreature':
return RdDItemArme._getArmeCompetenceCreature(item);
return RdDItemCompetenceCreature.toArme(item);
}
return RdDItemArme.mainsNues();
}
/* -------------------------------------------- */
static _getArmeCompetenceCreature(competenceCreature) {
let armeData = duplicate(competenceCreature.data);
armeData.data.resistance = 100;
armeData.data.competence = armeData.name;
armeData.data.dommagesReels = armeData.data.dommagesReels || armeData.data.dommages;
return armeData;
}
/* -------------------------------------------- */
static getNomCategorieParade(it) {
const categorie = it.data? RdDItemArme.getCategorieParade(it) : it;
const categorie = it.data ? RdDItemArme.getCategorieParade(it) : it;
return nomCcategorieParade[categorie];
}
/* -------------------------------------------- */
static getCategorieParade(arme) {
if (arme.data.categorie_parade) {
@ -134,11 +129,24 @@ export class RdDItemArme extends Item {
return arme;
}
static mainsNues() {
static mainsNues(actorData={}) {
const mainsNues = {
name: 'Mains nues',
data: { unemain: true, deuxmains: false, dommages: 0, dommagesReels: 0, mortalite: 'non-mortel', competence: 'Corps à corps', categorie_parade: 'sans-armes' }
data: {
equipe: true,
rapide: true,
force: 0,
dommages: 0,
dommagesReels: 0,
mortalite: 'non-mortel',
competence: 'Corps à corps',
categorie_parade: 'sans-armes'
}
};
if (actorData) {
mergeObject( mainsNues.data, actorData, {overwrite:false});
}
return mainsNues
}
}