plein de truc

This commit is contained in:
rwanoux
2024-04-21 16:51:13 +02:00
parent 0fe0d530b1
commit 74e11d439c
78 changed files with 9447 additions and 2112 deletions
+148 -122
View File
@@ -3,7 +3,7 @@
* Pre-loaded templates are compiled and cached for fast access when rendering
* @return {Promise}
*/
export const preloadHandlebarsTemplates = async function() {
export const preloadHandlebarsTemplates = async function () {
return loadTemplates([
@@ -57,16 +57,16 @@ function range(start, end, step) {
step = step == null ? 1 : Number(step);
if (end == null) {
end = start;
start = 0;
end = start;
start = 0;
}
var length = Math.max(Math.ceil((end - start) / (step || 1)), 0);
var result = new Array(length);
for (var i = 0; i < length; i += 1) {
result[i] = start;
start += step;
result[i] = start;
start += step;
}
return result;
@@ -76,162 +76,188 @@ export const registerHandlebarsHelpers = function () {
Handlebars.registerHelper('concat', (...args) => args.slice(0, -1).join(''));
Handlebars.registerHelper('lower', e => e.toLocaleLowerCase());
Handlebars.registerHelper('toLowerCase', function(str) {
return str.toLowerCase();
Handlebars.registerHelper('toLowerCase', function (str) {
return str.toLowerCase();
});
// search translation with variables
Handlebars.registerHelper('smarttl', function (arrayLabel,objectLabel, options) {
return game.i18n.localize(arrayLabel +"."+objectLabel+".name");
Handlebars.registerHelper('smarttl', function (arrayLabel, objectLabel, options) {
return game.i18n.localize(arrayLabel + "." + objectLabel + ".name");
});
Handlebars.registerHelper('smarttlk', function (arrayLabel,objectLabel, key) {
return game.i18n.localize(arrayLabel +"."+objectLabel+"."+key);
Handlebars.registerHelper('smarttlk', function (arrayLabel, objectLabel, key) {
return game.i18n.localize(arrayLabel + "." + objectLabel + "." + key);
});
Handlebars.registerHelper('smartcfg', function (configLabel, objectLabel) {
let text = "";
text = game.i18n.localize(CONFIG.VERMINE[configLabel][objectLabel]);
if (text == null){
if (text == null) {
text = CONFIG.VERMINE[configLabel][objectLabel];
}
return text;
});
// return threat level information
Handlebars.registerHelper('threatLevel', function (property, level, options) {
if (level < 1 || level > 4)
return "";
let levelData = CONFIG.VERMINE.ThreatLevels[level];
if (property == 'label'){
return (levelData !== undefined) ? game.i18n.localize(levelData[property]) : "";
} else {
return (levelData !== undefined) ? levelData[property] : "";
}
});
// return experience level information
Handlebars.registerHelper('experienceLevel', function (property, level, options) {
if (level < 1 || level > 4)
return "";
let levelData = CONFIG.VERMINE.ExperienceLevels[level];
if (property == 'label'){
return (levelData !== undefined) ? game.i18n.localize(levelData[property]) : "";
} else {
return (levelData !== undefined) ? levelData[property] : "";
}
});
// return role level information
Handlebars.registerHelper('roleLevel', function (property, level, options) {
if (level < 1 || level > 4)
return "";
let levelData = CONFIG.VERMINE.RoleLevels[level];
if (property == 'label'){
return (levelData !== undefined) ? game.i18n.localize(levelData[property]) : "";
} else {
return (levelData !== undefined) ? levelData[property] : "";
}
});
// return pattern level information
Handlebars.registerHelper('patternLevel', function (property, level, options) {
if (level < 1 || level > 4)
return "";
let levelData = CONFIG.VERMINE.PatternLevels[level];
if (property == 'label'){
return (levelData !== undefined) ? game.i18n.localize(levelData[property]) : "";
} else {
return (levelData !== undefined) ? levelData[property] : "";
}
});
// return size level information
Handlebars.registerHelper('sizeLevel', function (property, level, options) {
if (level < 1 || level > 4)
// return threat level information
Handlebars.registerHelper('threatLevel', function (property, level, options) {
if (level < 1 || level > 4)
return "";
let levelData = CONFIG.VERMINE.SizeLevels[level];
if (property == 'label'){
let levelData = CONFIG.VERMINE.ThreatLevels[level];
if (property == 'label') {
return (levelData !== undefined) ? game.i18n.localize(levelData[property]) : "";
} else {
return (levelData !== undefined) ? levelData[property] : "";
}
});
// return pack level information
Handlebars.registerHelper('packLevel', function (property, level, options) {
if (level < 0 || level > 3)
return "";
let levelData = CONFIG.VERMINE.PackLevels[level];
if (property == 'label'){
return (levelData !== undefined) ? game.i18n.localize(levelData[property]) : "";
} else {
return (levelData !== undefined) ? levelData[property] : "";
}
});
// return experience level information
Handlebars.registerHelper('experienceLevel', function (property, level, options) {
if (level < 1 || level > 4)
return "";
let levelData = CONFIG.VERMINE.ExperienceLevels[level];
if (property == 'label') {
return (levelData !== undefined) ? game.i18n.localize(levelData[property]) : "";
} else {
return (levelData !== undefined) ? levelData[property] : "";
}
});
// return role level information
Handlebars.registerHelper('roleLevel', function (property, level, options) {
if (level < 1 || level > 4)
return "";
let levelData = CONFIG.VERMINE.RoleLevels[level];
if (property == 'label') {
return (levelData !== undefined) ? game.i18n.localize(levelData[property]) : "";
} else {
return (levelData !== undefined) ? levelData[property] : "";
}
});
// return pattern level information
Handlebars.registerHelper('patternLevel', function (property, level, options) {
if (level < 1 || level > 4)
return "";
let levelData = CONFIG.VERMINE.PatternLevels[level];
if (property == 'label') {
return (levelData !== undefined) ? game.i18n.localize(levelData[property]) : "";
} else {
return (levelData !== undefined) ? levelData[property] : "";
}
});
// return size level information
Handlebars.registerHelper('sizeLevel', function (property, level, options) {
if (level < 1 || level > 4)
return "";
let levelData = CONFIG.VERMINE.SizeLevels[level];
if (property == 'label') {
return (levelData !== undefined) ? game.i18n.localize(levelData[property]) : "";
} else {
return (levelData !== undefined) ? levelData[property] : "";
}
});
// return pack level information
Handlebars.registerHelper('packLevel', function (property, level, options) {
if (level < 0 || level > 3)
return "";
let levelData = CONFIG.VERMINE.PackLevels[level];
if (property == 'label') {
return (levelData !== undefined) ? game.i18n.localize(levelData[property]) : "";
} else {
return (levelData !== undefined) ? levelData[property] : "";
}
});
// return skill level information
Handlebars.registerHelper('skillLevel', function (property, level, options) {
if (level < 1 || level > 5)
if (level < 1 || level > 5)
return "";
let levelData = CONFIG.VERMINE.SkillLevels[level];
if (property == 'label'){
let levelData = CONFIG.VERMINE.SkillLevels[level];
if (property == 'label') {
return (levelData !== undefined) ? game.i18n.localize(levelData[property]) : "";
} else {
return (levelData !== undefined) ? levelData[property] : "";
}
});
// return diff level information
Handlebars.registerHelper('diffLevel', function (property, level, options) {
if (level < 1 || level > 5)
return "";
let levelData = CONFIG.VERMINE.DifficultyLevels[level];
if (property == 'label'){
return (levelData !== undefined) ? game.i18n.localize(levelData[property]) : "";
} else {
return (levelData !== undefined) ? levelData[property] : "";
}
});
// return diff level information
Handlebars.registerHelper('diffLevel', function (property, level, options) {
if (level < 1 || level > 5)
return "";
let levelData = CONFIG.VERMINE.DifficultyLevels[level];
if (property == 'label') {
return (levelData !== undefined) ? game.i18n.localize(levelData[property]) : "";
} else {
return (levelData !== undefined) ? levelData[property] : "";
}
// 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) {
if (isPlayer) return "player";
if (isNpc) return "npc";
});
Handlebars.registerHelper('range', 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) {
if (isPlayer) return "player";
if (isNpc) return "npc";
});
Handlebars.registerHelper('range', function () {
var args = Array.prototype.slice.call(arguments),
rangeArgs = args.slice(0, -1),
options = args[args.length - 1];
rangeArgs = args.slice(0, -1),
options = args[args.length - 1];
return range.apply(null, rangeArgs)
.map(function(num) { return options.fn(num); })
.join('');
.map(function (num) { return options.fn(num); })
.join('');
});
// return age type information
Handlebars.registerHelper('ife', function (arg1, arg2, options) {
return (arg1 == arg2) ? options.fn(this) : options.inverse(this);
});
Handlebars.registerHelper('ifgt', function (a, b, options) {
if (a > b) { return options.fn(this); }
return options.inverse(this);
});
Handlebars.registerHelper('iflt', function (a, b, options) {
if (a < b) { return options.fn(this); }
return options.inverse(this);
});
Handlebars.registerHelper('ifgteq', function (a, b, options) {
if (a >= b) { return options.fn(this); }
return options.inverse(this);
});
Handlebars.registerHelper('iflteq', function (a, b, options) {
if (a <= b) { return options.fn(this); }
return options.inverse(this);
});
Handlebars.registerHelper('repeat', function (times, start, block) {
var accum = '';
if (!start) { start = 0; }
for (var i = start; i < times + start; ++i) {
block.data.index = i;
block.data.first = i === start;
block.data.last = i === (times + start - 1);
accum += block.fn(this);
}
return accum;
});
// return age type information
Handlebars.registerHelper('ife', function(arg1, arg2, options) {
return (arg1 == arg2) ? options.fn(this) : options.inverse(this);
});
}