mirror of
https://github.com/Nioux/AideDeJeu.git
synced 2025-10-29 22:45:44 +00:00
Equipement avec filtres
This commit is contained in:
parent
cb7bdda270
commit
0215252ff2
8 changed files with 1237 additions and 120 deletions
|
|
@ -206,6 +206,11 @@
|
|||
<EmbeddedResource Include="..\..\Data\wizard_academician_hd.md" Link="Data\wizard_academician_hd.md" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="..\..\Data\equipment_hd.md" Link="Data\equipment_hd.md" />
|
||||
<EmbeddedResource Include="..\..\Data\equipment_properties_hd.md" Link="Data\equipment_properties_hd.md" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Update="Views\MainNavigationPage.xaml">
|
||||
<Generator>MSBuild:UpdateDesignTimeXaml</Generator>
|
||||
|
|
|
|||
171
AideDeJeu/AideDeJeu/Models/Equipment.cs
Normal file
171
AideDeJeu/AideDeJeu/Models/Equipment.cs
Normal file
|
|
@ -0,0 +1,171 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using AideDeJeu.Tools;
|
||||
using Markdig.Syntax;
|
||||
|
||||
namespace AideDeJeuLib
|
||||
{
|
||||
public class Equipment : Item
|
||||
{
|
||||
public string Text { get; set; }
|
||||
public string Type { get; set; }
|
||||
public string Price { get; set; }
|
||||
public string ArmorClass { get; set; }
|
||||
public string Discretion { get; set; }
|
||||
public string Weight { get; set; }
|
||||
public string Force { get; set; }
|
||||
public string Rarity { get; set; }
|
||||
public string Damages { get; set; }
|
||||
public string Properties { get; set; }
|
||||
public string Unity { get; set; }
|
||||
public string Capacity { get; set; }
|
||||
public string WeightCapacity { get; set; }
|
||||
public string Speed { get; set; }
|
||||
|
||||
public override string Markdown
|
||||
{
|
||||
get
|
||||
{
|
||||
return
|
||||
//$"# {Name}\n\n" +
|
||||
//$"{AltName}\n\n" +
|
||||
Text;
|
||||
}
|
||||
}
|
||||
|
||||
public void ParseBlock(Block block)
|
||||
{
|
||||
if (block is HeadingBlock)
|
||||
{
|
||||
var headingBlock = block as HeadingBlock;
|
||||
if (this.Name == null)
|
||||
{
|
||||
this.Name = headingBlock.Inline.ToMarkdownString();
|
||||
}
|
||||
this.Text += block.ToMarkdownString();
|
||||
}
|
||||
else if (block is ListBlock)
|
||||
{
|
||||
var listBlock = block as ListBlock;
|
||||
if (listBlock.BulletType == '-')
|
||||
{
|
||||
foreach (var inblock in listBlock)
|
||||
{
|
||||
if (inblock is Markdig.Syntax.ListItemBlock)
|
||||
{
|
||||
var listItemBlock = inblock as Markdig.Syntax.ListItemBlock;
|
||||
foreach (var ininblock in listItemBlock)
|
||||
{
|
||||
if (ininblock is Markdig.Syntax.ParagraphBlock)
|
||||
{
|
||||
var paragraphBlock = ininblock as Markdig.Syntax.ParagraphBlock;
|
||||
var str = paragraphBlock.ToMarkdownString();
|
||||
|
||||
var properties = new List<Tuple<string, Action<Equipment, string>>>()
|
||||
{
|
||||
new Tuple<string, Action<Equipment, string>>("AltName: ", (m, s) =>
|
||||
{
|
||||
this.Text += "- " + s; m.AltName = s;
|
||||
}),
|
||||
new Tuple<string, Action<Equipment, string>>("**Type** ", (m, s) =>
|
||||
{
|
||||
this.Text += "- " + str; m.Type = s;
|
||||
}),
|
||||
new Tuple<string, Action<Equipment, string>>("**Prix** ", (m, s) =>
|
||||
{
|
||||
this.Text += "- " + str; m.Price = s;
|
||||
}),
|
||||
new Tuple<string, Action<Equipment, string>>("**Classe d'armure** ", (m, s) =>
|
||||
{
|
||||
this.Text += "- " + str; m.ArmorClass = s;
|
||||
}),
|
||||
new Tuple<string, Action<Equipment, string>>("**Discrétion** ", (m, s) =>
|
||||
{
|
||||
this.Text += "- " + str; m.Discretion = s;
|
||||
}),
|
||||
new Tuple<string, Action<Equipment, string>>("**Poids** ", (m, s) =>
|
||||
{
|
||||
this.Text += "- " + str; m.Weight = s;
|
||||
}),
|
||||
new Tuple<string, Action<Equipment, string>>("**Force** ", (m, s) =>
|
||||
{
|
||||
this.Text += "- " + str; m.Force = s;
|
||||
}),
|
||||
new Tuple<string, Action<Equipment, string>>("**Rareté** ", (m, s) =>
|
||||
{
|
||||
this.Text += "- " + str; m.Rarity = s;
|
||||
}),
|
||||
new Tuple<string, Action<Equipment, string>>("**Dégâts** ", (m, s) =>
|
||||
{
|
||||
this.Text += "- " + str; m.Damages = s;
|
||||
}),
|
||||
new Tuple<string, Action<Equipment, string>>("**Propriétés** ", (m, s) =>
|
||||
{
|
||||
this.Text += "- " + str; m.Properties = s;
|
||||
}),
|
||||
new Tuple<string, Action<Equipment, string>>("**Unité** ", (m, s) =>
|
||||
{
|
||||
this.Text += "- " + str; m.Unity = s;
|
||||
}),
|
||||
new Tuple<string, Action<Equipment, string>>("**Capacité** ", (m, s) =>
|
||||
{
|
||||
this.Text += "- " + str; m.Capacity = s;
|
||||
}),
|
||||
new Tuple<string, Action<Equipment, string>>("**Capacité de charge** ", (m, s) =>
|
||||
{
|
||||
this.Text += "- " + str; m.WeightCapacity = s;
|
||||
}),
|
||||
new Tuple<string, Action<Equipment, string>>("**Vitesse** ", (m, s) =>
|
||||
{
|
||||
this.Text += "- " + str; m.Speed = s;
|
||||
}),
|
||||
new Tuple<string, Action<Equipment, string>>("", (m, s) =>
|
||||
{
|
||||
this.Text += str;
|
||||
}),
|
||||
};
|
||||
|
||||
foreach (var property in properties)
|
||||
{
|
||||
if (str.StartsWith(property.Item1))
|
||||
{
|
||||
property.Item2.Invoke(this, str.Substring(property.Item1.Length));
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
this.Text += "\n";
|
||||
}
|
||||
else
|
||||
{
|
||||
this.Text += block.ToMarkdownString();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
this.Text += block.ToMarkdownString();
|
||||
}
|
||||
}
|
||||
|
||||
public override void Parse(ref ContainerBlock.Enumerator enumerator)
|
||||
{
|
||||
enumerator.MoveNext();
|
||||
while (enumerator.Current != null)
|
||||
{
|
||||
var block = enumerator.Current;
|
||||
if (block.IsNewItem())
|
||||
{
|
||||
return;
|
||||
}
|
||||
ParseBlock(block);
|
||||
enumerator.MoveNext();
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
15
AideDeJeu/AideDeJeu/Models/Equipments.cs
Normal file
15
AideDeJeu/AideDeJeu/Models/Equipments.cs
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
using AideDeJeu.ViewModels;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace AideDeJeuLib
|
||||
{
|
||||
public class Equipments : Items
|
||||
{
|
||||
public override FilterViewModel GetNewFilterViewModel()
|
||||
{
|
||||
return new VFEquipmentFilterViewModel();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -15,6 +15,7 @@ namespace AideDeJeuLib
|
|||
"# VF (H&D)\n\n" +
|
||||
"## [Races](races_hd.md)\n\n" +
|
||||
"## [Classes](classes_hd.md)\n\n" +
|
||||
"## [Équipement](equipment_hd.md)\n\n" +
|
||||
"## [Caractéristiques](abilities_hd.md)\n\n" +
|
||||
"## [Etats spéciaux](conditions_hd.md)\n\n" +
|
||||
"## [Sorts](spells_hd.md)\n\n" +
|
||||
|
|
|
|||
|
|
@ -27,4 +27,37 @@ namespace AideDeJeu.Tools
|
|||
return xpx - xpy;
|
||||
}
|
||||
}
|
||||
|
||||
public class PriceComparer : Comparer<string>
|
||||
{
|
||||
int ToCopperPieces(string price)
|
||||
{
|
||||
price = price.Trim(new char[] { ' ', '\n' });
|
||||
var regex = new Regex("(?<count>\\d?\\d?\\d?\\s?\\d?\\d?\\d?\\s?\\d?\\d?\\d?)\\s?(?<type>p[caeop])");
|
||||
var match = regex.Match(price);
|
||||
int count = 0;
|
||||
int.TryParse(match.Groups["count"].Value.Replace(" ", ""), out count);
|
||||
switch (match.Groups["type"].Value)
|
||||
{
|
||||
case "pc":
|
||||
return count;
|
||||
case "pa":
|
||||
return count * 10;
|
||||
case "pe":
|
||||
return count * 50;
|
||||
case "po":
|
||||
return count * 100;
|
||||
case "pp":
|
||||
return count * 1000;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
public override int Compare(string x, string y)
|
||||
{
|
||||
if (string.IsNullOrEmpty(x) && string.IsNullOrEmpty(y)) return 0;
|
||||
if (string.IsNullOrEmpty(x)) return 1;
|
||||
if (string.IsNullOrEmpty(y)) return -1;
|
||||
return ToCopperPieces(x) - ToCopperPieces(y);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -60,6 +60,10 @@ namespace AideDeJeu.ViewModels
|
|||
MaxPower,
|
||||
Size,
|
||||
Legendary,
|
||||
MinPrice,
|
||||
MaxPrice,
|
||||
MinWeight,
|
||||
MaxWeight,
|
||||
}
|
||||
|
||||
public class Filter : BaseViewModel
|
||||
|
|
@ -729,4 +733,104 @@ namespace AideDeJeu.ViewModels
|
|||
};
|
||||
}
|
||||
#endregion Monsters
|
||||
}
|
||||
|
||||
#region Equipments
|
||||
public abstract class EquipmentFilterViewModel : FilterViewModel
|
||||
{
|
||||
private IEnumerable<Filter> _Filters = null;
|
||||
public override IEnumerable<Filter> Filters
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_Filters == null)
|
||||
{
|
||||
_Filters = new List<Filter>()
|
||||
{
|
||||
new Filter() { Key = FilterKeys.Type, Name = "Type", KeyValues = Types, _Index = 0 },
|
||||
new Filter() { Key = FilterKeys.MinPrice, Name = "Prix Minimum", KeyValues = Prices, _Index = 0 },
|
||||
new Filter() { Key = FilterKeys.MaxPrice, Name = "Prix Maximum", KeyValues = Prices, _Index = 7 },
|
||||
};
|
||||
RegisterFilters();
|
||||
}
|
||||
return _Filters;
|
||||
}
|
||||
}
|
||||
|
||||
public override async Task<IEnumerable<Item>> FilterItems(IEnumerable<Item> items, CancellationToken token = default)
|
||||
{
|
||||
return await Task.Run(() =>
|
||||
{
|
||||
var priceComparer = new PriceComparer();
|
||||
var type = Filters.SingleOrDefault(filter => filter.Key == FilterKeys.Type).SelectedKey ?? "";
|
||||
var minPrice = Filters.SingleOrDefault(filter => filter.Key == FilterKeys.MinPrice).SelectedKey ?? "0 pc";
|
||||
var maxPrice = Filters.SingleOrDefault(filter => filter.Key == FilterKeys.MaxPrice).SelectedKey ?? "1 000 000 po";
|
||||
token.ThrowIfCancellationRequested();
|
||||
return items.Where(item =>
|
||||
{
|
||||
var equipment = item as Equipment;
|
||||
return equipment.Type.ToLower().Contains(type.ToLower()) &&
|
||||
priceComparer.Compare(equipment.Price, minPrice) >= 0 &&
|
||||
priceComparer.Compare(equipment.Price, maxPrice) <= 0 &&
|
||||
(
|
||||
(Helpers.RemoveDiacritics(equipment.Name).ToLower().Contains(Helpers.RemoveDiacritics(SearchText ?? string.Empty).ToLower())) ||
|
||||
(Helpers.RemoveDiacritics(equipment.AltNameText ?? string.Empty).ToLower().Contains(Helpers.RemoveDiacritics(SearchText ?? string.Empty).ToLower()))
|
||||
);
|
||||
}).OrderBy(eq => eq.Name)
|
||||
.AsEnumerable();
|
||||
}, token);
|
||||
|
||||
}
|
||||
|
||||
public abstract List<KeyValuePair<string, string>> Types { get; }
|
||||
|
||||
public abstract List<KeyValuePair<string, string>> Prices { get; }
|
||||
}
|
||||
|
||||
public class VFEquipmentFilterViewModel : EquipmentFilterViewModel
|
||||
{
|
||||
|
||||
public override List<KeyValuePair<string, string>> Types { get; } = new List<KeyValuePair<string, string>>()
|
||||
{
|
||||
new KeyValuePair<string, string>("", "Toutes" ),
|
||||
new KeyValuePair<string, string>("Armure", "Armure" ),
|
||||
new KeyValuePair<string, string>("Armure légère", "Armure légère" ),
|
||||
new KeyValuePair<string, string>("Armure intermédiaire", "Armure intermédiaire" ),
|
||||
new KeyValuePair<string, string>("Armure lourde", "Armure lourde" ),
|
||||
new KeyValuePair<string, string>("Bouclier", "Bouclier" ),
|
||||
new KeyValuePair<string, string>("Arme", "Arme" ),
|
||||
new KeyValuePair<string, string>("Arme de corps-à-corps", "Arme de corps-à-corps" ),
|
||||
new KeyValuePair<string, string>("Arme à distance", "Arme à distance" ),
|
||||
new KeyValuePair<string, string>("Équipement d'aventurier", "Équipement d'aventurier" ),
|
||||
new KeyValuePair<string, string>("Focaliseur arcanique", "Focaliseur arcanique" ),
|
||||
new KeyValuePair<string, string>("Focaliseur druidique", "Focaliseur druidique" ),
|
||||
new KeyValuePair<string, string>("Munitions", "Munitions" ),
|
||||
new KeyValuePair<string, string>("Symbole sacré", "Symbole sacré" ),
|
||||
new KeyValuePair<string, string>("Vêtements", "Vêtements" ),
|
||||
new KeyValuePair<string, string>("Outil", "Outil" ),
|
||||
new KeyValuePair<string, string>("Instrument de musique", "Instrument de musique" ),
|
||||
new KeyValuePair<string, string>("Jeu", "Jeu" ),
|
||||
new KeyValuePair<string, string>("Outil d'artisan", "Outil d'artisan" ),
|
||||
new KeyValuePair<string, string>("Monture", "Monture" ),
|
||||
new KeyValuePair<string, string>("Équipement, sellerie et véhicules à traction", "Équipement, sellerie et véhicules à traction" ),
|
||||
new KeyValuePair<string, string>("Bateau", "Bateau" ),
|
||||
new KeyValuePair<string, string>("Marchandise", "Marchandise" ),
|
||||
new KeyValuePair<string, string>("Nourriture, boisson et logement", "Nourriture, boisson et logement" ),
|
||||
};
|
||||
|
||||
public override List<KeyValuePair<string, string>> Prices { get; } = new List<KeyValuePair<string, string>>()
|
||||
{
|
||||
new KeyValuePair<string, string>("0 pc", "0 pc" ),
|
||||
new KeyValuePair<string, string>("1 pc", "1 pc" ),
|
||||
new KeyValuePair<string, string>("1 pa", "1 pa" ),
|
||||
new KeyValuePair<string, string>("1 po", "1 po" ),
|
||||
new KeyValuePair<string, string>("10 po", "10 po" ),
|
||||
new KeyValuePair<string, string>("100 po", "100 po" ),
|
||||
new KeyValuePair<string, string>("1 000 po", "1 000 po" ),
|
||||
new KeyValuePair<string, string>("10 000 po", "10 000 po" ),
|
||||
new KeyValuePair<string, string>("100 000 po", "100 000 po" ),
|
||||
new KeyValuePair<string, string>("1 000 000 po", "1 000 000 po" ),
|
||||
};
|
||||
}
|
||||
|
||||
#endregion Equipments
|
||||
}
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -1,41 +1,41 @@
|
|||
# Armure lourde
|
||||
|
||||
Les armures les plus lourdes interfèrent avec la capacité de leur porteur à se déplacer rapidement, discrètement et librement. Si le tableau des armures indique « For 13 » ou « For 15 » dans la colonne Force pour un type d’armure, elle réduit la vitesse de celui qui la porte de 3 mètres, à moins qu’il possède une valeur de Force supérieure ou égale au nombre indiqué.
|
||||
Les armures les plus lourdes interfèrent avec la capacité de leur porteur à se déplacer rapidement, discrètement et librement. Si le tableau des armures indique « For 13 » ou « For 15 » dans la colonne Force pour un type d'armure, elle réduit la vitesse de celui qui la porte de 3 mètres, à moins qu'il possède une valeur de Force supérieure ou égale au nombre indiqué.
|
||||
|
||||
# Bouclier
|
||||
|
||||
Un bouclier est en bois ou en métal, et il est porté à la main. Porter un bouclier augmente votre classe d’armure de 2. Vous ne pouvez pas bénéficier de plus d’un bouclier à la fois.
|
||||
Un bouclier est en bois ou en métal, et il est porté à la main. Porter un bouclier augmente votre classe d'armure de 2. Vous ne pouvez pas bénéficier de plus d'un bouclier à la fois.
|
||||
|
||||
# Classe d’armure (CA)
|
||||
# Classe d'armure (CA)
|
||||
|
||||
Les armures permettent de se protéger des attaques. Les armures (et le bouclier) que vous portez déterminent votre classe d’armure de base. Discrétion. Si le tableau des armures indique « désavantage » dans la colonne Discrétion, le porteur de l'armure subit un désavantage pour ses tests de Dextérité (Discrétion).
|
||||
Les armures permettent de se protéger des attaques. Les armures (et le bouclier) que vous portez déterminent votre classe d'armure de base. Discrétion. Si le tableau des armures indique « désavantage » dans la colonne Discrétion, le porteur de l'armure subit un désavantage pour ses tests de Dextérité (Discrétion).
|
||||
|
||||
# Maîtrise des armures
|
||||
|
||||
Il est à la portée de n’importe qui d’enfiler une armure et de prendre un bouclier, mais seuls ceux qui ont la maîtrise des armures savent comment en exploiter toutes les spécificités. Votre classe vous permet de maîtriser certains types d’armures. Si vous portez une armure que vous ne maîtrisez pas, vous subissez un désavantage pour tous les tests de caractéristique, jets de sauvegarde ou d’attaque qui prennent en compte la Force ou la Dextérité, et vous ne pouvez pas lancer de sort.
|
||||
Il est à la portée de n'importe qui d'enfiler une armure et de prendre un bouclier, mais seuls ceux qui ont la maîtrise des armures savent comment en exploiter toutes les spécificités. Votre classe vous permet de maîtriser certains types d'armures. Si vous portez une armure que vous ne maîtrisez pas, vous subissez un désavantage pour tous les tests de caractéristique, jets de sauvegarde ou d'attaque qui prennent en compte la Force ou la Dextérité, et vous ne pouvez pas lancer de sort.
|
||||
|
||||
|
||||
# Armures légères
|
||||
|
||||
Les armures légères sont faites de matériaux souples et fins. Elles sont adaptées aux aventuriers agiles dans la mesure où elles offrent une protection sans sacrifier leur mobilité. Si vous portez une armure légère, vous ajoutez votre modificateur de Dextérité à la valeur de base de votre armure pour déterminer votre classe d’armure.
|
||||
Les armures légères sont faites de matériaux souples et fins. Elles sont adaptées aux aventuriers agiles dans la mesure où elles offrent une protection sans sacrifier leur mobilité. Si vous portez une armure légère, vous ajoutez votre modificateur de Dextérité à la valeur de base de votre armure pour déterminer votre classe d'armure.
|
||||
|
||||
# Armures intermédiaires
|
||||
|
||||
Une armure intermédiaire protège plus qu’une armure légère mais, en contrepartie, elle gène davantage les mouvements. Si vous portez une armure intermédiaire, ajoutez votre modificateur de Dextérité jusqu’à un maximum de +2 à la valeur de base de votre armure afin de déterminer votre classe d’armure.
|
||||
Une armure intermédiaire protège plus qu'une armure légère mais, en contrepartie, elle gène davantage les mouvements. Si vous portez une armure intermédiaire, ajoutez votre modificateur de Dextérité jusqu'à un maximum de +2 à la valeur de base de votre armure afin de déterminer votre classe d'armure.
|
||||
|
||||
# Armures lourdes
|
||||
|
||||
Parmi toutes les catégories d’armures, ce sont les armures lourdes qui offrent la meilleure protection. Ces armures couvrent l’ensemble du corps et sont conçues pour arrêter une large gamme d’attaques. Seuls les guerriers expérimentés arrivent à bien en gérer le poids et l’encombrement.
|
||||
Parmi toutes les catégories d'armures, ce sont les armures lourdes qui offrent la meilleure protection. Ces armures couvrent l'ensemble du corps et sont conçues pour arrêter une large gamme d'attaques. Seuls les guerriers expérimentés arrivent à bien en gérer le poids et l'encombrement.
|
||||
|
||||
Les armures lourdes ne vous permettent pas d’ajouter votre modificateur de Dextérité à votre classe d’armure, mais elles ne vous pénalisent pas non plus si votre modificateur de Dextérité est négatif.
|
||||
Les armures lourdes ne vous permettent pas d'ajouter votre modificateur de Dextérité à votre classe d'armure, mais elles ne vous pénalisent pas non plus si votre modificateur de Dextérité est négatif.
|
||||
|
||||
# Enfiler et retirer une armure
|
||||
|
||||
Le temps mis pour enfiler ou retirer une armure dépend de sa catégorie.
|
||||
|
||||
Enfiler. C’est le temps nécessaire pour mettre une armure. Vous ne bénéficiez de la CA de l’armure que si vous prenez tout le temps indiqué pour l’enfiler.
|
||||
Enfiler. C'est le temps nécessaire pour mettre une armure. Vous ne bénéficiez de la CA de l'armure que si vous prenez tout le temps indiqué pour l'enfiler.
|
||||
|
||||
Retirer. C’est le temps nécessaire pour ôter une armure. Si vous êtes aidé, vous pouvez diviser cette durée par deux.
|
||||
Retirer. C'est le temps nécessaire pour ôter une armure. Si vous êtes aidé, vous pouvez diviser cette durée par deux.
|
||||
|
||||
Enfiler et retirer une armure
|
||||
|
||||
|
|
@ -54,15 +54,15 @@ Enfiler et retirer une armure
|
|||
|
||||
# Armes
|
||||
|
||||
Votre classe vous donne la maîtrise de certaines armes, qui sont représentatives de cette classe, et des outils que vous êtes susceptible d’utiliser. Que vous préfériez manier l’épée longue ou l’arc long, c’est finalement votre capacité à manier votre arme avec efficacité qui peut vous permettre de survivre à une aventure.
|
||||
Votre classe vous donne la maîtrise de certaines armes, qui sont représentatives de cette classe, et des outils que vous êtes susceptible d'utiliser. Que vous préfériez manier l'épée longue ou l'arc long, c'est finalement votre capacité à manier votre arme avec efficacité qui peut vous permettre de survivre à une aventure.
|
||||
|
||||
Le tableau des armes vous présente les armes les plus couramment rencontrées dans l’univers du jeu, leur prix et leur poids, les dégâts qu’elles infligent et les propriétés spéciales dont elles disposent. Les armes sont classées en fonction de deux grandes catégories : corps-à-corps ou à distance. Une arme de corps-à-corps vous permet d’attaquer une cible qui se trouve dans un rayon de 1,50 mètre autour de vous et une arme à distance vous permet d’attaquer une cible qui se trouve loin de vous.
|
||||
Le tableau des armes vous présente les armes les plus couramment rencontrées dans l'univers du jeu, leur prix et leur poids, les dégâts qu'elles infligent et les propriétés spéciales dont elles disposent. Les armes sont classées en fonction de deux grandes catégories : corps-à-corps ou à distance. Une arme de corps-à-corps vous permet d'attaquer une cible qui se trouve dans un rayon de 1,50 mètre autour de vous et une arme à distance vous permet d'attaquer une cible qui se trouve loin de vous.
|
||||
|
||||
# Maîtrise des armes
|
||||
|
||||
Votre race, votre classe et vos dons peuvent vous donner la maîtrise de certaines armes ou catégories d’armes. On trouve deux types d’armes : les armes courantes et les armes de guerre. La plupart des gens maîtrisent les armes courantes. On trouve parmi celles-ci les gourdins et les masses, ainsi que toutes les armes que l’on trouve couramment chez les gens du peuple. Les armes de guerre, notamment les épées, les haches et les armes d’hast, demandent d’avoir reçu un entraînement spécifique pour les manier efficacement. La plupart des guerriers utilisent des armes de guerre, car c’est avec ces armes qu’ils peuvent profiter pleinement de leur entraînement et de leur style de combat.
|
||||
Votre race, votre classe et vos dons peuvent vous donner la maîtrise de certaines armes ou catégories d'armes. On trouve deux types d'armes : les armes courantes et les armes de guerre. La plupart des gens maîtrisent les armes courantes. On trouve parmi celles-ci les gourdins et les masses, ainsi que toutes les armes que l'on trouve couramment chez les gens du peuple. Les armes de guerre, notamment les épées, les haches et les armes d'hast, demandent d'avoir reçu un entraînement spécifique pour les manier efficacement. La plupart des guerriers utilisent des armes de guerre, car c'est avec ces armes qu'ils peuvent profiter pleinement de leur entraînement et de leur style de combat.
|
||||
|
||||
Maîtriser une arme vous permet d’ajouter votre bonus de maîtrise au jet d’attaque à chaque fois que vous attaquez avec cette arme. Si vous utilisez une arme que vous ne maîtrisez pas, vous n’ajoutez pas votre bonus de maîtrise au jet d’attaque.
|
||||
Maîtriser une arme vous permet d'ajouter votre bonus de maîtrise au jet d'attaque à chaque fois que vous attaquez avec cette arme. Si vous utilisez une arme que vous ne maîtrisez pas, vous n'ajoutez pas votre bonus de maîtrise au jet d'attaque.
|
||||
|
||||
# Propriétés des armes
|
||||
|
||||
|
|
@ -72,19 +72,19 @@ De nombreuses armes ont des propriétés spéciales liées à leur utilisation,
|
|||
|
||||
## Allonge
|
||||
|
||||
Ce type d’arme vous permet de gagner 1,50 mètre d’allonge supplémentaire quand vous l’utilisez et quand vous déterminez votre allonge pour effectuer une attaque d’opportunité.
|
||||
Ce type d'arme vous permet de gagner 1,50 mètre d'allonge supplémentaire quand vous l'utilisez et quand vous déterminez votre allonge pour effectuer une attaque d'opportunité.
|
||||
|
||||
## Chargement
|
||||
|
||||
Cette arme nécessite un temps de chargement long qui ne vous permet de tirer qu’une seule fois quand vous utilisez une action, une action bonus ou une réaction, peu importe le nombre d’attaques que vous pouvez normalement faire.
|
||||
Cette arme nécessite un temps de chargement long qui ne vous permet de tirer qu'une seule fois quand vous utilisez une action, une action bonus ou une réaction, peu importe le nombre d'attaques que vous pouvez normalement faire.
|
||||
|
||||
## Finesse
|
||||
|
||||
Quand vous attaquez avec une arme dotée de la propriété finesse, vous pouvez choisir d’ajouter votre modificateur de Force ou de Dextérité aux jets d’attaques et de dégâts. Par contre, vous devez utiliser le même modificateur pour les deux jets.
|
||||
Quand vous attaquez avec une arme dotée de la propriété finesse, vous pouvez choisir d'ajouter votre modificateur de Force ou de Dextérité aux jets d'attaques et de dégâts. Par contre, vous devez utiliser le même modificateur pour les deux jets.
|
||||
|
||||
## Lancer
|
||||
|
||||
Si une arme possède la propriété lancer, vous pouvez la lancer pour faire une attaque à distance. S’il s’agit d’une arme de corps-à-corps, vous utilisez le même modificateur de caractéristique que pour le jet d’attaque et de dégâts d’une attaque de corps-à-corps avec cette arme. Par exemple, si vous lancez une hachette, vous utilisez votre Force ; si vous lancez une dague, vous avez le choix entre utiliser votre Force ou votre Dextérité, dans la mesure où la dague possède aussi la propriété finesse.
|
||||
Si une arme possède la propriété lancer, vous pouvez la lancer pour faire une attaque à distance. S'il s'agit d'une arme de corps-à-corps, vous utilisez le même modificateur de caractéristique que pour le jet d'attaque et de dégâts d'une attaque de corps-à-corps avec cette arme. Par exemple, si vous lancez une hachette, vous utilisez votre Force ; si vous lancez une dague, vous avez le choix entre utiliser votre Force ou votre Dextérité, dans la mesure où la dague possède aussi la propriété finesse.
|
||||
|
||||
## Légère
|
||||
|
||||
|
|
@ -92,37 +92,37 @@ Une arme légère est petite et facile à manier, ce qui la rend idéale pour le
|
|||
|
||||
## Lourde
|
||||
|
||||
Les créatures de petite taille subissent un désavantage sur les jets d’attaque quand elles manient des armes lourdes. La taille et le poids de celles-ci les leur rendent en effet difficiles à manier.
|
||||
Les créatures de petite taille subissent un désavantage sur les jets d'attaque quand elles manient des armes lourdes. La taille et le poids de celles-ci les leur rendent en effet difficiles à manier.
|
||||
|
||||
## Munitions
|
||||
|
||||
Vous ne pouvez utiliser une arme qui a la propriété munitions pour faire une attaque à distance que si vous avez les munitions nécessaires pour tirer avec cette arme. Chaque fois que vous attaquez avec cette arme, vous utilisez une munition. Sortir la munition en question d’un carquois, d’une boîte ou d’un quelconque étui fait partie de l’attaque (vous avez besoin d’une main libre pour charger une arme à une main). À la fin de la bataille, vous pouvez récupérer la moitié des munitions que vous avez utilisées en prenant 1 minute pour fouiller le champ de bataille.
|
||||
Vous ne pouvez utiliser une arme qui a la propriété munitions pour faire une attaque à distance que si vous avez les munitions nécessaires pour tirer avec cette arme. Chaque fois que vous attaquez avec cette arme, vous utilisez une munition. Sortir la munition en question d'un carquois, d'une boîte ou d'un quelconque étui fait partie de l'attaque (vous avez besoin d'une main libre pour charger une arme à une main). À la fin de la bataille, vous pouvez récupérer la moitié des munitions que vous avez utilisées en prenant 1 minute pour fouiller le champ de bataille.
|
||||
|
||||
Si vous utilisez une arme qui a la propriété munitions pour faire une attaque de corps-à-corps, cette arme est considérée comme une arme improvisée (voir la section Armes improvisées plus loin dans ce chapitre). Cela dit, une arme comme une fronde doit quand même être chargée pour faire des dégâts si vous l’utilisez comme arme improvisée.
|
||||
Si vous utilisez une arme qui a la propriété munitions pour faire une attaque de corps-à-corps, cette arme est considérée comme une arme improvisée (voir la section Armes improvisées plus loin dans ce chapitre). Cela dit, une arme comme une fronde doit quand même être chargée pour faire des dégâts si vous l'utilisez comme arme improvisée.
|
||||
|
||||
## Polyvalente
|
||||
|
||||
Une telle arme peut être utilisée avec une ou deux mains. À côté de la propriété, une valeur est indiquée entre parenthèses : il s’agit des dégâts infligés quand l’arme est tenue à deux mains.
|
||||
Une telle arme peut être utilisée avec une ou deux mains. À côté de la propriété, une valeur est indiquée entre parenthèses : il s'agit des dégâts infligés quand l'arme est tenue à deux mains.
|
||||
|
||||
## Portée
|
||||
|
||||
Une arme qui peut être utilisée pour faire des attaques à distance affiche une portée indiquée entre parenthèses après la propriété munitions ou lancer. La portée consiste en deux nombres. Le premier indique la portée normale de l’arme en mètres et le second indique sa portée longue. Quand vous attaquez une cible qui se trouve hors de la portée normale de votre arme, vous subissez un désavantage sur le jet d’attaque. Vous ne pouvez pas attaquer une cible qui se trouve au-delà de la portée longue de votre arme.
|
||||
Une arme qui peut être utilisée pour faire des attaques à distance affiche une portée indiquée entre parenthèses après la propriété munitions ou lancer. La portée consiste en deux nombres. Le premier indique la portée normale de l'arme en mètres et le second indique sa portée longue. Quand vous attaquez une cible qui se trouve hors de la portée normale de votre arme, vous subissez un désavantage sur le jet d'attaque. Vous ne pouvez pas attaquer une cible qui se trouve au-delà de la portée longue de votre arme.
|
||||
|
||||
## Spéciale
|
||||
|
||||
Une arme qui possède la propriété spéciale utilise des règles de fonctionnement spécifiques qui sont expliquées dans la description de l’arme (voir la section Armes spéciales plus loin dans ce chapitre).
|
||||
Une arme qui possède la propriété spéciale utilise des règles de fonctionnement spécifiques qui sont expliquées dans la description de l'arme (voir la section Armes spéciales plus loin dans ce chapitre).
|
||||
|
||||
# Armes improvisées
|
||||
|
||||
Il peut arriver que les personnages n’aient pas leurs armes avec eux et doivent se contenter de ce qu’ils ont sous la main. Une arme improvisée peut être n’importe quel objet que vous pouvez tenir à une ou deux mains, comme un éclat de verre, un pied de table, une poêle, une roue de chariot ou un cadavre de gobelin.
|
||||
Il peut arriver que les personnages n'aient pas leurs armes avec eux et doivent se contenter de ce qu'ils ont sous la main. Une arme improvisée peut être n'importe quel objet que vous pouvez tenir à une ou deux mains, comme un éclat de verre, un pied de table, une poêle, une roue de chariot ou un cadavre de gobelin.
|
||||
|
||||
Une arme improvisée ressemble souvent à une arme réelle et elle peut être traitée comme telle. Par exemple, un pied de table ressemble à un gourdin. Le MJ peut décider qu’un personnage qui maîtrise une arme peut utiliser son bonus de maîtrise s’il utilise une arme qui ressemble assez à celle qu’il maîtrise.
|
||||
Une arme improvisée ressemble souvent à une arme réelle et elle peut être traitée comme telle. Par exemple, un pied de table ressemble à un gourdin. Le MJ peut décider qu'un personnage qui maîtrise une arme peut utiliser son bonus de maîtrise s'il utilise une arme qui ressemble assez à celle qu'il maîtrise.
|
||||
|
||||
Un objet qui ne ressemble à aucune arme inflige 1d4 dégâts (le MJ décide d’un type de dégât approprié en fonction de l’objet). Si un personnage utilise une arme à distance pour faire une attaque de corps-à-corps ou lance une arme de corps-à-corps qui ne possède pas la propriété lancer, cette arme inflige aussi 1d4 dégâts. Une arme de lancer improvisée a une portée normale de 6 mètres et une portée longue de 18 mètres.
|
||||
Un objet qui ne ressemble à aucune arme inflige 1d4 dégâts (le MJ décide d'un type de dégât approprié en fonction de l'objet). Si un personnage utilise une arme à distance pour faire une attaque de corps-à-corps ou lance une arme de corps-à-corps qui ne possède pas la propriété lancer, cette arme inflige aussi 1d4 dégâts. Une arme de lancer improvisée a une portée normale de 6 mètres et une portée longue de 18 mètres.
|
||||
|
||||
# Armes en argent
|
||||
|
||||
Certains monstres qui possèdent une immunité ou une résistance aux armes non-magiques sont vulnérables aux armes en argent. Les aventuriers prudents n’hésitent donc pas à dépenser quelques pièces supplémentaires pour plaquer leurs armes avec de l’argent. Un personnage peut plaquer une arme unique ou dix munitions avec de l’argent pour 100 po. Ce tarif prend en compte non seulement le prix de l’argent, mais aussi celui de l’expertise nécessaire pour plaquer l’argent sur une arme sans lui faire perdre en efficacité.
|
||||
Certains monstres qui possèdent une immunité ou une résistance aux armes non-magiques sont vulnérables aux armes en argent. Les aventuriers prudents n'hésitent donc pas à dépenser quelques pièces supplémentaires pour plaquer leurs armes avec de l'argent. Un personnage peut plaquer une arme unique ou dix munitions avec de l'argent pour 100 po. Ce tarif prend en compte non seulement le prix de l'argent, mais aussi celui de l'expertise nécessaire pour plaquer l'argent sur une arme sans lui faire perdre en efficacité.
|
||||
|
||||
|
||||
|
||||
|
|
@ -138,9 +138,7 @@ Certains monstres qui possèdent une immunité ou une résistance aux armes non-
|
|||
# Équipement d'aventurier
|
||||
|
||||
|
||||
Vous trouverez dans cette section des objets qui ont
|
||||
des règles spéciales ou dont l’utilisation nécessite des
|
||||
explications.
|
||||
Vous trouverez dans cette section des objets qui ont des règles spéciales ou dont l'utilisation nécessite des explications.
|
||||
|
||||
|
||||
|
||||
|
|
@ -148,7 +146,7 @@ explications.
|
|||
|
||||
## Corde
|
||||
|
||||
Une corde, qu’elle soit faite de chanvre ou de soie, a 2 points de vie et peut être rompue en réussissant un test de Force DD 17.
|
||||
Une corde, qu'elle soit faite de chanvre ou de soie, a 2 points de vie et peut être rompue en réussissant un test de Force DD 17.
|
||||
|
||||
|
||||
|
||||
|
|
@ -160,11 +158,11 @@ Une corde, qu’elle soit faite de chanvre ou de soie, a 2 points de vie et peut
|
|||
|
||||
## Focaliseur arcanique
|
||||
|
||||
Un focaliseur arcanique est un objet spécial – un orbe, un cristal, une baguette, un bâton spécialement construit ou un objet similaire – conçu pour canaliser la puissance de la magie arcanique. Un ensorceleur, un sorcier ou un magicien peut utiliser de tels objets comme focaliseur d’incantation.
|
||||
Un focaliseur arcanique est un objet spécial – un orbe, un cristal, une baguette, un bâton spécialement construit ou un objet similaire – conçu pour canaliser la puissance de la magie arcanique. Un ensorceleur, un sorcier ou un magicien peut utiliser de tels objets comme focaliseur d'incantation.
|
||||
|
||||
## Focaliseur druidique
|
||||
|
||||
Un focaliseur druidique peut être une branche de houx, une baguette ou un sceptre en if ou dans un autre bois spécial, un bâton taillé dans un arbre encore vivant ou un totem fait avec les plumes, la fourrure, les os ou les dents d’animaux sacrés. Un druide peut utiliser un tel objet comme focaliseur d’incantation.
|
||||
Un focaliseur druidique peut être une branche de houx, une baguette ou un sceptre en if ou dans un autre bois spécial, un bâton taillé dans un arbre encore vivant ou un totem fait avec les plumes, la fourrure, les os ou les dents d'animaux sacrés. Un druide peut utiliser un tel objet comme focaliseur d'incantation.
|
||||
|
||||
|
||||
|
||||
|
|
@ -187,16 +185,16 @@ Un focaliseur druidique peut être une branche de houx, une baguette ou un scept
|
|||
|
||||
|
||||
Symbole sacré. Un symbole sacré est la représentation
|
||||
d’un dieu ou d’un panthéon. Il peut s’agir d’une
|
||||
amulette sur laquelle se trouve le symbole d’un dieu, de
|
||||
d'un dieu ou d'un panthéon. Il peut s'agir d'une
|
||||
amulette sur laquelle se trouve le symbole d'un dieu, de
|
||||
ce même symbole gravé avec soin ou incrusté comme
|
||||
emblème d’un bouclier, ou encore d’une petite boîte
|
||||
emblème d'un bouclier, ou encore d'une petite boîte
|
||||
contenant un fragment de relique sacrée. Vous trouverez
|
||||
dans l’appendice A, Panthéons historiques et fantastiques,
|
||||
dans l'appendice A, Panthéons historiques et fantastiques,
|
||||
pages 414-418, une liste des symboles sacrés généralement
|
||||
associés à de nombreuses divinités du multivers.
|
||||
Un clerc ou un paladin peut utiliser un symbole sacré
|
||||
comme focaliseur d’incantation. Afin de l’utiliser ainsi,
|
||||
comme focaliseur d'incantation. Afin de l'utiliser ainsi,
|
||||
le symbole sacré doit être tenu en main par le lanceur de
|
||||
sorts et être visible, ou se trouver sur son bouclier.
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue