From 090aeab75f7385b5df1ec48b78b3b70465cab5b6 Mon Sep 17 00:00:00 2001 From: Gesina Schwalbe Date: Sat, 9 Jan 2021 14:09:21 +0100 Subject: [PATCH 01/36] added type definitions and translations for spells --- src/lang/en.json | 29 ++++++++++++++++++++++++- src/module/config.ts | 42 ++++++++++++++++++++++++++++++++++++ src/module/item/item-data.ts | 27 +++++++++++++++++++++++ src/template.json | 20 +++++++++++++++++ 4 files changed, 117 insertions(+), 1 deletion(-) diff --git a/src/lang/en.json b/src/lang/en.json index 4f79f7ef..c0235a56 100644 --- a/src/lang/en.json +++ b/src/lang/en.json @@ -36,6 +36,8 @@ "DS4.ItemTypeArmorPlural": "Armor", "DS4.ItemTypeShield": "Shield", "DS4.ItemTypeShieldPlural": "Shields", + "DS4.ItemTypeSpell": "Spell", + "DS4.ItemTypeSpellPlural": "Spells", "DS4.ItemTypeTrinket": "Trinket", "DS4.ItemTypeTrinketPlural": "Trinkets", "DS4.ItemTypeEquipment": "Equipment", @@ -72,6 +74,17 @@ "DS4.ArmorMaterialTypeChainAbbr": "Chain", "DS4.ArmorMaterialTypePlate": "Plate", "DS4.ArmorMaterialTypePlateAbbr": "Plate", + "DS4.SpellType": "Spell Type", + "DS4.SpellTypeSpellcasting": "Spellcasting", + "DS4.SpellTypeTargetedSpell": "Targeted Spell", + "DS4.SpellCategory": "Spell Category", + "DS4.SpellCategoryHealing": "Healing", + "DS4.SpellCategoryFire": "Fire", + "DS4.SpellCategoryIce": "Ice", + "DS4.SpellCategoryLight": "Light", + "DS4.SpellCategoryDarkness": "Darkness", + "DS4.SpellCategoryMindAffecting": "Mind Affecting", + "DS4.SpellCategoryElectricity": "Electricity", "DS4.AttributeBody": "Body", "DS4.AttributeMobility": "Mobility", "DS4.AttributeMind": "Mind", @@ -115,5 +128,19 @@ "DS4.ProfileSpecialCharacteristics": "Special Characteristics", "DS4.WarningManageActiveEffectOnOwnedItem": "Managing Active Effects within an Owned Item is not currently supported and will be added in a subsequent update.", "DS4.ErrorDiceCritOverlap": "There's an overlap between Fumbles and Coups", - "DS4.ErrorExplodingRecursionLimitExceeded": "Maximum recursion depth for exploding dice roll exceeded" + "DS4.ErrorExplodingRecursionLimitExceeded": "Maximum recursion depth for exploding dice roll exceeded", + "DS4.UnitRounds": "Rounds", + "DS4.UnitRoundsAbbr": "rnd", + "DS4.UnitMinutes": "Minutes", + "DS4.UnitMinutesAbbr": "min", + "DS4.UnitHours": "Hours", + "DS4.UnitHoursAbbr": "h", + "DS4.UnitDays": "Days", + "DS4.UnitDaysAbbr": "d", + "DS4.UnitMeters": "Meters", + "DS4.UnitMetersAbbr": "m", + "DS4.UnitKilometers": "Kilometers", + "DS4.UnitKilometersAbbr": "km", + "DS4.UnitCustom": "Custom", + "DS4.UnitCustomAbbr": "-" } diff --git a/src/module/config.ts b/src/module/config.ts index 03b2c9d5..88053370 100644 --- a/src/module/config.ts +++ b/src/module/config.ts @@ -46,6 +46,7 @@ export const DS4 = { weapon: "DS4.ItemTypeWeapon", armor: "DS4.ItemTypeArmor", shield: "DS4.ItemTypeShield", + spell: "DS4.ItemTypeSpell", trinket: "DS4.ItemTypeTrinket", equipment: "DS4.ItemTypeEquipment", talent: "DS4.ItemTypeTalent", @@ -96,6 +97,21 @@ export const DS4 = { plate: "DS4.ArmorMaterialTypePlateAbbr", }, + spellType: { + spellcasting: "DS4.SpellTypeSpellcasting", + targetedSpell: "DS4.SpellTypeTargetedSpell", + }, + + spellCategory: { + healing: "DS4.SpellCategoryHealing", + fire: "DS4.SpellCategoryFire", + ice: "DS4.SpellCategoryIce", + light: "DS4.SpellCategoryLight", + darkness: "DS4.SpellCategoryDarkness", + mindAffecting: "DS4.SpellCategoryMindAffecting", + electricity: "DS4.SpellCategoryElectricity", + }, + /** * Define the set of attributes a character has */ @@ -188,4 +204,30 @@ export const DS4 = { eyeColor: "String", specialCharacteristics: "String", }, + + /** + * Define translations for available units + */ + units: { + rounds: "DS4.UnitRounds", + minutes: "DS4.UnitMinutes", + hours: "DS4.UnitHours", + days: "DS4.UnitHours", + meter: "DS4.UnitMeters", + kilometer: "DS4.UnitKilometers", + custom: "DS4.UnitCustom", + }, + + /** + * Define abbreviations for available units + */ + unitsAbbr: { + rounds: "DS4.UnitRoundsAbbr", + minutes: "DS4.UnitMinutesAbbr", + hours: "DS4.UnitHoursAbbr", + days: "DS4.UnitHoursAbbr", + meter: "DS4.UnitMetersAbbr", + kilometer: "DS4.UnitKilometersAbbr", + custom: "DS4.UnitCustomAbbr", + }, }; diff --git a/src/module/item/item-data.ts b/src/module/item/item-data.ts index 23105eb6..e5be9081 100644 --- a/src/module/item/item-data.ts +++ b/src/module/item/item-data.ts @@ -4,6 +4,7 @@ export type DS4ItemDataType = | DS4Weapon | DS4Armor | DS4Shield + | DS4Spell | DS4Trinket | DS4Equipment | DS4Talent @@ -32,6 +33,25 @@ interface DS4TalentRank extends ModifiableData { max: number; } +interface DS4Spell extends DS4ItemBase, DS4ItemEquipable { + spellType: "spellcasting" | "targetedSpell"; + bonus: string; + spellCategory: + | "healing" + | "fire" + | "ice" + | "light" + | "darkness" + | "mindAffecting" + | "electricity" + | "none" + | "unset"; + maxDistance: UnitData; + effectRadius: UnitData; + duration: UnitData; + scrollPrice: number; +} + interface DS4Shield extends DS4ItemBase, DS4ItemPhysical, DS4ItemEquipable, DS4ItemProtective {} interface DS4Trinket extends DS4ItemBase, DS4ItemPhysical, DS4ItemEquipable {} interface DS4Equipment extends DS4ItemBase, DS4ItemPhysical {} @@ -62,3 +82,10 @@ interface DS4ItemEquipable { interface DS4ItemProtective { armorValue: number; } + +interface UnitData { + value: string; + unit: UnitType; +} +type TemporalUnit = "rounds" | "minutes" | "hours" | "days" | "custom"; +type DistanceUnit = "meter" | "kilometer" | "custom"; diff --git a/src/template.json b/src/template.json index eee8acee..17d2ceca 100644 --- a/src/template.json +++ b/src/template.json @@ -115,6 +115,7 @@ "weapon", "armor", "shield", + "spell", "trinket", "equipment", "talent", @@ -175,6 +176,25 @@ }, "alphabet": { "templates": ["base"] + }, + "spell": { + "templates": ["base", "equipable"], + "spellType": "spellcasting", + "bonus": "", + "spellCategory": "unset", + "maxDistance": { + "value": "", + "unit": "meter" + }, + "effectRadius": { + "value": "", + "unit": "meter" + }, + "duration": { + "value": "", + "unit": "custom" + }, + "scrollPrice": 0 } } } From 4b203375dd20a5065418eb1f0c69814b2192a23b Mon Sep 17 00:00:00 2001 From: Siegfried Krug Date: Sat, 9 Jan 2021 16:14:25 +0100 Subject: [PATCH 02/36] wip: create german translation --- src/lang/de.json | 119 +++++++++++++++++++++++++++++++++++++++++++++++ src/system.json | 5 ++ 2 files changed, 124 insertions(+) create mode 100644 src/lang/de.json diff --git a/src/lang/de.json b/src/lang/de.json new file mode 100644 index 00000000..553ef2bb --- /dev/null +++ b/src/lang/de.json @@ -0,0 +1,119 @@ +{ + "DS4.UserInteractionAddItem": "Neues Item", + "DS4.NotOwned": "Kein Eigentümer", + "DS4.HeadingDescription": "Beschreibung", + "DS4.HeadingDetails": "Details", + "DS4.HeadingEffects": "Effekte", + "DS4.HeadingInventory": "Inventar", + "DS4.HeadingProfile": "Profil", + "DS4.HeadingTalents": "Talente & Fähigkeiten", + "DS4.AttackType": "Angriffs Typ", + "DS4.AttackTypeAbbr": "AT", + "DS4.WeaponBonus": "Waffen Bonus", + "DS4.WeaponBonusAbbr": "WB", + "DS4.OpponentDefense": "Gegener Abwehr", + "DS4.OpponentDefenseAbbr": "OD", + "DS4.AttackTypeMelee": "Nahkampf", + "DS4.AttackTypeRanged": "Fernkampf", + "DS4.AttackTypeMeleeRanged": "Nah- / Fernkampf", + "DS4.Quantity": "Menge", + "DS4.PriceGold": "Preis (Gold)", + "DS4.StorageLocation": "Aufbewahrungsort", + "DS4.ItemEquipped": "Ausgerüstet", + "DS4.ItemOwner": "Eigentümer", + "DS4.ItemAvailability": "Verfügbarkeit", + "DS4.ItemAvailabilityHamlet": "Weiler", + "DS4.ItemAvailabilityVilage": "Dorf", + "DS4.ItemAvailabilityCity": "Stadt", + "DS4.ItemAvailabilityElves": "Elfen", + "DS4.ItemAvailabilityDwarves": "Zwerge", + "DS4.ItemAvailabilityUnset": "Ungesetzt", + "DS4.ItemAvailabilityNowhere": "Nirgendwo", + "DS4.ItemName": "Name", + "DS4.ItemTypeWeapon": "Waffe", + "DS4.ItemTypeWeaponPlural": "Waffen", + "DS4.ItemTypeArmor": "Panzerung", + "DS4.ItemTypeArmorPlural": "Panzerungen", + "DS4.ItemTypeShield": "Schild", + "DS4.ItemTypeShieldPlural": "Schilde", + "DS4.ItemTypeTrinket": "Schmuckstück", + "DS4.ItemTypeTrinketPlural": "Schmuckstücke", + "DS4.ItemTypeEquipment": "Ausrüstung", + "DS4.ItemTypeEquipmentPlural": "Ausrüstung", + "DS4.ItemTypeTalent": "Talent", + "DS4.ItemTypeTalentPlural": "Talente", + "DS4.ItemTypeRacialAbility": "Rassen Fähigkeit", + "DS4.ItemTypeRacialAbilityPlural": "Rassen Fähigkeiten", + "DS4.ItemTypeLanguage": "Sprache", + "DS4.ItemTypeLanguagePlural": "Sprachen", + "DS4.ItemTypeAlphabet": "Schrift", + "DS4.ItemTypeAlphabetPlural": "Schriften", + "DS4.ArmorType": "Panzerungstyp", + "DS4.ArmorTypeAbbr": "AT", + "DS4.ArmorMaterialType": "Material Type", + "DS4.ArmorMaterialTypeAbbr": "Mat.", + "DS4.ArmorValue": "Panzerungs Wert", + "DS4.ArmorValueAbbr": "AV", + "DS4.ArmorTypeBody": "Körper", + "DS4.ArmorTypeBodyAbbr": "Körper", + "DS4.ArmorTypeHelmet": "Helm", + "DS4.ArmorTypeHelmetAbbr": "Helm", + "DS4.ArmorTypeVambrace": "Armschiene", + "DS4.ArmorTypeVambraceAbbr": "Vambr", + "DS4.ArmorTypeGreaves": "Beinschienen", + "DS4.ArmorTypeGreavesAbbr": "Greav", + "DS4.ArmorTypeVambraceGreaves": "Armschienen + Beinschienen", + "DS4.ArmorTypeVambraceGreavesAbbr": "A+B", + "DS4.ArmorMaterialTypeCloth": "Kleidung", + "DS4.ArmorMaterialTypeClothAbbr": "Kleidung", + "DS4.ArmorMaterialTypeLeather": "Leder", + "DS4.ArmorMaterialTypeLeatherAbbr": "Leder", + "DS4.ArmorMaterialTypeChain": "Ketten", + "DS4.ArmorMaterialTypeChainAbbr": "Ketten", + "DS4.ArmorMaterialTypePlate": "Platten", + "DS4.ArmorMaterialTypePlateAbbr": "Platten", + "DS4.AttributeBody": "Körper", + "DS4.AttributeMobility": "Mobilität", + "DS4.AttributeMind": "Geist", + "DS4.TraitStrength": "Stärke", + "DS4.TraitConstitution": "Ausdauer", + "DS4.TraitAgility": "Agilität", + "DS4.TraitDexterity": "Geschick", + "DS4.TraitIntellect": "Intellekt", + "DS4.TraitAura": "Aura", + "DS4.CombatValuesHitPoints": "Hit Points", + "DS4.CombatValuesDefense": "Verteitigung", + "DS4.CombatValuesInitiative": "Initiative", + "DS4.CombatValuesMovement": "Bewegung", + "DS4.CombatValuesMeleeAttack": "Nahkampfangriff", + "DS4.CombatValuesRangedAttack": "Fernkampfangriff", + "DS4.CombatValuesSpellcasting": "Zauber", + "DS4.CombatValuesTargetedSpellcasting": "Zielzauber", + "DS4.BaseInfoRace": "Volk", + "DS4.BaseInfoClass": "Klasse", + "DS4.BaseInfoHeroClass": "Helden Klasse", + "DS4.BaseInfoCulture": "Kultur", + "DS4.ProgressionLevel": "Level", + "DS4.ProgressionExperiencePoints": "Erfahrungspunkte", + "DS4.ProgressionTalentPoints": "Talentpunkte", + "DS4.ProgressionProgressPoints": "Lernpunkte", + "DS4.TalentRank": "Rang", + "DS4.TalentRankBase": "Erworbener Rang", + "DS4.TalentRankMax": "Maximaler Rang", + "DS4.TalentRankMod": "Zusätzlicher Rang", + "DS4.TalentRankTotal": "Totaler Rang", + "DS4.LanguageLanguages": "Sprachen", + "DS4.LanguageAlphabets": "Schriften", + "DS4.ProfileGender": "Geschlecht", + "DS4.ProfileBirthday": "Geburtstag", + "DS4.ProfileBirthplace": "Geburtsort", + "DS4.ProfileAge": "Alter", + "DS4.ProfileHeight": "Größe", + "DS4.ProfilHairColor": "Haar Farbe", + "DS4.ProfileWeight": "Gewicht", + "DS4.ProfileEyeColor": "Augen Farbe", + "DS4.ProfileSpecialCharacteristics": "Special Characteristics", + "DS4.WarningManageActiveEffectOnOwnedItem": "Managing Active Effects within an Owned Item is not currently supported and will be added in a subsequent update.", + "DS4.ErrorDiceCritOverlap": "There's an overlap between Fumbles and Coups", + "DS4.ErrorExplodingRecursionLimitExceeded": "Maximum recursion depth for exploding dice roll exceeded" +} diff --git a/src/system.json b/src/system.json index a64a1a8c..58d6d763 100644 --- a/src/system.json +++ b/src/system.json @@ -16,6 +16,11 @@ "lang": "en", "name": "English", "path": "lang/en.json" + }, + { + "lang": "de", + "name": "Deutsch", + "path": "lang/de.json" } ], "gridDistance": 1, From 33a11e16ac5471d152ed43ca68f4abeaef9dfbaf Mon Sep 17 00:00:00 2001 From: Johannes Loher Date: Sat, 9 Jan 2021 18:08:24 +0100 Subject: [PATCH 03/36] add proper gulp task to update version --- gulpfile.js | 118 ++++++--------------------------------------------- package.json | 2 +- 2 files changed, 14 insertions(+), 106 deletions(-) diff --git a/gulpfile.js b/gulpfile.js index dc62e8b7..295dc429 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -2,14 +2,11 @@ const gulp = require("gulp"); const fs = require("fs-extra"); const path = require("path"); const chalk = require("chalk"); -const archiver = require("archiver"); const stringify = require("json-stringify-pretty-compact"); const typescript = require("typescript"); const ts = require("gulp-typescript"); -const less = require("gulp-less"); const sass = require("gulp-sass"); -const git = require("gulp-git"); const argv = require("yargs").argv; @@ -127,13 +124,6 @@ function buildTS() { return gulp.src("src/**/*.ts").pipe(tsConfig()).pipe(gulp.dest("dist")); } -/** - * Build Less - */ -function buildLess() { - return gulp.src("src/*.less").pipe(less()).pipe(gulp.dest("dist")); -} - /** * Build SASS */ @@ -163,7 +153,6 @@ async function copyFiles() { */ function buildWatch() { gulp.watch("src/**/*.ts", { ignoreInitial: false }, buildTS); - gulp.watch("src/**/*.less", { ignoreInitial: false }, buildLess); gulp.watch("src/**/*.scss", { ignoreInitial: false }, buildSASS); gulp.watch(["src/fonts", "src/lang", "src/templates", "src/*.json"], { ignoreInitial: false }, copyFiles); } @@ -194,8 +183,8 @@ async function clean() { ); } - // If the project uses Less or SASS - if (fs.existsSync(path.join("src", `${name}.less`)) || fs.existsSync(path.join("src", `${name}.scss`))) { + // If the project uses SASS + if (fs.existsSync(path.join("src", `${name}.scss`))) { files.push("fonts", `${name}.css`); } @@ -268,69 +257,14 @@ async function linkUserData() { /* PACKAGE */ /*********************/ -/** - * Package build - */ -async function packageBuild() { - const manifest = getManifest(); - - return new Promise((resolve, reject) => { - try { - // Remove the package dir without doing anything else - if (argv.clean || argv.c) { - console.log(chalk.yellow("Removing all packaged files")); - fs.removeSync("package"); - return; - } - - // Ensure there is a directory to hold all the packaged versions - fs.ensureDirSync("package"); - - // Initialize the zip file - const zipName = `${manifest.file.name}-v${manifest.file.version}.zip`; - const zipFile = fs.createWriteStream(path.join("package", zipName)); - const zip = archiver("zip", { zlib: { level: 9 } }); - - zipFile.on("close", () => { - console.log(chalk.green(zip.pointer() + " total bytes")); - console.log(chalk.green(`Zip file ${zipName} has been written`)); - return resolve(); - }); - - zip.on("error", (err) => { - throw err; - }); - - zip.pipe(zipFile); - - // Add the directory with the final code - zip.directory("dist/", manifest.file.name); - - zip.finalize(); - } catch (err) { - return reject(err); - } - }); -} - -/*********************/ -/* PACKAGE */ -/*********************/ - /** * Update version and URLs in the manifest JSON */ function updateManifest(cb) { const packageJson = fs.readJSONSync("package.json"); - const config = getConfig(), - manifest = getManifest(), - rawURL = config.rawURL, - repoURL = config.repository, - manifestRoot = manifest.root; + const manifest = getManifest(); - if (!config) cb(Error(chalk.red("foundryconfig.json not found"))); if (!manifest) cb(Error(chalk.red("Manifest JSON not found"))); - if (!rawURL || !repoURL) cb(Error(chalk.red("Repository URLs not configured in foundryconfig.json"))); try { const version = argv.update || argv.u; @@ -374,20 +308,18 @@ function updateManifest(cb) { packageJson.version = targetVersion; manifest.file.version = targetVersion; - /* Update URLs */ + /* Update URL */ + const result = `https://git.f3l.de/dungeonslayers/ds4/-/jobs/artifacts/${targetVersion}/download?job=build`; - const result = `${rawURL}/v${manifest.file.version}/package/${manifest.file.name}-v${manifest.file.version}.zip`; - - manifest.file.url = repoURL; - manifest.file.manifest = `${rawURL}/master/${manifestRoot}/${manifest.name}`; manifest.file.download = result; - const prettyProjectJson = stringify(manifest.file, { - maxLength: 35, - indent: "\t", - }); + const prettyProjectJson = + stringify(manifest.file, { + maxLength: 40, + indent: 4, + }) + "\n"; - fs.writeJSONSync("package.json", packageJson, { spaces: "\t" }); + fs.writeJSONSync("package.json", packageJson, { spaces: 4 }); fs.writeFileSync(path.join(manifest.root, manifest.name), prettyProjectJson, "utf8"); return cb(); @@ -396,34 +328,10 @@ function updateManifest(cb) { } } -function gitAdd() { - return gulp.src("package").pipe(git.add({ args: "--no-all" })); -} - -function gitCommit() { - return gulp.src("./*").pipe( - git.commit(`v${getManifest().file.version}`, { - args: "-a", - disableAppendPaths: true, - }), - ); -} - -function gitTag() { - const manifest = getManifest(); - return git.tag(`v${manifest.file.version}`, `Updated to ${manifest.file.version}`, (err) => { - if (err) throw err; - }); -} - -const execGit = gulp.series(gitAdd, gitCommit, gitTag); - -const execBuild = gulp.parallel(buildTS, buildLess, buildSASS, copyFiles); +const execBuild = gulp.parallel(buildTS, buildSASS, copyFiles); exports.build = gulp.series(clean, execBuild); exports.watch = buildWatch; exports.clean = clean; exports.link = linkUserData; -exports.package = packageBuild; -exports.update = updateManifest; -exports.publish = gulp.series(clean, updateManifest, execBuild, packageBuild, execGit); +exports.updateManifest = updateManifest; diff --git a/package.json b/package.json index 9ebc7bd8..99a5f5d8 100644 --- a/package.json +++ b/package.json @@ -27,12 +27,12 @@ } ], "scripts": { - "package": "gulp package", "build": "gulp build", "build:watch": "gulp watch", "link": "gulp link", "clean": "gulp clean && gulp link --clean", "update": "npm install --save-dev git+https://git.f3l.de/dungeonslayers/foundry-pc-types.git#f3l-fixes", + "updateManifest": "gulp updateManifest", "lint": "eslint 'src/**/*.ts' --cache", "lint:fix": "eslint 'src/**/*.ts' --cache --fix", "test": "ts-node ./node_modules/jasmine/bin/jasmine", From 26ee1213a93790a0bb5d2d72b192c959f3810393 Mon Sep 17 00:00:00 2001 From: Johannes Loher Date: Sat, 9 Jan 2021 18:20:23 +0100 Subject: [PATCH 04/36] add release-patch job --- .gitlab-ci.yml | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 18f8791f..5891a5d8 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -5,6 +5,7 @@ stages: - test - build - deploy + - release cache: &global_cache key: @@ -66,3 +67,33 @@ deploy: only: - master resource_group: production + +release-patch: + stage: release + before_script: + - apt update + - apt install jq + variables: + RELEASE_TYPE: patch + cache: + <<: *global_cache + script: | + REPOSITORY_URL=$(echo "${CI_REPOSITORY_URL}" | sed -e "s|gitlab-ci-token:.*@|${RELEASE_TOKEN}:${RELEASE_TOKEN_SECRET}@|g") + git remote set-url origin $REPOSITORY_URL + git config user.name $GITLAB_USER_LOGIN + git config user.email $GITLAB_USER_EMAIL + git branch -D ci-processing || true + git checkout -b ci-processing + npm run updateManifest --update=${RELEASE_TYPE} + npm install + RELEASE_VERSION=$(jq -r '.version' < package.json) + git add package.json package-lock.json src/system.json + git commit -m "release version ${VERSION}" + git tag -f latest + git tag ${RELEASE_VERSION} + # git push origin ci-processing:${CI_BUILD_REF_NAME} + # git push latest -f + # git push ${RELEASE_VERSION} + # only: + # - master + when: manual From a3032968281cfbd95bf3f76028e49c69d0aed583 Mon Sep 17 00:00:00 2001 From: Gesina Schwalbe Date: Sat, 9 Jan 2021 18:23:25 +0100 Subject: [PATCH 05/36] description and body templ accept partial-block --- src/templates/item/alphabet-sheet.hbs | 2 +- src/templates/item/armor-sheet.hbs | 4 +-- src/templates/item/equipment-sheet.hbs | 2 +- src/templates/item/language-sheet.hbs | 2 +- src/templates/item/partials/body.hbs | 4 ++- src/templates/item/partials/description.hbs | 6 +++++ src/templates/item/partials/details.hbs | 27 +++++++++++---------- src/templates/item/racialAbility-sheet.hbs | 2 +- src/templates/item/shield-sheet.hbs | 2 +- src/templates/item/talent-sheet.hbs | 2 +- src/templates/item/trinket-sheet.hbs | 2 +- src/templates/item/weapon-sheet.hbs | 2 +- 12 files changed, 33 insertions(+), 24 deletions(-) diff --git a/src/templates/item/alphabet-sheet.hbs b/src/templates/item/alphabet-sheet.hbs index cfd63f9e..5aabb9aa 100644 --- a/src/templates/item/alphabet-sheet.hbs +++ b/src/templates/item/alphabet-sheet.hbs @@ -3,6 +3,6 @@ {{/systems/ds4/templates/item/partials/sheet-header.hbs}} {{!-- Common Item body --}} - {{> systems/ds4/templates/item/partials/body.hbs}} + {{#> systems/ds4/templates/item/partials/body.hbs}}{{/systems/ds4/templates/item/partials/body.hbs}} \ No newline at end of file diff --git a/src/templates/item/armor-sheet.hbs b/src/templates/item/armor-sheet.hbs index 1a2a14bf..5fd59feb 100644 --- a/src/templates/item/armor-sheet.hbs +++ b/src/templates/item/armor-sheet.hbs @@ -12,7 +12,7 @@
- + -
-
- - -
+ + +
+ + +
+ \ No newline at end of file diff --git a/src/templates/item/racialAbility-sheet.hbs b/src/templates/item/racialAbility-sheet.hbs index 40771481..e69b5fc5 100644 --- a/src/templates/item/racialAbility-sheet.hbs +++ b/src/templates/item/racialAbility-sheet.hbs @@ -3,6 +3,6 @@ {{/systems/ds4/templates/item/partials/sheet-header.hbs}} {{!-- Common Item body --}} - {{> systems/ds4/templates/item/partials/body.hbs}} + {{#> systems/ds4/templates/item/partials/body.hbs}}{{/systems/ds4/templates/item/partials/body.hbs}} diff --git a/src/templates/item/shield-sheet.hbs b/src/templates/item/shield-sheet.hbs index 1c1092c3..4ef9c9f9 100644 --- a/src/templates/item/shield-sheet.hbs +++ b/src/templates/item/shield-sheet.hbs @@ -10,5 +10,5 @@ {{/systems/ds4/templates/item/partials/sheet-header.hbs}} {{!-- Common Item body --}} - {{> systems/ds4/templates/item/partials/body.hbs}} + {{#> systems/ds4/templates/item/partials/body.hbs}}{{/systems/ds4/templates/item/partials/body.hbs}} \ No newline at end of file diff --git a/src/templates/item/talent-sheet.hbs b/src/templates/item/talent-sheet.hbs index 1611beea..22257d81 100644 --- a/src/templates/item/talent-sheet.hbs +++ b/src/templates/item/talent-sheet.hbs @@ -27,6 +27,6 @@ {{/systems/ds4/templates/item/partials/sheet-header.hbs}} {{!-- Common Item body --}} - {{> systems/ds4/templates/item/partials/body.hbs}} + {{#> systems/ds4/templates/item/partials/body.hbs}}{{/systems/ds4/templates/item/partials/body.hbs}} diff --git a/src/templates/item/trinket-sheet.hbs b/src/templates/item/trinket-sheet.hbs index 3fa5d4a9..bbd66400 100644 --- a/src/templates/item/trinket-sheet.hbs +++ b/src/templates/item/trinket-sheet.hbs @@ -3,5 +3,5 @@ {{/systems/ds4/templates/item/partials/sheet-header.hbs}} {{!-- Common Item body --}} - {{> systems/ds4/templates/item/partials/body.hbs}} + {{#> systems/ds4/templates/item/partials/body.hbs}}{{/systems/ds4/templates/item/partials/body.hbs}} \ No newline at end of file diff --git a/src/templates/item/weapon-sheet.hbs b/src/templates/item/weapon-sheet.hbs index 69145376..b92bf97f 100644 --- a/src/templates/item/weapon-sheet.hbs +++ b/src/templates/item/weapon-sheet.hbs @@ -25,5 +25,5 @@ {{/systems/ds4/templates/item/partials/sheet-header.hbs}} {{!-- Common Item body --}} - {{> systems/ds4/templates/item/partials/body.hbs}} + {{#> systems/ds4/templates/item/partials/body.hbs}}{{/systems/ds4/templates/item/partials/body.hbs}} \ No newline at end of file From 0400db29640daa7fd79961277c981cd775e46ee5 Mon Sep 17 00:00:00 2001 From: Johannes Loher Date: Sat, 9 Jan 2021 18:23:56 +0100 Subject: [PATCH 06/36] fix jq installation --- .gitlab-ci.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 5891a5d8..bd4b04f7 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -72,7 +72,7 @@ release-patch: stage: release before_script: - apt update - - apt install jq + - apt install --yes jq variables: RELEASE_TYPE: patch cache: @@ -92,8 +92,8 @@ release-patch: git tag -f latest git tag ${RELEASE_VERSION} # git push origin ci-processing:${CI_BUILD_REF_NAME} - # git push latest -f - # git push ${RELEASE_VERSION} + # git push origin latest -f + # git push origin ${RELEASE_VERSION} # only: # - master when: manual From 4de9d42ee38dc13efd987f23dfa57bb3227c921a Mon Sep 17 00:00:00 2001 From: Gesina Schwalbe Date: Sat, 9 Jan 2021 18:25:30 +0100 Subject: [PATCH 07/36] added spell cooldownDuration and more localization --- src/lang/en.json | 12 +++++++++--- src/module/config.ts | 35 ++++++++++++++++++++++++----------- src/module/ds4.ts | 6 ++++++ src/module/item/item-data.ts | 1 + src/template.json | 4 ++++ 5 files changed, 44 insertions(+), 14 deletions(-) diff --git a/src/lang/en.json b/src/lang/en.json index c0235a56..8e047af4 100644 --- a/src/lang/en.json +++ b/src/lang/en.json @@ -77,7 +77,7 @@ "DS4.SpellType": "Spell Type", "DS4.SpellTypeSpellcasting": "Spellcasting", "DS4.SpellTypeTargetedSpell": "Targeted Spell", - "DS4.SpellCategory": "Spell Category", + "DS4.SpellCategory": "Category", "DS4.SpellCategoryHealing": "Healing", "DS4.SpellCategoryFire": "Fire", "DS4.SpellCategoryIce": "Ice", @@ -85,6 +85,12 @@ "DS4.SpellCategoryDarkness": "Darkness", "DS4.SpellCategoryMindAffecting": "Mind Affecting", "DS4.SpellCategoryElectricity": "Electricity", + "DS4.SpellBonus": "Spell Bonus", + "DS4.SpellMaxDistance": "Range", + "DS4.SpellEffectRadius": "Radius", + "DS4.SpellDuration": "Duration", + "DS4.SpellCooldownDuration": "Cooldown", + "DS4.SpellScrollPriceGold": "Scroll Price (Gold)", "DS4.AttributeBody": "Body", "DS4.AttributeMobility": "Mobility", "DS4.AttributeMind": "Mind", @@ -100,8 +106,8 @@ "DS4.CombatValuesMovement": "Movement", "DS4.CombatValuesMeleeAttack": "Melee Attack", "DS4.CombatValuesRangedAttack": "Ranged Attack", - "DS4.CombatValuesSpellcasting": "Spellcasting", - "DS4.CombatValuesTargetedSpellcasting": "Targeted Spellcasting", + "DS4.CombatValuesSpellcasting": "Normal", + "DS4.CombatValuesTargetedSpellcasting": "Targeted", "DS4.BaseInfoRace": "Race", "DS4.BaseInfoClass": "Class", "DS4.BaseInfoHeroClass": "Hero Class", diff --git a/src/module/config.ts b/src/module/config.ts index 88053370..5ce89295 100644 --- a/src/module/config.ts +++ b/src/module/config.ts @@ -97,12 +97,12 @@ export const DS4 = { plate: "DS4.ArmorMaterialTypePlateAbbr", }, - spellType: { + spellTypes: { spellcasting: "DS4.SpellTypeSpellcasting", targetedSpell: "DS4.SpellTypeTargetedSpell", }, - spellCategory: { + spellCategories: { healing: "DS4.SpellCategoryHealing", fire: "DS4.SpellCategoryFire", ice: "DS4.SpellCategoryIce", @@ -206,28 +206,41 @@ export const DS4 = { }, /** - * Define translations for available units + * Define translations for available distance units */ - units: { + distanceUnits: { + meter: "DS4.UnitMeters", + kilometer: "DS4.UnitKilometers", + custom: "DS4.UnitCustom", + }, + /** + * Define abbreviations for available distance units + */ + distanceUnitsAbbr: { + meter: "DS4.UnitMetersAbbr", + kilometer: "DS4.UnitKilometersAbbr", + custom: "DS4.UnitCustomAbbr", + }, + + /** + * Define translations for available distance units + */ + temporalUnits: { rounds: "DS4.UnitRounds", minutes: "DS4.UnitMinutes", hours: "DS4.UnitHours", - days: "DS4.UnitHours", - meter: "DS4.UnitMeters", - kilometer: "DS4.UnitKilometers", + days: "DS4.UnitDays", custom: "DS4.UnitCustom", }, /** * Define abbreviations for available units */ - unitsAbbr: { + temporalUnitsAbbr: { rounds: "DS4.UnitRoundsAbbr", minutes: "DS4.UnitMinutesAbbr", hours: "DS4.UnitHoursAbbr", - days: "DS4.UnitHoursAbbr", - meter: "DS4.UnitMetersAbbr", - kilometer: "DS4.UnitKilometersAbbr", + days: "DS4.UnitDaysAbbr", custom: "DS4.UnitCustomAbbr", }, }; diff --git a/src/module/ds4.ts b/src/module/ds4.ts index a9d46ac2..738912f4 100644 --- a/src/module/ds4.ts +++ b/src/module/ds4.ts @@ -76,6 +76,8 @@ Hooks.once("setup", function () { "armorMaterialTypes", "armorMaterialTypesAbbr", "armorMaterialTypes", + "spellTypes", + "spellCategories", "attributes", "traits", "combatValues", @@ -83,6 +85,10 @@ Hooks.once("setup", function () { "progression", "language", "profile", + "temporalUnits", + "temporalUnitsAbbr", + "distanceUnits", + "distanceUnitsAbbr", ]; // Exclude some from sorting where the default order matters diff --git a/src/module/item/item-data.ts b/src/module/item/item-data.ts index e5be9081..aa779163 100644 --- a/src/module/item/item-data.ts +++ b/src/module/item/item-data.ts @@ -49,6 +49,7 @@ interface DS4Spell extends DS4ItemBase, DS4ItemEquipable { maxDistance: UnitData; effectRadius: UnitData; duration: UnitData; + cooldownDuration: UnitData; scrollPrice: number; } diff --git a/src/template.json b/src/template.json index 17d2ceca..0d723909 100644 --- a/src/template.json +++ b/src/template.json @@ -194,6 +194,10 @@ "value": "", "unit": "custom" }, + "cooldownDuration": { + "value": "", + "unit": "custom" + }, "scrollPrice": 0 } } From 75e21fcf5f8f202104cacaf77ce3f4fead9b53c1 Mon Sep 17 00:00:00 2001 From: Johannes Loher Date: Sat, 9 Jan 2021 18:25:57 +0100 Subject: [PATCH 08/36] fix npm run updateManifest --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index bd4b04f7..a418d36c 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -84,7 +84,7 @@ release-patch: git config user.email $GITLAB_USER_EMAIL git branch -D ci-processing || true git checkout -b ci-processing - npm run updateManifest --update=${RELEASE_TYPE} + npm run updateManifest -- --update=${RELEASE_TYPE} npm install RELEASE_VERSION=$(jq -r '.version' < package.json) git add package.json package-lock.json src/system.json From 7d04ad2309b8793e2f0e8aca4131a8bbdfc3c251 Mon Sep 17 00:00:00 2001 From: Gesina Schwalbe Date: Sat, 9 Jan 2021 18:26:17 +0100 Subject: [PATCH 09/36] added spell sheet; reverted side-prop style change --- src/scss/components/_description.scss | 14 +++++- src/templates/item/spell-sheet.hbs | 72 +++++++++++++++++++++++++++ 2 files changed, 85 insertions(+), 1 deletion(-) create mode 100644 src/templates/item/spell-sheet.hbs diff --git a/src/scss/components/_description.scss b/src/scss/components/_description.scss index cc4c1322..767fb516 100644 --- a/src/scss/components/_description.scss +++ b/src/scss/components/_description.scss @@ -9,12 +9,13 @@ .side-property { margin: 2px 0; display: grid; - grid-template-columns: minmax(30%, auto) auto; + grid-template-columns: 40% auto; justify-content: left; label { line-height: $default-input-height; font-weight: bold; + padding-right: 3pt; } input, @@ -30,6 +31,17 @@ height: 100%; margin: 0px; } + + .unit-data-pair { + display: flex; + flex-direction: row; + select { + width: 4em; + } + input { + max-width: 7em; + } + } } } diff --git a/src/templates/item/spell-sheet.hbs b/src/templates/item/spell-sheet.hbs new file mode 100644 index 00000000..4dd50f63 --- /dev/null +++ b/src/templates/item/spell-sheet.hbs @@ -0,0 +1,72 @@ +{{!-- ======================================================================== --}} +{{!-- INLINE PARTIAL DEFINITIONS --}} +{{!-- ======================================================================== --}} + + +{{#*inline "unitDatum" }} +
+ +
+ + +
+
+{{/inline}} + + +{{!-- ======================================================================== --}} + + +
+ {{#> systems/ds4/templates/item/partials/sheet-header.hbs}} +
+
+ + +
+
+ + +
+
+ {{/systems/ds4/templates/item/partials/sheet-header.hbs}} + + {{!-- Common Item body --}} + {{#> systems/ds4/templates/item/partials/body.hbs}} +
+ + +
+ {{> unitDatum data=data property='maxDistance' localizeString='DS4.SpellMaxDistance' unitType='distance' }} + {{> unitDatum data=data property='effectRadius' localizeString='DS4.SpellEffectRadius' unitType='distance' }} + {{> unitDatum data=data property='duration' localizeString='DS4.SpellDuration' unitType='temporal' }} + {{> unitDatum data=data property='cooldownDurationj' localizeString='DS4.SpellCooldownDuration' unitType='temporal' }} +
+ + +
+ {{/systems/ds4/templates/item/partials/body.hbs}} + +
From 9303dcf1f2bf94a581f78445c4b94ba40ce00909 Mon Sep 17 00:00:00 2001 From: Johannes Loher Date: Sat, 9 Jan 2021 18:29:30 +0100 Subject: [PATCH 10/36] show git diff --- .gitlab-ci.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index a418d36c..41075096 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -88,9 +88,10 @@ release-patch: npm install RELEASE_VERSION=$(jq -r '.version' < package.json) git add package.json package-lock.json src/system.json + git diff git commit -m "release version ${VERSION}" git tag -f latest - git tag ${RELEASE_VERSION} + git tag -f ${RELEASE_VERSION} # git push origin ci-processing:${CI_BUILD_REF_NAME} # git push origin latest -f # git push origin ${RELEASE_VERSION} From f5d52825e8cc1ac8a2eae7389cb1f806eefbd9ee Mon Sep 17 00:00:00 2001 From: Johannes Loher Date: Sat, 9 Jan 2021 18:34:30 +0100 Subject: [PATCH 11/36] actually show diff --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 41075096..ad898eb5 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -88,7 +88,7 @@ release-patch: npm install RELEASE_VERSION=$(jq -r '.version' < package.json) git add package.json package-lock.json src/system.json - git diff + git --no-pager diff git commit -m "release version ${VERSION}" git tag -f latest git tag -f ${RELEASE_VERSION} From e99906a18a6200cf5bddf9b47db25fc38fca0f1c Mon Sep 17 00:00:00 2001 From: Johannes Loher Date: Sat, 9 Jan 2021 18:40:52 +0100 Subject: [PATCH 12/36] update package-lock.json in gulp task --- .gitlab-ci.yml | 1 - gulpfile.js | 3 +++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ad898eb5..1b13b711 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -85,7 +85,6 @@ release-patch: git branch -D ci-processing || true git checkout -b ci-processing npm run updateManifest -- --update=${RELEASE_TYPE} - npm install RELEASE_VERSION=$(jq -r '.version' < package.json) git add package.json package-lock.json src/system.json git --no-pager diff diff --git a/gulpfile.js b/gulpfile.js index 295dc429..1cf31998 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -262,6 +262,7 @@ async function linkUserData() { */ function updateManifest(cb) { const packageJson = fs.readJSONSync("package.json"); + const packageLockJson = fs.readJSONSync("package-lock.json"); const manifest = getManifest(); if (!manifest) cb(Error(chalk.red("Manifest JSON not found"))); @@ -306,6 +307,7 @@ function updateManifest(cb) { console.log(`Updating version number to '${targetVersion}'`); packageJson.version = targetVersion; + packageLockJson.version = targetVersion; manifest.file.version = targetVersion; /* Update URL */ @@ -320,6 +322,7 @@ function updateManifest(cb) { }) + "\n"; fs.writeJSONSync("package.json", packageJson, { spaces: 4 }); + fs.writeJSONSync("package-lock.json", packageLockJson, { spaces: 4 }); fs.writeFileSync(path.join(manifest.root, manifest.name), prettyProjectJson, "utf8"); return cb(); From 8301fb17fb8dc8160bfcad464a1c53d73f1df961 Mon Sep 17 00:00:00 2001 From: Johannes Loher Date: Sat, 9 Jan 2021 18:47:20 +0100 Subject: [PATCH 13/36] add minor and major release jobs --- .gitlab-ci.yml | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 1b13b711..0cd248e5 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -68,13 +68,11 @@ deploy: - master resource_group: production -release-patch: +.release-template: &release-template stage: release before_script: - apt update - apt install --yes jq - variables: - RELEASE_TYPE: patch cache: <<: *global_cache script: | @@ -88,7 +86,7 @@ release-patch: RELEASE_VERSION=$(jq -r '.version' < package.json) git add package.json package-lock.json src/system.json git --no-pager diff - git commit -m "release version ${VERSION}" + git commit -m "release version ${RELEASE_VERSION}" git tag -f latest git tag -f ${RELEASE_VERSION} # git push origin ci-processing:${CI_BUILD_REF_NAME} @@ -97,3 +95,18 @@ release-patch: # only: # - master when: manual + +release-patch: + variables: + RELEASE_TYPE: patch + <<: *release-template + +release-minor: + variables: + RELEASE_TYPE: patch + <<: *release-template + +release-major: + variables: + RELEASE_TYPE: patch + <<: *release-template From e2d198134ed67c35216b77749062ac338f5171eb Mon Sep 17 00:00:00 2001 From: Johannes Loher Date: Sat, 9 Jan 2021 18:49:05 +0100 Subject: [PATCH 14/36] enable push --- .gitlab-ci.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 0cd248e5..8288d410 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -89,9 +89,9 @@ deploy: git commit -m "release version ${RELEASE_VERSION}" git tag -f latest git tag -f ${RELEASE_VERSION} - # git push origin ci-processing:${CI_BUILD_REF_NAME} - # git push origin latest -f - # git push origin ${RELEASE_VERSION} + git push origin ci-processing:${CI_BUILD_REF_NAME} + git push origin latest -f + git push origin ${RELEASE_VERSION} # only: # - master when: manual From e735ecee09b2555240359732773cbdbbf355e82f Mon Sep 17 00:00:00 2001 From: Johannes Loher Date: Sat, 9 Jan 2021 18:55:53 +0100 Subject: [PATCH 15/36] actually release minor/major version when attemtpting to do so --- .gitlab-ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 8288d410..cdf38666 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -103,10 +103,10 @@ release-patch: release-minor: variables: - RELEASE_TYPE: patch + RELEASE_TYPE: minor <<: *release-template release-major: variables: - RELEASE_TYPE: patch + RELEASE_TYPE: major <<: *release-template From 8856c30165ed6e5126f57d54a84ccf8fe6644b85 Mon Sep 17 00:00:00 2001 From: Johannes Loher Date: Sat, 9 Jan 2021 19:01:22 +0100 Subject: [PATCH 16/36] move technical stuff to before_script --- .gitlab-ci.yml | 12 ++++++------ src/system.json | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index cdf38666..0d85bab0 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -73,15 +73,15 @@ deploy: before_script: - apt update - apt install --yes jq + - REPOSITORY_URL=$(echo "${CI_REPOSITORY_URL}" | sed -e "s|gitlab-ci-token:.*@|${RELEASE_TOKEN}:${RELEASE_TOKEN_SECRET}@|g") + - git remote set-url origin $REPOSITORY_URL + - git config user.name $GITLAB_USER_LOGIN + - git config user.email $GITLAB_USER_EMAIL + - git branch -D ci-processing || true + - git checkout -b ci-processing cache: <<: *global_cache script: | - REPOSITORY_URL=$(echo "${CI_REPOSITORY_URL}" | sed -e "s|gitlab-ci-token:.*@|${RELEASE_TOKEN}:${RELEASE_TOKEN_SECRET}@|g") - git remote set-url origin $REPOSITORY_URL - git config user.name $GITLAB_USER_LOGIN - git config user.email $GITLAB_USER_EMAIL - git branch -D ci-processing || true - git checkout -b ci-processing npm run updateManifest -- --update=${RELEASE_TYPE} RELEASE_VERSION=$(jq -r '.version' < package.json) git add package.json package-lock.json src/system.json diff --git a/src/system.json b/src/system.json index a64a1a8c..e9653678 100644 --- a/src/system.json +++ b/src/system.json @@ -22,7 +22,7 @@ "gridUnits": "m", "primaryTokenAttribute": "combatValues.hitPoints", "url": "https://git.f3l.de/dungeonslayers/ds4", - "manifest": "https://git.f3l.de/dungeonslayers/ds4/-/raw/master/src/system.json?inline=false", + "manifest": "https://git.f3l.de/dungeonslayers/ds4/-/raw/latest/src/system.json?inline=false", "download": "https://git.f3l.de/dungeonslayers/ds4/-/jobs/artifacts/0.1.0/download?job=build", "license": "MIT" } From fe4acd2d9df4e6633b353d5310c911544f99473d Mon Sep 17 00:00:00 2001 From: Johannes Loher Date: Sat, 9 Jan 2021 19:06:26 +0100 Subject: [PATCH 17/36] only do releases on master --- .gitlab-ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 0d85bab0..784d4db6 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -92,8 +92,8 @@ deploy: git push origin ci-processing:${CI_BUILD_REF_NAME} git push origin latest -f git push origin ${RELEASE_VERSION} - # only: - # - master + only: + - master when: manual release-patch: From 188eb6c1d2b2a13315a2b45ed56ea82ef582ef3f Mon Sep 17 00:00:00 2001 From: Siegfried Krug Date: Sat, 9 Jan 2021 20:36:34 +0100 Subject: [PATCH 18/36] add german translation --- src/lang/de.json | 72 ++++++++++++++++++++++++------------------------ 1 file changed, 36 insertions(+), 36 deletions(-) diff --git a/src/lang/de.json b/src/lang/de.json index 553ef2bb..7aa67dfd 100644 --- a/src/lang/de.json +++ b/src/lang/de.json @@ -1,6 +1,6 @@ { - "DS4.UserInteractionAddItem": "Neues Item", - "DS4.NotOwned": "Kein Eigentümer", + "DS4.UserInteractionAddItem": "Neu", + "DS4.NotOwned": "Nicht besessen", "DS4.HeadingDescription": "Beschreibung", "DS4.HeadingDetails": "Details", "DS4.HeadingEffects": "Effekte", @@ -11,24 +11,24 @@ "DS4.AttackTypeAbbr": "AT", "DS4.WeaponBonus": "Waffen Bonus", "DS4.WeaponBonusAbbr": "WB", - "DS4.OpponentDefense": "Gegener Abwehr", - "DS4.OpponentDefenseAbbr": "OD", - "DS4.AttackTypeMelee": "Nahkampf", - "DS4.AttackTypeRanged": "Fernkampf", - "DS4.AttackTypeMeleeRanged": "Nah- / Fernkampf", + "DS4.OpponentDefense": "Gegner Abwehr", + "DS4.OpponentDefenseAbbr": "GA", + "DS4.AttackTypeMelee": "Nahkampfwaffe", + "DS4.AttackTypeRanged": "Fernkampfwaffe", + "DS4.AttackTypeMeleeRanged": "Nah- / Fernkampfwaffe", "DS4.Quantity": "Menge", "DS4.PriceGold": "Preis (Gold)", "DS4.StorageLocation": "Aufbewahrungsort", "DS4.ItemEquipped": "Ausgerüstet", "DS4.ItemOwner": "Eigentümer", "DS4.ItemAvailability": "Verfügbarkeit", - "DS4.ItemAvailabilityHamlet": "Weiler", - "DS4.ItemAvailabilityVilage": "Dorf", - "DS4.ItemAvailabilityCity": "Stadt", + "DS4.ItemAvailabilityHamlet": "Dorf", + "DS4.ItemAvailabilityVilage": "Kleinstadt", + "DS4.ItemAvailabilityCity": "Großstadt", "DS4.ItemAvailabilityElves": "Elfen", "DS4.ItemAvailabilityDwarves": "Zwerge", - "DS4.ItemAvailabilityUnset": "Ungesetzt", - "DS4.ItemAvailabilityNowhere": "Nirgendwo", + "DS4.ItemAvailabilityUnset": "nicht gesetzt", + "DS4.ItemAvailabilityNowhere": "nirgendwo", "DS4.ItemName": "Name", "DS4.ItemTypeWeapon": "Waffe", "DS4.ItemTypeWeaponPlural": "Waffen", @@ -42,30 +42,30 @@ "DS4.ItemTypeEquipmentPlural": "Ausrüstung", "DS4.ItemTypeTalent": "Talent", "DS4.ItemTypeTalentPlural": "Talente", - "DS4.ItemTypeRacialAbility": "Rassen Fähigkeit", - "DS4.ItemTypeRacialAbilityPlural": "Rassen Fähigkeiten", + "DS4.ItemTypeRacialAbility": "Volksfähigkeit", + "DS4.ItemTypeRacialAbilityPlural": "Volksfähigkeiten", "DS4.ItemTypeLanguage": "Sprache", "DS4.ItemTypeLanguagePlural": "Sprachen", - "DS4.ItemTypeAlphabet": "Schrift", - "DS4.ItemTypeAlphabetPlural": "Schriften", + "DS4.ItemTypeAlphabet": "Schriftzeichen", + "DS4.ItemTypeAlphabetPlural": "Schriftzeichen", "DS4.ArmorType": "Panzerungstyp", - "DS4.ArmorTypeAbbr": "AT", - "DS4.ArmorMaterialType": "Material Type", + "DS4.ArmorTypeAbbr": "PAT", + "DS4.ArmorMaterialType": "Material Typ", "DS4.ArmorMaterialTypeAbbr": "Mat.", "DS4.ArmorValue": "Panzerungs Wert", - "DS4.ArmorValueAbbr": "AV", + "DS4.ArmorValueAbbr": "PA", "DS4.ArmorTypeBody": "Körper", "DS4.ArmorTypeBodyAbbr": "Körper", "DS4.ArmorTypeHelmet": "Helm", "DS4.ArmorTypeHelmetAbbr": "Helm", - "DS4.ArmorTypeVambrace": "Armschiene", - "DS4.ArmorTypeVambraceAbbr": "Vambr", + "DS4.ArmorTypeVambrace": "Armschienen", + "DS4.ArmorTypeVambraceAbbr": "Arm", "DS4.ArmorTypeGreaves": "Beinschienen", - "DS4.ArmorTypeGreavesAbbr": "Greav", + "DS4.ArmorTypeGreavesAbbr": "Bein", "DS4.ArmorTypeVambraceGreaves": "Armschienen + Beinschienen", "DS4.ArmorTypeVambraceGreavesAbbr": "A+B", - "DS4.ArmorMaterialTypeCloth": "Kleidung", - "DS4.ArmorMaterialTypeClothAbbr": "Kleidung", + "DS4.ArmorMaterialTypeCloth": "Stoff", + "DS4.ArmorMaterialTypeClothAbbr": "Stoff", "DS4.ArmorMaterialTypeLeather": "Leder", "DS4.ArmorMaterialTypeLeatherAbbr": "Leder", "DS4.ArmorMaterialTypeChain": "Ketten", @@ -73,27 +73,27 @@ "DS4.ArmorMaterialTypePlate": "Platten", "DS4.ArmorMaterialTypePlateAbbr": "Platten", "DS4.AttributeBody": "Körper", - "DS4.AttributeMobility": "Mobilität", + "DS4.AttributeMobility": "Agilität", "DS4.AttributeMind": "Geist", "DS4.TraitStrength": "Stärke", - "DS4.TraitConstitution": "Ausdauer", - "DS4.TraitAgility": "Agilität", + "DS4.TraitConstitution": "Härte", + "DS4.TraitAgility": "Bewegung", "DS4.TraitDexterity": "Geschick", - "DS4.TraitIntellect": "Intellekt", + "DS4.TraitIntellect": "Verstand", "DS4.TraitAura": "Aura", "DS4.CombatValuesHitPoints": "Hit Points", - "DS4.CombatValuesDefense": "Verteitigung", + "DS4.CombatValuesDefense": "Abwehr", "DS4.CombatValuesInitiative": "Initiative", - "DS4.CombatValuesMovement": "Bewegung", - "DS4.CombatValuesMeleeAttack": "Nahkampfangriff", - "DS4.CombatValuesRangedAttack": "Fernkampfangriff", + "DS4.CombatValuesMovement": "Laufen", + "DS4.CombatValuesMeleeAttack": "Schlagen", + "DS4.CombatValuesRangedAttack": "Schießen", "DS4.CombatValuesSpellcasting": "Zauber", "DS4.CombatValuesTargetedSpellcasting": "Zielzauber", "DS4.BaseInfoRace": "Volk", "DS4.BaseInfoClass": "Klasse", "DS4.BaseInfoHeroClass": "Helden Klasse", "DS4.BaseInfoCulture": "Kultur", - "DS4.ProgressionLevel": "Level", + "DS4.ProgressionLevel": "Stufe", "DS4.ProgressionExperiencePoints": "Erfahrungspunkte", "DS4.ProgressionTalentPoints": "Talentpunkte", "DS4.ProgressionProgressPoints": "Lernpunkte", @@ -109,10 +109,10 @@ "DS4.ProfileBirthplace": "Geburtsort", "DS4.ProfileAge": "Alter", "DS4.ProfileHeight": "Größe", - "DS4.ProfilHairColor": "Haar Farbe", + "DS4.ProfilHairColor": "Haarfarbe", "DS4.ProfileWeight": "Gewicht", - "DS4.ProfileEyeColor": "Augen Farbe", - "DS4.ProfileSpecialCharacteristics": "Special Characteristics", + "DS4.ProfileEyeColor": "Augenfarbe", + "DS4.ProfileSpecialCharacteristics": "Besondere Eigenschaften", "DS4.WarningManageActiveEffectOnOwnedItem": "Managing Active Effects within an Owned Item is not currently supported and will be added in a subsequent update.", "DS4.ErrorDiceCritOverlap": "There's an overlap between Fumbles and Coups", "DS4.ErrorExplodingRecursionLimitExceeded": "Maximum recursion depth for exploding dice roll exceeded" From 2f6b89a0e16c18417f0cf23f6e73d835ac14d67b Mon Sep 17 00:00:00 2001 From: Siegfried Krug Date: Sat, 9 Jan 2021 20:43:05 +0100 Subject: [PATCH 19/36] use shorter storage location --- src/lang/de.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lang/de.json b/src/lang/de.json index 7aa67dfd..ab5404f2 100644 --- a/src/lang/de.json +++ b/src/lang/de.json @@ -18,7 +18,7 @@ "DS4.AttackTypeMeleeRanged": "Nah- / Fernkampfwaffe", "DS4.Quantity": "Menge", "DS4.PriceGold": "Preis (Gold)", - "DS4.StorageLocation": "Aufbewahrungsort", + "DS4.StorageLocation": "Wo gelagert", "DS4.ItemEquipped": "Ausgerüstet", "DS4.ItemOwner": "Eigentümer", "DS4.ItemAvailability": "Verfügbarkeit", From df7c7efa5084b536681aa479ec7da469d5e0dbce Mon Sep 17 00:00:00 2001 From: Siegfried Krug Date: Sat, 9 Jan 2021 21:32:01 +0100 Subject: [PATCH 20/36] Apply 1 suggestion(s) to 1 file(s) --- src/lang/de.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lang/de.json b/src/lang/de.json index ab5404f2..c6ff0325 100644 --- a/src/lang/de.json +++ b/src/lang/de.json @@ -81,7 +81,7 @@ "DS4.TraitDexterity": "Geschick", "DS4.TraitIntellect": "Verstand", "DS4.TraitAura": "Aura", - "DS4.CombatValuesHitPoints": "Hit Points", + "DS4.CombatValuesHitPoints": "Lebenskraft", "DS4.CombatValuesDefense": "Abwehr", "DS4.CombatValuesInitiative": "Initiative", "DS4.CombatValuesMovement": "Laufen", From 510e46d96a31f288cf4d0467e76fabf1c656041e Mon Sep 17 00:00:00 2001 From: Siegfried Krug Date: Sat, 9 Jan 2021 21:32:20 +0100 Subject: [PATCH 21/36] Apply 1 suggestion(s) to 1 file(s) --- src/lang/de.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lang/de.json b/src/lang/de.json index c6ff0325..c9903695 100644 --- a/src/lang/de.json +++ b/src/lang/de.json @@ -87,7 +87,7 @@ "DS4.CombatValuesMovement": "Laufen", "DS4.CombatValuesMeleeAttack": "Schlagen", "DS4.CombatValuesRangedAttack": "Schießen", - "DS4.CombatValuesSpellcasting": "Zauber", + "DS4.CombatValuesSpellcasting": "Zaubern", "DS4.CombatValuesTargetedSpellcasting": "Zielzauber", "DS4.BaseInfoRace": "Volk", "DS4.BaseInfoClass": "Klasse", From 92d7d2b8bf364355947ef0ebbceb30e19944f6df Mon Sep 17 00:00:00 2001 From: Siegfried Krug Date: Sat, 9 Jan 2021 21:33:38 +0100 Subject: [PATCH 22/36] Apply 1 suggestion(s) to 1 file(s) --- src/lang/de.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lang/de.json b/src/lang/de.json index c9903695..4f5c8b6c 100644 --- a/src/lang/de.json +++ b/src/lang/de.json @@ -88,7 +88,7 @@ "DS4.CombatValuesMeleeAttack": "Schlagen", "DS4.CombatValuesRangedAttack": "Schießen", "DS4.CombatValuesSpellcasting": "Zaubern", - "DS4.CombatValuesTargetedSpellcasting": "Zielzauber", + "DS4.CombatValuesTargetedSpellcasting": "Zielzaubern", "DS4.BaseInfoRace": "Volk", "DS4.BaseInfoClass": "Klasse", "DS4.BaseInfoHeroClass": "Helden Klasse", From e2b7b390a8f6a9c2ae277cdccb2f60f6a1d4eb5b Mon Sep 17 00:00:00 2001 From: Siegfried Krug Date: Sat, 9 Jan 2021 21:33:48 +0100 Subject: [PATCH 23/36] Apply 1 suggestion(s) to 1 file(s) --- src/lang/de.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lang/de.json b/src/lang/de.json index 4f5c8b6c..ffdac01f 100644 --- a/src/lang/de.json +++ b/src/lang/de.json @@ -101,7 +101,7 @@ "DS4.TalentRankBase": "Erworbener Rang", "DS4.TalentRankMax": "Maximaler Rang", "DS4.TalentRankMod": "Zusätzlicher Rang", - "DS4.TalentRankTotal": "Totaler Rang", + "DS4.TalentRankTotal": "Gesamter Rang", "DS4.LanguageLanguages": "Sprachen", "DS4.LanguageAlphabets": "Schriften", "DS4.ProfileGender": "Geschlecht", From 2af3e6106b2356122fb7e3705dcd00f9a5784b00 Mon Sep 17 00:00:00 2001 From: Siegfried Krug Date: Sat, 9 Jan 2021 21:34:02 +0100 Subject: [PATCH 24/36] Apply 1 suggestion(s) to 1 file(s) --- src/lang/de.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lang/de.json b/src/lang/de.json index ffdac01f..e14fc13f 100644 --- a/src/lang/de.json +++ b/src/lang/de.json @@ -103,7 +103,7 @@ "DS4.TalentRankMod": "Zusätzlicher Rang", "DS4.TalentRankTotal": "Gesamter Rang", "DS4.LanguageLanguages": "Sprachen", - "DS4.LanguageAlphabets": "Schriften", + "DS4.LanguageAlphabets": "Schriftzeichen" "DS4.ProfileGender": "Geschlecht", "DS4.ProfileBirthday": "Geburtstag", "DS4.ProfileBirthplace": "Geburtsort", From c225cae0878da6e5cf1b6a6044a86b04a86bb706 Mon Sep 17 00:00:00 2001 From: Siegfried Krug Date: Sat, 9 Jan 2021 21:34:10 +0100 Subject: [PATCH 25/36] Apply 1 suggestion(s) to 1 file(s) --- src/lang/de.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lang/de.json b/src/lang/de.json index e14fc13f..9d607de2 100644 --- a/src/lang/de.json +++ b/src/lang/de.json @@ -113,7 +113,7 @@ "DS4.ProfileWeight": "Gewicht", "DS4.ProfileEyeColor": "Augenfarbe", "DS4.ProfileSpecialCharacteristics": "Besondere Eigenschaften", - "DS4.WarningManageActiveEffectOnOwnedItem": "Managing Active Effects within an Owned Item is not currently supported and will be added in a subsequent update.", + "DS4.WarningManageActiveEffectOnOwnedItem": "Das Verwalten von aktiven Effekten innerhalb eines besessen Items wird derzeit nicht unterstützt und wird in einem nachfolgenden Update hinzugefügt.", "DS4.ErrorDiceCritOverlap": "There's an overlap between Fumbles and Coups", "DS4.ErrorExplodingRecursionLimitExceeded": "Maximum recursion depth for exploding dice roll exceeded" } From 57906a42a87751859ab5127a56729083aaf03a4f Mon Sep 17 00:00:00 2001 From: Siegfried Krug Date: Sat, 9 Jan 2021 21:34:22 +0100 Subject: [PATCH 26/36] Apply 1 suggestion(s) to 1 file(s) --- src/lang/de.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lang/de.json b/src/lang/de.json index 9d607de2..c4407ff3 100644 --- a/src/lang/de.json +++ b/src/lang/de.json @@ -114,6 +114,6 @@ "DS4.ProfileEyeColor": "Augenfarbe", "DS4.ProfileSpecialCharacteristics": "Besondere Eigenschaften", "DS4.WarningManageActiveEffectOnOwnedItem": "Das Verwalten von aktiven Effekten innerhalb eines besessen Items wird derzeit nicht unterstützt und wird in einem nachfolgenden Update hinzugefügt.", - "DS4.ErrorDiceCritOverlap": "There's an overlap between Fumbles and Coups", + "DS4.ErrorDiceCritOverlap": "Es gibt eine Überlappung zwischen Patzern und Immersiegen." "DS4.ErrorExplodingRecursionLimitExceeded": "Maximum recursion depth for exploding dice roll exceeded" } From 54e334cff5b63360cb11f2e8927ef94db5698f66 Mon Sep 17 00:00:00 2001 From: Siegfried Krug Date: Sat, 9 Jan 2021 21:41:41 +0100 Subject: [PATCH 27/36] apply review suggestions --- src/lang/de.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/lang/de.json b/src/lang/de.json index c4407ff3..d5e4d4f7 100644 --- a/src/lang/de.json +++ b/src/lang/de.json @@ -13,9 +13,9 @@ "DS4.WeaponBonusAbbr": "WB", "DS4.OpponentDefense": "Gegner Abwehr", "DS4.OpponentDefenseAbbr": "GA", - "DS4.AttackTypeMelee": "Nahkampfwaffe", - "DS4.AttackTypeRanged": "Fernkampfwaffe", - "DS4.AttackTypeMeleeRanged": "Nah- / Fernkampfwaffe", + "DS4.AttackTypeMelee": "Schlagen", + "DS4.AttackTypeRanged": "Schießen", + "DS4.AttackTypeMeleeRanged": "Schlagen + Schießen", "DS4.Quantity": "Menge", "DS4.PriceGold": "Preis (Gold)", "DS4.StorageLocation": "Wo gelagert", @@ -103,7 +103,7 @@ "DS4.TalentRankMod": "Zusätzlicher Rang", "DS4.TalentRankTotal": "Gesamter Rang", "DS4.LanguageLanguages": "Sprachen", - "DS4.LanguageAlphabets": "Schriftzeichen" + "DS4.LanguageAlphabets": "Schriftzeichen", "DS4.ProfileGender": "Geschlecht", "DS4.ProfileBirthday": "Geburtstag", "DS4.ProfileBirthplace": "Geburtsort", @@ -114,6 +114,6 @@ "DS4.ProfileEyeColor": "Augenfarbe", "DS4.ProfileSpecialCharacteristics": "Besondere Eigenschaften", "DS4.WarningManageActiveEffectOnOwnedItem": "Das Verwalten von aktiven Effekten innerhalb eines besessen Items wird derzeit nicht unterstützt und wird in einem nachfolgenden Update hinzugefügt.", - "DS4.ErrorDiceCritOverlap": "Es gibt eine Überlappung zwischen Patzern und Immersiegen." - "DS4.ErrorExplodingRecursionLimitExceeded": "Maximum recursion depth for exploding dice roll exceeded" + "DS4.ErrorDiceCritOverlap": "Es gibt eine Überlappung zwischen Patzern und Immersiegen.", + "DS4.ErrorExplodingRecursionLimitExceeded": "Die maximale Rekursionstiefe für slayende Würfelwürfe wurde überschritten." } From ed095dcc840727794de779fcc8e15fd223d39d5d Mon Sep 17 00:00:00 2001 From: Siegfried Krug Date: Sat, 9 Jan 2021 22:30:26 +0100 Subject: [PATCH 28/36] fix actor sheet --- src/module/actor/actor-sheet.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/module/actor/actor-sheet.ts b/src/module/actor/actor-sheet.ts index 51eb9e65..978b7c6c 100644 --- a/src/module/actor/actor-sheet.ts +++ b/src/module/actor/actor-sheet.ts @@ -30,7 +30,7 @@ export class DS4ActorSheet extends ActorSheet Date: Sat, 9 Jan 2021 23:39:35 +0100 Subject: [PATCH 29/36] added spell tab and sorted tabs --- src/lang/en.json | 10 ++- src/module/actor/actor-sheet.ts | 2 +- src/module/config.ts | 8 ++ src/module/ds4.ts | 1 + src/templates/actor/actor-sheet.hbs | 24 +++--- .../actor/partials/items-overview.hbs | 6 +- .../actor/partials/spells-overview.hbs | 86 +++++++++++++++++++ .../actor/partials/talents-overview.hbs | 2 - src/templates/item/spell-sheet.hbs | 4 +- 9 files changed, 122 insertions(+), 21 deletions(-) create mode 100644 src/templates/actor/partials/spells-overview.hbs diff --git a/src/lang/en.json b/src/lang/en.json index 8e047af4..df1033d6 100644 --- a/src/lang/en.json +++ b/src/lang/en.json @@ -1,12 +1,13 @@ { "DS4.UserInteractionAddItem": "Add item", "DS4.NotOwned": "No owner", - "DS4.HeadingDescription": "Description", + "DS4.HeadingBiography": "Biography", "DS4.HeadingDetails": "Details", "DS4.HeadingEffects": "Effects", "DS4.HeadingInventory": "Inventory", "DS4.HeadingProfile": "Profile", "DS4.HeadingTalents": "Talents & Abilities", + "DS4.HeadingSpells": "Spells", "DS4.AttackType": "Attack Type", "DS4.AttackTypeAbbr": "AT", "DS4.WeaponBonus": "Weapon Bonus", @@ -20,6 +21,7 @@ "DS4.PriceGold": "Price (Gold)", "DS4.StorageLocation": "Stored at", "DS4.ItemEquipped": "Equipped", + "DS4.ItemEquippedAbbr": "E", "DS4.ItemOwner": "Owner", "DS4.ItemAvailability": "Availability", "DS4.ItemAvailabilityHamlet": "Hamlet", @@ -75,6 +77,7 @@ "DS4.ArmorMaterialTypePlate": "Plate", "DS4.ArmorMaterialTypePlateAbbr": "Plate", "DS4.SpellType": "Spell Type", + "DS4.SpellTypeAbbr": "T", "DS4.SpellTypeSpellcasting": "Spellcasting", "DS4.SpellTypeTargetedSpell": "Targeted Spell", "DS4.SpellCategory": "Category", @@ -86,6 +89,7 @@ "DS4.SpellCategoryMindAffecting": "Mind Affecting", "DS4.SpellCategoryElectricity": "Electricity", "DS4.SpellBonus": "Spell Bonus", + "DS4.SpellBonusAbbr": "SB", "DS4.SpellMaxDistance": "Range", "DS4.SpellEffectRadius": "Radius", "DS4.SpellDuration": "Duration", @@ -147,6 +151,6 @@ "DS4.UnitMetersAbbr": "m", "DS4.UnitKilometers": "Kilometers", "DS4.UnitKilometersAbbr": "km", - "DS4.UnitCustom": "Custom", - "DS4.UnitCustomAbbr": "-" + "DS4.UnitCustom": "Custom Unit", + "DS4.UnitCustomAbbr": " " } diff --git a/src/module/actor/actor-sheet.ts b/src/module/actor/actor-sheet.ts index 51eb9e65..caebd890 100644 --- a/src/module/actor/actor-sheet.ts +++ b/src/module/actor/actor-sheet.ts @@ -32,7 +32,7 @@ export class DS4ActorSheet extends ActorSheet - {{localize 'DS4.HeadingDescription'}} + {{localize 'DS4.HeadingInventory'}} + {{localize 'DS4.HeadingSpells'}} {{localize 'DS4.HeadingTalents'}} {{localize "DS4.HeadingProfile"}} - {{localize 'DS4.HeadingInventory'}} + {{localize 'DS4.HeadingBiography'}} {{!-- Sheet Body --}}
- {{!-- Biography Tab --}} -
- {{editor content=data.biography target="data.biography" button=true owner=owner editable=editable}} -
+ {{!-- Items Tab --}} + {{> systems/ds4/templates/actor/partials/items-overview.hbs}} - {{! Profile Tab --}} - {{> systems/ds4/templates/actor/partials/profile.hbs}} + {{!-- Spells Tab --}} + {{> systems/ds4/templates/actor/partials/spells-overview.hbs}} {{!-- Talents Tab --}} {{> systems/ds4/templates/actor/partials/talents-overview.hbs}} - {{!-- Items Tab --}} - {{> systems/ds4/templates/actor/partials/items-overview.hbs}} + {{! Profile Tab --}} + {{> systems/ds4/templates/actor/partials/profile.hbs}} + + {{!-- Biography Tab --}} +
+ {{editor content=data.biography target="data.biography" button=true owner=owner editable=editable}} +
\ No newline at end of file diff --git a/src/templates/actor/partials/items-overview.hbs b/src/templates/actor/partials/items-overview.hbs index 676a9bfc..a27be471 100644 --- a/src/templates/actor/partials/items-overview.hbs +++ b/src/templates/actor/partials/items-overview.hbs @@ -37,7 +37,7 @@
  • {{!-- equipped --}} {{#if (ne dataType 'equipment')}} -
    E
    +
    {{localize 'DS4.ItemEquippedAbbr'}}
    {{/if}} {{!-- image --}}
    @@ -78,10 +78,10 @@ {{!-- amount --}} + data-property="data.quantity" title="{{localize 'DS4.Quantity'}}" /> {{!-- name --}} + data-property="name" title="{{localize 'DS4.ItemName'}}" /> {{!-- item type specifics --}} {{> @partial-block}} {{!-- description --}} diff --git a/src/templates/actor/partials/spells-overview.hbs b/src/templates/actor/partials/spells-overview.hbs new file mode 100644 index 00000000..f8012780 --- /dev/null +++ b/src/templates/actor/partials/spells-overview.hbs @@ -0,0 +1,86 @@ +{{!-- ======================================================================== --}} +{{!-- INLINE PARTIAL DEFINITIONS --}} +{{!-- ======================================================================== --}} + + +{{!-- +!-- Two templates for displaying values with unit. +!-- @param unitDatum: the object to display; must have a value and a unit attribute +!-- @param localizationString +!-- @param config: the config object +--}} +{{#*inline "temporalUnit"}} +
    + {{unitDatum.value}}{{lookup config.temporalUnitsAbbr unitDatum.unit}} +
    +{{/inline}} + +{{#*inline "distanceUnit"}} +
    + {{unitDatum.value}}{{lookup config.distanceUnitsAbbr unitDatum.unit}} +
    +{{/inline}} + + +{{!-- ======================================================================== --}} + + +
    +
      +
    1. + {{!-- equipped --}} +
      {{localize 'DS4.ItemEquippedAbbr'}}
      + {{!-- image --}} +
      + {{!-- name --}} +
      {{localize 'DS4.ItemName'}}
      + {{!-- spell type --}} +
      {{localize 'DS4.SpellTypeAbbr'}}
      + {{!-- spell bonus --}} +
      {{localize 'DS4.SpellBonusAbbr'}}
      + {{!-- max. distance --}} +
      + {{!-- duration --}} +
      + {{!-- cooldown duration --}} +
      + {{!-- description --}} + {{!--
      {{localize 'DS4.HeadingDescription'}}
      --}} + {{!-- add button --}} + {{> systems/ds4/templates/actor/partials/overview-add-button.hbs dataType='spell' }} +
    2. + {{#each itemsByType.spell as |item id|}} +
    3. + + {{!-- image --}} +
      + +
      + {{!-- name --}} + + {{!-- spell type --}} +
      + +
      + {{!-- spell bonus --}} + + {{!-- max. distance --}} + {{> distanceUnit localizationString='DS4.SpellMaxDistance' unitDatum=item.data.data.maxDistance config=../config}} + {{!-- duration --}} + {{> temporalUnit localizationString='DS4.SpellDuration' unitDatum=item.data.data.duration config=../config}} + {{!-- cooldown duration --}} + {{> temporalUnit localizationString='DS4.SpellCooldownDuration' unitDatum=item.data.data.cooldownDuration config=../config}} + {{!-- description --}} + {{!--
      {{{item.data.data.description}}}
      --}} + {{!-- control buttons --}} + {{> systems/ds4/templates/actor/partials/overview-control-buttons.hbs }} +
    4. + {{/each}} +
    +
    \ No newline at end of file diff --git a/src/templates/actor/partials/talents-overview.hbs b/src/templates/actor/partials/talents-overview.hbs index f4a06005..593955fa 100644 --- a/src/templates/actor/partials/talents-overview.hbs +++ b/src/templates/actor/partials/talents-overview.hbs @@ -1,8 +1,6 @@ {{!-- ======================================================================== --}} {{!-- INLINE PARTIAL DEFINITIONS --}} {{!-- ======================================================================== --}} -{{!-- TODO: remove duplicate add and delete button definition --}} - {{!-- diff --git a/src/templates/item/spell-sheet.hbs b/src/templates/item/spell-sheet.hbs index 4dd50f63..5f2c7a28 100644 --- a/src/templates/item/spell-sheet.hbs +++ b/src/templates/item/spell-sheet.hbs @@ -41,7 +41,7 @@
    - +
    {{/systems/ds4/templates/item/partials/sheet-header.hbs}} @@ -61,7 +61,7 @@ {{> unitDatum data=data property='maxDistance' localizeString='DS4.SpellMaxDistance' unitType='distance' }} {{> unitDatum data=data property='effectRadius' localizeString='DS4.SpellEffectRadius' unitType='distance' }} {{> unitDatum data=data property='duration' localizeString='DS4.SpellDuration' unitType='temporal' }} - {{> unitDatum data=data property='cooldownDurationj' localizeString='DS4.SpellCooldownDuration' unitType='temporal' }} + {{> unitDatum data=data property='cooldownDuration' localizeString='DS4.SpellCooldownDuration' unitType='temporal' }}
    Date: Sun, 10 Jan 2021 00:05:29 +0100 Subject: [PATCH 30/36] added German translation for spell stuff --- src/lang/de.json | 43 ++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 40 insertions(+), 3 deletions(-) diff --git a/src/lang/de.json b/src/lang/de.json index d5e4d4f7..5b9ed87c 100644 --- a/src/lang/de.json +++ b/src/lang/de.json @@ -1,12 +1,13 @@ { "DS4.UserInteractionAddItem": "Neu", "DS4.NotOwned": "Nicht besessen", - "DS4.HeadingDescription": "Beschreibung", + "DS4.HeadingBiography": "Biografie", "DS4.HeadingDetails": "Details", "DS4.HeadingEffects": "Effekte", "DS4.HeadingInventory": "Inventar", "DS4.HeadingProfile": "Profil", "DS4.HeadingTalents": "Talente & Fähigkeiten", + "DS4.HeadingSpells": "Zaubersprüche", "DS4.AttackType": "Angriffs Typ", "DS4.AttackTypeAbbr": "AT", "DS4.WeaponBonus": "Waffen Bonus", @@ -20,7 +21,8 @@ "DS4.PriceGold": "Preis (Gold)", "DS4.StorageLocation": "Wo gelagert", "DS4.ItemEquipped": "Ausgerüstet", - "DS4.ItemOwner": "Eigentümer", + "DS4.ItemEquippedAbbr": "A", + "DS4.ItemOwner": "Besitzer", "DS4.ItemAvailability": "Verfügbarkeit", "DS4.ItemAvailabilityHamlet": "Dorf", "DS4.ItemAvailabilityVilage": "Kleinstadt", @@ -36,6 +38,8 @@ "DS4.ItemTypeArmorPlural": "Panzerungen", "DS4.ItemTypeShield": "Schild", "DS4.ItemTypeShieldPlural": "Schilde", + "DS4.ItemTypeSpell": "Zauberspruch", + "DS4.ItemTypeSpellPlural": "Zaubersprüche", "DS4.ItemTypeTrinket": "Schmuckstück", "DS4.ItemTypeTrinketPlural": "Schmuckstücke", "DS4.ItemTypeEquipment": "Ausrüstung", @@ -72,6 +76,25 @@ "DS4.ArmorMaterialTypeChainAbbr": "Ketten", "DS4.ArmorMaterialTypePlate": "Platten", "DS4.ArmorMaterialTypePlateAbbr": "Platten", + "DS4.SpellType": "Zauberspruchtyp", + "DS4.SpellTypeAbbr": "T", + "DS4.SpellTypeSpellcasting": "Zaubern", + "DS4.SpellTypeTargetedSpell": "Zielzaubern", + "DS4.SpellCategory": "Kategorie", + "DS4.SpellCategoryHealing": "Heilung", + "DS4.SpellCategoryFire": "Feuer", + "DS4.SpellCategoryIce": "Eis", + "DS4.SpellCategoryLight": "Licht", + "DS4.SpellCategoryDarkness": "Schatten", + "DS4.SpellCategoryMindAffecting": "Geistensbeeinflussend", + "DS4.SpellCategoryElectricity": "Elektrizität", + "DS4.SpellBonus": "Zauberbonus", + "DS4.SpellBonusAbbr": "ZB", + "DS4.SpellMaxDistance": "Reichweite", + "DS4.SpellEffectRadius": "Effektradius", + "DS4.SpellDuration": "Wirkdauer", + "DS4.SpellCooldownDuration": "Abklingzeit", + "DS4.SpellScrollPriceGold": "Schriftrollenpreis (Gold)", "DS4.AttributeBody": "Körper", "DS4.AttributeMobility": "Agilität", "DS4.AttributeMind": "Geist", @@ -115,5 +138,19 @@ "DS4.ProfileSpecialCharacteristics": "Besondere Eigenschaften", "DS4.WarningManageActiveEffectOnOwnedItem": "Das Verwalten von aktiven Effekten innerhalb eines besessen Items wird derzeit nicht unterstützt und wird in einem nachfolgenden Update hinzugefügt.", "DS4.ErrorDiceCritOverlap": "Es gibt eine Überlappung zwischen Patzern und Immersiegen.", - "DS4.ErrorExplodingRecursionLimitExceeded": "Die maximale Rekursionstiefe für slayende Würfelwürfe wurde überschritten." + "DS4.ErrorExplodingRecursionLimitExceeded": "Die maximale Rekursionstiefe für slayende Würfelwürfe wurde überschritten.", + "DS4.UnitRounds": "Runden", + "DS4.UnitRoundsAbbr": "Rnd", + "DS4.UnitMinutes": "Minuten", + "DS4.UnitMinutesAbbr": "min", + "DS4.UnitHours": "Stunden", + "DS4.UnitHoursAbbr": "h", + "DS4.UnitDays": "Tage", + "DS4.UnitDaysAbbr": "d", + "DS4.UnitMeters": "Meter", + "DS4.UnitMetersAbbr": "m", + "DS4.UnitKilometers": "Kilometer", + "DS4.UnitKilometersAbbr": "km", + "DS4.UnitCustom": "individuell", + "DS4.UnitCustomAbbr": " " } From 0eb447d2795c8f414a9c18ca3178abfaa03d9555 Mon Sep 17 00:00:00 2001 From: Gesina Schwalbe Date: Sun, 10 Jan 2021 00:30:51 +0100 Subject: [PATCH 31/36] added German localization for spells - added missing German localizations - fixed some localizations - renamed targetedSpell -> targetedSpellcasting for consistency --- src/lang/de.json | 5 ++++- src/lang/en.json | 9 ++++++--- src/module/config.ts | 4 ++-- src/module/item/item-data.ts | 2 +- src/templates/actor/partials/items-overview.hbs | 2 +- src/templates/actor/partials/spells-overview.hbs | 2 +- src/templates/actor/partials/talents-overview.hbs | 4 ++-- src/templates/item/partials/body.hbs | 2 +- src/templates/item/partials/description.hbs | 2 +- 9 files changed, 19 insertions(+), 13 deletions(-) diff --git a/src/lang/de.json b/src/lang/de.json index 5b9ed87c..2b719286 100644 --- a/src/lang/de.json +++ b/src/lang/de.json @@ -1,5 +1,7 @@ { "DS4.UserInteractionAddItem": "Neu", + "DS4.UserInteractionEditItem": "Bearbeiten", + "DS4.UserInteractionDeleteItem": "Löschen", "DS4.NotOwned": "Nicht besessen", "DS4.HeadingBiography": "Biografie", "DS4.HeadingDetails": "Details", @@ -17,6 +19,7 @@ "DS4.AttackTypeMelee": "Schlagen", "DS4.AttackTypeRanged": "Schießen", "DS4.AttackTypeMeleeRanged": "Schlagen + Schießen", + "DS4.Description": "Beschreibung", "DS4.Quantity": "Menge", "DS4.PriceGold": "Preis (Gold)", "DS4.StorageLocation": "Wo gelagert", @@ -79,7 +82,7 @@ "DS4.SpellType": "Zauberspruchtyp", "DS4.SpellTypeAbbr": "T", "DS4.SpellTypeSpellcasting": "Zaubern", - "DS4.SpellTypeTargetedSpell": "Zielzaubern", + "DS4.SpellTypeTargetedSpellcasting": "Zielzaubern", "DS4.SpellCategory": "Kategorie", "DS4.SpellCategoryHealing": "Heilung", "DS4.SpellCategoryFire": "Feuer", diff --git a/src/lang/en.json b/src/lang/en.json index df1033d6..e6136a0f 100644 --- a/src/lang/en.json +++ b/src/lang/en.json @@ -1,5 +1,7 @@ { "DS4.UserInteractionAddItem": "Add item", + "DS4.UserInteractionEditItem": "Edit item", + "DS4.UserInteractionDeleteItem": "Delete item", "DS4.NotOwned": "No owner", "DS4.HeadingBiography": "Biography", "DS4.HeadingDetails": "Details", @@ -17,6 +19,7 @@ "DS4.AttackTypeMelee": "Melee", "DS4.AttackTypeRanged": "Ranged", "DS4.AttackTypeMeleeRanged": "Melee / Ranged", + "DS4.Description": "Description", "DS4.Quantity": "Quantity", "DS4.PriceGold": "Price (Gold)", "DS4.StorageLocation": "Stored at", @@ -79,7 +82,7 @@ "DS4.SpellType": "Spell Type", "DS4.SpellTypeAbbr": "T", "DS4.SpellTypeSpellcasting": "Spellcasting", - "DS4.SpellTypeTargetedSpell": "Targeted Spell", + "DS4.SpellTypeTargetedSpellcasting": "Targeted Spellcasting", "DS4.SpellCategory": "Category", "DS4.SpellCategoryHealing": "Healing", "DS4.SpellCategoryFire": "Fire", @@ -110,8 +113,8 @@ "DS4.CombatValuesMovement": "Movement", "DS4.CombatValuesMeleeAttack": "Melee Attack", "DS4.CombatValuesRangedAttack": "Ranged Attack", - "DS4.CombatValuesSpellcasting": "Normal", - "DS4.CombatValuesTargetedSpellcasting": "Targeted", + "DS4.CombatValuesSpellcasting": "Spellcasting", + "DS4.CombatValuesTargetedSpellcasting": "Targeted Spellcasting", "DS4.BaseInfoRace": "Race", "DS4.BaseInfoClass": "Class", "DS4.BaseInfoHeroClass": "Hero Class", diff --git a/src/module/config.ts b/src/module/config.ts index 4f862e86..d8f9b851 100644 --- a/src/module/config.ts +++ b/src/module/config.ts @@ -31,7 +31,7 @@ export const DS4 = { */ spellTypesIcons: { spellcasting: "systems/ds4/assets/official/DS4-SPC.png", - targetedSpell: "systems/ds4/assets/official/DS4-TSC.png", + targetedSpellcasting: "systems/ds4/assets/official/DS4-TSC.png", }, /** @@ -107,7 +107,7 @@ export const DS4 = { spellTypes: { spellcasting: "DS4.SpellTypeSpellcasting", - targetedSpell: "DS4.SpellTypeTargetedSpell", + targetedSpellcasting: "DS4.SpellTypeTargetedSpellcasting", }, spellCategories: { diff --git a/src/module/item/item-data.ts b/src/module/item/item-data.ts index aa779163..45622a6e 100644 --- a/src/module/item/item-data.ts +++ b/src/module/item/item-data.ts @@ -34,7 +34,7 @@ interface DS4TalentRank extends ModifiableData { } interface DS4Spell extends DS4ItemBase, DS4ItemEquipable { - spellType: "spellcasting" | "targetedSpell"; + spellType: "spellcasting" | "targetedSpellcasting"; bonus: string; spellCategory: | "healing" diff --git a/src/templates/actor/partials/items-overview.hbs b/src/templates/actor/partials/items-overview.hbs index a27be471..4dbd269b 100644 --- a/src/templates/actor/partials/items-overview.hbs +++ b/src/templates/actor/partials/items-overview.hbs @@ -48,7 +48,7 @@ {{!-- item type specifics --}} {{> @partial-block }} {{!-- description --}} -
    {{localize 'DS4.HeadingDescription'}}
    +
    {{localize 'DS4.Description'}}
    {{!-- add button --}} {{> systems/ds4/templates/actor/partials/overview-add-button.hbs dataType=dataType }}
  • diff --git a/src/templates/actor/partials/spells-overview.hbs b/src/templates/actor/partials/spells-overview.hbs index f8012780..5338955c 100644 --- a/src/templates/actor/partials/spells-overview.hbs +++ b/src/templates/actor/partials/spells-overview.hbs @@ -47,7 +47,7 @@ {{!-- cooldown duration --}}
    {{!-- description --}} - {{!--
    {{localize 'DS4.HeadingDescription'}}
    --}} + {{!--
    {{localize 'DS4.Description'}}
    --}} {{!-- add button --}} {{> systems/ds4/templates/actor/partials/overview-add-button.hbs dataType='spell' }} diff --git a/src/templates/actor/partials/talents-overview.hbs b/src/templates/actor/partials/talents-overview.hbs index 593955fa..8ef93113 100644 --- a/src/templates/actor/partials/talents-overview.hbs +++ b/src/templates/actor/partials/talents-overview.hbs @@ -108,7 +108,7 @@ {{!-- name --}}
    {{localize 'DS4.ItemName'}}
    {{!-- description --}} -
    {{localize 'DS4.HeadingDescription'}}
    +
    {{localize 'DS4.Description'}}
    {{!-- add button --}} {{> systems/ds4/templates/actor/partials/overview-add-button.hbs dataType=dataType }} @@ -130,7 +130,7 @@ {{!-- rank info --}}
    {{localize 'DS4.TalentRank'}}
    {{!-- description --}} -
    {{localize 'DS4.HeadingDescription'}}
    +
    {{localize 'DS4.Description'}}
    {{!-- add button --}} {{> systems/ds4/templates/actor/partials/overview-add-button.hbs dataType='talent' }} diff --git a/src/templates/item/partials/body.hbs b/src/templates/item/partials/body.hbs index 2a9eaecd..a7ac4d72 100644 --- a/src/templates/item/partials/body.hbs +++ b/src/templates/item/partials/body.hbs @@ -2,7 +2,7 @@ {{!-- Sheet Tab Navigation --}}