1
0
Fork 0
mirror of https://github.com/em-squared/5e-drs.git synced 2025-10-30 21:24:18 +00:00

amélioration du filtre des monstres par indice de dangerosité + crédits + corrections diverses

This commit is contained in:
Maxime Moraine 2020-05-18 17:03:41 +02:00
parent 414f02087c
commit 830b468ae2
15 changed files with 125 additions and 53 deletions

View file

@ -90,7 +90,7 @@ export default new Vuex.Store({
}, },
setIsThemeDark: (state, payload) => { setIsThemeDark: (state, payload) => {
state.isThemeDark = payload state.isThemeDark = payload
console.log(payload) // console.log(payload)
Cookies.set('heros-et-dragons-is-dark', state.isThemeDark) Cookies.set('heros-et-dragons-is-dark', state.isThemeDark)
}, },
setIsOpenAboutDialog: (state, payload) => { setIsOpenAboutDialog: (state, payload) => {

View file

@ -5,7 +5,7 @@ export default {
state: { state: {
search: '', search: '',
challengeRange: [0, 30], challengeRange: [0, 33],
types: [ types: [
{ label: "Aberration", value: false }, { label: "Aberration", value: false },
{ label: "Bête", value: false }, { label: "Bête", value: false },
@ -122,7 +122,7 @@ export default {
state.challengeRange = payload state.challengeRange = payload
}, },
resetChallengeRange: (state, payload) => { resetChallengeRange: (state, payload) => {
state.challengeRange = [0, 30] state.challengeRange = [0, 33]
}, },
setTypes: (state, payload) => { setTypes: (state, payload) => {
state.types = payload state.types = payload

View file

@ -20,12 +20,16 @@
class="mt-6" class="mt-6"
v-model="challengeRange" v-model="challengeRange"
min="0" min="0"
max="30" :max="challenges.length-1"
thumb-size="24" thumb-size="24"
thumb-label="always" thumb-label="always"
hide-details hide-details
@end="onEndChallengeRange" @end="onEndChallengeRange"
></v-range-slider> >
<template v-slot:thumb-label="{ value }">
{{ challenges[value].label }}
</template>
</v-range-slider>
</v-expansion-panel-content> </v-expansion-panel-content>
</v-expansion-panel> </v-expansion-panel>
@ -69,13 +73,15 @@
<script> <script>
// import { mapMutations } from 'vuex' // import { mapMutations } from 'vuex'
import { setUrlParams, getUrlParameter, setBooleanMutation, setListMutation } from '@theme/util/filterHelpers' import { setUrlParams, getUrlParameter, setBooleanMutation, setListMutation } from '@theme/util/filterHelpers'
import { CHALLENGES } from '../../data/monsters'
export default { export default {
name: 'MonsterFilters', name: 'MonsterFilters',
data () { data () {
return { return {
panels: [] panels: [],
challenges: CHALLENGES
} }
}, },
@ -138,7 +144,14 @@ export default {
methods: { methods: {
onEndChallengeRange () { onEndChallengeRange () {
setUrlParams('trancheID', this.challengeRange) if (this.challengeRange[0] > this.challengeRange[1]) {
let min = range[1]
let max = range[0]
this.challengeRange[0] = min
this.challengeRange[1] = max
}
let range = [Number(CHALLENGES[this.challengeRange[0]].value), Number(CHALLENGES[this.challengeRange[1]].value)]
setUrlParams('trancheID', range)
}, },
switchType () { switchType () {
@ -218,8 +231,21 @@ export default {
let selectedEnvironments = getUrlParameter(window.location.href, "environnements").split(",") let selectedEnvironments = getUrlParameter(window.location.href, "environnements").split(",")
let selectedDungeonTypes = getUrlParameter(window.location.href, "donjons").split(",") let selectedDungeonTypes = getUrlParameter(window.location.href, "donjons").split(",")
if (challengeRange && challengeRange[0] != '') { if (challengeRange && challengeRange[0] != '' && challengeRange[1] != '') {
this.$store.commit('monsterFilters/setChallengeRange', challengeRange) let convertedChallengeRange = []
let min = CHALLENGES.findIndex(e => e.value == challengeRange[0])
if (min !== -1) {
convertedChallengeRange[0] = Number(min)
} else {
convertedChallengeRange[0] = Number(0)
}
let max = CHALLENGES.findIndex(e => e.value == challengeRange[1])
if (max !== -1) {
convertedChallengeRange[1] = Number(max)
} else {
convertedChallengeRange[1] = Number(CHALLENGES.length - 1)
}
this.$store.commit('monsterFilters/setChallengeRange', convertedChallengeRange)
} }
setListMutation(selectedTypes, this.$store, 'monsterFilters/setTypesFromList') setListMutation(selectedTypes, this.$store, 'monsterFilters/setTypesFromList')
setListMutation(selectedSizes, this.$store, 'monsterFilters/setSizesFromList') setListMutation(selectedSizes, this.$store, 'monsterFilters/setSizesFromList')

View file

@ -106,17 +106,17 @@
</v-list-item-title> </v-list-item-title>
</v-list-item-content> </v-list-item-content>
</v-list-item> </v-list-item>
<v-list-item v-if="$site.themeConfig.kofi" link :href="$site.themeConfig.kofi" target="_blank"> <v-list-item v-if="$site.themeConfig.kofi" @click.stop="toggleSupportDialog">
<v-list-item-icon> <v-list-item-icon>
<v-icon>mdi-glass-mug-variant</v-icon> <v-icon color="#BDB76B">mdi-glass-mug-variant</v-icon>
</v-list-item-icon> </v-list-item-icon>
<v-list-item-content> <v-list-item-content>
<v-list-item-title> <v-list-item-title>
Encouragez le développement Jettez un sou au développeur
</v-list-item-title> </v-list-item-title>
</v-list-item-content> </v-list-item-content>
</v-list-item> </v-list-item>
<v-list-item @click.stop="toggleAboutDialog"> <v-list-item link :to="{path: '/a-propos/'}" color="accent">
<v-list-item-icon> <v-list-item-icon>
<v-icon>mdi-information</v-icon> <v-icon>mdi-information</v-icon>
</v-list-item-icon> </v-list-item-icon>
@ -146,16 +146,19 @@
<v-card-title class="headline">À propos de H&D DRS</v-card-title> <v-card-title class="headline">À propos de H&D DRS</v-card-title>
<v-card-text> <v-card-text>
<p>Ce site a été développé par <strong>Maxime Moraine</strong> alias <strong>Em-squared</strong>.</p> <p class="title-2">
<p>Les sources de ce site sont disponibles sur <a :href="$site.themeConfig.repository" target="_blank">GitHub</a> sous Licence <a href="https://github.com/em-squared/heros-et-dragons-drs/blob/master/LICENSE" target="_blank">GPLv3</a>.</p> <strong>La personne derrière ce site</strong><br>
Ce site a été développé par <strong>Maxime Moraine</strong> alias <strong>Em-squared</strong>.<br>
Développeur web passionné de jeux de rôle, j'aime mettre l'un au service de l'autre.<br>
Les sources de ce site sont disponibles sur <a :href="$site.themeConfig.repository" target="_blank">GitHub</a> sous Licence <a href="https://github.com/em-squared/heros-et-dragons-drs/blob/master/LICENSE" target="_blank">GPLv3</a>.
</p>
<p>Vous souhaitez participer aux frais d'hébergement ou m'encourager ?</p>
<p class="text-center">
<v-btn depressed dark color="#BDB76B" link :href="$site.themeConfig.kofi" target="_blank"><v-icon class="mr-2">mdi-glass-mug-variant</v-icon>Jettez un sou au développeur</v-btn>
</p>
<p><strong><em>Héros & Dragons</em></strong> est un jeu de rôle basé sur les mécaniques de l<a href="/licence-ogl">OGL5</a> et développé par les talents de la rédaction de <em><a href="https://www.black-book-editions.fr/catalogue.php?id=40" target="_blank">Casus Belli</a></em>, le magazine de référence des jeux de rôle.</p> <p><strong><em>Héros & Dragons</em></strong> est un jeu de rôle basé sur les mécaniques de l<a href="/licence-ogl">OGL5</a> et développé par les talents de la rédaction de <em><a href="https://www.black-book-editions.fr/catalogue.php?id=40" target="_blank">Casus Belli</a></em>, le magazine de référence des jeux de rôle.</p>
<p>Les textes de cette documentation appartiennent à <a href="https://www.black-book-editions.fr/catalogue.php?id=365" target="_blank">Black Book Éditions</a>.</p> <p>Les textes de cette documentation appartiennent à <a href="https://www.black-book-editions.fr/catalogue.php?id=365" target="_blank">Black Book Éditions</a>.</p>
<p>Casus Belli et Black Book Éditions sont des marques déposées par <a href="https://www.black-book-editions.fr/" target="_blank">Black Book Éditions</a>. Tous droits réservés.</p> <p>Casus Belli et Black Book Éditions sont des marques déposées par <a href="https://www.black-book-editions.fr/" target="_blank">Black Book Éditions</a>. Tous droits réservés.</p>
<v-row v-if="$site.themeConfig.kofi">
<v-col class="text-center">
<v-btn depressed dark color="#29abe0" link :href="$site.themeConfig.kofi" target="_blank"><v-icon class="mr-2">mdi-coffee</v-icon>Ko-fi</v-btn>
</v-col>
</v-row>
</v-card-text> </v-card-text>
<v-card-actions> <v-card-actions>
@ -166,21 +169,22 @@
<v-dialog v-model="isOpenSupportDialog" @click:outside="toggleSupportDialog" max-width="600"> <v-dialog v-model="isOpenSupportDialog" @click:outside="toggleSupportDialog" max-width="600">
<v-card> <v-card>
<v-card-title class="headline">Encouragez le développement</v-card-title> <v-card-title class="headline">
<span>Jettez un sou au développeur</span>
<v-spacer></v-spacer>
<v-btn color="primary" icon @click="toggleSupportDialog"><v-icon>mdi-close</v-icon></v-btn>
</v-card-title>
<v-card-text> <v-card-text>
<p>Vous souhaitez participer aux frais d'hébergement ? Ou vous voulez encourager le développement de la plateforme ?</p> <p><strong>Pourquoi donner ?</strong></p>
<p>Votre participation sera appréciée !</p> <p>Soyons clairs : l'accès au site est <strong>gratuit</strong>. Pour <strong>tout le monde</strong>. Pour <strong>toujours</strong>. Et <strong>sans publicité</strong>. Aucun revenu n'est donc généré par son biais. En revanche, la mise en ligne d'un site web a un coût.</p>
<v-row v-if="$site.themeConfig.kofi"> <p>L'objectif est donc de couvrir ce coût.</p>
<v-col class="text-center"> <p>Vous pouvez participer aux frais d'hébergement et permettre à tout le monde et à vous-même d'en profiter ou m'encourager au développement parce que vous pensez que mon travail le mérite.</p>
<v-btn depressed dark color="#29abe0" link :href="$site.themeConfig.kofi" target="_blank"><v-icon class="mr-2">mdi-coffee</v-icon>Ko-fi</v-btn> <p>C'est <strong>vous</strong> qui décidez.</p>
</v-col> <p class="text-center">
</v-row> <v-btn depressed dark color="#BDB76B" link :href="$site.themeConfig.kofi" target="_blank"><v-icon class="mr-2">mdi-glass-mug-variant</v-icon>Jettez un sou au développeur</v-btn>
</p>
</v-card-text> </v-card-text>
<v-card-actions>
<v-btn color="primary" text @click="toggleSupportDialog">Fermer</v-btn>
</v-card-actions>
</v-card> </v-card>
</v-dialog> </v-dialog>
</div> </div>

View file

@ -9,11 +9,11 @@
<v-btn class="hidden-sm-and-down" @click.stop="setIsThemeDark" icon> <v-btn class="hidden-sm-and-down" @click.stop="setIsThemeDark" icon>
<v-icon v-html="$vuetify.theme.dark ? 'mdi-brightness-4' : 'mdi-brightness-7'"></v-icon> <v-icon v-html="$vuetify.theme.dark ? 'mdi-brightness-4' : 'mdi-brightness-7'"></v-icon>
</v-btn> </v-btn>
<v-btn class="hidden-sm-and-down" @click.stop="toggleAboutDialog" icon> <v-btn class="hidden-sm-and-down" link :to="{path: '/a-propos/'}" icon>
<v-icon>mdi-information</v-icon> <v-icon>mdi-information</v-icon>
</v-btn> </v-btn>
<v-btn class="hidden-sm-and-down" v-if="$site.themeConfig.kofi" link :href="$site.themeConfig.kofi" target="_blank" icon> <v-btn class="hidden-sm-and-down" v-if="$site.themeConfig.kofi" @click.stop="toggleSupportDialog" icon>
<v-icon>mdi-glass-mug-variant</v-icon> <v-icon color="#BDB76B">mdi-glass-mug-variant</v-icon>
</v-btn> </v-btn>
<v-btn class="ml-5" @click.stop="setRightDrawer" icon v-if="hasRightDrawer"> <v-btn class="ml-5" @click.stop="setRightDrawer" icon v-if="hasRightDrawer">
<v-icon>{{ rightDrawerIcon }}</v-icon> <v-icon>{{ rightDrawerIcon }}</v-icon>

View file

@ -55,7 +55,7 @@ export default {
} }
}) })
const { pages } = this.$site const { pages } = this.$site
console.log(pages) // console.log(pages)
this.index.add(pages) this.index.add(pages)
}, },
@ -71,7 +71,7 @@ export default {
encode: 'extra' encode: 'extra'
}, },
(result) => { (result) => {
console.log(result) // console.log(result)
this.items = result this.items = result
this.loading = false this.loading = false
}) })

View file

@ -46,7 +46,7 @@ export default {
mounted () { mounted () {
this.tooltipObject = this.tooltips[this.t] this.tooltipObject = this.tooltips[this.t]
console.log(this.tooltipObject) // console.log(this.tooltipObject)
} }
} }
</script> </script>

View file

@ -203,7 +203,7 @@ export default {
}, },
changePage (page) { changePage (page) {
console.log(page) // console.log(page)
setUrlParams("page", [page]) setUrlParams("page", [page])
}, },

View file

@ -12,8 +12,8 @@
<h1>Bestiaire</h1> <h1>Bestiaire</h1>
<div class="active-filters mb-2"> <div class="active-filters mb-2">
<div class="challengeRange-filter" v-if="Number(challengeRange[0]) >= 0 && Number(challengeRange[1]) <= 30"> <div class="challengeRange-filter" v-if="Number(challengeRange[0]) >= 0 && Number(challengeRange[1]) <= challenges.length-1">
<strong>Indice de dangerosité</strong> entre {{ challengeRange[0] }} et {{ challengeRange[1]}} <strong>Indice de dangerosité</strong> entre {{ challenges[challengeRange[0]].label }} et {{ challenges[challengeRange[1]].label }}
</div> </div>
<div class="types-filter mb-1" v-if="selectedTypes.length > 0"> <div class="types-filter mb-1" v-if="selectedTypes.length > 0">
<strong>Types</strong> : <v-chip class="mr-1" v-for="(type, idx) in selectedTypes">{{ type }}</v-chip> <strong>Types</strong> : <v-chip class="mr-1" v-for="(type, idx) in selectedTypes">{{ type }}</v-chip>
@ -92,6 +92,7 @@ import { displayChallenge } from '@theme/util/monsterHelpers'
import { setUrlParams, getUrlParameter } from '@theme/util/filterHelpers' import { setUrlParams, getUrlParameter } from '@theme/util/filterHelpers'
import Monster from '@theme/components/Monster' import Monster from '@theme/components/Monster'
import MyMonstersButton from '@theme/global-components/MyMonstersButton' import MyMonstersButton from '@theme/global-components/MyMonstersButton'
import { CHALLENGES } from '../../data/monsters'
export default { export default {
components: { Breadcrumb, Monster, MyMonstersButton }, components: { Breadcrumb, Monster, MyMonstersButton },
@ -118,7 +119,8 @@ export default {
{ text: "Sous-type", align: 'start', sortable: false, value: 'frontmatter.subtype' }, { text: "Sous-type", align: 'start', sortable: false, value: 'frontmatter.subtype' },
{ text: "Environnements", align: 'start', sortable: false, value: 'frontmatter.environments' }, { text: "Environnements", align: 'start', sortable: false, value: 'frontmatter.environments' },
{ text: "Type de donjons", align: 'start', sortable: false, value: 'frontmatter.dungeonTypes' }, { text: "Type de donjons", align: 'start', sortable: false, value: 'frontmatter.dungeonTypes' },
] ],
challenges: CHALLENGES
} }
}, },
@ -183,7 +185,7 @@ export default {
maxID = this.challengeRange[0] maxID = this.challengeRange[0]
} }
results = results.filter(item => { results = results.filter(item => {
return item.frontmatter.challenge >= minID && item.frontmatter.challenge <= maxID return item.frontmatter.challenge >= Number(CHALLENGES[minID].value) && item.frontmatter.challenge <= Number(CHALLENGES[maxID].value)
}) })
// Filter types // Filter types
@ -287,7 +289,7 @@ export default {
}, },
changePage (page) { changePage (page) {
console.log(page) // console.log(page)
setUrlParams("page", [page]) setUrlParams("page", [page])
}, },

View file

@ -302,7 +302,7 @@ export default {
}, },
changePage (page) { changePage (page) {
console.log(page) // console.log(page)
setUrlParams("page", [page]) setUrlParams("page", [page])
}, },

View file

@ -72,7 +72,7 @@ export function resolvePage (pages, rawPath, base) {
}) })
} }
} }
console.error(`[vuepress] No matching page found for sidebar item "${rawPath}"`) // console.error(`[vuepress] No matching page found for sidebar item "${rawPath}"`)
return {} return {}
} }

View file

@ -60,10 +60,10 @@ _**Em-squared**_
<v-col cols="12" md="6"> <v-col cols="12" md="6">
## Ressources utiles ## Ressources utiles
<v-btn color="#9b1c47" dark depressed class="mb-4" href="https://www.black-book-editions.fr/file.php?id=178" link target="blank"><v-icon left>mdi-drama-masks</v-icon> Feuille de personnage PDF</v-btn> <v-btn color="#9b1c47" dark depressed class="mb-4" href="https://www.black-book-editions.fr/file.php?id=178" link target="\_blank"><v-icon left>mdi-drama-masks</v-icon> Feuille de personnage PDF</v-btn>
<v-btn color="#9b1c47" dark depressed class="mb-4" href="https://www.black-book-editions.fr/forums.php?board_id=115" link target="blank"><v-icon left>mdi-forum</v-icon> Forum Héros & Dragons</v-btn> <v-btn color="#9b1c47" dark depressed class="mb-4" href="https://www.black-book-editions.fr/forums.php?board_id=115" link target="\_blank"><v-icon left>mdi-forum</v-icon> Forum Héros & Dragons</v-btn>
<v-btn color="#9b1c47" dark depressed class="mb-4" href="https://discord.gg/mp6ECCs" link target="blank"><v-icon left>mdi-discord</v-icon> Discord H&D DRS</v-btn> <v-btn color="#9b1c47" dark depressed class="mb-4" href="https://discord.gg/mp6ECCs" link target="\_blank"><v-icon left>mdi-discord</v-icon> Discord H&D DRS</v-btn>
<v-btn color="#9b1c47" dark depressed class="mb-4" href="https://github.com/em-squared/heros-et-dragons-drs" link target="blank"><v-icon left>mdi-github</v-icon> Source Github</v-btn> <v-btn color="#9b1c47" dark depressed class="mb-4" href="https://github.com/em-squared/heros-et-dragons-drs" link target="\_blank"><v-icon left>mdi-github</v-icon> Source Github</v-btn>
## Bibliothèques ## Bibliothèques
<MySpellsButton /> <MySpellsButton />

40
docs/a-propos/README.md Normal file
View file

@ -0,0 +1,40 @@
---
title: "À propos"
notEditable: true
toc: false
---
# À propos
## La personne derrière ce site
Ce site a été développé par **Maxime Moraine** alias **Em-squared**.
Développeur web passionné de jeux de rôle, j'aime mettre l'un au service de l'autre.
Les sources de ce site sont disponibles sur [GitHub](https://github.com/em-squared/heros-et-dragons-drs) sous Licence [GPLv3](https://github.com/em-squared/heros-et-dragons-drs/blob/master/LICENSE).
Vous souhaitez participer aux frais d'hébergement ou m'encourager ?
<v-btn class="mb-2" depressed dark color="#BDB76B" link :href="$site.themeConfig.kofi" target="\_blank"><v-icon class="mr-2">mdi-glass-mug-variant</v-icon>Jettez un sou au développeur</v-btn>
## Les contributeurs
Cette nouvelle version a pu voir le jour grâce à la contribution de bénévoles qui ont apporté leur soutien à la relecture des contenus, la recherche de bugs et les suggestions d'améliorations ou d'ajout de fonctionnalités.
* Thierry Bastide alias Wylandïr
* DocQuantic
* Erhard
* Ombreloup
* Benoît
* ELioss_
* Jerem_Uchiha
* Lumpawaroo
* ELarsen
* Gobo
* mister_dodo
Cette liste n'est certainement pas exhaustive.
## Le jeu
_**Héros & Dragons**_ est un jeu de rôle basé sur les mécaniques de l[OGL5](/licence-ogl/) et développé par les talents de la rédaction de [_Casus Belli_](https://www.black-book-editions.fr/catalogue.php?id=40), le magazine de référence des jeux de rôle.
Les textes de cette documentation appartiennent à [Black Book Éditions](https://www.black-book-editions.fr/catalogue.php?id=365).
Casus Belli et Black Book Éditions sont des marques déposées par [Black Book Éditions](https://www.black-book-editions.fr/). Tous droits réservés.

View file

@ -10,4 +10,4 @@ Cette baguette contient 7 charges en ce qui concerne les propriétés suivantes.
***Ordre***. Avec cette baguette en main, vous pouvez utiliser une action pour dépenser 1 charge et ordonner à une créature de fuir ou de se mettre à plat ventre, comme avec le sort [_injonction_](/grimoire/injonction/) (DD des jets de sauvegarde 15). ***Ordre***. Avec cette baguette en main, vous pouvez utiliser une action pour dépenser 1 charge et ordonner à une créature de fuir ou de se mettre à plat ventre, comme avec le sort [_injonction_](/grimoire/injonction/) (DD des jets de sauvegarde 15).
***Cône de terreur***. Avec cette baguette en main, vous pouvez utiliser une action pour dépenser 2 charges et projeter depuis l'extrémité de la baguette un cône de 18 mètres de lumière ambrée. Les créatures dans le cône doivent chacune réussir un jet de sauvegarde de Sagesse DD 15 pour ne pas être [_terrorisées_](/gerer-la-sante-du-personnage/#terrorise) par votre présence pendant 1 minute. Terrorisée de cette façon, une créature doit consacrer ses tours à tenter de s'éloigner le plus loin possible de vous. Elle ne peut pas approcher volontairement à 9 mètres ou moins de vous. Elle ne peut plus non plus faire de réaction. En ce qui concerne ses actions, elle peut effectuer uniquement l'action _se précipiter_ ou tenter d'échapper à un effet qui l'empêche de se déplacer. Si elle n'a nulle part où aller, elle peut effectuer l'action _esquiver_. À la fin de chacun de ses tours, une créature peut retenter le jet de sauvegarde et mettre fin à l'effet dont elle est victime en cas de réussite. ***Cône de terreur***. Avec cette baguette en main, vous pouvez utiliser une action pour dépenser 2 charges et projeter depuis l'extrémité de la baguette un cône de 18 mètres de lumière ambrée. Les créatures dans le cône doivent chacune réussir un jet de sauvegarde de Sagesse DD 15 pour ne pas être [_terrorisées_](/gerer-la-sante-du-personnage/#terrorise) par votre présence pendant 1 minute. Terrorisée de cette façon, une créature doit consacrer ses tours à tenter de s'éloigner le plus loin possible de vous. Elle ne peut pas approcher volontairement à 9 mètres ou moins de vous. Elle ne peut plus non plus faire de réaction. En ce qui concerne ses actions, elle peut effectuer uniquement l'action [_se précipiter_](/combattre/#se-precipiter) ou tenter d'échapper à un effet qui l'empêche de se déplacer. Si elle n'a nulle part où aller, elle peut effectuer l'action [_esquiver_](/combattre/#esquiver). À la fin de chacun de ses tours, une créature peut retenter le jet de sauvegarde et mettre fin à l'effet dont elle est victime en cas de réussite.

View file

@ -16,7 +16,7 @@ La baguette récupère 1d6+1 charges dépensées chaque jour, à l'aube. Lancez
|D100|Effet| |D100|Effet|
|:-:|:-| |:-:|:-|
|**01-05**|Vous lancez [_peur_](/grimoire/peur/).| |**01-05**|Vous lancez [_lenteur_](/grimoire/lenteur/).|
|**06-10**|Vous lancez [_leurs féeriques_](/grimoire/lueurs-feeriques/).| |**06-10**|Vous lancez [_leurs féeriques_](/grimoire/lueurs-feeriques/).|
|**11-15**|Vous êtes étourdi jusqu'à la fin de votre prochain tour, mais vous croyez que quelque chose d'incroyable vient tout juste d'arriver.| |**11-15**|Vous êtes étourdi jusqu'à la fin de votre prochain tour, mais vous croyez que quelque chose d'incroyable vient tout juste d'arriver.|
|**16-20**|Vous lancez [_bourrasque_](/grimoire/bourrasque/).| |**16-20**|Vous lancez [_bourrasque_](/grimoire/bourrasque/).|
@ -35,6 +35,6 @@ La baguette récupère 1d6+1 charges dépensées chaque jour, à l'aube. Lancez
|**80-84**|Vous lancez [_invisibilité_](/grimoire/invisibilite/) sur vous-même.| |**80-84**|Vous lancez [_invisibilité_](/grimoire/invisibilite/) sur vous-même.|
|**85-87**|Des feuilles de plante poussent sur la cible. Si vous prenez un point dans l'espace pour cible, des feuilles poussent sur la créature la plus proche de ce point. À moins d'être arrachées, les feuilles se racornissent peu à peu et tombent au bout de 24 heures.| |**85-87**|Des feuilles de plante poussent sur la cible. Si vous prenez un point dans l'espace pour cible, des feuilles poussent sur la créature la plus proche de ce point. À moins d'être arrachées, les feuilles se racornissent peu à peu et tombent au bout de 24 heures.|
|**88-90**|Un flot de 1d4×10 pierres précieuses, valant 1 po chacune, surgit de l'extrémité de la baguette sur une ligne de 9 mètres de long et 1,50 mètre de large. Chaque pierre précieuse inflige 1 dégât contondant et les dégâts totaux infligés par ces pierres sont divisés à parts égales entre toutes les cibles sur la ligne.| |**88-90**|Un flot de 1d4×10 pierres précieuses, valant 1 po chacune, surgit de l'extrémité de la baguette sur une ligne de 9 mètres de long et 1,50 mètre de large. Chaque pierre précieuse inflige 1 dégât contondant et les dégâts totaux infligés par ces pierres sont divisés à parts égales entre toutes les cibles sur la ligne.|
|**91-95**|Une explosion de lumière scintillante s'étend autour de vous sur un rayon de 9 mètres. Vous, et les créatures dans la zone qui peuvent vous voir, devez chacune réussir un jet de sauvegarde de Constitution DD 15 pour ne pas être aveuglées pendant 1 minute. Une créature peut retenter le jet de sauvegarde à la fin de chacun de ses tours et mettre fin à l'effet dont elle est victime en cas de réussite.| |**91-95**|Une explosion de lumière scintillante s'étend autour de vous sur un rayon de 9 mètres. Vous, et les créatures dans la zone qui peuvent vous voir, devez chacune réussir un jet de sauvegarde de Constitution DD 15 pour ne pas être [_aveuglées_](/gerer-la-sante-du-personnage/#aveugle) pendant 1 minute. Une créature peut retenter le jet de sauvegarde à la fin de chacun de ses tours et mettre fin à l'effet dont elle est victime en cas de réussite.|
|**96-97**|La peau de la cible devient bleue et luminescente pendant 1d10 jours. Si vous avez pris un point dans l'espace pour cible, c'est la créature la plus proche de ce point qui est affectée.| |**96-97**|La peau de la cible devient bleue et luminescente pendant 1d10 jours. Si vous avez pris un point dans l'espace pour cible, c'est la créature la plus proche de ce point qui est affectée.|
|**98-00**|Si vous avez pris une créature pour cible, celle-ci doit effectuer un jet de sauvegarde de Constitution DD 15. Si vous n'avez pris aucune créature pour cible, c'est vous la cible du sort, et vous devez effectuer le jet de sauvegarde. Si le jet de sauvegarde rate de 5 points ou plus, la cible est instantanément [_pétrifiée_](/gerer-la-sante-du-personnage/#petrifie). Tous les autres jets de sauvegarde ratés signifient que la cible est [_entravée_](/gerer-la-sante-du-personnage/#entrave) et commence à se transformer en pierre. Entravée de cette façon, la cible doit retenter le jet de sauvegarde à la fin de son prochain tour ; elle est [_pétrifiée_](/gerer-la-sante-du-personnage/#petrifie) en cas d'échec ou met fin à l'effet en cas de réussite. La pétrification dure tant que la cible n'est pas libérée par un sort de [_restauration supérieure_](/grimoire/restauration-superieure/) ou une magie similaire.| |**98-00**|Si vous avez pris une créature pour cible, celle-ci doit effectuer un jet de sauvegarde de Constitution DD 15. Si vous n'avez pris aucune créature pour cible, c'est vous la cible du sort, et vous devez effectuer le jet de sauvegarde. Si le jet de sauvegarde rate de 5 points ou plus, la cible est instantanément [_pétrifiée_](/gerer-la-sante-du-personnage/#petrifie). Tous les autres jets de sauvegarde ratés signifient que la cible est [_entravée_](/gerer-la-sante-du-personnage/#entrave) et commence à se transformer en pierre. Entravée de cette façon, la cible doit retenter le jet de sauvegarde à la fin de son prochain tour ; elle est [_pétrifiée_](/gerer-la-sante-du-personnage/#petrifie) en cas d'échec ou met fin à l'effet en cas de réussite. La pétrification dure tant que la cible n'est pas libérée par un sort de [_restauration supérieure_](/grimoire/restauration-superieure/) ou une magie similaire.|