[New Sheet] Donjons Et Chatons
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,696 @@
|
||||
|
||||
<script type="text/worker">function setActiveCharacterId(charId){
|
||||
var oldAcid=getActiveCharacterId();
|
||||
var ev = new CustomEvent("message");
|
||||
ev.data={"id":"0", "type":"setActiveCharacter", "data":charId};
|
||||
self.dispatchEvent(ev);
|
||||
return oldAcid;
|
||||
}
|
||||
|
||||
var _sIn=setInterval;
|
||||
setInterval=function(callback, timeout){
|
||||
var acid=getActiveCharacterId();
|
||||
_sIn(
|
||||
function(){
|
||||
var prevAcid=setActiveCharacterId(acid);
|
||||
callback();
|
||||
setActiveCharacterId(prevAcid);
|
||||
}
|
||||
,timeout);
|
||||
}
|
||||
|
||||
var _sto=setTimeout
|
||||
setTimeout=function(callback, timeout){
|
||||
var acid=getActiveCharacterId();
|
||||
_sto(
|
||||
function(){
|
||||
var prevAcid=setActiveCharacterId(acid);
|
||||
callback();
|
||||
setActiveCharacterId(prevAcid);
|
||||
}
|
||||
,timeout);
|
||||
}
|
||||
|
||||
function getAttrsAsync(props){
|
||||
var acid=getActiveCharacterId(); //save the current activeCharacterID in case it has changed when the promise runs
|
||||
var prevAcid=null; //local variable defined here, because it needs to be shared across the promise callbacks defined below
|
||||
return new Promise((resolve,reject)=>{
|
||||
prevAcid=setActiveCharacterId(acid); //in case the activeCharacterId has changed, restore it to what we were expecting and save the current value to restore later
|
||||
try{
|
||||
getAttrs(props,(values)=>{ resolve(values); });
|
||||
}
|
||||
catch{ reject(); }
|
||||
}).finally(()=>{
|
||||
setActiveCharacterId(prevAcid); //restore activeCharcterId to what it was when the promise first ran
|
||||
});
|
||||
}
|
||||
|
||||
//use the same pattern for each of the following...
|
||||
function setAttrsAsync(propObj, options){
|
||||
var acid=getActiveCharacterId();
|
||||
var prevAcid=null;
|
||||
return new Promise((resolve,reject)=>{
|
||||
prevAcid=setActiveCharacterId(acid);
|
||||
try{
|
||||
setAttrs(propObj,options,(values)=>{ resolve(values); });
|
||||
}
|
||||
catch{ reject(); }
|
||||
}).finally(()=>{
|
||||
setActiveCharacterId(prevAcid);
|
||||
});
|
||||
}on('clicked:menu', async (menu) => {
|
||||
const data = menu.htmlAttributes.value;
|
||||
|
||||
await setAttrsAsync({ tab: data });
|
||||
});
|
||||
|
||||
const qualite = ['costaud', 'malin', 'mignon'];
|
||||
|
||||
qualite.forEach(stat => {
|
||||
on(`clicked:${stat}`, async (base) => {
|
||||
const listAttrs = [
|
||||
`character_name`,
|
||||
stat,
|
||||
`jets`
|
||||
];
|
||||
const attrs = await getAttrsAsync(listAttrs);
|
||||
const name = attrs['character_name'];
|
||||
const jet = attrs[`jets`];
|
||||
const value = +attrs[stat];
|
||||
|
||||
let relance = '';
|
||||
|
||||
switch(stat) {
|
||||
case 'costaud':
|
||||
relance = 'relance_costaud';
|
||||
break;
|
||||
|
||||
case 'malin':
|
||||
relance = 'relance_malin';
|
||||
break;
|
||||
|
||||
case 'mignon':
|
||||
relance = 'relance_mignon';
|
||||
break;
|
||||
}
|
||||
|
||||
console.log(relance);
|
||||
|
||||
const finalRoll = await startRoll(`${jet} &{template:simple} {{name=${name}}} {{subname=${getTranslationByKey(stat)}}} {{type=[[?{Type ?|Jet Standard, 3|Jet avec Avantage, 4|Jet avec Désavantage, 2}]]}} {{roll=[[?{Type ?|Jet Standard, 3|Jet avec Avantage, 4|Jet avec Désavantage, 2}D6<${value}]]}} {{button=[${getTranslationByKey('relance')}](~${relance})}}`);
|
||||
|
||||
const computed = {};
|
||||
finishRoll(finalRoll.rollId, computed);
|
||||
});
|
||||
});
|
||||
|
||||
const talents = [
|
||||
'bougerpopotin', 'bricolertruc', 'connaitrelois', 'convaincrebaratiner', 'cueillirchasser', 'cuisiner', 'dessinerpeindre', 'fairemusique',
|
||||
'fairepoches', 'feulermenacer', 'griffer', 'herboriser', 'lireecrire', 'lireciel', 'observerfouiller', 'restercalme',
|
||||
'soccuperbetes', 'cacherombres', 'deplacerensilence', 'seduirecharmer', 'soignerblessures', 'trouverchemin', 'trouverinformation'
|
||||
];
|
||||
|
||||
talents.forEach(talent => {
|
||||
on(`clicked:${talent}`, async (base) => {
|
||||
const listAttrs = [
|
||||
`character_name`,
|
||||
`${talent}_select`,
|
||||
`jets`
|
||||
];
|
||||
const attrs = await getAttrsAsync(listAttrs);
|
||||
const name = attrs['character_name'];
|
||||
const attribut = attrs[`${talent}_select`];
|
||||
const jet = attrs[`jets`];
|
||||
const value = await getAttrsAsync([attribut]);
|
||||
|
||||
let relance = '';
|
||||
|
||||
switch(attribut) {
|
||||
case 'costaud':
|
||||
relance = 'relance_costaud';
|
||||
break;
|
||||
|
||||
case 'malin':
|
||||
relance = 'relance_malin';
|
||||
break;
|
||||
|
||||
case 'mignon':
|
||||
relance = 'relance_mignon';
|
||||
break;
|
||||
}
|
||||
|
||||
const finalRoll = await startRoll(`${jet} &{template:simple} {{name=${name}}} {{subname=${getTranslationByKey(talent)} - ${getTranslationByKey(attribut)}}} {{roll=[[4D6<${value[attribut]}]]}} {{button=[${getTranslationByKey('relance')}](~${relance})}}`);
|
||||
|
||||
const computed = {};
|
||||
finishRoll(finalRoll.rollId, computed);
|
||||
});
|
||||
});
|
||||
|
||||
const score = [
|
||||
'amitie',
|
||||
'coeur'
|
||||
];
|
||||
|
||||
score.forEach(valeur => {
|
||||
on(`change:${valeur} change:costaud change:malin change:mignon sheet:opened`, async (base) => {
|
||||
const listAttrs = [
|
||||
`${valeur}`,
|
||||
'costaud',
|
||||
'malin',
|
||||
'mignon'
|
||||
];
|
||||
const attrs = await getAttrsAsync(listAttrs);
|
||||
|
||||
const costaud = +attrs['costaud'];
|
||||
const malin = +attrs['malin'];
|
||||
const mignon = +attrs['mignon'];
|
||||
const value = +attrs[`${valeur}`];
|
||||
|
||||
let max = 0;
|
||||
|
||||
switch(valeur) {
|
||||
case 'amitie':
|
||||
max = mignon;
|
||||
break;
|
||||
|
||||
case 'coeur':
|
||||
max = costaud+malin;
|
||||
break;
|
||||
}
|
||||
|
||||
const update = {};
|
||||
update[`${valeur}_max`] = max;
|
||||
|
||||
if(value > max) update[`${valeur}`] = max;
|
||||
|
||||
await setAttrsAsync(update);
|
||||
});
|
||||
});</script>
|
||||
<div class="content">
|
||||
<button type="roll" style="display:none;" name="roll_relance_costaud" value="@{jets} &{template:simple} {{name=@{character_name} }} {{subname=^{relance} }} {{roll=[[1D6<@{costaud}]]}}" style="display:none;"/>
|
||||
<button type="roll" style="display:none;" name="roll_relance_malin" value="@{jets} &{template:simple} {{name=@{character_name} }} {{subname=^{relance} }} {{roll=[[1D6<@{malin}]]}}" style="display:none;"/>
|
||||
<button type="roll" style="display:none;" name="roll_relance_mignon" value="@{jets} &{template:simple} {{name=@{character_name} }} {{subname=^{relance} }} {{roll=[[1D6<@{mignon}]]}}" style="display:none;"/>
|
||||
|
||||
<div class="header">
|
||||
<div class="col">
|
||||
<label class="name">
|
||||
<span data-i18n="chaton">Chaton</span>
|
||||
<input type="text" name="attr_character_name">
|
||||
</label>
|
||||
|
||||
<div class="identite">
|
||||
<label>
|
||||
<span data-i18n="enfance">Enfance</span>
|
||||
<input type="text" name="attr_enfance">
|
||||
</label>
|
||||
<label>
|
||||
<span data-i18n="caractere">Caractère</span>
|
||||
<input type="text" name="attr_caractere">
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col">
|
||||
<label class="config">
|
||||
<input type="checkbox" name="attr_options" value="1" />
|
||||
<span></span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_options" />
|
||||
<div class="config">
|
||||
<div class="full">
|
||||
<label>
|
||||
<span data-i18n="jets">Les jets sont</span>
|
||||
<select name="attr_jets">
|
||||
<option value="" data-i18n="public">public</option>
|
||||
<option value="/w gm" data-i18n="prives">privés</option>
|
||||
</select>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="don">
|
||||
<span data-i18n="donDeNaissance">Don de naissance</span>
|
||||
<div class="autoex autoex22">
|
||||
<textarea name="attr_dondenaissance"></textarea>
|
||||
<span name="attr_dondenaissance"></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="experience">
|
||||
<span data-i18n="experience">Expérience</span>
|
||||
<div class="double">
|
||||
<input type="number" name="attr_experience" value="0" min="0" />
|
||||
<span class="separateur">/</span>
|
||||
<input type="number" name="attr_experience_totale" value="0" min="0" />
|
||||
|
||||
<span class="absoluteL" data-i18n="actuelle">Actuelle</span>
|
||||
<span class="absoluteR" data-i18n="totale">Totale</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="line">
|
||||
<div class="qualites">
|
||||
<h1 class="titre" data-i18n="qualites">Qualités</h1>
|
||||
<div class="blockInput">
|
||||
<div class="input">
|
||||
<img src="https://zupimages.net/up/22/47/7avx.png">
|
||||
<input type="number" name="attr_costaud" value="0" min="0">
|
||||
</div>
|
||||
<label>
|
||||
<button type="action" name="act_costaud" value="" class="rollDice" />
|
||||
<span class="subtitle costaud" data-i18n="costaud">Costaud</span>
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div class="blockInput">
|
||||
<div class="input">
|
||||
<img src="https://zupimages.net/up/22/47/y7vl.png">
|
||||
<input type="number" name="attr_malin" value="0" min="0">
|
||||
</div>
|
||||
<label>
|
||||
<button type="action" name="act_malin" value="" class="rollDice" />
|
||||
<span class="subtitle malin" data-i18n="malin">Malin</span>
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div class="blockInput">
|
||||
<div class="input">
|
||||
<img src="https://zupimages.net/up/22/47/vwnf.png">
|
||||
<input type="number" name="attr_mignon" value="0" min="0">
|
||||
</div>
|
||||
<label>
|
||||
<button type="action" name="act_mignon" value="" class="rollDice" />
|
||||
<span class="subtitle mignon" data-i18n="mignon">Mignon</span>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="valeurs">
|
||||
<div class="coeur">
|
||||
<img src="https://zupimages.net/up/22/47/x9bl.png">
|
||||
<div class="blockInput">
|
||||
<input type="number" name="attr_coeur" value="0" min="0">
|
||||
<span>/</span>
|
||||
<input type="number" name="attr_coeur_max" value="0" min="0" readonly>
|
||||
</div>
|
||||
<span class="subtitle coeur" data-i18n="coeur">Coeur</span>
|
||||
</div>
|
||||
<div class="amitie">
|
||||
<img src="https://zupimages.net/up/22/47/mw97.png">
|
||||
<div class="blockInput">
|
||||
<input type="number" name="attr_amitie" value="0" min="0">
|
||||
<span>/</span>
|
||||
<input type="number" name="attr_amitie_max" value="0" min="0" readonly>
|
||||
</div>
|
||||
<span class="subtitle amitie" data-i18n="amitie">Amitié</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div><div class="menu">
|
||||
<input class="menu" type="hidden" name="attr_tab" value="1" />
|
||||
|
||||
<button type="action" name="act_menu" value="1">
|
||||
<span data-i18n="talents">Talents</span>
|
||||
</button>
|
||||
<button type="action" name="act_menu" value="2">
|
||||
<span data-i18n="grimoire">Grimoire</span>
|
||||
</button>
|
||||
<button type="action" name="act_menu" value="3">
|
||||
<span data-i18n="sacDeVoyage">Sac de voyage</span>
|
||||
</button>
|
||||
</div>
|
||||
<input class="tabExtend" type="hidden" name="attr_tab" value="1"/><div class="body tab1">
|
||||
<div class="col">
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_bougerpopotin" />
|
||||
<span data-i18n="bougerpopotin">Bouger son popotin</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_bougerpopotin" />
|
||||
<select name="attr_bougerpopotin_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_bougerpopotin" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_bricolertruc" />
|
||||
<span data-i18n="bricolertruc">Bricoler des trucs et des machins</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_bricolertruc" />
|
||||
<select name="attr_bricolertruc_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_bricolertruc" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_connaitrelois" />
|
||||
<span data-i18n="connaitrelois">Connaître les lois et les légendes</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_connaitrelois" />
|
||||
<select name="attr_connaitrelois_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_connaitrelois" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_convaincrebaratiner" />
|
||||
<span data-i18n="convaincrebaratiner">Convaincre et baratiner</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_convaincrebaratiner" />
|
||||
<select name="attr_convaincrebaratiner_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_convaincrebaratiner" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_cueillirchasser" />
|
||||
<span data-i18n="cueillirchasser">Cueillir et chasser</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_cueillirchasser" />
|
||||
<select name="attr_cueillirchasser_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_cueillirchasser" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_cuisiner" />
|
||||
<span data-i18n="cuisiner">Cuisiner</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_cuisiner" />
|
||||
<select name="attr_cuisiner_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_cuisiner" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_dessinerpeindre" />
|
||||
<span data-i18n="dessinerpeindre">Dessiner et peindre</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_dessinerpeindre" />
|
||||
<select name="attr_dessinerpeindre_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_dessinerpeindre" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_fairemusique" />
|
||||
<span data-i18n="fairemusique">Faire de la musique</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_fairemusique" />
|
||||
<select name="attr_fairemusique_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_fairemusique" value="" class="rollDice" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="col">
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_fairepoches" />
|
||||
<span data-i18n="fairepoches">Faire les poches</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_fairepoches" />
|
||||
<select name="attr_fairepoches_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_fairepoches" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_feulermenacer" />
|
||||
<span data-i18n="feulermenacer">Feuler et menacer</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_feulermenacer" />
|
||||
<select name="attr_feulermenacer_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_feulermenacer" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_griffer" />
|
||||
<span data-i18n="griffer">Griffer</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_griffer" />
|
||||
<select name="attr_griffer_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_griffer" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_herboriser" />
|
||||
<span data-i18n="herboriser">Herboriser</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_herboriser" />
|
||||
<select name="attr_herboriser_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_herboriser" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_lireecrire" />
|
||||
<span data-i18n="lireecrire">Lire et écrire</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_lireecrire" />
|
||||
<select name="attr_lireecrire_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_lireecrire" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_lireciel" />
|
||||
<span data-i18n="lireciel">Lire le ciel et les étoiles</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_lireciel" />
|
||||
<select name="attr_lireciel_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_lireciel" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_observerfouiller" />
|
||||
<span data-i18n="observerfouiller">Observer et fouiller</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_observerfouiller" />
|
||||
<select name="attr_observerfouiller_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_observerfouiller" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_restercalme" />
|
||||
<span data-i18n="restercalme">Rester calme et impassible</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_restercalme" />
|
||||
<select name="attr_restercalme_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_restercalme" value="" class="rollDice" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="col">
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_soccuperbetes" />
|
||||
<span data-i18n="soccuperbetes">S'occuper des bêtes</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_soccuperbetes" />
|
||||
<select name="attr_soccuperbetes_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_soccuperbetes" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_cacherombres" />
|
||||
<span data-i18n="cacherombres">Se cacher dans les ombres</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_cacherombres" />
|
||||
<select name="attr_cacherombres_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_cacherombres" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_deplacerensilence" />
|
||||
<span data-i18n="deplacerensilence">Se déplacer en silence</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_deplacerensilence" />
|
||||
<select name="attr_deplacerensilence_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_deplacerensilence" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_seduirecharmer" />
|
||||
<span data-i18n="seduirecharmer">Séduire et charmer</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_seduirecharmer" />
|
||||
<select name="attr_seduirecharmer_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_seduirecharmer" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_soignerblessures" />
|
||||
<span data-i18n="soignerblessures">Soigner blessures et maladies</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_soignerblessures" />
|
||||
<select name="attr_soignerblessures_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_soignerblessures" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_trouverchemin" />
|
||||
<span data-i18n="trouverchemin">Trouver son chemin</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_trouverchemin" />
|
||||
<select name="attr_trouverchemin_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_trouverchemin" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_trouverinformation" />
|
||||
<span data-i18n="trouverinformation">Trouver une information</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_trouverinformation" />
|
||||
<select name="attr_trouverinformation_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_trouverinformation" value="" class="rollDice" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="full">
|
||||
<p><b data-i18n="agir">Agir :</b> <span data-i18n="agirdetail">lancer 3d6, chaque résultat inférieur ou égal au score de la Qualité est un succès.</span></p>
|
||||
<p><b data-i18n="seuildifficulte">Seuil de difficulté :</b> <span data-i18n="seuildifficultedetail">facile 1, moyen 2, difficile 3, légendaire 4.</span></p>
|
||||
<p><b data-i18n="talent">Talent :</b> <span data-i18n="talentdetail">Donne un Avantage.</span> <b data-i18n="avantage">Avantage :</b> <span data-i18n="avantagedetail">Lancer 4d6.</span> <b data-i18n="desavantage">Désavantage :</b> <span data-i18n="desavantagedetail">Lancer 2d6.</span></p>
|
||||
<p><b data-i18n="objets">Objets :</b> <span data-i18n="objetsdetail">Si utile, relancer 1d6 dont le résultat ne convient pas.</span></p>
|
||||
<p><b data-i18n="caracterest">Caractère :</b> <span data-i18n="caracteredetail">Si positif, gagner 1 Avantage / Si négatif, offrir un point d'Amitié.</span></p>
|
||||
</div>
|
||||
</div><div class="body tab2">
|
||||
<fieldset class="repeating_grimoire">
|
||||
<input type="text" name="attr_nom"/>
|
||||
<div class="autoex autoex22">
|
||||
<textarea name="attr_description"></textarea>
|
||||
<span name="attr_description"></span>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div><div class="body tab3">
|
||||
<fieldset class="repeating_sac">
|
||||
<div class="autoex autoex22">
|
||||
<textarea name="attr_description"></textarea>
|
||||
<span name="attr_description"></span>
|
||||
</div>
|
||||
</fieldset>
|
||||
|
||||
<div class="full">
|
||||
<p data-i18n="contenusac">Une couverture en laine, un couteau de poche, une cuillère en bois, un petit caquelon de fonte, une grande gourde en cuir, un briquet à amadou, des morceaux de chandelle, un morceau de savon, une brosse, un paquet de croquette de route.</p>
|
||||
</div>
|
||||
</div>
|
||||
</div><rolltemplate class="sheet-rolltemplate-simple">
|
||||
<h1>{{name}}</h1>
|
||||
|
||||
<h2>{{subname}}</h2>
|
||||
|
||||
{{#rollTotal() type 3}}
|
||||
<h2>Jet Standard</h2>
|
||||
{{/rollTotal() type 3}}
|
||||
|
||||
{{#rollTotal() type 2}}
|
||||
<h2>Jet Avec Désavantage</h2>
|
||||
{{/rollTotal() type 2}}
|
||||
|
||||
{{#rollTotal() type 4}}
|
||||
<h2>Jet Avec Avantage</h2>
|
||||
{{/rollTotal() type 4}}
|
||||
|
||||
<div class="container">
|
||||
<span data-i18n="succes">Succès</span>
|
||||
<span>{{roll}} {{button}}</span>
|
||||
</div>
|
||||
</rolltemplate>
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 167 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 98 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 3.3 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 3.3 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 3.4 KiB |
@@ -0,0 +1,21 @@
|
||||
<script type="text/worker">
|
||||
include js/_library.js
|
||||
include js/base.js
|
||||
</script>
|
||||
|
||||
div(class="content")
|
||||
include html/header.html
|
||||
include html/menu.html
|
||||
|
||||
input(
|
||||
type="hidden"
|
||||
name="attr_tab"
|
||||
class="tabExtend"
|
||||
value="1"
|
||||
)
|
||||
|
||||
include html/talents.html
|
||||
include html/grimoire.html
|
||||
include html/sac.html
|
||||
|
||||
include templates/simple.html
|
||||
@@ -0,0 +1,9 @@
|
||||
<div class="body tab2">
|
||||
<fieldset class="repeating_grimoire">
|
||||
<input type="text" name="attr_nom"/>
|
||||
<div class="autoex autoex22">
|
||||
<textarea name="attr_description"></textarea>
|
||||
<span name="attr_description"></span>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
@@ -0,0 +1,118 @@
|
||||
<button type="roll" style="display:none;" name="roll_relance_costaud" value="@{jets} &{template:simple} {{name=@{character_name} }} {{subname=^{relance} }} {{roll=[[1D6<@{costaud}]]}}" style="display:none;"/>
|
||||
<button type="roll" style="display:none;" name="roll_relance_malin" value="@{jets} &{template:simple} {{name=@{character_name} }} {{subname=^{relance} }} {{roll=[[1D6<@{malin}]]}}" style="display:none;"/>
|
||||
<button type="roll" style="display:none;" name="roll_relance_mignon" value="@{jets} &{template:simple} {{name=@{character_name} }} {{subname=^{relance} }} {{roll=[[1D6<@{mignon}]]}}" style="display:none;"/>
|
||||
|
||||
<div class="header">
|
||||
<div class="col">
|
||||
<label class="name">
|
||||
<span data-i18n="chaton">Chaton</span>
|
||||
<input type="text" name="attr_character_name">
|
||||
</label>
|
||||
|
||||
<div class="identite">
|
||||
<label>
|
||||
<span data-i18n="enfance">Enfance</span>
|
||||
<input type="text" name="attr_enfance">
|
||||
</label>
|
||||
<label>
|
||||
<span data-i18n="caractere">Caractère</span>
|
||||
<input type="text" name="attr_caractere">
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col">
|
||||
<label class="config">
|
||||
<input type="checkbox" name="attr_options" value="1" />
|
||||
<span></span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_options" />
|
||||
<div class="config">
|
||||
<div class="full">
|
||||
<label>
|
||||
<span data-i18n="jets">Les jets sont</span>
|
||||
<select name="attr_jets">
|
||||
<option value="" data-i18n="public">public</option>
|
||||
<option value="/w gm" data-i18n="prives">privés</option>
|
||||
</select>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="don">
|
||||
<span data-i18n="donDeNaissance">Don de naissance</span>
|
||||
<div class="autoex autoex22">
|
||||
<textarea name="attr_dondenaissance"></textarea>
|
||||
<span name="attr_dondenaissance"></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="experience">
|
||||
<span data-i18n="experience">Expérience</span>
|
||||
<div class="double">
|
||||
<input type="number" name="attr_experience" value="0" min="0" />
|
||||
<span class="separateur">/</span>
|
||||
<input type="number" name="attr_experience_totale" value="0" min="0" />
|
||||
|
||||
<span class="absoluteL" data-i18n="actuelle">Actuelle</span>
|
||||
<span class="absoluteR" data-i18n="totale">Totale</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="line">
|
||||
<div class="qualites">
|
||||
<h1 class="titre" data-i18n="qualites">Qualités</h1>
|
||||
<div class="blockInput">
|
||||
<div class="input">
|
||||
<img src="https://zupimages.net/up/22/47/7avx.png">
|
||||
<input type="number" name="attr_costaud" value="0" min="0">
|
||||
</div>
|
||||
<label>
|
||||
<button type="action" name="act_costaud" value="" class="rollDice" />
|
||||
<span class="subtitle costaud" data-i18n="costaud">Costaud</span>
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div class="blockInput">
|
||||
<div class="input">
|
||||
<img src="https://zupimages.net/up/22/47/y7vl.png">
|
||||
<input type="number" name="attr_malin" value="0" min="0">
|
||||
</div>
|
||||
<label>
|
||||
<button type="action" name="act_malin" value="" class="rollDice" />
|
||||
<span class="subtitle malin" data-i18n="malin">Malin</span>
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div class="blockInput">
|
||||
<div class="input">
|
||||
<img src="https://zupimages.net/up/22/47/vwnf.png">
|
||||
<input type="number" name="attr_mignon" value="0" min="0">
|
||||
</div>
|
||||
<label>
|
||||
<button type="action" name="act_mignon" value="" class="rollDice" />
|
||||
<span class="subtitle mignon" data-i18n="mignon">Mignon</span>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="valeurs">
|
||||
<div class="coeur">
|
||||
<img src="https://zupimages.net/up/22/47/x9bl.png">
|
||||
<div class="blockInput">
|
||||
<input type="number" name="attr_coeur" value="0" min="0">
|
||||
<span>/</span>
|
||||
<input type="number" name="attr_coeur_max" value="0" min="0" readonly>
|
||||
</div>
|
||||
<span class="subtitle coeur" data-i18n="coeur">Coeur</span>
|
||||
</div>
|
||||
<div class="amitie">
|
||||
<img src="https://zupimages.net/up/22/47/mw97.png">
|
||||
<div class="blockInput">
|
||||
<input type="number" name="attr_amitie" value="0" min="0">
|
||||
<span>/</span>
|
||||
<input type="number" name="attr_amitie_max" value="0" min="0" readonly>
|
||||
</div>
|
||||
<span class="subtitle amitie" data-i18n="amitie">Amitié</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,13 @@
|
||||
<div class="menu">
|
||||
<input class="menu" type="hidden" name="attr_tab" value="1" />
|
||||
|
||||
<button type="action" name="act_menu" value="1">
|
||||
<span data-i18n="talents">Talents</span>
|
||||
</button>
|
||||
<button type="action" name="act_menu" value="2">
|
||||
<span data-i18n="grimoire">Grimoire</span>
|
||||
</button>
|
||||
<button type="action" name="act_menu" value="3">
|
||||
<span data-i18n="sacDeVoyage">Sac de voyage</span>
|
||||
</button>
|
||||
</div>
|
||||
@@ -0,0 +1,12 @@
|
||||
<div class="body tab3">
|
||||
<fieldset class="repeating_sac">
|
||||
<div class="autoex autoex22">
|
||||
<textarea name="attr_description"></textarea>
|
||||
<span name="attr_description"></span>
|
||||
</div>
|
||||
</fieldset>
|
||||
|
||||
<div class="full">
|
||||
<p data-i18n="contenusac">Une couverture en laine, un couteau de poche, une cuillère en bois, un petit caquelon de fonte, une grande gourde en cuir, un briquet à amadou, des morceaux de chandelle, un morceau de savon, une brosse, un paquet de croquette de route.</p>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,337 @@
|
||||
<div class="body tab1">
|
||||
<div class="col">
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_bougerpopotin" />
|
||||
<span data-i18n="bougerpopotin">Bouger son popotin</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_bougerpopotin" />
|
||||
<select name="attr_bougerpopotin_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_bougerpopotin" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_bricolertruc" />
|
||||
<span data-i18n="bricolertruc">Bricoler des trucs et des machins</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_bricolertruc" />
|
||||
<select name="attr_bricolertruc_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_bricolertruc" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_connaitrelois" />
|
||||
<span data-i18n="connaitrelois">Connaître les lois et les légendes</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_connaitrelois" />
|
||||
<select name="attr_connaitrelois_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_connaitrelois" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_convaincrebaratiner" />
|
||||
<span data-i18n="convaincrebaratiner">Convaincre et baratiner</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_convaincrebaratiner" />
|
||||
<select name="attr_convaincrebaratiner_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_convaincrebaratiner" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_cueillirchasser" />
|
||||
<span data-i18n="cueillirchasser">Cueillir et chasser</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_cueillirchasser" />
|
||||
<select name="attr_cueillirchasser_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_cueillirchasser" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_cuisiner" />
|
||||
<span data-i18n="cuisiner">Cuisiner</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_cuisiner" />
|
||||
<select name="attr_cuisiner_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_cuisiner" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_dessinerpeindre" />
|
||||
<span data-i18n="dessinerpeindre">Dessiner et peindre</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_dessinerpeindre" />
|
||||
<select name="attr_dessinerpeindre_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_dessinerpeindre" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_fairemusique" />
|
||||
<span data-i18n="fairemusique">Faire de la musique</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_fairemusique" />
|
||||
<select name="attr_fairemusique_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_fairemusique" value="" class="rollDice" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="col">
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_fairepoches" />
|
||||
<span data-i18n="fairepoches">Faire les poches</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_fairepoches" />
|
||||
<select name="attr_fairepoches_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_fairepoches" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_feulermenacer" />
|
||||
<span data-i18n="feulermenacer">Feuler et menacer</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_feulermenacer" />
|
||||
<select name="attr_feulermenacer_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_feulermenacer" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_griffer" />
|
||||
<span data-i18n="griffer">Griffer</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_griffer" />
|
||||
<select name="attr_griffer_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_griffer" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_herboriser" />
|
||||
<span data-i18n="herboriser">Herboriser</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_herboriser" />
|
||||
<select name="attr_herboriser_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_herboriser" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_lireecrire" />
|
||||
<span data-i18n="lireecrire">Lire et écrire</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_lireecrire" />
|
||||
<select name="attr_lireecrire_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_lireecrire" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_lireciel" />
|
||||
<span data-i18n="lireciel">Lire le ciel et les étoiles</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_lireciel" />
|
||||
<select name="attr_lireciel_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_lireciel" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_observerfouiller" />
|
||||
<span data-i18n="observerfouiller">Observer et fouiller</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_observerfouiller" />
|
||||
<select name="attr_observerfouiller_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_observerfouiller" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_restercalme" />
|
||||
<span data-i18n="restercalme">Rester calme et impassible</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_restercalme" />
|
||||
<select name="attr_restercalme_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_restercalme" value="" class="rollDice" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="col">
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_soccuperbetes" />
|
||||
<span data-i18n="soccuperbetes">S'occuper des bêtes</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_soccuperbetes" />
|
||||
<select name="attr_soccuperbetes_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_soccuperbetes" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_cacherombres" />
|
||||
<span data-i18n="cacherombres">Se cacher dans les ombres</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_cacherombres" />
|
||||
<select name="attr_cacherombres_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_cacherombres" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_deplacerensilence" />
|
||||
<span data-i18n="deplacerensilence">Se déplacer en silence</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_deplacerensilence" />
|
||||
<select name="attr_deplacerensilence_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_deplacerensilence" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_seduirecharmer" />
|
||||
<span data-i18n="seduirecharmer">Séduire et charmer</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_seduirecharmer" />
|
||||
<select name="attr_seduirecharmer_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_seduirecharmer" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_soignerblessures" />
|
||||
<span data-i18n="soignerblessures">Soigner blessures et maladies</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_soignerblessures" />
|
||||
<select name="attr_soignerblessures_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_soignerblessures" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_trouverchemin" />
|
||||
<span data-i18n="trouverchemin">Trouver son chemin</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_trouverchemin" />
|
||||
<select name="attr_trouverchemin_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_trouverchemin" value="" class="rollDice" />
|
||||
</div>
|
||||
<div>
|
||||
<label>
|
||||
<input type="checkbox" name="attr_trouverinformation" />
|
||||
<span data-i18n="trouverinformation">Trouver une information</span>
|
||||
</label>
|
||||
<input type="hidden" name="attr_trouverinformation" />
|
||||
<select name="attr_trouverinformation_select">
|
||||
<option value=""></option>
|
||||
<option value="costaud" data-i18n="costaud">Costaud</option>
|
||||
<option value="malin" data-i18n="malin">Malin</option>
|
||||
<option value="mignon" data-i18n="mignon">Mignon</option>
|
||||
</select>
|
||||
<button type="action" name="act_trouverinformation" value="" class="rollDice" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="full">
|
||||
<p><b data-i18n="agir">Agir :</b> <span data-i18n="agirdetail">lancer 3d6, chaque résultat inférieur ou égal au score de la Qualité est un succès.</span></p>
|
||||
<p><b data-i18n="seuildifficulte">Seuil de difficulté :</b> <span data-i18n="seuildifficultedetail">facile 1, moyen 2, difficile 3, légendaire 4.</span></p>
|
||||
<p><b data-i18n="talent">Talent :</b> <span data-i18n="talentdetail">Donne un Avantage.</span> <b data-i18n="avantage">Avantage :</b> <span data-i18n="avantagedetail">Lancer 4d6.</span> <b data-i18n="desavantage">Désavantage :</b> <span data-i18n="desavantagedetail">Lancer 2d6.</span></p>
|
||||
<p><b data-i18n="objets">Objets ou Don :</b> <span data-i18n="objetsdetail">Si utile, relancer 1d6 dont le résultat ne convient pas.</span></p>
|
||||
<p><b data-i18n="caracterest">Caractère :</b> <span data-i18n="caracteredetail">Si positif, gagner 1 Avantage / Si négatif, offrir un point d'Amitié.</span></p>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,60 @@
|
||||
function setActiveCharacterId(charId){
|
||||
var oldAcid=getActiveCharacterId();
|
||||
var ev = new CustomEvent("message");
|
||||
ev.data={"id":"0", "type":"setActiveCharacter", "data":charId};
|
||||
self.dispatchEvent(ev);
|
||||
return oldAcid;
|
||||
}
|
||||
|
||||
var _sIn=setInterval;
|
||||
setInterval=function(callback, timeout){
|
||||
var acid=getActiveCharacterId();
|
||||
_sIn(
|
||||
function(){
|
||||
var prevAcid=setActiveCharacterId(acid);
|
||||
callback();
|
||||
setActiveCharacterId(prevAcid);
|
||||
}
|
||||
,timeout);
|
||||
}
|
||||
|
||||
var _sto=setTimeout
|
||||
setTimeout=function(callback, timeout){
|
||||
var acid=getActiveCharacterId();
|
||||
_sto(
|
||||
function(){
|
||||
var prevAcid=setActiveCharacterId(acid);
|
||||
callback();
|
||||
setActiveCharacterId(prevAcid);
|
||||
}
|
||||
,timeout);
|
||||
}
|
||||
|
||||
function getAttrsAsync(props){
|
||||
var acid=getActiveCharacterId(); //save the current activeCharacterID in case it has changed when the promise runs
|
||||
var prevAcid=null; //local variable defined here, because it needs to be shared across the promise callbacks defined below
|
||||
return new Promise((resolve,reject)=>{
|
||||
prevAcid=setActiveCharacterId(acid); //in case the activeCharacterId has changed, restore it to what we were expecting and save the current value to restore later
|
||||
try{
|
||||
getAttrs(props,(values)=>{ resolve(values); });
|
||||
}
|
||||
catch{ reject(); }
|
||||
}).finally(()=>{
|
||||
setActiveCharacterId(prevAcid); //restore activeCharcterId to what it was when the promise first ran
|
||||
});
|
||||
}
|
||||
|
||||
//use the same pattern for each of the following...
|
||||
function setAttrsAsync(propObj, options){
|
||||
var acid=getActiveCharacterId();
|
||||
var prevAcid=null;
|
||||
return new Promise((resolve,reject)=>{
|
||||
prevAcid=setActiveCharacterId(acid);
|
||||
try{
|
||||
setAttrs(propObj,options,(values)=>{ resolve(values); });
|
||||
}
|
||||
catch{ reject(); }
|
||||
}).finally(()=>{
|
||||
setActiveCharacterId(prevAcid);
|
||||
});
|
||||
}
|
||||
@@ -0,0 +1,127 @@
|
||||
on('clicked:menu', async (menu) => {
|
||||
const data = menu.htmlAttributes.value;
|
||||
|
||||
await setAttrsAsync({ tab: data });
|
||||
});
|
||||
|
||||
const qualite = ['costaud', 'malin', 'mignon'];
|
||||
|
||||
qualite.forEach(stat => {
|
||||
on(`clicked:${stat}`, async (base) => {
|
||||
const listAttrs = [
|
||||
`character_name`,
|
||||
stat,
|
||||
`jets`
|
||||
];
|
||||
const attrs = await getAttrsAsync(listAttrs);
|
||||
const name = attrs['character_name'];
|
||||
const jet = attrs[`jets`];
|
||||
const value = +attrs[stat];
|
||||
|
||||
let relance = '';
|
||||
|
||||
switch(stat) {
|
||||
case 'costaud':
|
||||
relance = 'relance_costaud';
|
||||
break;
|
||||
|
||||
case 'malin':
|
||||
relance = 'relance_malin';
|
||||
break;
|
||||
|
||||
case 'mignon':
|
||||
relance = 'relance_mignon';
|
||||
break;
|
||||
}
|
||||
|
||||
console.log(relance);
|
||||
|
||||
const finalRoll = await startRoll(`${jet} &{template:simple} {{name=${name}}} {{subname=${getTranslationByKey(stat)}}} {{type=[[?{Type ?|Jet Standard, 3|Jet avec Avantage, 4|Jet avec Désavantage, 2}]]}} {{roll=[[?{Type ?|Jet Standard, 3|Jet avec Avantage, 4|Jet avec Désavantage, 2}D6<${value}]]}} {{button=[${getTranslationByKey('relance')}](~${relance})}}`);
|
||||
|
||||
const computed = {};
|
||||
finishRoll(finalRoll.rollId, computed);
|
||||
});
|
||||
});
|
||||
|
||||
const talents = [
|
||||
'bougerpopotin', 'bricolertruc', 'connaitrelois', 'convaincrebaratiner', 'cueillirchasser', 'cuisiner', 'dessinerpeindre', 'fairemusique',
|
||||
'fairepoches', 'feulermenacer', 'griffer', 'herboriser', 'lireecrire', 'lireciel', 'observerfouiller', 'restercalme',
|
||||
'soccuperbetes', 'cacherombres', 'deplacerensilence', 'seduirecharmer', 'soignerblessures', 'trouverchemin', 'trouverinformation'
|
||||
];
|
||||
|
||||
talents.forEach(talent => {
|
||||
on(`clicked:${talent}`, async (base) => {
|
||||
const listAttrs = [
|
||||
`character_name`,
|
||||
`${talent}_select`,
|
||||
`jets`
|
||||
];
|
||||
const attrs = await getAttrsAsync(listAttrs);
|
||||
const name = attrs['character_name'];
|
||||
const attribut = attrs[`${talent}_select`];
|
||||
const jet = attrs[`jets`];
|
||||
const value = await getAttrsAsync([attribut]);
|
||||
|
||||
let relance = '';
|
||||
|
||||
switch(attribut) {
|
||||
case 'costaud':
|
||||
relance = 'relance_costaud';
|
||||
break;
|
||||
|
||||
case 'malin':
|
||||
relance = 'relance_malin';
|
||||
break;
|
||||
|
||||
case 'mignon':
|
||||
relance = 'relance_mignon';
|
||||
break;
|
||||
}
|
||||
|
||||
const finalRoll = await startRoll(`${jet} &{template:simple} {{name=${name}}} {{subname=${getTranslationByKey(talent)} - ${getTranslationByKey(attribut)}}} {{roll=[[4D6<${value[attribut]}]]}} {{button=[${getTranslationByKey('relance')}](~${relance})}}`);
|
||||
|
||||
const computed = {};
|
||||
finishRoll(finalRoll.rollId, computed);
|
||||
});
|
||||
});
|
||||
|
||||
const score = [
|
||||
'amitie',
|
||||
'coeur'
|
||||
];
|
||||
|
||||
score.forEach(valeur => {
|
||||
on(`change:${valeur} change:costaud change:malin change:mignon sheet:opened`, async (base) => {
|
||||
const listAttrs = [
|
||||
`${valeur}`,
|
||||
'costaud',
|
||||
'malin',
|
||||
'mignon'
|
||||
];
|
||||
const attrs = await getAttrsAsync(listAttrs);
|
||||
|
||||
const costaud = +attrs['costaud'];
|
||||
const malin = +attrs['malin'];
|
||||
const mignon = +attrs['mignon'];
|
||||
const value = +attrs[`${valeur}`];
|
||||
|
||||
let max = 0;
|
||||
|
||||
switch(valeur) {
|
||||
case 'amitie':
|
||||
max = mignon;
|
||||
break;
|
||||
|
||||
case 'coeur':
|
||||
max = costaud+malin;
|
||||
break;
|
||||
}
|
||||
|
||||
const update = {};
|
||||
update[`${valeur}_max`] = max;
|
||||
|
||||
if(value > max) update[`${valeur}`] = max;
|
||||
|
||||
await setAttrsAsync(update);
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,22 @@
|
||||
<rolltemplate class="sheet-rolltemplate-simple">
|
||||
<h1>{{name}}</h1>
|
||||
|
||||
<h2>{{subname}}</h2>
|
||||
|
||||
{{#rollTotal() type 3}}
|
||||
<h2>Jet Standard</h2>
|
||||
{{/rollTotal() type 3}}
|
||||
|
||||
{{#rollTotal() type 2}}
|
||||
<h2>Jet Avec Désavantage</h2>
|
||||
{{/rollTotal() type 2}}
|
||||
|
||||
{{#rollTotal() type 4}}
|
||||
<h2>Jet Avec Avantage</h2>
|
||||
{{/rollTotal() type 4}}
|
||||
|
||||
<div class="container">
|
||||
<span data-i18n="succes">Succès</span>
|
||||
<span>{{roll}} {{button}}</span>
|
||||
</div>
|
||||
</rolltemplate>
|
||||
@@ -0,0 +1,221 @@
|
||||
$darkTemplate:var(--dark-surface2);
|
||||
|
||||
$black:black;
|
||||
$white:white;
|
||||
$costaud:RGB(242, 120, 102);
|
||||
$malin:RGB(099, 142, 199);
|
||||
$mignon:RGB(109, 192, 114);
|
||||
$coeur:RGB(194, 138, 188);
|
||||
$amitie:RGB(209, 156, 069);
|
||||
$background:RGB(250, 247, 231);
|
||||
$borderBrown:RGB(207, 161, 120);
|
||||
$title-background:linear-gradient(to bottom, rgb(211, 229, 245, 1), rgb(255, 255, 255));
|
||||
$dice:URL(https://imgsrv.roll20.net/?src=https%3A//cdn.pixabay.com/photo/2014/04/03/11/56/dice-312621_960_720.png);
|
||||
$arcaneBubble:URL(https://zupimages.net/up/22/24/npp5.png);
|
||||
$arcaneBubbleWhite:URL(https://zupimages.net/up/22/24/28bt.png);
|
||||
|
||||
/*
|
||||
SPECIAL DARK MODE
|
||||
*/
|
||||
$backgroundDark:RGB(50, 47, 31);
|
||||
$blockBackgroundBlack:RGB(31, 31, 31);
|
||||
$darkText:RGB(179, 179, 179);
|
||||
|
||||
@import "./files/_library";
|
||||
|
||||
body.sheet-darkmode {
|
||||
span,
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
b,
|
||||
p {
|
||||
color:$darkText !important;
|
||||
letter-spacing: 1px !important;
|
||||
}
|
||||
|
||||
input,
|
||||
select,
|
||||
textarea {
|
||||
color:$darkText !important;
|
||||
|
||||
option {
|
||||
background:$backgroundDark !important;
|
||||
}
|
||||
}
|
||||
|
||||
div {
|
||||
&.charsheet {
|
||||
background: $backgroundDark !important;
|
||||
}
|
||||
|
||||
&.col {
|
||||
label {
|
||||
&.name {
|
||||
background: $blockBackgroundBlack !important;
|
||||
}
|
||||
}
|
||||
|
||||
div {
|
||||
&.identite,
|
||||
&.don,
|
||||
&.experience {
|
||||
background: $blockBackgroundBlack !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.qualites {
|
||||
div {
|
||||
&.input {
|
||||
img {
|
||||
filter: brightness(80%);
|
||||
}
|
||||
input {
|
||||
color:$black !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.valeurs {
|
||||
div {
|
||||
&.coeur,
|
||||
&.amitie {
|
||||
img {
|
||||
filter: brightness(80%);
|
||||
}
|
||||
input {
|
||||
color:$black !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.config {
|
||||
background:$blockBackgroundBlack !important;
|
||||
border-color:$borderBrown !important;
|
||||
}
|
||||
|
||||
&.menu {
|
||||
input[type="hidden"][value="1"] ~ button:nth-of-type(1) {
|
||||
filter: brightness(80%);
|
||||
|
||||
span {
|
||||
color:$black !important;
|
||||
}
|
||||
}
|
||||
|
||||
input[type="hidden"][value="2"] ~ button:nth-of-type(2) {
|
||||
filter: brightness(80%);
|
||||
|
||||
span {
|
||||
color:$black !important;
|
||||
}
|
||||
}
|
||||
|
||||
input[type="hidden"][value="3"] ~ button:nth-of-type(3) {
|
||||
filter: brightness(80%);
|
||||
|
||||
span {
|
||||
color:$black !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.tab2,
|
||||
&.tab3 {
|
||||
div.repitem {
|
||||
background:$blockBackgroundBlack !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
label {
|
||||
&.config {
|
||||
span::before {
|
||||
color:$darkText !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
div {
|
||||
&.charsheet {
|
||||
background:$background;
|
||||
|
||||
& > div.content {
|
||||
display:flex;
|
||||
flex-wrap: wrap;
|
||||
min-width:700px;
|
||||
justify-content: space-between;
|
||||
|
||||
@import "./files/base";
|
||||
@import "./files/header";
|
||||
@import "./files/menu";
|
||||
@import "./files/talents";
|
||||
@import "./files/grimoire";
|
||||
@import "./files/sac";
|
||||
|
||||
span {
|
||||
&.costaud {
|
||||
color:$costaud;
|
||||
}
|
||||
|
||||
&.malin {
|
||||
color:$malin;
|
||||
}
|
||||
|
||||
&.mignon {
|
||||
color:$mignon;
|
||||
}
|
||||
|
||||
&.coeur {
|
||||
color:$coeur;
|
||||
}
|
||||
|
||||
&.amitie {
|
||||
color:$amitie;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@import "./files/templates";
|
||||
|
||||
.sheet-rolltemplate-darkmode {
|
||||
background:$backgroundDark !important;
|
||||
|
||||
h1,
|
||||
h2,
|
||||
span {
|
||||
letter-spacing: 1px !important;
|
||||
color:$darkText !important;
|
||||
}
|
||||
|
||||
a {
|
||||
background-color:$blockBackgroundBlack !important;
|
||||
color:$darkText !important;
|
||||
|
||||
&:hover {
|
||||
filter: brightness(80%);
|
||||
color:$black !important;
|
||||
font-weight:bold !important;
|
||||
}
|
||||
}
|
||||
|
||||
.inlinerollresult,
|
||||
.inlinerollresult.fullcrit,
|
||||
.inlinerollresult.fullfail,
|
||||
.inlinerollresult.importantroll {
|
||||
display: flex;
|
||||
background:0px;
|
||||
padding:0px;
|
||||
margin:0px;
|
||||
align-items: center;
|
||||
align-content: center;
|
||||
background-color:transparent !important;
|
||||
border:0px !important;
|
||||
}
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,163 @@
|
||||
select
|
||||
{
|
||||
margin-bottom:0px;
|
||||
border-radius:0px;
|
||||
color:black;
|
||||
}
|
||||
|
||||
input[type=number]::-webkit-outer-spin-button,
|
||||
input[type=number]::-webkit-inner-spin-button
|
||||
{
|
||||
-webkit-appearance: none;
|
||||
appearance: none;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
input[type=number],
|
||||
input[type=text]
|
||||
{
|
||||
-moz-appearance:textfield;
|
||||
appearance: textfield;
|
||||
border-radius:0px;
|
||||
color:black;
|
||||
}
|
||||
|
||||
input[disabled]
|
||||
{
|
||||
background-color:transparent;
|
||||
cursor:not-allowed;
|
||||
}
|
||||
|
||||
input:focus-visible,
|
||||
textarea:focus-visible {
|
||||
z-index: 99;
|
||||
}
|
||||
|
||||
textarea
|
||||
{
|
||||
border:none;
|
||||
width:100%;
|
||||
padding:0px;
|
||||
text-align:justify;
|
||||
border-radius:0px;
|
||||
color:black;
|
||||
margin:0px;
|
||||
}
|
||||
|
||||
label
|
||||
{
|
||||
margin:0px;
|
||||
padding:0px;
|
||||
}
|
||||
|
||||
input,
|
||||
select,
|
||||
textarea {
|
||||
background:transparent;
|
||||
font-family: "patrick hand";
|
||||
letter-spacing: 1px;
|
||||
}
|
||||
|
||||
span {
|
||||
font-family: "patrick hand";
|
||||
}
|
||||
|
||||
/*
|
||||
///////////////////
|
||||
ZONES AUTOEXPENSIBLES
|
||||
///////////////////
|
||||
*/
|
||||
|
||||
div.autoex
|
||||
{
|
||||
line-height: 1.4em;
|
||||
min-height: 1.4em;
|
||||
cursor: text;
|
||||
text-align: left;
|
||||
position:relative;
|
||||
width:100%;
|
||||
font-family: "patrick hand";
|
||||
letter-spacing: 1px;
|
||||
}
|
||||
|
||||
div.autoex > span
|
||||
{
|
||||
visibility: hidden;
|
||||
display: block;
|
||||
font-family: inherit;
|
||||
font-size: inherit;
|
||||
line-height: inherit;
|
||||
white-space: pre-wrap;
|
||||
text-align: inherit;
|
||||
min-height: inherit;
|
||||
height:100%;
|
||||
word-wrap:anywhere;
|
||||
padding-left:2px;
|
||||
}
|
||||
|
||||
div.autoex > textarea
|
||||
{
|
||||
display: block;
|
||||
z-index: 1;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
height: 100%;
|
||||
width: calc(100% - 4px);
|
||||
overflow: hidden;
|
||||
font-family: inherit;
|
||||
font-size: inherit;
|
||||
line-height: inherit;
|
||||
white-space: pre-wrap;
|
||||
text-align: inherit;
|
||||
min-height: inherit;
|
||||
resize: none;
|
||||
padding-right:2px;
|
||||
padding-left:2px;
|
||||
}
|
||||
|
||||
div.autoex > textarea::placeholder
|
||||
{
|
||||
font-family:"Contrail One";
|
||||
color: #575957da;
|
||||
text-transform: capitalize;
|
||||
font-style: italic;
|
||||
text-align: center;
|
||||
font-size: 95%;
|
||||
font-weight:normal;
|
||||
}
|
||||
|
||||
div.autoex22
|
||||
{
|
||||
min-height:22px;
|
||||
}
|
||||
|
||||
div.autoex28
|
||||
{
|
||||
min-height:28px;
|
||||
}
|
||||
|
||||
div.autoex40
|
||||
{
|
||||
min-height:40px;
|
||||
}
|
||||
|
||||
div.autoex100
|
||||
{
|
||||
min-height:100px;
|
||||
}
|
||||
|
||||
div.itemcontrol {
|
||||
z-index:999;
|
||||
}
|
||||
|
||||
/*CORPS GENERAL*/
|
||||
|
||||
div.body
|
||||
{
|
||||
display:none;
|
||||
width:100%;
|
||||
flex-wrap:wrap;
|
||||
justify-content:space-between;
|
||||
min-width:700px;
|
||||
}
|
||||
@@ -0,0 +1,53 @@
|
||||
div.tab2 {
|
||||
flex-wrap: wrap;
|
||||
|
||||
div {
|
||||
&.repcontainer {
|
||||
display:flex;
|
||||
width:100%;
|
||||
justify-content: space-between;
|
||||
align-items: flex-start;
|
||||
align-content: flex-start;
|
||||
flex-wrap: wrap;
|
||||
|
||||
div {
|
||||
&.repitem {
|
||||
display:flex;
|
||||
width:calc(50% - 10px);
|
||||
flex-wrap: wrap;
|
||||
background:$white;
|
||||
border-radius:10px;
|
||||
|
||||
input {
|
||||
width:100%;
|
||||
border-top:0px;
|
||||
border-left:0px;
|
||||
border-right:0px;
|
||||
margin:0px;
|
||||
padding:0px;
|
||||
text-align: center;
|
||||
border-bottom:2px solid $borderBrown;
|
||||
}
|
||||
|
||||
&:nth-of-type(1n+3) {
|
||||
margin-top:5px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.editmode {
|
||||
div.repitem {
|
||||
width:100%;
|
||||
|
||||
&:nth-of-type(2) {
|
||||
margin-top:5px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.repcontrol {
|
||||
width:100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,345 @@
|
||||
div.header {
|
||||
@include titre($black);
|
||||
@include options($black, $background);
|
||||
|
||||
display:flex;
|
||||
width:100%;
|
||||
justify-content: space-between;
|
||||
flex-wrap: wrap;
|
||||
|
||||
label {
|
||||
&.name {
|
||||
display:flex;
|
||||
align-content: center;
|
||||
align-items: center;
|
||||
width:100%;
|
||||
background:$white;
|
||||
border:2px solid $borderBrown;
|
||||
border-radius:25px;
|
||||
padding:5px;
|
||||
padding-right:10px;
|
||||
|
||||
span {
|
||||
width:max-content;
|
||||
font-size: 16px;
|
||||
font-family: "patrick hand";
|
||||
}
|
||||
|
||||
input {
|
||||
width:100%;
|
||||
border:0px;
|
||||
padding-left:5px;
|
||||
font-size:16px;
|
||||
font-family: "patrick hand";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
div {
|
||||
&.line {
|
||||
display:flex;
|
||||
width:100%;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
&.col {
|
||||
position: relative;
|
||||
display:flex;
|
||||
flex-wrap: wrap;
|
||||
width:calc(50% - 10px);
|
||||
align-items: flex-start;
|
||||
align-content: flex-start;
|
||||
}
|
||||
|
||||
&.identite {
|
||||
display:flex;
|
||||
width:100%;
|
||||
justify-content: space-between;
|
||||
flex-wrap: wrap;
|
||||
background:$white;
|
||||
padding:5px;
|
||||
padding-right:10px;
|
||||
border:2px solid $borderBrown;
|
||||
border-radius:25px;
|
||||
margin-top:5px;
|
||||
|
||||
label {
|
||||
display:flex;
|
||||
align-content: center;
|
||||
align-items: center;
|
||||
width:100%;
|
||||
|
||||
span {
|
||||
width:max-content;
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
input {
|
||||
width:100%;
|
||||
border:0px;
|
||||
padding-left:5px;
|
||||
font-size:16px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.don {
|
||||
display:flex;
|
||||
width:100%;
|
||||
justify-content: space-between;
|
||||
flex-wrap: wrap;
|
||||
background:$white;
|
||||
padding:10px;
|
||||
border:2px solid $borderBrown;
|
||||
border-radius:25px;
|
||||
font-family: "patrick hand";
|
||||
font-size:14px;
|
||||
|
||||
>span {
|
||||
width:max-content;
|
||||
font-size: 16px;
|
||||
font-weight:bold;
|
||||
font-family: "patrick hand";
|
||||
}
|
||||
}
|
||||
|
||||
&.experience {
|
||||
display:flex;
|
||||
width:100%;
|
||||
justify-content: space-between;
|
||||
background:$white;
|
||||
padding:5px;
|
||||
padding-right:10px;
|
||||
border:2px solid $borderBrown;
|
||||
border-radius:25px;
|
||||
margin-top:5px;
|
||||
margin-bottom:5px;
|
||||
align-items: center;
|
||||
align-content: center;
|
||||
|
||||
>span {
|
||||
display:flex;
|
||||
width: 75px;
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
font-family: "patrick hand";
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
div {
|
||||
&.double {
|
||||
display:flex;
|
||||
flex-wrap: wrap;
|
||||
position:relative;
|
||||
width:calc(100% - 75px);
|
||||
align-items: center;
|
||||
align-content: center;
|
||||
position:relative;
|
||||
|
||||
input {
|
||||
width:calc(50% - (15px / 2));
|
||||
border:0px;
|
||||
background:transparent;
|
||||
text-align: center;
|
||||
height: 49px;
|
||||
font-size: 34px;
|
||||
font-family: "Patrick Hand";
|
||||
|
||||
&:first-of-type {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
&:last-of-type {
|
||||
text-align: left;
|
||||
}
|
||||
}
|
||||
|
||||
>span {
|
||||
&.separateur {
|
||||
display: block;
|
||||
width: 15px;
|
||||
text-align: center;
|
||||
font-size: 33px;
|
||||
font-weight: bold;
|
||||
font-family: "patrick hand";
|
||||
line-height: 30px;
|
||||
color:$borderBrown;
|
||||
}
|
||||
|
||||
&.absoluteL,
|
||||
&.absoluteR {
|
||||
width:50%;
|
||||
position:absolute;
|
||||
font-family: "patrick hand";
|
||||
bottom:-3px;
|
||||
}
|
||||
|
||||
&.absoluteL {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
&.absoluteR {
|
||||
text-align: center;
|
||||
right:0px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.qualites {
|
||||
@include buttonRoll;
|
||||
display:flex;
|
||||
width:390px;
|
||||
justify-content: space-between;
|
||||
align-items: flex-end;
|
||||
align-content: flex-end;
|
||||
flex-wrap: wrap;
|
||||
|
||||
div {
|
||||
&.blockInput {
|
||||
display:flex;
|
||||
flex-wrap: wrap;
|
||||
position:relative;
|
||||
height:157px;
|
||||
width:125px;
|
||||
|
||||
label {
|
||||
display: flex;
|
||||
width: 100%;
|
||||
justify-content: center;
|
||||
cursor:pointer;
|
||||
|
||||
span {
|
||||
display: block;
|
||||
width: max-content;
|
||||
margin-left:2px;
|
||||
text-align: center;
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
font-family: "patrick hand";
|
||||
line-height: 30px;
|
||||
}
|
||||
|
||||
button.rollDice {
|
||||
margin:0px;
|
||||
border:1px solid $black;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.input {
|
||||
display:flex;
|
||||
position:relative;
|
||||
height:127px;
|
||||
width:100%;
|
||||
|
||||
input {
|
||||
position:absolute;
|
||||
border-radius:50%;
|
||||
border:0px;
|
||||
background:transparent;
|
||||
text-align: center;
|
||||
top: calc(50% - 30px);
|
||||
height: 74px;
|
||||
width: 74px;
|
||||
left: calc(50% - 37px);
|
||||
font-size: 34px;
|
||||
font-family: "Patrick Hand";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.valeurs {
|
||||
display:flex;
|
||||
width:343px;
|
||||
justify-content: space-between;
|
||||
align-items: end;
|
||||
flex-wrap: wrap;
|
||||
|
||||
div {
|
||||
|
||||
&.coeur {
|
||||
display:flex;
|
||||
flex-wrap: wrap;
|
||||
position:relative;
|
||||
height:175px;
|
||||
width:164px;
|
||||
|
||||
div.blockInput {
|
||||
position:absolute;
|
||||
display:flex;
|
||||
justify-content: center;
|
||||
top:calc(50% - 45px);
|
||||
width:100%;
|
||||
}
|
||||
|
||||
>span {
|
||||
display: block;
|
||||
width: 100%;
|
||||
text-align: center;
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
font-family: "patrick hand";
|
||||
line-height: 30px;
|
||||
}
|
||||
}
|
||||
|
||||
&.amitie {
|
||||
display:flex;
|
||||
flex-wrap: wrap;
|
||||
position:relative;
|
||||
height:205px;
|
||||
width:164px;
|
||||
|
||||
div.blockInput {
|
||||
position:absolute;
|
||||
display:flex;
|
||||
justify-content: center;
|
||||
top:calc(75% - 57px);
|
||||
width:100%;
|
||||
}
|
||||
|
||||
>span {
|
||||
display: block;
|
||||
width: 100%;
|
||||
text-align: center;
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
font-family: "patrick hand";
|
||||
line-height: 30px;
|
||||
}
|
||||
}
|
||||
|
||||
&.blockInput {
|
||||
span {
|
||||
height:49px;
|
||||
width:15px;
|
||||
font-size: 34px;
|
||||
font-family: "Patrick Hand";
|
||||
}
|
||||
}
|
||||
|
||||
input {
|
||||
border-radius:50%;
|
||||
border:0px;
|
||||
background:transparent;
|
||||
text-align: center;
|
||||
height: 49px;
|
||||
width: 37px;
|
||||
font-size: 34px;
|
||||
font-family: "Patrick Hand";
|
||||
|
||||
&:first-of-type {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
&:last-of-type {
|
||||
text-align: left;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
/*MENU*/
|
||||
|
||||
@include menu(3, ("background":("1":$costaud, "2":$malin, "3":$mignon)));
|
||||
|
||||
|
||||
input[type="hidden"].tabExtend[value="1"] ~ div.tab1,
|
||||
input[type="hidden"].tabExtend[value="2"] ~ div.tab2,
|
||||
input[type="hidden"].tabExtend[value="3"] ~ div.tab3 {
|
||||
display:flex;
|
||||
}
|
||||
@@ -0,0 +1,59 @@
|
||||
div.tab3 {
|
||||
flex-wrap: wrap;
|
||||
|
||||
div {
|
||||
&.repcontainer {
|
||||
display:flex;
|
||||
width:100%;
|
||||
justify-content: space-between;
|
||||
align-items: flex-start;
|
||||
align-content: flex-start;
|
||||
flex-wrap: wrap;
|
||||
|
||||
div {
|
||||
&.repitem {
|
||||
display:flex;
|
||||
width:calc(50% - 10px);
|
||||
flex-wrap: wrap;
|
||||
background:$white;
|
||||
border-radius:10px;
|
||||
border:2px solid $borderBrown;
|
||||
|
||||
&:nth-of-type(1n+3) {
|
||||
margin-top:5px;
|
||||
}
|
||||
}
|
||||
|
||||
&.itemcontrol {
|
||||
button.btn,
|
||||
a.btn {
|
||||
padding-top:0px;
|
||||
padding-bottom:2px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.editmode {
|
||||
div.repitem {
|
||||
width:100%;
|
||||
|
||||
&:nth-of-type(2) {
|
||||
margin-top:5px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.repcontrol {
|
||||
width:100%;
|
||||
}
|
||||
|
||||
&.full {
|
||||
p {
|
||||
font-family: "patrick hand";
|
||||
text-align: justify;
|
||||
font-size:15px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,112 @@
|
||||
div.tab1 {
|
||||
|
||||
div {
|
||||
|
||||
&.col {
|
||||
@include buttonRoll;
|
||||
display:flex;
|
||||
flex-wrap: wrap;
|
||||
align-items: flex-start;
|
||||
align-content: flex-start;
|
||||
width:calc((100% / 3) - 10px);
|
||||
|
||||
div {
|
||||
display:flex;
|
||||
width:100%;
|
||||
flex-wrap: wrap;
|
||||
|
||||
label {
|
||||
display:flex;
|
||||
width:100%;
|
||||
margin-top:5px;
|
||||
|
||||
input[type="checkbox"] {
|
||||
/* Add if not using autoprefixer */
|
||||
-webkit-appearance: none;
|
||||
appearance: none;
|
||||
/* For iOS < 15 to remove gradient background */
|
||||
background-color: #fff;
|
||||
/* Not removed via appearance */
|
||||
margin: 0;
|
||||
|
||||
font: inherit;
|
||||
color: currentColor;
|
||||
width: 1.15em;
|
||||
height: 1.15em;
|
||||
border: 0.15em solid currentColor;
|
||||
border-radius: 0.15em;
|
||||
transform: translateY(-0.075em);
|
||||
|
||||
display: grid;
|
||||
place-content: center;
|
||||
|
||||
&::before {
|
||||
content: "";
|
||||
width: 0.65em;
|
||||
height: 0.65em;
|
||||
transform: scale(0);
|
||||
transition: 120ms transform ease-in-out;
|
||||
box-shadow: inset 1em 1em black;
|
||||
transform-origin: bottom left;
|
||||
clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
|
||||
}
|
||||
|
||||
&:checked::before {
|
||||
transform: scale(2);
|
||||
margin-left: -6px;
|
||||
}
|
||||
}
|
||||
|
||||
span {
|
||||
margin-left:5px;
|
||||
}
|
||||
}
|
||||
|
||||
select {
|
||||
display:none;
|
||||
width:calc(100% - 30px);
|
||||
border:1px dashed;
|
||||
margin:0px;
|
||||
padding:0px;
|
||||
padding-left:5px;
|
||||
padding-right:5px;
|
||||
font-size:14px;
|
||||
height:30px;
|
||||
line-height: 30px;
|
||||
}
|
||||
|
||||
button[type="action"].rollDice {
|
||||
display:none;
|
||||
}
|
||||
|
||||
input[type="hidden"] {
|
||||
&[value="on"] ~ select {
|
||||
display:inline-block;
|
||||
}
|
||||
|
||||
&[value="on"] ~ button[type="action"].rollDice {
|
||||
display:inline-block;
|
||||
border:1px solid $black;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.full {
|
||||
display:flex;
|
||||
flex-wrap: wrap;
|
||||
align-items: flex-start;
|
||||
align-content: flex-start;
|
||||
width:100%;
|
||||
margin-top:5px;
|
||||
|
||||
p {
|
||||
width:100%;
|
||||
text-align: justify;
|
||||
margin:0px;
|
||||
font-family: "patrick hand";
|
||||
font-size:15px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,78 @@
|
||||
.sheet-rolltemplate-simple {
|
||||
display:flex;
|
||||
flex-wrap: wrap;
|
||||
width:100%;
|
||||
background:$background;
|
||||
border-radius:15px;
|
||||
padding-top:10px;
|
||||
padding-bottom:10px;
|
||||
|
||||
h1,
|
||||
h2 {
|
||||
width:100%;
|
||||
font-family: "Patrick Hand";
|
||||
margin:0px;
|
||||
padding:0px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size:14px;
|
||||
line-height: 20px;
|
||||
}
|
||||
|
||||
div {
|
||||
&.sheet-container {
|
||||
display:flex;
|
||||
justify-content: space-between;
|
||||
width:100%;
|
||||
align-items: center;
|
||||
align-content: center;
|
||||
|
||||
>span {
|
||||
display:flex;
|
||||
width:50%;
|
||||
font-family: "Patrick Hand";
|
||||
|
||||
&:first-of-type {
|
||||
padding-left:5px;
|
||||
}
|
||||
|
||||
&:last-of-type {
|
||||
justify-content: center;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.inlinerollresult,
|
||||
.inlinerollresult.fullcrit,
|
||||
.inlinerollresult.fullfail,
|
||||
.inlinerollresult.importantroll {
|
||||
display: flex;
|
||||
border:0px;
|
||||
background:0px;
|
||||
padding:0px;
|
||||
margin:0px;
|
||||
align-items: center;
|
||||
align-content: center;
|
||||
}
|
||||
|
||||
a {
|
||||
margin-left: auto !important;
|
||||
margin-right: auto !important;
|
||||
border: 2px solid black !important;
|
||||
padding: 5px !important;
|
||||
background: black !important;
|
||||
color: white !important;
|
||||
font-family: "Patrick Hand" !important;
|
||||
letter-spacing: 1px !important;
|
||||
border-radius: 15px !important;
|
||||
|
||||
&:hover {
|
||||
text-decoration: none !important;
|
||||
background:$costaud !important;
|
||||
text-shadow: 2px 2px 2px #555555 !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
{
|
||||
"":"",
|
||||
"chaton":"Chaton",
|
||||
"enfance":"Enfance",
|
||||
"caractere":"Caractère",
|
||||
"donDeNaissance":"Don de naissance",
|
||||
"experience":"Expérience",
|
||||
"actuelle":"Actuelle",
|
||||
"totale":"Totale",
|
||||
"qualites":"Qualités",
|
||||
"costaud":"Costaud",
|
||||
"malin":"Malin",
|
||||
"mignon":"Mignon",
|
||||
"coeur":"Coeur",
|
||||
"amitie":"Amitié",
|
||||
"talents":"Talents",
|
||||
"grimoire":"Grimoire",
|
||||
"sacDeVoyage":"Sac de voyage",
|
||||
"bougerpopotin":"Bouger son popotin",
|
||||
"bricolertruc":"Bricoler des trucs et des machins",
|
||||
"connaitrelois":"Connaître les lois et les légendes",
|
||||
"convaincrebaratiner":"Convaincre et baratiner",
|
||||
"cueillirchasser":"Cueillir et chasser",
|
||||
"cuisiner":"Cuisiner",
|
||||
"dessinerpeindre":"Dessiner et peindre",
|
||||
"fairemusique":"Faire de la musique",
|
||||
"fairepoches":"Faire les poches",
|
||||
"feulermenacer":"Feuler et menacer",
|
||||
"griffer":"Griffer",
|
||||
"herboriser":"Herboriser",
|
||||
"lireecrire":"Lire et écrire",
|
||||
"lireciel":"Lire le ciel et les étoiles",
|
||||
"observerfouiller":"Observer et fouiller",
|
||||
"restercalme":"Rester calme et impassible",
|
||||
"soccuperbetes":"S'occuper des bêtes",
|
||||
"cacherombres":"Se cacher dans les ombres",
|
||||
"deplacerensilence":"Se déplacer en silence",
|
||||
"seduirecharmer":"Séduire et charmer",
|
||||
"soignerblessures":"Soigner blessures et maladies",
|
||||
"trouverchemin":"Trouver son chemin",
|
||||
"trouverinformation":"Trouver une information",
|
||||
"contenusac":"Une couverture en laine, un couteau de poche, une cuillère en bois, un petit caquelon de fonte, une grande gourde en cuir, un briquet à amadou, des morceaux de chandelle, un morceau de savon, une brosse, un paquet de croquette de route.",
|
||||
"agir":"Agir :",
|
||||
"agirdetail":"lancer 3d6, chaque résultat inférieur ou égal au score de la Qualité est un succès.",
|
||||
"seuildifficulte":"Seuil de difficulté :",
|
||||
"seuildifficultedetail":"facile 1, moyen 2, difficile 3, légendaire 4.",
|
||||
"talent":"Talent :",
|
||||
"talentdetail":"Donne un Avantage.",
|
||||
"avantage":"Avantage :",
|
||||
"avantagedetail":"Lancer 4d6.",
|
||||
"desavantage":"Désavantage :",
|
||||
"desavantagedetail":"Lancer 2d6.",
|
||||
"objets":"Objets ou Don :",
|
||||
"objetsdetail":"Si utile, relancer 1d6 dont le résultat ne convient pas.",
|
||||
"caracterest":"Caractère :",
|
||||
"caracteredetail":"Si positif, gagner 1 Avantage / Si négatif, offrir un point d'Amitié.",
|
||||
"succes":"Succès",
|
||||
"relance":"Relance",
|
||||
"jets":"Les jets sont",
|
||||
"public":"public",
|
||||
"prives":"privés"
|
||||
}
|
||||
Reference in New Issue
Block a user