mirror of
https://github.com/em-squared/5e-drs.git
synced 2025-10-29 12:44:20 +00:00
spell tooltip
This commit is contained in:
parent
38931015db
commit
f3643e6eaf
6 changed files with 99 additions and 3 deletions
|
|
@ -21,7 +21,6 @@
|
|||
for (let i = 0; i < parts.length; i++) {
|
||||
let disabled = false
|
||||
if (i == parts.length - 1) {
|
||||
console.log(parts[i])
|
||||
disabled = true
|
||||
}
|
||||
link += parts[i]
|
||||
|
|
|
|||
64
docs/.vuepress/theme/global-components/SpellTooltip.vue
Normal file
64
docs/.vuepress/theme/global-components/SpellTooltip.vue
Normal file
|
|
@ -0,0 +1,64 @@
|
|||
<template>
|
||||
<span>
|
||||
<router-link :to="{ path: spellPath }" v-if="spell">
|
||||
<v-tooltip content-class="spell-tooltip-container" top>
|
||||
<template v-slot:activator="{ on }">
|
||||
<em v-on="on">{{ label }}</em>
|
||||
</template>
|
||||
<div class="spell-tooltip">
|
||||
<p class="spell-tooltip-title"><strong>{{ spell.title }}</strong></p>
|
||||
<div class="spell-details">
|
||||
<div class="spell-school-level" v-html="displaySchoolLevel()"></div>
|
||||
<div class="spell-casting-time"><strong>Temps d'incantation</strong> : {{ spell.frontmatter.casting_time }}</div>
|
||||
<div class="spell-range"><strong>Portée</strong> : {{ spell.frontmatter.range }}</div>
|
||||
<div class="spell-components"><strong>Composantes</strong> :
|
||||
<template v-if="spell.frontmatter.components.verbal">V</template><template v-if="spell.frontmatter.components.somatic || spell.frontmatter.components.material">,</template>
|
||||
<template v-if="spell.frontmatter.components.somatic">S</template><template v-if="spell.frontmatter.components.material">,</template>
|
||||
<template v-if="spell.frontmatter.components.material">M</template>
|
||||
<template v-if="spell.frontmatter.components.materials">({{spell.frontmatter.components.materials}})</template>
|
||||
</div>
|
||||
<div class="spell-duration"><strong>Durée</strong> : <span v-if="spell.frontmatter.concentration">concentration, </span>{{ spell.frontmatter.duration }}</div>
|
||||
</div>
|
||||
<div class="spell-description">{{ spell.frontmatter.description }}</div>
|
||||
</div>
|
||||
</v-tooltip>
|
||||
</router-link>
|
||||
<router-link :to="{ path: spellPath }" v-else>{{ label }}</router-link>
|
||||
</span>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {displaySchoolLevel} from '@theme/util/spellHelpers'
|
||||
|
||||
export default {
|
||||
name: 'SpellTooltip',
|
||||
|
||||
props: [
|
||||
'label',
|
||||
'path'
|
||||
],
|
||||
|
||||
data () {
|
||||
return {
|
||||
spellPath: '',
|
||||
spell: ''
|
||||
}
|
||||
},
|
||||
|
||||
methods: {
|
||||
displaySchoolLevel () {
|
||||
return displaySchoolLevel(this.spell.frontmatter)
|
||||
}
|
||||
},
|
||||
|
||||
mounted () {
|
||||
console.log(this.path)
|
||||
this.spellPath = '/grimoire/' + this.path + '/'
|
||||
this.spell = this.$site.pages.find((el) => el.path === this.spellPath || el.path === this.spellPath + "/")
|
||||
console.log(this.spell)
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
</style>
|
||||
30
docs/.vuepress/theme/styles/_spelltooltip.scss
Normal file
30
docs/.vuepress/theme/styles/_spelltooltip.scss
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
.v-tooltip__content {
|
||||
&.spell-tooltip-container {
|
||||
opacity: 1 !important;
|
||||
|
||||
.spell-tooltip {
|
||||
text-align: left;
|
||||
width: 50vw;
|
||||
max-width: 555px;
|
||||
min-width: 350px;
|
||||
background-color: #fff;
|
||||
color: #555;
|
||||
margin: -5px -16px -21px;
|
||||
padding: 12px;
|
||||
box-shadow: 0 0 12px #333;
|
||||
border-radius: 5px;
|
||||
|
||||
.spell-tooltip-title {
|
||||
background-color: $color-dragon;
|
||||
color: #fff;
|
||||
margin: -12px -12px 6px;
|
||||
padding: 12px;
|
||||
border-radius: 5px 5px 0 0;
|
||||
}
|
||||
|
||||
.spell-details {
|
||||
margin-bottom: 24px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -5,3 +5,5 @@
|
|||
@import "tables";
|
||||
@import "blocks";
|
||||
@import "layout";
|
||||
|
||||
@import "spelltooltip";
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
---
|
||||
title: "Appel de familier"
|
||||
description: "Le PJ s’attache les services d’un animal familier."
|
||||
school: "Invocation"
|
||||
level: 1
|
||||
concentration: false
|
||||
|
|
|
|||
|
|
@ -62,7 +62,7 @@ Au niveau 1, vous connaissez deux tours de magie de votre choix parmi la liste d
|
|||
### Emplacements de sorts
|
||||
Vous trouverez dans le tableau d'évolution du sorcier le nombre d'emplacements de sorts à votre disposition. Tous vos emplacements de sort sont de même niveau. Pour lancer un de vos sorts de sorcier de niveau 1 ou supérieur, vous devez utiliser un emplacement de sort. Vous regagnez tous les emplacements de sort que vous avez utilisés après un repos court ou un repos long.
|
||||
|
||||
Par exemple, si vous êtes au niveau 5, vous avez deux emplacements de sort de niveau 3. Pour lancer le sort de niveau 1 [_vague tonnante_](/grimoire/vague-tonnante), vous devez utiliser un de ces emplacements de sort, et vous le lancez comme un sort de niveau 3.
|
||||
Par exemple, si vous êtes au niveau 5, vous avez deux emplacements de sort de niveau 3. Pour lancer le sort de niveau 1 <SpellTooltip label="vague tonnante" path="vague-tonnante" />, vous devez utiliser un de ces emplacements de sort, et vous le lancez comme un sort de niveau 3.
|
||||
|
||||
### Sorts connus de niveau 1 et supérieur
|
||||
Au niveau 1, vous connaissez deux sorts de niveau 1 choisis dans la liste de <router-link :to="{ path: '/grimoire/', query: { classes: 'Sorcier' }}">sorts de sorcier</router-link>.
|
||||
|
|
@ -92,7 +92,7 @@ De plus, quand vous gagnez un niveau dans cette classe, vous pouvez choisir une
|
|||
Au niveau 3, votre protecteur d'outre-monde vous accorde un cadeau en récompense de vos loyaux services. Vous gagnez au choix l'une des trois aptitudes suivantes.
|
||||
|
||||
#### Pacte de la chaîne
|
||||
Vous apprenez le sort [_appel de familier_](/grimoire/appel-de-familier/), que pouvez lancer comme un rituel. Ce sort n'est pas comptabilisé parmi les sorts que vous connaissez.
|
||||
Vous apprenez le sort <SpellTooltip label="appel de familier" path="appel-de-familier" />, que pouvez lancer comme un rituel. Ce sort n'est pas comptabilisé parmi les sorts que vous connaissez.
|
||||
|
||||
Quand vous lancez ce sort, vous pouvez choisir une forme classique pour votre familier ou l'une des formes spéciales suivantes : diablotin, quasit, stirge ou serpent volant.
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue