gestion de l'age
This commit is contained in:
Binary file not shown.
|
Before Width: | Height: | Size: 111 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 275 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 60 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 116 KiB After Width: | Height: | Size: 116 KiB |
+5
-1
@@ -53,7 +53,11 @@
|
|||||||
"active": { "name": "Actif"},
|
"active": { "name": "Actif"},
|
||||||
"passive": { "name": "Passif"}
|
"passive": { "name": "Passif"}
|
||||||
},
|
},
|
||||||
|
"AGE_TYPES": {
|
||||||
|
"young": "Jeune",
|
||||||
|
"adult": "Adulte",
|
||||||
|
"old": "Vieux"
|
||||||
|
},
|
||||||
"IDENTITY": {
|
"IDENTITY": {
|
||||||
"name": "Nom",
|
"name": "Nom",
|
||||||
"height": "Taille",
|
"height": "Taille",
|
||||||
|
|||||||
@@ -159,6 +159,24 @@ export class VermineCharacterSheet extends VermineActorSheet {
|
|||||||
// Rollable abilities.
|
// Rollable abilities.
|
||||||
html.find('.rollable').click(this._onRoll.bind(this));
|
html.find('.rollable').click(this._onRoll.bind(this));
|
||||||
|
|
||||||
|
// Rollable abilities.
|
||||||
|
html.find('input[name="system.identity.age"]').change(ev => {
|
||||||
|
const age = parseInt(ev.target.value,10);
|
||||||
|
let ageType = "2";
|
||||||
|
|
||||||
|
Object.keys(CONFIG.VERMINE.AgeTypes).forEach((type) => {
|
||||||
|
if(age > parseInt(CONFIG.VERMINE.AgeTypes[type].beginning,10)){
|
||||||
|
ageType = type;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
this.actor.update({ 'system.identity.ageType': ageType });
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
// Choose Totem
|
||||||
|
html.find('.changeTotem').click(this._onTotemButton.bind(this));
|
||||||
|
|
||||||
// Drag events for macros.
|
// Drag events for macros.
|
||||||
if (this.actor.isOwner) {
|
if (this.actor.isOwner) {
|
||||||
let handler = ev => this._onDragStart(ev);
|
let handler = ev => this._onDragStart(ev);
|
||||||
@@ -243,4 +261,18 @@ export class VermineCharacterSheet extends VermineActorSheet {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Handle clickable rolls.
|
||||||
|
* @param {Event} event The originating click event
|
||||||
|
* @private
|
||||||
|
*/
|
||||||
|
_onTotemButton(event) {
|
||||||
|
event.preventDefault();
|
||||||
|
const element = event.currentTarget;
|
||||||
|
const dataset = element.dataset;
|
||||||
|
|
||||||
|
console.log('on va ouvrir une dialog box totem');
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,6 +5,11 @@ export const VERMINE = {};
|
|||||||
* @type {Object}
|
* @type {Object}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
VERMINE.AgeTypes = {
|
||||||
|
1:{ "name":"AGE_TYPES.young", "beginning": 0 },
|
||||||
|
2:{ "name":"AGE_TYPES.adult", "beginning": 16 },
|
||||||
|
3:{ "name":"AGE_TYPES.old", "beginning": 45 }
|
||||||
|
}
|
||||||
|
|
||||||
VERMINE.SkillLevels = {
|
VERMINE.SkillLevels = {
|
||||||
1:{ "label":"VERMINE.skill_level.beginner", "dicePool":1, "reroll":0},
|
1:{ "label":"VERMINE.skill_level.beginner", "dicePool":1, "reroll":0},
|
||||||
|
|||||||
@@ -82,7 +82,7 @@
|
|||||||
NoD += 1;
|
NoD += 1;
|
||||||
}
|
}
|
||||||
if (formData.abilityScore == 0){
|
if (formData.abilityScore == 0){
|
||||||
alert('veuillez saisir une caractéristique');
|
ui.notifications.notify(`veuillez saisir une caractéristique`);
|
||||||
} else return game.vermine2047.VermineRoll.roll(data.actorId, data.label, NoD, Reroll, data);
|
} else return game.vermine2047.VermineRoll.roll(data.actorId, data.label, NoD, Reroll, data);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
import { VERMINE } from "./config.mjs";
|
import { VERMINE } from "./config.mjs";
|
||||||
import { getActorSkillScore,updateActorSkillScore } from "./functions.mjs";
|
import { getActorSkillScore,updateActorSkillScore } from "./functions.mjs";
|
||||||
import { CombatResultDialog } from "./dialogs.mjs";
|
|
||||||
|
|
||||||
export class VermineFight {
|
export class VermineFight {
|
||||||
|
|
||||||
|
|||||||
@@ -70,6 +70,20 @@ export const registerHandlebarsHelpers = function () {
|
|||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// return age type information
|
||||||
|
Handlebars.registerHelper('ageType', function (property, level, options) {
|
||||||
|
if (level < 1 || level > 3)
|
||||||
|
return "";
|
||||||
|
let ageData = CONFIG.VERMINE.AgeTypes[level];
|
||||||
|
if (property == 'name'){
|
||||||
|
return (ageData !== undefined) ? game.i18n.localize(ageData[property]) : "";
|
||||||
|
} else {
|
||||||
|
return (ageData !== undefined) ? ageData[property] : "";
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
Handlebars.registerHelper('getCombatTrackerColor', function (isPlayer, isNpc) {
|
Handlebars.registerHelper('getCombatTrackerColor', function (isPlayer, isNpc) {
|
||||||
if (isPlayer) return "player";
|
if (isPlayer) return "player";
|
||||||
|
|||||||
@@ -66,18 +66,18 @@ Hooks.once('init', async function() {
|
|||||||
Actors.registerSheet('vermine2047', VermineCreatureSheet, {
|
Actors.registerSheet('vermine2047', VermineCreatureSheet, {
|
||||||
types: ['creature'],
|
types: ['creature'],
|
||||||
makeDefault: true,
|
makeDefault: true,
|
||||||
}); // Register vehicle Sheet
|
});
|
||||||
|
|
||||||
Actors.registerSheet('vermine2047', VermineGroupSheet, {
|
Actors.registerSheet('vermine2047', VermineGroupSheet, {
|
||||||
types: ['group'],
|
types: ['group'],
|
||||||
makeDefault: true,
|
makeDefault: true,
|
||||||
}); // Register vehicle Sheet
|
});
|
||||||
Items.unregisterSheet("core", ItemSheet);
|
Items.unregisterSheet("core", ItemSheet);
|
||||||
Items.registerSheet("vermine2047", VermineItemSheet, { makeDefault: true });
|
Items.registerSheet("vermine2047", VermineItemSheet, { makeDefault: true });
|
||||||
|
|
||||||
registerHandlebarsHelpers(); // Register Handlebars helpers
|
registerHandlebarsHelpers(); // Register Handlebars helpers
|
||||||
registerHooks(); // register Hooks
|
registerHooks(); // register Hooks
|
||||||
registerSettings(); // register Engrenages Settings
|
registerSettings(); // register Vermine Settings
|
||||||
|
|
||||||
// Preload Handlebars templates.
|
// Preload Handlebars templates.
|
||||||
return preloadHandlebarsTemplates();
|
return preloadHandlebarsTemplates();
|
||||||
|
|||||||
@@ -27,6 +27,7 @@
|
|||||||
"weight": 0,
|
"weight": 0,
|
||||||
"totem": "",
|
"totem": "",
|
||||||
"age": 15,
|
"age": 15,
|
||||||
|
"ageType": 2,
|
||||||
"profile": "",
|
"profile": "",
|
||||||
"origin": "",
|
"origin": "",
|
||||||
"theme": "",
|
"theme": "",
|
||||||
|
|||||||
@@ -28,7 +28,7 @@
|
|||||||
{{#if (eq skill.rarity 1)}}<sup>(I)</sup>{{/if}}{{#if (eq skill.rarity 2)}}<sup>(II)</sup>{{/if}}</label>
|
{{#if (eq skill.rarity 1)}}<sup>(I)</sup>{{/if}}{{#if (eq skill.rarity 2)}}<sup>(II)</sup>{{/if}}</label>
|
||||||
<span class="die d10 pool" title="pool">{{ skillLevel "dicePool" skill.value }}</span>
|
<span class="die d10 pool" title="pool">{{ skillLevel "dicePool" skill.value }}</span>
|
||||||
<span class="die d10 reroll" title="reroll">{{ skillLevel "reroll" skill.value }}</span>
|
<span class="die d10 reroll" title="reroll">{{ skillLevel "reroll" skill.value }}</span>
|
||||||
<input type="number" name="system.skills.{{skey}}.value" value="{{skill.value}}" class="skill" data-dtype="Number" min="1" max="5" />
|
<input type="number" name="system.skills.{{skey}}.value" value="{{skill.value}}" class="skill" data-dtype="Number" min="0" max="5" />
|
||||||
</div>
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
{{/each}}
|
{{/each}}
|
||||||
|
|||||||
@@ -12,14 +12,17 @@
|
|||||||
<div class="flexrow flex-group-center">
|
<div class="flexrow flex-group-center">
|
||||||
<label for="system.identity.age">{{ localize 'IDENTITY.age' }}</label>
|
<label for="system.identity.age">{{ localize 'IDENTITY.age' }}</label>
|
||||||
<input type="number" name="system.identity.age" value="{{ system.identity.age }}" data-dtype="Number"/>
|
<input type="number" name="system.identity.age" value="{{ system.identity.age }}" data-dtype="Number"/>
|
||||||
|
<span id="ageType">({{ ageType "name" system.identity.ageType }})</span>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
<section class="char-level">
|
<section class="char-level">
|
||||||
<div class="char-vermine2047 flexrow flex-group-left">
|
<div class="char-vermine2047 flexrow flex-group-left">
|
||||||
<label for="system.identity.totem">{{ localize 'IDENTITY.totem' }}</label>
|
<label for="system.identity.totem">{{ localize 'IDENTITY.totem' }}</label>
|
||||||
<select name="system.identity.totem" class="w-full">
|
{{#if (eq system.identity.totem "")}}
|
||||||
{{selectOptions config.totems selected=system.identity.totem localize=true}}
|
<a name="chooseTotem" class="chooseTotem">Choisissez votre totem</button>
|
||||||
</select>
|
{{ else }}
|
||||||
|
<a name="chooseTotem" class="chooseTotem 2">{{ system.identity.totem }}</button>
|
||||||
|
{{/if}}
|
||||||
</div>
|
</div>
|
||||||
<div class="reputation flexrow flex-group-center">
|
<div class="reputation flexrow flex-group-center">
|
||||||
<label>{{ localize 'VERMINE.reputation' }}</label>
|
<label>{{ localize 'VERMINE.reputation' }}</label>
|
||||||
|
|||||||
@@ -0,0 +1,8 @@
|
|||||||
|
<div class="totem choose">
|
||||||
|
<div class="flexrow row mdb">
|
||||||
|
<label for="system.identity.totem">{{ localize 'IDENTITY.totem' }}</label>
|
||||||
|
<select name="system.identity.totem" class="w-full">
|
||||||
|
{{selectOptions config.totems selected=system.identity.totem localize=true}}
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
+24
-24
@@ -1,26 +1,26 @@
|
|||||||
<div class="ecryme-dv roll attribute">
|
<div class="ecryme-dv roll attribute">
|
||||||
<div class="dice-roll">
|
<div class="dice-roll">
|
||||||
<div class="dice-result">
|
<div class="dice-result">
|
||||||
<div class="dice-formula">
|
<div class="dice-formula">
|
||||||
{{ ` + dicePool + `d6 }}
|
{{ ` + dicePool + `d6 }}
|
||||||
</div>
|
</div>
|
||||||
<div class="dice-tooltip expanded">
|
<div class="dice-tooltip expanded">
|
||||||
<section class="tooltip-part flexrow">
|
<section class="tooltip-part flexrow">
|
||||||
<div class="" style="flex:60%;">
|
<div class="" style="flex:60%;">
|
||||||
<div class="parameters">
|
<div class="parameters">
|
||||||
{{ targetText }}
|
{{ targetText }}
|
||||||
</div>
|
|
||||||
<div class="dice">
|
|
||||||
<ol class="dice-rolls">{{ diceString }}</ol>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="align-center">
|
|
||||||
Résultat
|
|
||||||
<p style="font-weight:bold; font-size:2em;">{{ (total + skill + _trait + _usingSpecialization + _used).toString() }}</p>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
</div>` +
|
|
||||||
`<h4 class="dice-total">{{ successText }}</h4>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="dice">
|
||||||
</div>
|
<ol class="dice-rolls">{{ diceString }}</ol>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="align-center">
|
||||||
|
Résultat
|
||||||
|
<p style="font-weight:bold; font-size:2em;">{{ (total + skill + _trait + _usingSpecialization + _used).toString() }}</p>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
</div>` +
|
||||||
|
`<h4 class="dice-total">{{ successText }}</h4>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
Reference in New Issue
Block a user