Compare commits
28 Commits
bol-v12.1.
...
bol-v13.0.
| Author | SHA1 | Date | |
|---|---|---|---|
| 12faf34631 | |||
| afa6e7a323 | |||
| 89f5674fb9 | |||
| cd06d2e5ec | |||
| cdddcb6aee | |||
| 2abd2c881a | |||
| 3fa5ca66d1 | |||
| 6de15eeda7 | |||
| 724c096743 | |||
| 3e3a4b9ec1 | |||
| 425a2a1fc0 | |||
| 203d7add66 | |||
| 8ae193dc34 | |||
| 3904f595b5 | |||
| 1bf21fae7f | |||
| 22579c21bc | |||
| 50c5c31e7b | |||
| a8c05cd4de | |||
| e1cea78059 | |||
| c2f9934f5f | |||
| 313c8a85fa | |||
| 74f6d4d54a | |||
| 2eb153ce14 | |||
| fe513e821a | |||
| 1b72c9c467 | |||
| 3c3a0901da | |||
| 3fc6d3e3df | |||
| 69b34669b0 |
@@ -13,7 +13,7 @@ jobs:
|
||||
#- uses: actions/checkout@v3
|
||||
- uses: RouxAntoine/checkout@v3.5.4
|
||||
with:
|
||||
ref: 'v10'
|
||||
ref: "v13"
|
||||
|
||||
# get part of the tag after the `v`
|
||||
- name: Extract tag version number
|
||||
@@ -25,7 +25,7 @@ jobs:
|
||||
id: sub_manifest_link_version
|
||||
uses: microsoft/variable-substitution@v1
|
||||
with:
|
||||
files: 'system.json'
|
||||
files: "system.json"
|
||||
env:
|
||||
version: ${{steps.get_version.outputs.version-without-v}}
|
||||
url: https://www.uberwald.me/gitea/public/bol
|
||||
@@ -37,12 +37,12 @@ jobs:
|
||||
apt update -y
|
||||
apt install -y zip
|
||||
|
||||
- run: zip -r ./bol.zip system.json template.json README.md LICENSE assets/ css/ fonts/ images/ lang/ module/ packs/ styles/ templates/ ui/
|
||||
- run: zip -r ./bol.zip system.json template.json README.md LICENSE assets/ compendiums/ css/ fonts/ images/ lang/ module/ packs/ styles/ templates/ ui/
|
||||
|
||||
- name: setup go
|
||||
uses: https://github.com/actions/setup-go@v4
|
||||
with:
|
||||
go-version: '>=1.20.1'
|
||||
go-version: ">=1.20.1"
|
||||
|
||||
- name: Use Go Action
|
||||
id: use-go-action
|
||||
@@ -51,4 +51,4 @@ jobs:
|
||||
files: |-
|
||||
./bol.zip
|
||||
system.json
|
||||
api_key: '${{secrets.RELEASE_TOKEN_UBERWALD}}'
|
||||
api_key: "${{secrets.RELEASE_TOKEN_BOL}}"
|
||||
|
||||
35
changelog.md
35
changelog.md
@@ -1,18 +1,26 @@
|
||||
Changes :
|
||||
|
||||
# v12.1.0
|
||||
# v13.0.0
|
||||
|
||||
- Foundry v13 only
|
||||
|
||||
# v12.1.7
|
||||
|
||||
- Enhance welcome message
|
||||
|
||||
# v12.1.1
|
||||
|
||||
## French
|
||||
|
||||
- Correction sur les conditions des sorts
|
||||
- Jet d'armures correctement affichés
|
||||
- Dégat à 0 possibles sur les armes/capacités
|
||||
|
||||
## English
|
||||
|
||||
- Corrected spell conditions
|
||||
- Armor rolls are now correctly displayed
|
||||
- Weapon/capacity damage can now be set to 0
|
||||
|
||||
|
||||
# v12.1.0
|
||||
|
||||
- Gestion des Hordes
|
||||
@@ -39,20 +47,19 @@ Changes :
|
||||
|
||||
# v11.0.8
|
||||
|
||||
- Correction sur les malus de bouclier (blocage)
|
||||
- Corrrection sur le malus d'init des boucliers qui était mal affiché dans la fiche d'item
|
||||
- Correction sur les malus de bouclier (blocage)
|
||||
- Corrrection sur le malus d'init des boucliers qui était mal affiché dans la fiche d'item
|
||||
|
||||
# v10.4.0
|
||||
|
||||
- Ajout de la gestion d'effets
|
||||
- Aide intégré
|
||||
- Intégration du PDF de la bougette
|
||||
- Ajout de la gestion d'effets
|
||||
- Aide intégré
|
||||
- Intégration du PDF de la bougette
|
||||
|
||||
# v10.3.3
|
||||
|
||||
- Nouvelles clés de traduction
|
||||
- Lorsqu'une arme a un dé bonus, prise en compte plus claire du dé bonus et affichage de l'information dans la fenêtre de jet
|
||||
- Lorsqu'une arme relance les 1 sur ses dégats, l'information est affichée dans le tchat
|
||||
- Termes corrects pour les PNJs (ie rival)
|
||||
- Nouveaux équipements issus du Dieu Voilé
|
||||
|
||||
- Nouvelles clés de traduction
|
||||
- Lorsqu'une arme a un dé bonus, prise en compte plus claire du dé bonus et affichage de l'information dans la fenêtre de jet
|
||||
- Lorsqu'une arme relance les 1 sur ses dégats, l'information est affichée dans le tchat
|
||||
- Termes corrects pour les PNJs (ie rival)
|
||||
- Nouveaux équipements issus du Dieu Voilé
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
"description": "<h1>Medium Armour</h1><p>Combining some of the mobility of the lighter armour and better protection of heavy armour, this is the armour worn by the typical adventurer expecting to get into combat situations on a regular basis. Medium armour could represent fairly extensive coverage of leather armour, with stiffened leather in some of the more vital areas, or partial coverage of mail with leather in other areas. It could even represent a steel breastplate and minimal/no other armour.</p><p>Someone in medium armour can often remove portions of their armour to reduce it to light armour, as necessary.</p><h2>Medium armour effects</h2><ul><li>Roll a d6-2 (0-4 points of damage reduction).</li><li>If you prefer static numbers, medium armour absorbs 2 points of damage.</li><li>Wearing medium armour restricts magicians and imposes an extra 2 Arcane Points cost on a spell casting.</li></ul>"
|
||||
},
|
||||
"Casque": {
|
||||
"name": "Casque",
|
||||
"name": "Helmet",
|
||||
"description": "<h1>Helmet</h1><p>If you are wearing a helmet, this adds +1 to your protection if already wearing armour. Therefore, if in light armour and helmet, you’d roll d6-2. In medium armour, roll d6-1. In heavy armour, roll d6.</p><p>Helmets give you a penalty in social situations and to your initiative (as it’s harder to notice things whilst wearing a helmet).</p><p>Most Heroes take their helmets off, unless preparing for battle.</p>"
|
||||
},
|
||||
"Grand bouclier": {
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
"description": ""
|
||||
},
|
||||
"Esprit -1": {
|
||||
"name": "Miond -1",
|
||||
"name": "Mind -1",
|
||||
"description": ""
|
||||
},
|
||||
"Vigueur -1": {
|
||||
|
||||
@@ -175,7 +175,7 @@
|
||||
},
|
||||
"Traqué": {
|
||||
"name": "Hunted",
|
||||
"description": "<h1>Hunted</h1><p>Your character is ridiculously tight- lipped. It’s a rare day on which he uses a sentence of more than three words, and it’s virtually unheard of for him to initiate conversation. His extreme reluctance to speak unfortunately means he never volunteers information without being asked. Take a penalty die in social situations.</p>"
|
||||
"description": "<h1>Hunted</h1><p>Perhaps you are wanted by the authorities, or have offended some powerful noble or pirate king. Regardless of whom, you constantly have to evade agents intent on capturing or even killing you. Roll a d6 whenever you enter a new city. On a 1, agents of your enemy (or your enemy himself, if you choose) will spot you and make your life unpleasant.</p>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -74,8 +74,8 @@
|
||||
"description": "<h1>Shamballah</h1><p>Shamballahns are generally a dark-skinned and dark-haired people with purple, mauve, scarlet, and indigo eye colouring. They are very perceptive and make good hunters.</p>"
|
||||
},
|
||||
"Terres Désolées": {
|
||||
"name": "Terres Désolées",
|
||||
"description": "<h1>Terres Désolées</h1><p>Personne ne sait grand-chose au sujet des Terres Désolées, et moins encore sur les contrées qui s’étendraient au-delà. Des gens vivent assurément dans cette région, s’il faut en croire les récits de chasseurs et d’explorateurs qui ont relevé des traces de présence. Mais à ce jour, personne n’a découvert le moindre village ou hameau, et on ignore tout de l’apparence de leurs habitants.</p><p>Si votre héros est originaire des Terres Désolées, il vous faudra travailler avec le MJ pour déterminer à quoi ressemble votre personnage. Mais attendezvous à ce qu’il soit toujours considéré comme un étranger, où qu’il se rende en Lémurie.</p>"
|
||||
"name": "Empty Lands",
|
||||
"description": "<h1>Empty Lands</h1><p>No one knows what exists in and beyond the Empty Lands. People do live there, because hunters and explorers have seen evidence of them. However, no towns or even villages have been discovered, and no one has any idea of what the people are like. If you come from the Empty Lands, you will need to work with the GM to determine what your character is like. He or she will always be treated as an outsider.</p>"
|
||||
},
|
||||
"Tyrus": {
|
||||
"name": "Tyrus",
|
||||
|
||||
@@ -42,8 +42,8 @@
|
||||
"description": "<h1>Staff Sling</h1><p>The staff sling is a two-handed version of the sling, with a longer range.</p>"
|
||||
},
|
||||
"Cimeterre": {
|
||||
"name": "Cimeterre",
|
||||
"description": "<h1>Épée</h1><p>l’arme favorite des héros. Elle se décline en différents modèles utilisés un peu partout en Lémurie, comme les sabres d’abordage, les tulwars, les cimeterres ou les épées longues. Inscrivez le nom de l’arme que vous voulez sur la fiche de votre personnage en fonction de l’image que vous vous faites de ce dernier. Mais au final, une épée reste une longue lame utilisée pour tuer l’ennemi.</p>"
|
||||
"name": "Scimitar",
|
||||
"description": "<h1>Scimitar (Sword)</h1><p>This weapon is a favourite amongst Heroes. This is the catch-all description for all manner of long-bladed, one-handed weapons used all over Lemuria, such as cutlasses, tulwars, scimitars, rapiers, broadswords and longswords. Call it what you want on your character sheet, because that will add flavour to your character, but at the end of the day a sword is a long blade used for killing.</p>"
|
||||
},
|
||||
"Dague": {
|
||||
"name": "Dagger",
|
||||
@@ -123,19 +123,19 @@
|
||||
},
|
||||
"Masse d’armes": {
|
||||
"name": "Mace",
|
||||
"description": "<h1>Mace</h1><p>cA mace is similar to a club, but with a metal head, often with spikes or flanges. One-handed maces can be thrown at increments of 5’ as they aren’t very effective used this way.</p>"
|
||||
"description": "<h1>Mace</h1><p>A mace is similar to a club, but with a metal head, often with spikes or flanges. One-handed maces can be thrown at increments of 5’ as they aren’t very effective used this way.</p>"
|
||||
},
|
||||
"Masse d’armes (Lancer)": {
|
||||
"name": "Masse d’armes (Lancer)",
|
||||
"description": "<h1>Masse d’armes</h1><p>cette arme a la même forme qu’un gourdin, mais possède une tête en métal, souvent agrémentée de pointes ou d’ailettes pour plus d’efficacité. Les masses d’armes à une main peuvent se lancer, mais à courte distance, car elles ne sont pas vraiment prévues pour cet usage.</p>"
|
||||
"name": "Mace (Thrown)",
|
||||
"description": "<h1>Mace</h1><p>A mace is similar to a club, but with a metal head, often with spikes or flanges. One-handed maces can be thrown at increments of 5’ as they aren’t very effective used this way.</p>"
|
||||
},
|
||||
"Massue": {
|
||||
"name": "Massue",
|
||||
"description": "<h1>Massue</h1><p>la version lourde du gourdin. Une massue consiste en un solide manche en bois dont l’extrémité, plus volumineuse, sert à fracasser le crâne de ses adversaires, d’où son autre nom de casse-tête.</p>"
|
||||
"name": "Club",
|
||||
"description": "<h1>Club</h1><p>This is a larger version of the cudgel. It is a stout length of wood, used in one hand to bludgeon and batter your opponent. Clubs usually have a wider or knobbed head and can be called war-clubs, knobkerries, or shillelaghs.</p>"
|
||||
},
|
||||
"Massue (Lancer)": {
|
||||
"name": "Massue (Lancer)",
|
||||
"description": "<h1>Massue</h1><p>la version lourde du gourdin. Une massue consiste en un solide manche en bois dont l’extrémité, plus volumineuse, sert à fracasser le crâne de ses adversaires, d’où son autre nom de casse-tête.</p>"
|
||||
"name": "Club (Thrown)",
|
||||
"description": "<h1>Club</h1><p>This is a larger version of the cudgel. It is a stout length of wood, used in one hand to bludgeon and batter your opponent. Clubs usually have a wider or knobbed head and can be called war-clubs, knobkerries, or shillelaghs.</p>"
|
||||
},
|
||||
"Morgenstern": {
|
||||
"name": "Morning Star",
|
||||
|
||||
273
css/bol.css
273
css/bol.css
File diff suppressed because it is too large
Load Diff
@@ -1,5 +0,0 @@
|
||||
[Dolphin]
|
||||
Timestamp=2024,11,2,20,30,2.2800000000000002
|
||||
Version=4
|
||||
ViewMode=1
|
||||
VisibleRoles=Details_text,Details_size,Details_modificationtime,Details_creationtime,CustomizedDetails
|
||||
@@ -290,6 +290,7 @@
|
||||
"BOL.itemProperty.difficulty": "Schwierigkeit",
|
||||
"BOL.itemProperty.natural": "Natürliche Waffe",
|
||||
"BOL.itemProperty.onlymodifier": "Nur Modifikator (d.h. Angriffe von Kreaturen)",
|
||||
"BOL.itemProperty.attackMalusDice": "Angriffsmalus (Würfel)",
|
||||
|
||||
"BOL.itemStat.quantity": "Anzahl",
|
||||
"BOL.itemStat.weight": "Gewicht",
|
||||
@@ -468,6 +469,7 @@
|
||||
"BOL.chat.welcome4": "Im Discord findet ihr Support für die FoundryVTT-Implementierung dieses Systems: https://discord.gg/pPSDNJk",
|
||||
"BOL.chat.welcome5": "Auf ein gutes Spiel in Lemuria!",
|
||||
"BOL.chat.welcome6": "",
|
||||
"BOL.chat.bolRulebookMessage": "Don't miss the full Rulebook module (including Sagas) available at : https://www.ludospherik-editions.com/en_gb/ !",
|
||||
|
||||
"BOL.settings.rollArmor": "Roll for armor",
|
||||
"BOL.settings.rollArmorTooltip": "Roll for armor value, fixed value if unchecked",
|
||||
|
||||
16
lang/en.json
16
lang/en.json
@@ -365,6 +365,7 @@
|
||||
"BOL.itemProperty.difficulty": "Difficulty",
|
||||
"BOL.itemProperty.natural": "Natural weapon",
|
||||
"BOL.itemProperty.onlymodifier": "Modifier only (ie creatures attacks)",
|
||||
"BOL.itemProperty.attackMalusDice": "Attack Malus (Dice)",
|
||||
|
||||
"BOL.itemStat.quantity": "Quantity",
|
||||
"BOL.itemStat.weight": "Weight",
|
||||
@@ -543,17 +544,24 @@
|
||||
"BOL.chat.criticalbuttonjournal": "Legendary/Heroic Success",
|
||||
"BOL.chat.nodamage": "Do not apply damages",
|
||||
"BOL.chat.armorRoll": "Armor roll",
|
||||
"BOL.chat.bolRulebookMessage": "Don't miss the full Rulebook module (including Sagas) available at : https://www.ludospherik-editions.com/en_gb/ !",
|
||||
|
||||
"BOL.dialog.soeasy": "So easy (+4)",
|
||||
"BOL.dialog.soeasy3": "So easy (+3)",
|
||||
"BOL.dialog.veryeasy": "Very easy (+2)",
|
||||
"BOL.dialog.easy": "Easy (+1)",
|
||||
"BOL.dialog.moderate": "Moderate (0)",
|
||||
"BOL.dialog.hard": "Hard (-1)",
|
||||
"BOL.dialog.tough": "Tough (-2)",
|
||||
"BOL.dialog.tough3": "Tough (-3)",
|
||||
"BOL.dialog.demanding": "Demanding (-4)",
|
||||
"BOL.dialog.demanding5": "Demanding (-5)",
|
||||
"BOL.dialog.formidable": "Formidable (-6)",
|
||||
"BOL.dialog.formidable7": "Formidable (-7)",
|
||||
"BOL.dialog.heroic": "Heroic (-8)",
|
||||
"BOL.dialog.heroic9": "Heroic (-9)",
|
||||
"BOL.dialog.mythic": "Mythic (-10)",
|
||||
"BOL.dialog.mythic11": "Mythic (-11)",
|
||||
"BOL.dialog.divine": "Divine (-12)",
|
||||
|
||||
"BOL.dialog.pointblank": "Point blank (+1)",
|
||||
@@ -578,11 +586,11 @@
|
||||
"BOL.ui.bionotes": "Notes",
|
||||
|
||||
"BOL.chat.welcome1": "Welcome to Barbarians of Lemuria (Ludospherik version)",
|
||||
"BOL.chat.welcome2": "Books are necessary to play, and ca be found here : http://www.ludospherik.fr/content/14-barbarians-of-lemuria",
|
||||
"BOL.chat.welcome3": "The integrated maps are authorized by Guillaume Tavernier and Ludospherik. Thanks to them !.",
|
||||
"BOL.chat.welcome2": "Books are necessary to play, and <a href='http://www.ludospherik.fr/content/14-barbarians-of-lemuria'>can be found here.</a> ",
|
||||
"BOL.chat.welcome3": "The integrated maps are authorized by Emmanuel Roudier and Ludospherik. Thanks to them !.",
|
||||
"BOL.chat.welcome4": "All support for this system is available on this Discord server : https://discord.gg/pPSDNJk",
|
||||
"BOL.chat.welcome5": "Good game in Lemuria !",
|
||||
"BOL.chat.welcome6": "",
|
||||
"BOL.chat.welcome5": "<strong>In order to see compendiums in English, you must install and enable the Babele module.</strong>",
|
||||
"BOL.chat.welcome6": "Good game in Lemuria !",
|
||||
|
||||
"BOL.settings.rollArmor": "Roll for armor",
|
||||
"BOL.settings.rollArmorTooltip": "Roll for armor value, fixed value if unchecked",
|
||||
|
||||
@@ -359,6 +359,7 @@
|
||||
"BOL.itemProperty.difficulty": "Dificultad",
|
||||
"BOL.itemProperty.natural": "Arma natural",
|
||||
"BOL.itemProperty.onlymodifier": "Sólo modificador (ej criatura)",
|
||||
"BOL.itemProperty.attackMalusDice": "Dado Desventaja Ataque",
|
||||
|
||||
"BOL.itemStat.quantity": "Cantidad",
|
||||
"BOL.itemStat.weight": "Peso",
|
||||
@@ -534,6 +535,7 @@
|
||||
"BOL.chat.criticalinfo": "¡Esto es un éxito Asombroso o Legendario! Escoge tus opciones y efectos",
|
||||
"BOL.chat.criticalbuttonjournal": "Éxito Asombroso/Legendario",
|
||||
"BOL.chat.armorRoll": "Tirada de Armadura",
|
||||
"BOL.chat.bolRulebookMessage": "Don't miss the full Rulebook module (including Sagas) available at : https://www.ludospherik-editions.com/en_gb/ !",
|
||||
|
||||
"BOL.dialog.soeasy": "Demasiado fácil (+4)",
|
||||
"BOL.dialog.veryeasy": "Muy fácil (+2)",
|
||||
|
||||
16
lang/fr.json
16
lang/fr.json
@@ -394,6 +394,7 @@
|
||||
"BOL.itemProperty.isboarding": "Abordage",
|
||||
"BOL.itemProperty.isspur": "Eperonnage",
|
||||
"BOL.itemProperty.isbreakrow": "Briser les rames",
|
||||
"BOL.itemProperty.attackMalusDice": "Malus d'attaque (Dés)",
|
||||
|
||||
"BOL.itemStat.quantity": "Quantité",
|
||||
"BOL.itemStat.weight": "Poids",
|
||||
@@ -569,21 +570,29 @@
|
||||
"BOL.chat.criticalinfo": "C'est un succès Héroïque ! Choisissez vos options et effets !",
|
||||
"BOL.chat.criticallegendaryinfo": "C'est un succès Légendaire ! Choisissez vos options et effets !",
|
||||
"BOL.chat.criticalbuttonjournal": "Succès Héroïque/Légendaire",
|
||||
|
||||
"BOL.chat.bolRulebookMessage": "N'oubliez pas le module complet du Livre de Règle et des Sagas disponible ici : https://www.ludospherik-editions.com !",
|
||||
"BOL.chat.losshp": "{name} a perdu {lossHP} points de Vitalité. Si il se repose quelques minutes, il peut récupérer {recupHP} points de Vitalité.",
|
||||
"BOL.chat.applyrecup": "Récupérer pendant quelques minutes (+{recupHP} Vitalité)",
|
||||
"BOL.chat.inforecup": "{name} vient de récupérer {recupHP} points de Vitalité après quelques minutes de repos.",
|
||||
"BOL.chat.defenseReduceDamage2": "Vous pouvez également dépenser 1 Point d'Héroisme/Vilainie pour regagner [[/r 2d6KH(1D6B)]] points de vitalité, cela vous coutera votre prochaine action.",
|
||||
"BOL.chat.armorRoll": "Jet d'armure ",
|
||||
|
||||
"BOL.dialog.soeasy": "Inmanquable (+4)",
|
||||
"BOL.dialog.soeasy3": "Inmanquable (+3)",
|
||||
"BOL.dialog.veryeasy": "Trés Facile (+2)",
|
||||
"BOL.dialog.easy": "Facile (+1)",
|
||||
"BOL.dialog.moderate": "Moyenne (0)",
|
||||
"BOL.dialog.hard": "Ardue (-1)",
|
||||
"BOL.dialog.tough": "Difficile (-2)",
|
||||
"BOL.dialog.tough3": "Difficile (-3)",
|
||||
"BOL.dialog.demanding": "Très Difficile (-4)",
|
||||
"BOL.dialog.demanding5": "Très Difficile (-5)",
|
||||
"BOL.dialog.formidable": "Impossible (-6)",
|
||||
"BOL.dialog.formidable7": "Impossible (-7)",
|
||||
"BOL.dialog.heroic": "Héroïque (-8)",
|
||||
"BOL.dialog.heroic9": "Héroïque (-9)",
|
||||
"BOL.dialog.mythic": "Mythique (-10)",
|
||||
"BOL.dialog.mythic11": "Mythique (-11)",
|
||||
"BOL.dialog.divine": "Divine (-12)",
|
||||
|
||||
"BOL.dialog.pointblank": "Bout portant (+1)",
|
||||
@@ -611,16 +620,15 @@
|
||||
|
||||
"BOL.chat.welcome1": "Bienvenue dans Barbarians of Lemuria (Ludospherik version)",
|
||||
"BOL.chat.welcome2": "Les livres nécessaires pour jouer sont disponibles sur le site de <a href='http://www.ludospherik.fr/content/14-barbarians-of-lemuria'>l'éditeur Ludospherik.</a>",
|
||||
"BOL.chat.welcome3": "Les cartes intégrées au système le sont grace à l'aimable autorisation de leur auteur Guillaume Tavernier et des éditions Ludospherik. Merci à eux !.",
|
||||
"BOL.chat.welcome3": "Les cartes intégrées au système le sont grace à l'aimable autorisation d'Emmanuel Roudier et des éditions Ludospherik. Merci à eux !.",
|
||||
"BOL.chat.welcome4": "Tout le support et le suivi de ce système est disponible via le <a href='https://discord.gg/pPSDNJk'>Discord Foundry FR</a>.",
|
||||
"BOL.chat.welcome5": "Consulter l'aide en ligne pour plus d'informations : @UUID[Compendium.bol.aides-de-jeu.JournalEntry.8ihDiCxC47fcdKVA]{Aide du Jeu}.",
|
||||
"BOL.chat.welcome5": "Consulter l'aide en ligne pour plus d'informations : @UUID[Compendium.bol.aides-de-jeu.JournalEntry.8ihDiCxC47fcdKVA]{Aide du Jeu}.<br>Si vous souhaitez jouer en anglais, n'oubliez pas d'activer le module Babele.",
|
||||
"BOL.chat.welcome6": "Bon jeu en Lemurie !",
|
||||
"BOL.chat.nodamage": "Ne pas appliquer les dommages",
|
||||
"BOL.chat.pcwarning": "Attention ! Aucun personnage n'est relié au joueur !",
|
||||
"BOL.chat.pcwarningmsg": "<b>ATTENTION</b> Le joueur n'est relié à aucun personnage !",
|
||||
"BOL.chat.pcnotlinked": "Le token du personnage joueur n'est pas relié à l'acteur",
|
||||
"BOL.chat.pcnotlinkedmsg": "<b>ATTENTION</b> Le token du personnage joueur n'est pas relié à l'acteur !",
|
||||
"BOL.chat.armorRoll": "Jet d'armure",
|
||||
|
||||
"BOL.settings.rollArmor": "Effectuer des jets pour les armures",
|
||||
"BOL.settings.rollArmorTooltip": "Effectue un jet de dés pour les armures (valeur fixe si désactivé)",
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
import { BoLRoll } from "../controllers/bol-rolls.js";
|
||||
import { BoLUtility } from "../system/bol-utility.js";
|
||||
|
||||
export class BoLActorSheet extends ActorSheet {
|
||||
export class BoLActorSheet extends foundry.appv1.sheets.ActorSheet {
|
||||
|
||||
/** @override */
|
||||
static get defaultOptions() {
|
||||
@@ -170,8 +170,8 @@ export class BoLActorSheet extends ActorSheet {
|
||||
formData.charType = this.actor.getCharType()
|
||||
formData.villainy = this.actor.getVillainy()
|
||||
formData.isUndead = this.actor.isUndead()
|
||||
formData.biography = await TextEditor.enrichHTML(this.object.system.details?.biography || "", { async: true })
|
||||
formData.notes = await TextEditor.enrichHTML(this.object.system.details.notes || "", { async: true })
|
||||
formData.biography = await foundry.applications.ux.TextEditor.implementation.enrichHTML(this.object.system.details?.biography || "", { async: true })
|
||||
formData.notes = await foundry.applications.ux.TextEditor.implementation.enrichHTML(this.object.system.details.notes || "", { async: true })
|
||||
formData.isSorcerer = this.actor.isSorcerer()
|
||||
formData.isAlchemist = this.actor.isAlchemist()
|
||||
formData.isAstrologer = this.actor.isAstrologer()
|
||||
|
||||
@@ -22,6 +22,9 @@ export class BoLActor extends Actor {
|
||||
if (data.type == 'encounter') {
|
||||
data.system = { resources: { hero : { max : 0, value: 0 } } }
|
||||
}
|
||||
if (data.type == 'character') {
|
||||
data.system = { resources: { hp : { max : 10, value: 10 } } }
|
||||
}
|
||||
|
||||
if (data.type == 'horde') {
|
||||
let weapon = {
|
||||
@@ -161,12 +164,16 @@ export class BoLActor extends Actor {
|
||||
let newVitality = 10 + this.system.attributes.vigor.value + this.system.resources.hp.bonus
|
||||
if (this.system.resources.hp.max != newVitality) {
|
||||
let actor = this
|
||||
setTimeout(function () { actor.update({ 'system.resources.hp.max': newVitality }) }, 800)
|
||||
let newHP = foundry.utils.duplicate(this.system.resources.hp)
|
||||
newHP.max = newVitality
|
||||
setTimeout(function () { actor.update({ 'system.resources.hp': newHP }) }, 800)
|
||||
}
|
||||
let newPower = 10 + this.system.attributes.mind.value + this.system.resources.power.bonus
|
||||
if (this.system.resources.power.max != newPower) {
|
||||
let maxPower = 10 + this.system.attributes.mind.value + this.system.resources.power.bonus
|
||||
if (this.system.resources.power.max != maxPower) {
|
||||
let actor = this
|
||||
setTimeout(function () { actor.update({ 'system.resources.power.max': newPower }) }, 800)
|
||||
let newPower = foundry.utils.duplicate(this.system.resources.power)
|
||||
newPower.max = maxPower
|
||||
setTimeout(function () { actor.update({ 'system.resources.power': newPower }) }, 800)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
import { BoLRoll } from "../controllers/bol-rolls.js";
|
||||
import { BoLUtility } from "../system/bol-utility.js";
|
||||
|
||||
export class BoLHordeSheet extends ActorSheet {
|
||||
export class BoLHordeSheet extends foundry.appv1.sheets.ActorSheet {
|
||||
|
||||
/** @override */
|
||||
static get defaultOptions() {
|
||||
@@ -116,7 +116,7 @@ export class BoLHordeSheet extends ActorSheet {
|
||||
formData.options = this.options
|
||||
formData.owner = this.document.isOwner
|
||||
formData.editScore = this.options.editScore
|
||||
formData.description = await TextEditor.enrichHTML(this.actor.system.description, {async: true})
|
||||
formData.description = await foundry.applications.ux.TextEditor.implementation.enrichHTML(this.actor.system.description, {async: true})
|
||||
|
||||
formData.isGM = game.user.isGM
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
import { BoLRoll } from "../controllers/bol-rolls.js";
|
||||
import { BoLUtility } from "../system/bol-utility.js";
|
||||
|
||||
export class BoLVehicleSheet extends ActorSheet {
|
||||
export class BoLVehicleSheet extends foundry.appv1.sheets.ActorSheet {
|
||||
|
||||
/** @override */
|
||||
static get defaultOptions() {
|
||||
@@ -127,7 +127,7 @@ export class BoLVehicleSheet extends ActorSheet {
|
||||
formData.options = this.options
|
||||
formData.owner = this.document.isOwner
|
||||
formData.editScore = this.options.editScore
|
||||
formData.description = await TextEditor.enrichHTML(this.actor.system.description, {async: true})
|
||||
formData.description = await foundry.applications.ux.TextEditor.implementation.enrichHTML(this.actor.system.description, {async: true})
|
||||
|
||||
formData.isGM = game.user.isGM
|
||||
|
||||
|
||||
@@ -18,6 +18,9 @@ import { BoLHotbar } from "./system/bol-hotbar.js"
|
||||
import { BoLCommands } from "./system/bol-commands.js"
|
||||
import { BoLRoll } from "./controllers/bol-rolls.js"
|
||||
|
||||
/* -------------------------------------------- */
|
||||
const BOL_WELCOME_MESSAGE_URL = "https://www.uberwald.me/gitea/public/bol/raw/branch/v13/welcome-message-bol.html"
|
||||
|
||||
/* -------------------------------------------- */
|
||||
Hooks.once('init', async function () {
|
||||
|
||||
@@ -51,13 +54,13 @@ Hooks.once('init', async function () {
|
||||
CONFIG.Combat.documentClass = BoLCombatManager;
|
||||
|
||||
// Register sheet application classes
|
||||
Actors.unregisterSheet("core", ActorSheet);
|
||||
Actors.registerSheet("bol", BoLActorSheet, { types: ["character", "encounter"], makeDefault: true })
|
||||
Actors.registerSheet("bol", BoLVehicleSheet, { types: ["vehicle"], makeDefault: true })
|
||||
Actors.registerSheet("bol", BoLHordeSheet, { types: ["horde"], makeDefault: true })
|
||||
foundry.documents.collections.Actors.unregisterSheet("core", foundry.appv1.sheets.ActorSheet);
|
||||
foundry.documents.collections.Actors.registerSheet("bol", BoLActorSheet, { types: ["character", "encounter"], makeDefault: true })
|
||||
foundry.documents.collections.Actors.registerSheet("bol", BoLVehicleSheet, { types: ["vehicle"], makeDefault: true })
|
||||
foundry.documents.collections.Actors.registerSheet("bol", BoLHordeSheet, { types: ["horde"], makeDefault: true })
|
||||
|
||||
Items.unregisterSheet("core", ItemSheet);
|
||||
Items.registerSheet("bol", BoLItemSheet, { makeDefault: true });
|
||||
foundry.documents.collections.Items.unregisterSheet("core", foundry.appv1.sheets.ItemSheet);
|
||||
foundry.documents.collections.Items.registerSheet("bol", BoLItemSheet, { makeDefault: true });
|
||||
|
||||
// Inot useful stuff
|
||||
BoLUtility.init()
|
||||
@@ -84,30 +87,55 @@ Hooks.once('init', async function () {
|
||||
|
||||
/* -------------------------------------------- */
|
||||
function welcomeMessage() {
|
||||
let content = `<div id="welcome-message-bol"><span class="rdd-roll-part">
|
||||
<strong>` + game.i18n.localize("BOL.chat.welcome1") + `</strong><p>` +
|
||||
game.i18n.localize("BOL.chat.welcome2") + "</p><p>" +
|
||||
game.i18n.localize("BOL.chat.welcome3") + "</p><p>" +
|
||||
game.i18n.localize("BOL.chat.welcome4") + "</p><p>" +
|
||||
game.i18n.localize("BOL.chat.welcome5") + "</p>" +
|
||||
game.i18n.localize("BOL.chat.welcome6")
|
||||
|
||||
let rulebook = game.modules.find(m => m.id === "bol-rulebook")
|
||||
if (!rulebook) {
|
||||
content += "<p>" + game.i18n.localize("BOL.chat.bolRulebookMessage") + "</p>"
|
||||
}
|
||||
ChatMessage.create({
|
||||
user: game.user.id,
|
||||
whisper: [game.user.id],
|
||||
content: `<div id="welcome-message-bol"><span class="rdd-roll-part">
|
||||
<strong>` + game.i18n.localize("BOL.chat.welcome1") + `</strong><p>` +
|
||||
game.i18n.localize("BOL.chat.welcome2") + "<p>" +
|
||||
game.i18n.localize("BOL.chat.welcome3") + "<p>" +
|
||||
game.i18n.localize("BOL.chat.welcome4") + "</p>" +
|
||||
game.i18n.localize("BOL.chat.welcome5") + "<br>" +
|
||||
game.i18n.localize("BOL.chat.welcome6")
|
||||
content: content
|
||||
})
|
||||
|
||||
if (game.user.isGM && game.i18n.lang == 'en' && !game.modules.find(m => m.id == "babele") ){
|
||||
if (game.user.isGM && game.i18n.lang == 'en' && !game.modules.find(m => m.id == "babele")) {
|
||||
ChatMessage.create({
|
||||
user: game.user.id,
|
||||
whisper: [game.user.id],
|
||||
content: `<div id="welcome-message-bol"><span class="rdd-roll-part">
|
||||
<strong>WARNING ! English language selected, but babele module is not installed !<br>Please install babele from the module tab in Foundry interface.`
|
||||
} )
|
||||
<strong>WARNING ! English language selected, but Babele module is not installed !<br>Please install babele from the module tab in Foundry interface.`
|
||||
})
|
||||
ui.notifications.warn("WARNING ! English language selected, but babele module is not installed !<br>Please install babele from the module tab in Foundry interface.")
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
function welcomeMessageRepository() {
|
||||
if (game.user.isGM) {
|
||||
// Try to fetch the welcome message from the github repo "welcome-message-ecryme.html"
|
||||
fetch(BOL_WELCOME_MESSAGE_URL)
|
||||
.then(response => response.text())
|
||||
.then(html => {
|
||||
ChatMessage.create({
|
||||
user: game.user.id,
|
||||
whisper: [game.user.id],
|
||||
content: html
|
||||
});
|
||||
})
|
||||
.catch(error => {
|
||||
console.error("Error fetching welcome message:", error);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
Hooks.once('ready', async function () {
|
||||
|
||||
@@ -121,6 +149,7 @@ Hooks.once('ready', async function () {
|
||||
)
|
||||
|
||||
welcomeMessage()
|
||||
welcomeMessageRepository();
|
||||
|
||||
// User warning
|
||||
if (!game.user.isGM && game.user.character == undefined) {
|
||||
@@ -168,5 +197,3 @@ Hooks.once('ready', async function () {
|
||||
}
|
||||
|
||||
})
|
||||
|
||||
|
||||
|
||||
@@ -19,9 +19,9 @@ export class BoLRoll {
|
||||
static updateApplicableEffects(rollData) {
|
||||
let appEffects = []
|
||||
for (let effect of rollData.bolEffects) {
|
||||
if ( (effect.system.properties.identifier == "always") ||
|
||||
if ((effect.system.properties.identifier == "always") ||
|
||||
(effect.system.properties.identifier.includes(rollData.attribute.key)) ||
|
||||
(rollData.aptitude && effect.system.properties.identifier.includes(rollData.aptitude.key)) ){
|
||||
(rollData.aptitude && effect.system.properties.identifier.includes(rollData.aptitude.key))) {
|
||||
appEffects.push(effect)
|
||||
}
|
||||
}
|
||||
@@ -76,7 +76,7 @@ export class BoLRoll {
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static attributeCheck(actor, key="vigor", event=undefined, combatData=undefined) {
|
||||
static attributeCheck(actor, key = "vigor", event = undefined, combatData = undefined) {
|
||||
|
||||
let attribute = eval(`actor.system.attributes.${key}`)
|
||||
|
||||
@@ -89,7 +89,7 @@ export class BoLRoll {
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static aptitudeCheck(actor, key="init", event=undefined, combatData=undefined) {
|
||||
static aptitudeCheck(actor, key = "init", event = undefined, combatData = undefined) {
|
||||
|
||||
let aptitude = eval(`actor.system.aptitudes.${key}`)
|
||||
let attrKey = this.getDefaultAttribute(key)
|
||||
@@ -482,10 +482,15 @@ export class BoLRoll {
|
||||
if (rollData.mode == "weapon") {
|
||||
rollData.weaponModifier = rollData.weapon.system.properties.attackModifiers ?? 0
|
||||
rollData.attackBonusDice = rollData.weapon.system.properties.attackBonusDice
|
||||
rollData.attackMalusDice = rollData.weapon.system.properties.attackMalusDice
|
||||
if (rollData.attackBonusDice) {
|
||||
rollData.adv = "1B"
|
||||
rollData.bDice = 1
|
||||
}
|
||||
if (rollData.attackMalusDice) {
|
||||
rollData.adv = "1M"
|
||||
rollData.mDice = 1
|
||||
}
|
||||
if (defender) { // If target is selected
|
||||
rollData.defence = defender.defenseValue
|
||||
rollData.armorMalus = defender.armorMalusValue
|
||||
@@ -534,6 +539,7 @@ export class BoLRoll {
|
||||
rollData.id = foundry.utils.randomID(16)
|
||||
rollData.weaponModifier = 0
|
||||
rollData.attackBonusDice = false
|
||||
rollData.attackMalusDice = false
|
||||
rollData.armorMalus = 0
|
||||
// Specific stuff
|
||||
this.preProcessWeapon(rollData, defender)
|
||||
@@ -551,7 +557,7 @@ export class BoLRoll {
|
||||
console.log("ROLLDATA", rollData)
|
||||
|
||||
// Then display+process the dialog
|
||||
const rollOptionContent = await renderTemplate(rollOptionTpl, rollData);
|
||||
const rollOptionContent = await foundry.applications.handlebars.renderTemplate(rollOptionTpl, rollData);
|
||||
let d = new Dialog({
|
||||
title: rollData.label,
|
||||
content: rollOptionContent,
|
||||
@@ -634,7 +640,7 @@ export class BoLDefaultRoll {
|
||||
const diceTotal = activeDice.map(r => r.result).reduce((a, b) => a + b)
|
||||
this.rollData.roll = r
|
||||
this.rollData.isFumble = (diceTotal <= diceData.criticalFailureValue)
|
||||
if ( this.rollData.isFumble ) {
|
||||
if (this.rollData.isFumble) {
|
||||
this.rollData.isSuccess = false
|
||||
this.rollData.isCritical = false
|
||||
this.rollData.isRealCritical = false
|
||||
@@ -642,7 +648,7 @@ export class BoLDefaultRoll {
|
||||
this.rollData.isFailure = true
|
||||
} else {
|
||||
this.rollData.isCritical = (diceTotal >= diceData.criticalSuccessValue)
|
||||
if ( this.rollData.isCritical) {
|
||||
if (this.rollData.isCritical) {
|
||||
this.rollData.isSuccess = true
|
||||
} else {
|
||||
this.rollData.isSuccess = (r.total >= diceData.successValue)
|
||||
@@ -805,13 +811,13 @@ export class BoLDefaultRoll {
|
||||
/* -------------------------------------------- */
|
||||
_buildDamageChatMessage(rollData) {
|
||||
const rollMessageTpl = 'systems/bol/templates/chat/rolls/damage-roll-card.hbs';
|
||||
return renderTemplate(rollMessageTpl, rollData)
|
||||
return foundry.applications.handlebars.renderTemplate(rollMessageTpl, rollData)
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
_buildChatMessage(rollData) {
|
||||
const rollMessageTpl = 'systems/bol/templates/chat/rolls/default-roll-card.hbs'
|
||||
return renderTemplate(rollMessageTpl, rollData)
|
||||
return foundry.applications.handlebars.renderTemplate(rollMessageTpl, rollData)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@ import { BoLUtility } from "../system/bol-utility.js";
|
||||
* Extend the basic ItemSheet with some very simple modifications
|
||||
* @extends {ItemSheet}
|
||||
*/
|
||||
export class BoLItemSheet extends ItemSheet {
|
||||
export class BoLItemSheet extends foundry.appv1.sheets.ItemSheet {
|
||||
|
||||
/** @override */
|
||||
static get defaultOptions() {
|
||||
@@ -13,6 +13,7 @@ export class BoLItemSheet extends ItemSheet {
|
||||
template: "systems/bol/templates/item/item-sheet.hbs",
|
||||
width: 650,
|
||||
height: 780,
|
||||
dragDrop: [{ dragSelector: null, dropSelector: null }],
|
||||
tabs: [{ navSelector: ".sheet-tabs", contentSelector: ".sheet-body", initial: "description" }]
|
||||
});
|
||||
}
|
||||
@@ -27,7 +28,7 @@ export class BoLItemSheet extends ItemSheet {
|
||||
data.category = itemData.system.category
|
||||
data.isGM = game.user.isGM;
|
||||
data.itemProperties = this.item.itemProperties;
|
||||
data.description = await TextEditor.enrichHTML(this.object.system.description, { async: true })
|
||||
data.description = await foundry.applications.ux.TextEditor.implementation.enrichHTML(this.object.system.description, { async: true })
|
||||
if (data.document.actor) {
|
||||
data.careers = data.document.actor.careers
|
||||
}
|
||||
@@ -102,6 +103,7 @@ export class BoLItemSheet extends ItemSheet {
|
||||
activateListeners(html) {
|
||||
|
||||
super.activateListeners(html);
|
||||
|
||||
// Everything below here is only needed if the sheet is editable
|
||||
if (!this.options.editable) return;
|
||||
// Roll handlers, click handlers, etc. would go here.
|
||||
|
||||
@@ -12,8 +12,8 @@ export class BoLTokenHud {
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static async removeExtensionHud(app, html, tokenId) {
|
||||
html.find('.control-icon.bol-roll').remove()
|
||||
html.find('.control-icon.bol-action').remove()
|
||||
$(html).find('.control-icon.bol-roll').remove()
|
||||
$(html).find('.control-icon.bol-action').remove()
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
@@ -25,7 +25,7 @@ export class BoLTokenHud {
|
||||
|
||||
const hudData = { actor: actor, actionsList: actor.buildListeActions(), rollsList: actor.buildRollList() }
|
||||
|
||||
const controlIconActions = html.find('.control-icon[data-action=combat]');
|
||||
const controlIconActions = $(html).find('.control-icon[data-action=combat]');
|
||||
// initiative
|
||||
await BoLTokenHud._configureSubMenu(controlIconActions, 'systems/bol/templates/token/hud-actor-actions.hbs', hudData,
|
||||
(event) => {
|
||||
@@ -43,7 +43,7 @@ export class BoLTokenHud {
|
||||
}
|
||||
})
|
||||
|
||||
const controlIconTarget = html.find('.control-icon[data-action=target]');
|
||||
const controlIconTarget = $(html).find('.control-icon[data-action=target]');
|
||||
// att+apt+career
|
||||
await BoLTokenHud._configureSubMenu(controlIconTarget, 'systems/bol/templates/token/hud-actor-rolls.hbs', hudData,
|
||||
(event) => {
|
||||
@@ -59,7 +59,7 @@ export class BoLTokenHud {
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static async addTokenHudExtensions(app, html, tokenId) {
|
||||
const controlIconCombat = html.find('.control-icon[data-action=combat]')
|
||||
const controlIconCombat = $(html).find('.control-icon[data-action=combat]')
|
||||
if (controlIconCombat.length > 0) {
|
||||
BoLTokenHud.addExtensionHud(app, html, tokenId);
|
||||
}
|
||||
@@ -67,7 +67,7 @@ export class BoLTokenHud {
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static async _configureSubMenu(insertionPoint, template, hudData, onMenuItem) {
|
||||
const hud = $(await renderTemplate(template, hudData))
|
||||
const hud = $(await foundry.applications.handlebars.renderTemplate(template, hudData))
|
||||
const list = hud.find('div.bol-hud-list')
|
||||
|
||||
BoLTokenHud._toggleHudListActive(hud, list);
|
||||
|
||||
@@ -331,7 +331,7 @@ export class BoLCalendar extends Application {
|
||||
calendrierData.jourMoisOptions = RdDCalendrier.buildJoursMois();
|
||||
calendrierData.heuresOptions = [0, 1];
|
||||
calendrierData.minutesOptions = Array(RDD_MINUTES_PAR_HEURES).fill().map((item, index) => 0 + index);
|
||||
let html = await renderTemplate('systems/foundryvtt-reve-de-dragon/templates/calendar-editor-template.html', calendrierData);
|
||||
let html = await foundry.applications.handlebars.renderTemplate('systems/foundryvtt-reve-de-dragon/templates/calendar-editor-template.html', calendrierData);
|
||||
this.editeur = new RdDCalendrierEditeur(html, this, calendrierData)
|
||||
}
|
||||
this.editeur.updateData(calendrierData);
|
||||
|
||||
@@ -344,7 +344,7 @@ export class BoLUtility {
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static async chatMessageHandler(message, html, data) {
|
||||
const chatCard = html.find('.flavor-text')
|
||||
const chatCard = $(html).find('.flavor-text')
|
||||
if (chatCard.length > 0) {
|
||||
// If the user is the message author or the actor owner, proceed
|
||||
const actor = game.actors.get(data.message.speaker.actor)
|
||||
@@ -381,6 +381,8 @@ export class BoLUtility {
|
||||
/* -------------------------------------------- */
|
||||
static async chatListeners(html) {
|
||||
|
||||
html = $(html);
|
||||
|
||||
// Damage handling
|
||||
html.on("click", '.chat-damage-apply', event => {
|
||||
let rollData = BoLUtility.getRollDataFromMessage(event)
|
||||
@@ -427,7 +429,7 @@ export class BoLUtility {
|
||||
html.on("click", '.damage-handling', event => {
|
||||
event.preventDefault()
|
||||
let attr = event.currentTarget.attributes['data-attack-id']
|
||||
if ( !attr) {
|
||||
if (!attr) {
|
||||
ui.notifications.warn("Impossible de trouver l'attaque correspondante, erreur de suivi de combat.")
|
||||
return
|
||||
}
|
||||
@@ -480,17 +482,20 @@ export class BoLUtility {
|
||||
|
||||
if (defenseMode == 'damage-with-armor') {
|
||||
let armorFormula = defender.getArmorFormula()
|
||||
rollData.armorProtect = 0
|
||||
armorFormula = String(armorFormula) || "0"
|
||||
if (armorFormula && armorFormula != "0" ) {
|
||||
rollData.rollArmor = new Roll(armorFormula)
|
||||
await rollData.rollArmor.roll()
|
||||
let msg = await rollData.rollArmor.toMessage({ flavor: "BOL.chat.armorRoll : " + armorFormula });
|
||||
if ( game.dice3d) { // wait animation end when DsN is there
|
||||
let msg = await rollData.rollArmor.toMessage({ flavor: game.i18n.localize("BOL.chat.armorRoll") + " : " + armorFormula });
|
||||
if (game.dice3d) { // wait animation end when DsN is there
|
||||
await game.dice3d.waitFor3DAnimationByMessageID(msg.id);
|
||||
}
|
||||
rollData.armorProtect = (rollData.rollArmor.total < 0) ? 0 : rollData.rollArmor.total
|
||||
}
|
||||
rollData.finalDamage = rollData.damageTotal - rollData.armorProtect
|
||||
rollData.finalDamage = (rollData.finalDamage < 0) ? 0 : rollData.finalDamage
|
||||
await defender.sufferDamage(rollData.finalDamage)
|
||||
console.log("Armor roll -> result ", rollData)
|
||||
}
|
||||
if (defenseMode == 'damage-without-armor') {
|
||||
rollData.finalDamage = rollData.damageTotal
|
||||
@@ -632,7 +637,7 @@ export class BoLUtility {
|
||||
attackId: rollData.id,
|
||||
attacker: rollData.attacker,
|
||||
defender: defender,
|
||||
defenderHeroPoints:defender.getHeroPoints(),
|
||||
defenderHeroPoints: defender.getHeroPoints(),
|
||||
defenderWeapons: defenderWeapons,
|
||||
damageTotal: rollData.damageTotal,
|
||||
damagesIgnoresArmor: rollData.damagesIgnoresArmor,
|
||||
|
||||
@@ -190,15 +190,21 @@ BOL.rangeModifiers = {
|
||||
|
||||
BOL.difficultyModifiers = {
|
||||
"4": "BOL.dialog.soeasy",
|
||||
"3": "BOL.dialog.soeasy3",
|
||||
"2": "BOL.dialog.veryeasy",
|
||||
"1": "BOL.dialog.easy",
|
||||
"0": "BOL.dialog.moderate",
|
||||
"-1": "BOL.dialog.hard",
|
||||
"-2": "BOL.dialog.tough",
|
||||
"-3": "BOL.dialog.tough3",
|
||||
"-4": "BOL.dialog.demanding",
|
||||
"-5": "BOL.dialog.demanding5",
|
||||
"-6": "BOL.dialog.formidable",
|
||||
"-7": "BOL.dialog.formidable7",
|
||||
"-8": "BOL.dialog.heroic",
|
||||
"-9": "BOL.dialog.heroic9",
|
||||
"-10": "BOL.dialog.mythic",
|
||||
"-11": "BOL.dialog.mythic11",
|
||||
"-12": "BOL.dialog.divine"
|
||||
}
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@ export default function registerHooks() {
|
||||
}))
|
||||
|
||||
Hooks.on('renderChatLog', (log, html, data) => BoLUtility.chatListeners(html))
|
||||
Hooks.on('renderChatMessage', (message, html, data) => BoLUtility.chatMessageHandler(message, html, data))
|
||||
Hooks.on('renderChatMessageHTML', (message, html, data) => BoLUtility.chatMessageHandler(message, html, data))
|
||||
|
||||
/**
|
||||
* Create a macro when dropping an entity on the hotbar
|
||||
@@ -73,7 +73,7 @@ export default function registerHooks() {
|
||||
button.addEventListener('click', () => {
|
||||
game.bol.charSummary.render(true)
|
||||
})
|
||||
html.find('.header-actions').after(button)
|
||||
$(html).find('.header-actions').after(button)
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
@@ -66,5 +66,5 @@ export const preloadHandlebarsTemplates = async function () {
|
||||
];
|
||||
|
||||
// Load the template parts
|
||||
return loadTemplates(templatePaths);
|
||||
return foundry.applications.handlebars.loadTemplates(templatePaths);
|
||||
};
|
||||
|
||||
Binary file not shown.
BIN
packs/aides-de-jeu/000977.ldb
Normal file
BIN
packs/aides-de-jeu/000977.ldb
Normal file
Binary file not shown.
@@ -1 +1 @@
|
||||
MANIFEST-000642
|
||||
MANIFEST-000990
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
2024/12/12-21:46:21.360031 7f25b97fa6c0 Recovering log #640
|
||||
2024/12/12-21:46:21.492497 7f25b97fa6c0 Delete type=3 #638
|
||||
2024/12/12-21:46:21.492569 7f25b97fa6c0 Delete type=0 #640
|
||||
2024/12/12-21:50:13.987586 7f25b2ffd6c0 Level-0 table #645: started
|
||||
2024/12/12-21:50:13.987627 7f25b2ffd6c0 Level-0 table #645: 0 bytes OK
|
||||
2024/12/12-21:50:13.994186 7f25b2ffd6c0 Delete type=0 #643
|
||||
2024/12/12-21:50:14.007425 7f25b2ffd6c0 Manual compaction at level-0 from '!journal!3xJg1rCxnWvEmoxS' @ 72057594037927935 : 1 .. '!journal.pages!veAAxCtCKcFIsnln.0kUgZspxXO7VS8bd' @ 0 : 0; will stop at (end)
|
||||
2024/12/12-21:50:14.007460 7f25b2ffd6c0 Manual compaction at level-1 from '!journal!3xJg1rCxnWvEmoxS' @ 72057594037927935 : 1 .. '!journal.pages!veAAxCtCKcFIsnln.0kUgZspxXO7VS8bd' @ 0 : 0; will stop at (end)
|
||||
2026/01/19-19:47:49.729596 7f14da7fc6c0 Recovering log #988
|
||||
2026/01/19-19:47:49.739434 7f14da7fc6c0 Delete type=3 #986
|
||||
2026/01/19-19:47:49.739512 7f14da7fc6c0 Delete type=0 #988
|
||||
2026/01/19-20:19:02.579851 7f1243fff6c0 Level-0 table #993: started
|
||||
2026/01/19-20:19:02.579872 7f1243fff6c0 Level-0 table #993: 0 bytes OK
|
||||
2026/01/19-20:19:02.585797 7f1243fff6c0 Delete type=0 #991
|
||||
2026/01/19-20:19:02.586018 7f1243fff6c0 Manual compaction at level-0 from '!journal!3xJg1rCxnWvEmoxS' @ 72057594037927935 : 1 .. '!journal.pages!veAAxCtCKcFIsnln.0kUgZspxXO7VS8bd' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
2024/12/12-21:11:43.910823 7f25b37fe6c0 Recovering log #636
|
||||
2024/12/12-21:11:44.036050 7f25b37fe6c0 Delete type=3 #634
|
||||
2024/12/12-21:11:44.036107 7f25b37fe6c0 Delete type=0 #636
|
||||
2024/12/12-21:40:17.197599 7f25b2ffd6c0 Level-0 table #641: started
|
||||
2024/12/12-21:40:17.197635 7f25b2ffd6c0 Level-0 table #641: 0 bytes OK
|
||||
2024/12/12-21:40:17.203956 7f25b2ffd6c0 Delete type=0 #639
|
||||
2024/12/12-21:40:17.217330 7f25b2ffd6c0 Manual compaction at level-0 from '!journal!3xJg1rCxnWvEmoxS' @ 72057594037927935 : 1 .. '!journal.pages!veAAxCtCKcFIsnln.0kUgZspxXO7VS8bd' @ 0 : 0; will stop at (end)
|
||||
2024/12/12-21:40:17.217374 7f25b2ffd6c0 Manual compaction at level-1 from '!journal!3xJg1rCxnWvEmoxS' @ 72057594037927935 : 1 .. '!journal.pages!veAAxCtCKcFIsnln.0kUgZspxXO7VS8bd' @ 0 : 0; will stop at (end)
|
||||
2026/01/18-20:07:47.845406 7f14d8ff96c0 Recovering log #984
|
||||
2026/01/18-20:07:47.861224 7f14d8ff96c0 Delete type=3 #982
|
||||
2026/01/18-20:07:47.861280 7f14d8ff96c0 Delete type=0 #984
|
||||
2026/01/18-20:13:44.130598 7f1243fff6c0 Level-0 table #989: started
|
||||
2026/01/18-20:13:44.130625 7f1243fff6c0 Level-0 table #989: 0 bytes OK
|
||||
2026/01/18-20:13:44.157241 7f1243fff6c0 Delete type=0 #987
|
||||
2026/01/18-20:13:44.192634 7f1243fff6c0 Manual compaction at level-0 from '!journal!3xJg1rCxnWvEmoxS' @ 72057594037927935 : 1 .. '!journal.pages!veAAxCtCKcFIsnln.0kUgZspxXO7VS8bd' @ 0 : 0; will stop at (end)
|
||||
|
||||
Binary file not shown.
BIN
packs/aides-de-jeu/MANIFEST-000990
Normal file
BIN
packs/aides-de-jeu/MANIFEST-000990
Normal file
Binary file not shown.
Binary file not shown.
BIN
packs/armors/000882.ldb
Normal file
BIN
packs/armors/000882.ldb
Normal file
Binary file not shown.
@@ -1 +1 @@
|
||||
MANIFEST-000548
|
||||
MANIFEST-000895
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
2024/12/12-21:46:21.083865 7f25b37fe6c0 Recovering log #546
|
||||
2024/12/12-21:46:21.217856 7f25b37fe6c0 Delete type=3 #544
|
||||
2024/12/12-21:46:21.217918 7f25b37fe6c0 Delete type=0 #546
|
||||
2024/12/12-21:50:13.981247 7f25b2ffd6c0 Level-0 table #551: started
|
||||
2024/12/12-21:50:13.981272 7f25b2ffd6c0 Level-0 table #551: 0 bytes OK
|
||||
2024/12/12-21:50:13.987466 7f25b2ffd6c0 Delete type=0 #549
|
||||
2024/12/12-21:50:14.007412 7f25b2ffd6c0 Manual compaction at level-0 from '!items!G3dZTHIabA3LA1hY' @ 72057594037927935 : 1 .. '!items!xhEcsi3WHjbt2ro9' @ 0 : 0; will stop at (end)
|
||||
2024/12/12-21:50:14.007452 7f25b2ffd6c0 Manual compaction at level-1 from '!items!G3dZTHIabA3LA1hY' @ 72057594037927935 : 1 .. '!items!xhEcsi3WHjbt2ro9' @ 0 : 0; will stop at (end)
|
||||
2026/01/19-19:47:49.702991 7f14d97fa6c0 Recovering log #893
|
||||
2026/01/19-19:47:49.714316 7f14d97fa6c0 Delete type=3 #891
|
||||
2026/01/19-19:47:49.714383 7f14d97fa6c0 Delete type=0 #893
|
||||
2026/01/19-20:19:02.560145 7f1243fff6c0 Level-0 table #898: started
|
||||
2026/01/19-20:19:02.560173 7f1243fff6c0 Level-0 table #898: 0 bytes OK
|
||||
2026/01/19-20:19:02.566093 7f1243fff6c0 Delete type=0 #896
|
||||
2026/01/19-20:19:02.585964 7f1243fff6c0 Manual compaction at level-0 from '!items!G3dZTHIabA3LA1hY' @ 72057594037927935 : 1 .. '!items!xhEcsi3WHjbt2ro9' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
2024/12/12-21:11:43.620616 7f25b8ff96c0 Recovering log #542
|
||||
2024/12/12-21:11:43.750156 7f25b8ff96c0 Delete type=3 #540
|
||||
2024/12/12-21:11:43.750213 7f25b8ff96c0 Delete type=0 #542
|
||||
2024/12/12-21:40:17.191315 7f25b2ffd6c0 Level-0 table #547: started
|
||||
2024/12/12-21:40:17.191339 7f25b2ffd6c0 Level-0 table #547: 0 bytes OK
|
||||
2024/12/12-21:40:17.197420 7f25b2ffd6c0 Delete type=0 #545
|
||||
2024/12/12-21:40:17.217313 7f25b2ffd6c0 Manual compaction at level-0 from '!items!G3dZTHIabA3LA1hY' @ 72057594037927935 : 1 .. '!items!xhEcsi3WHjbt2ro9' @ 0 : 0; will stop at (end)
|
||||
2024/12/12-21:40:17.217363 7f25b2ffd6c0 Manual compaction at level-1 from '!items!G3dZTHIabA3LA1hY' @ 72057594037927935 : 1 .. '!items!xhEcsi3WHjbt2ro9' @ 0 : 0; will stop at (end)
|
||||
2026/01/18-20:07:47.807797 7f14d9ffb6c0 Recovering log #889
|
||||
2026/01/18-20:07:47.824331 7f14d9ffb6c0 Delete type=3 #887
|
||||
2026/01/18-20:07:47.824381 7f14d9ffb6c0 Delete type=0 #889
|
||||
2026/01/18-20:13:44.157350 7f1243fff6c0 Level-0 table #894: started
|
||||
2026/01/18-20:13:44.157372 7f1243fff6c0 Level-0 table #894: 0 bytes OK
|
||||
2026/01/18-20:13:44.192480 7f1243fff6c0 Delete type=0 #892
|
||||
2026/01/18-20:13:44.192647 7f1243fff6c0 Manual compaction at level-0 from '!items!G3dZTHIabA3LA1hY' @ 72057594037927935 : 1 .. '!items!xhEcsi3WHjbt2ro9' @ 0 : 0; will stop at (end)
|
||||
|
||||
Binary file not shown.
BIN
packs/armors/MANIFEST-000895
Normal file
BIN
packs/armors/MANIFEST-000895
Normal file
Binary file not shown.
Binary file not shown.
BIN
packs/boons/000976.ldb
Normal file
BIN
packs/boons/000976.ldb
Normal file
Binary file not shown.
@@ -1 +1 @@
|
||||
MANIFEST-000641
|
||||
MANIFEST-000989
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
2024/12/12-21:46:20.029795 7f25b37fe6c0 Recovering log #639
|
||||
2024/12/12-21:46:20.162579 7f25b37fe6c0 Delete type=3 #637
|
||||
2024/12/12-21:46:20.162683 7f25b37fe6c0 Delete type=0 #639
|
||||
2024/12/12-21:50:13.926457 7f25b2ffd6c0 Level-0 table #644: started
|
||||
2024/12/12-21:50:13.926508 7f25b2ffd6c0 Level-0 table #644: 0 bytes OK
|
||||
2024/12/12-21:50:13.934036 7f25b2ffd6c0 Delete type=0 #642
|
||||
2024/12/12-21:50:13.954229 7f25b2ffd6c0 Manual compaction at level-0 from '!items!039ZF3E3MtAGwbiX' @ 72057594037927935 : 1 .. '!items!zgspy1QKaxdEetEw' @ 0 : 0; will stop at (end)
|
||||
2024/12/12-21:50:13.954282 7f25b2ffd6c0 Manual compaction at level-1 from '!items!039ZF3E3MtAGwbiX' @ 72057594037927935 : 1 .. '!items!zgspy1QKaxdEetEw' @ 0 : 0; will stop at (end)
|
||||
2026/01/19-19:47:49.594444 7f14d8ff96c0 Recovering log #987
|
||||
2026/01/19-19:47:49.605020 7f14d8ff96c0 Delete type=3 #985
|
||||
2026/01/19-19:47:49.605095 7f14d8ff96c0 Delete type=0 #987
|
||||
2026/01/19-20:19:02.521702 7f1243fff6c0 Level-0 table #992: started
|
||||
2026/01/19-20:19:02.521733 7f1243fff6c0 Level-0 table #992: 0 bytes OK
|
||||
2026/01/19-20:19:02.528339 7f1243fff6c0 Delete type=0 #990
|
||||
2026/01/19-20:19:02.534634 7f1243fff6c0 Manual compaction at level-0 from '!items!039ZF3E3MtAGwbiX' @ 72057594037927935 : 1 .. '!items!zgspy1QKaxdEetEw' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
2024/12/12-21:11:42.417136 7f25b8ff96c0 Recovering log #635
|
||||
2024/12/12-21:11:42.597818 7f25b8ff96c0 Delete type=3 #633
|
||||
2024/12/12-21:11:42.597875 7f25b8ff96c0 Delete type=0 #635
|
||||
2024/12/12-21:40:17.139303 7f25b2ffd6c0 Level-0 table #640: started
|
||||
2024/12/12-21:40:17.139355 7f25b2ffd6c0 Level-0 table #640: 0 bytes OK
|
||||
2024/12/12-21:40:17.145373 7f25b2ffd6c0 Delete type=0 #638
|
||||
2024/12/12-21:40:17.165314 7f25b2ffd6c0 Manual compaction at level-0 from '!items!039ZF3E3MtAGwbiX' @ 72057594037927935 : 1 .. '!items!zgspy1QKaxdEetEw' @ 0 : 0; will stop at (end)
|
||||
2024/12/12-21:40:17.165365 7f25b2ffd6c0 Manual compaction at level-1 from '!items!039ZF3E3MtAGwbiX' @ 72057594037927935 : 1 .. '!items!zgspy1QKaxdEetEw' @ 0 : 0; will stop at (end)
|
||||
2026/01/18-20:07:47.640110 7f14da7fc6c0 Recovering log #983
|
||||
2026/01/18-20:07:47.659075 7f14da7fc6c0 Delete type=3 #981
|
||||
2026/01/18-20:07:47.659147 7f14da7fc6c0 Delete type=0 #983
|
||||
2026/01/18-20:13:43.881522 7f1243fff6c0 Level-0 table #988: started
|
||||
2026/01/18-20:13:43.881548 7f1243fff6c0 Level-0 table #988: 0 bytes OK
|
||||
2026/01/18-20:13:43.921371 7f1243fff6c0 Delete type=0 #986
|
||||
2026/01/18-20:13:43.921513 7f1243fff6c0 Manual compaction at level-0 from '!items!039ZF3E3MtAGwbiX' @ 72057594037927935 : 1 .. '!items!zgspy1QKaxdEetEw' @ 0 : 0; will stop at (end)
|
||||
|
||||
Binary file not shown.
BIN
packs/boons/MANIFEST-000989
Normal file
BIN
packs/boons/MANIFEST-000989
Normal file
Binary file not shown.
Binary file not shown.
BIN
packs/boonsflawscreatures/000975.ldb
Normal file
BIN
packs/boonsflawscreatures/000975.ldb
Normal file
Binary file not shown.
@@ -1 +1 @@
|
||||
MANIFEST-000641
|
||||
MANIFEST-000988
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
2024/12/12-21:46:20.169625 7f25b8ff96c0 Recovering log #639
|
||||
2024/12/12-21:46:20.298341 7f25b8ff96c0 Delete type=3 #637
|
||||
2024/12/12-21:46:20.298399 7f25b8ff96c0 Delete type=0 #639
|
||||
2024/12/12-21:50:13.934153 7f25b2ffd6c0 Level-0 table #644: started
|
||||
2024/12/12-21:50:13.934178 7f25b2ffd6c0 Level-0 table #644: 0 bytes OK
|
||||
2024/12/12-21:50:13.940593 7f25b2ffd6c0 Delete type=0 #642
|
||||
2024/12/12-21:50:13.954244 7f25b2ffd6c0 Manual compaction at level-0 from '!items!CoqlfsDV1gL5swbK' @ 72057594037927935 : 1 .. '!items!yofwG0YrsL902G77' @ 0 : 0; will stop at (end)
|
||||
2024/12/12-21:50:13.954292 7f25b2ffd6c0 Manual compaction at level-1 from '!items!CoqlfsDV1gL5swbK' @ 72057594037927935 : 1 .. '!items!yofwG0YrsL902G77' @ 0 : 0; will stop at (end)
|
||||
2026/01/19-19:47:49.609310 7f14da7fc6c0 Recovering log #986
|
||||
2026/01/19-19:47:49.619302 7f14da7fc6c0 Delete type=3 #984
|
||||
2026/01/19-19:47:49.619373 7f14da7fc6c0 Delete type=0 #986
|
||||
2026/01/19-20:19:02.515027 7f1243fff6c0 Level-0 table #991: started
|
||||
2026/01/19-20:19:02.515048 7f1243fff6c0 Level-0 table #991: 0 bytes OK
|
||||
2026/01/19-20:19:02.521555 7f1243fff6c0 Delete type=0 #989
|
||||
2026/01/19-20:19:02.534623 7f1243fff6c0 Manual compaction at level-0 from '!items!CoqlfsDV1gL5swbK' @ 72057594037927935 : 1 .. '!items!yofwG0YrsL902G77' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
2024/12/12-21:11:42.611933 7f25b3fff6c0 Recovering log #635
|
||||
2024/12/12-21:11:42.739932 7f25b3fff6c0 Delete type=3 #633
|
||||
2024/12/12-21:11:42.740037 7f25b3fff6c0 Delete type=0 #635
|
||||
2024/12/12-21:40:17.158730 7f25b2ffd6c0 Level-0 table #640: started
|
||||
2024/12/12-21:40:17.158762 7f25b2ffd6c0 Level-0 table #640: 0 bytes OK
|
||||
2024/12/12-21:40:17.165130 7f25b2ffd6c0 Delete type=0 #638
|
||||
2024/12/12-21:40:17.165357 7f25b2ffd6c0 Manual compaction at level-0 from '!items!CoqlfsDV1gL5swbK' @ 72057594037927935 : 1 .. '!items!yofwG0YrsL902G77' @ 0 : 0; will stop at (end)
|
||||
2024/12/12-21:40:17.165391 7f25b2ffd6c0 Manual compaction at level-1 from '!items!CoqlfsDV1gL5swbK' @ 72057594037927935 : 1 .. '!items!yofwG0YrsL902G77' @ 0 : 0; will stop at (end)
|
||||
2026/01/18-20:07:47.664234 7f14d8ff96c0 Recovering log #982
|
||||
2026/01/18-20:07:47.679427 7f14d8ff96c0 Delete type=3 #980
|
||||
2026/01/18-20:07:47.679484 7f14d8ff96c0 Delete type=0 #982
|
||||
2026/01/18-20:13:43.851971 7f1243fff6c0 Level-0 table #987: started
|
||||
2026/01/18-20:13:43.851994 7f1243fff6c0 Level-0 table #987: 0 bytes OK
|
||||
2026/01/18-20:13:43.881382 7f1243fff6c0 Delete type=0 #985
|
||||
2026/01/18-20:13:43.921506 7f1243fff6c0 Manual compaction at level-0 from '!items!CoqlfsDV1gL5swbK' @ 72057594037927935 : 1 .. '!items!yofwG0YrsL902G77' @ 0 : 0; will stop at (end)
|
||||
|
||||
Binary file not shown.
BIN
packs/boonsflawscreatures/MANIFEST-000988
Normal file
BIN
packs/boonsflawscreatures/MANIFEST-000988
Normal file
Binary file not shown.
Binary file not shown.
BIN
packs/careers/000975.ldb
Normal file
BIN
packs/careers/000975.ldb
Normal file
Binary file not shown.
@@ -1 +1 @@
|
||||
MANIFEST-000641
|
||||
MANIFEST-000988
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
2024/12/12-21:46:20.429002 7f25b3fff6c0 Recovering log #639
|
||||
2024/12/12-21:46:20.557790 7f25b3fff6c0 Delete type=3 #637
|
||||
2024/12/12-21:46:20.557866 7f25b3fff6c0 Delete type=0 #639
|
||||
2024/12/12-21:50:13.940754 7f25b2ffd6c0 Level-0 table #644: started
|
||||
2024/12/12-21:50:13.940780 7f25b2ffd6c0 Level-0 table #644: 0 bytes OK
|
||||
2024/12/12-21:50:13.947933 7f25b2ffd6c0 Delete type=0 #642
|
||||
2024/12/12-21:50:13.954259 7f25b2ffd6c0 Manual compaction at level-0 from '!items!4S4xAfMXGnuU0O1a' @ 72057594037927935 : 1 .. '!items!zxY3sW0iCJBvwjOS' @ 0 : 0; will stop at (end)
|
||||
2024/12/12-21:50:13.954302 7f25b2ffd6c0 Manual compaction at level-1 from '!items!4S4xAfMXGnuU0O1a' @ 72057594037927935 : 1 .. '!items!zxY3sW0iCJBvwjOS' @ 0 : 0; will stop at (end)
|
||||
2026/01/19-19:47:49.635172 7f14d8ff96c0 Recovering log #986
|
||||
2026/01/19-19:47:49.644889 7f14d8ff96c0 Delete type=3 #984
|
||||
2026/01/19-19:47:49.644941 7f14d8ff96c0 Delete type=0 #986
|
||||
2026/01/19-20:19:02.508864 7f1243fff6c0 Level-0 table #991: started
|
||||
2026/01/19-20:19:02.508913 7f1243fff6c0 Level-0 table #991: 0 bytes OK
|
||||
2026/01/19-20:19:02.514913 7f1243fff6c0 Delete type=0 #989
|
||||
2026/01/19-20:19:02.534608 7f1243fff6c0 Manual compaction at level-0 from '!items!4S4xAfMXGnuU0O1a' @ 72057594037927935 : 1 .. '!items!zxY3sW0iCJBvwjOS' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
2024/12/12-21:11:42.873685 7f25b97fa6c0 Recovering log #635
|
||||
2024/12/12-21:11:43.006883 7f25b97fa6c0 Delete type=3 #633
|
||||
2024/12/12-21:11:43.006940 7f25b97fa6c0 Delete type=0 #635
|
||||
2024/12/12-21:40:17.165812 7f25b2ffd6c0 Level-0 table #640: started
|
||||
2024/12/12-21:40:17.165866 7f25b2ffd6c0 Level-0 table #640: 0 bytes OK
|
||||
2024/12/12-21:40:17.172013 7f25b2ffd6c0 Delete type=0 #638
|
||||
2024/12/12-21:40:17.191170 7f25b2ffd6c0 Manual compaction at level-0 from '!items!4S4xAfMXGnuU0O1a' @ 72057594037927935 : 1 .. '!items!zxY3sW0iCJBvwjOS' @ 0 : 0; will stop at (end)
|
||||
2024/12/12-21:40:17.191207 7f25b2ffd6c0 Manual compaction at level-1 from '!items!4S4xAfMXGnuU0O1a' @ 72057594037927935 : 1 .. '!items!zxY3sW0iCJBvwjOS' @ 0 : 0; will stop at (end)
|
||||
2026/01/18-20:07:47.704039 7f14d8ff96c0 Recovering log #982
|
||||
2026/01/18-20:07:47.721242 7f14d8ff96c0 Delete type=3 #980
|
||||
2026/01/18-20:07:47.721902 7f14d8ff96c0 Delete type=0 #982
|
||||
2026/01/18-20:13:43.777269 7f1243fff6c0 Level-0 table #987: started
|
||||
2026/01/18-20:13:43.777312 7f1243fff6c0 Level-0 table #987: 0 bytes OK
|
||||
2026/01/18-20:13:43.819988 7f1243fff6c0 Delete type=0 #985
|
||||
2026/01/18-20:13:43.921486 7f1243fff6c0 Manual compaction at level-0 from '!items!4S4xAfMXGnuU0O1a' @ 72057594037927935 : 1 .. '!items!zxY3sW0iCJBvwjOS' @ 0 : 0; will stop at (end)
|
||||
|
||||
Binary file not shown.
BIN
packs/careers/MANIFEST-000988
Normal file
BIN
packs/careers/MANIFEST-000988
Normal file
Binary file not shown.
Binary file not shown.
BIN
packs/effets-exemples/000973.ldb
Normal file
BIN
packs/effets-exemples/000973.ldb
Normal file
Binary file not shown.
@@ -1 +1 @@
|
||||
MANIFEST-000639
|
||||
MANIFEST-000986
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
2024/12/12-21:46:22.297524 7f25b97fa6c0 Recovering log #637
|
||||
2024/12/12-21:46:22.422030 7f25b97fa6c0 Delete type=3 #635
|
||||
2024/12/12-21:46:22.422102 7f25b97fa6c0 Delete type=0 #637
|
||||
2024/12/12-21:50:14.036330 7f25b2ffd6c0 Level-0 table #642: started
|
||||
2024/12/12-21:50:14.036351 7f25b2ffd6c0 Level-0 table #642: 0 bytes OK
|
||||
2024/12/12-21:50:14.042312 7f25b2ffd6c0 Delete type=0 #640
|
||||
2024/12/12-21:50:14.062514 7f25b2ffd6c0 Manual compaction at level-0 from '!items!6fTZ6hOKR4pWbWOe' @ 72057594037927935 : 1 .. '!items!zwSNMO9HpiqUCMt8' @ 0 : 0; will stop at (end)
|
||||
2024/12/12-21:50:14.062568 7f25b2ffd6c0 Manual compaction at level-1 from '!items!6fTZ6hOKR4pWbWOe' @ 72057594037927935 : 1 .. '!items!zwSNMO9HpiqUCMt8' @ 0 : 0; will stop at (end)
|
||||
2026/01/19-19:47:49.822315 7f14d9ffb6c0 Recovering log #984
|
||||
2026/01/19-19:47:49.833348 7f14d9ffb6c0 Delete type=3 #982
|
||||
2026/01/19-19:47:49.833401 7f14d9ffb6c0 Delete type=0 #984
|
||||
2026/01/19-20:19:02.619154 7f1243fff6c0 Level-0 table #989: started
|
||||
2026/01/19-20:19:02.619176 7f1243fff6c0 Level-0 table #989: 0 bytes OK
|
||||
2026/01/19-20:19:02.626822 7f1243fff6c0 Delete type=0 #987
|
||||
2026/01/19-20:19:02.639748 7f1243fff6c0 Manual compaction at level-0 from '!items!6fTZ6hOKR4pWbWOe' @ 72057594037927935 : 1 .. '!items!zwSNMO9HpiqUCMt8' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
2024/12/12-21:11:44.902849 7f25b3fff6c0 Recovering log #633
|
||||
2024/12/12-21:11:45.032391 7f25b3fff6c0 Delete type=3 #631
|
||||
2024/12/12-21:11:45.032468 7f25b3fff6c0 Delete type=0 #633
|
||||
2024/12/12-21:40:17.243571 7f25b2ffd6c0 Level-0 table #638: started
|
||||
2024/12/12-21:40:17.243623 7f25b2ffd6c0 Level-0 table #638: 0 bytes OK
|
||||
2024/12/12-21:40:17.249629 7f25b2ffd6c0 Delete type=0 #636
|
||||
2024/12/12-21:40:17.269518 7f25b2ffd6c0 Manual compaction at level-0 from '!items!6fTZ6hOKR4pWbWOe' @ 72057594037927935 : 1 .. '!items!zwSNMO9HpiqUCMt8' @ 0 : 0; will stop at (end)
|
||||
2024/12/12-21:40:17.269564 7f25b2ffd6c0 Manual compaction at level-1 from '!items!6fTZ6hOKR4pWbWOe' @ 72057594037927935 : 1 .. '!items!zwSNMO9HpiqUCMt8' @ 0 : 0; will stop at (end)
|
||||
2026/01/18-20:07:48.004635 7f14d9ffb6c0 Recovering log #980
|
||||
2026/01/18-20:07:48.021334 7f14d9ffb6c0 Delete type=3 #978
|
||||
2026/01/18-20:07:48.021403 7f14d9ffb6c0 Delete type=0 #980
|
||||
2026/01/18-20:13:44.336530 7f1243fff6c0 Level-0 table #985: started
|
||||
2026/01/18-20:13:44.336556 7f1243fff6c0 Level-0 table #985: 0 bytes OK
|
||||
2026/01/18-20:13:44.372711 7f1243fff6c0 Delete type=0 #983
|
||||
2026/01/18-20:13:44.502487 7f1243fff6c0 Manual compaction at level-0 from '!items!6fTZ6hOKR4pWbWOe' @ 72057594037927935 : 1 .. '!items!zwSNMO9HpiqUCMt8' @ 0 : 0; will stop at (end)
|
||||
|
||||
Binary file not shown.
BIN
packs/effets-exemples/MANIFEST-000986
Normal file
BIN
packs/effets-exemples/MANIFEST-000986
Normal file
Binary file not shown.
Binary file not shown.
BIN
packs/equipment/000976.ldb
Normal file
BIN
packs/equipment/000976.ldb
Normal file
Binary file not shown.
@@ -1 +1 @@
|
||||
MANIFEST-000642
|
||||
MANIFEST-000989
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
2024/12/12-21:46:20.825829 7f25b97fa6c0 Recovering log #640
|
||||
2024/12/12-21:46:20.946944 7f25b97fa6c0 Delete type=3 #638
|
||||
2024/12/12-21:46:20.947007 7f25b97fa6c0 Delete type=0 #640
|
||||
2024/12/12-21:50:13.961670 7f25b2ffd6c0 Level-0 table #645: started
|
||||
2024/12/12-21:50:13.961702 7f25b2ffd6c0 Level-0 table #645: 0 bytes OK
|
||||
2024/12/12-21:50:13.967794 7f25b2ffd6c0 Delete type=0 #643
|
||||
2024/12/12-21:50:13.981101 7f25b2ffd6c0 Manual compaction at level-0 from '!items!0ErhyqifZLDCmMfT' @ 72057594037927935 : 1 .. '!items!yE8UH6YAgNGjKDEu' @ 0 : 0; will stop at (end)
|
||||
2024/12/12-21:50:13.981151 7f25b2ffd6c0 Manual compaction at level-1 from '!items!0ErhyqifZLDCmMfT' @ 72057594037927935 : 1 .. '!items!yE8UH6YAgNGjKDEu' @ 0 : 0; will stop at (end)
|
||||
2026/01/19-19:47:49.675978 7f14d8ff96c0 Recovering log #987
|
||||
2026/01/19-19:47:49.685972 7f14d8ff96c0 Delete type=3 #985
|
||||
2026/01/19-19:47:49.686034 7f14d8ff96c0 Delete type=0 #987
|
||||
2026/01/19-20:19:02.553787 7f1243fff6c0 Level-0 table #992: started
|
||||
2026/01/19-20:19:02.553814 7f1243fff6c0 Level-0 table #992: 0 bytes OK
|
||||
2026/01/19-20:19:02.559887 7f1243fff6c0 Delete type=0 #990
|
||||
2026/01/19-20:19:02.560019 7f1243fff6c0 Manual compaction at level-0 from '!items!0ErhyqifZLDCmMfT' @ 72057594037927935 : 1 .. '!items!yE8UH6YAgNGjKDEu' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
2024/12/12-21:11:43.327343 7f25b37fe6c0 Recovering log #636
|
||||
2024/12/12-21:11:43.469585 7f25b37fe6c0 Delete type=3 #634
|
||||
2024/12/12-21:11:43.469659 7f25b37fe6c0 Delete type=0 #636
|
||||
2024/12/12-21:40:17.178441 7f25b2ffd6c0 Level-0 table #641: started
|
||||
2024/12/12-21:40:17.178475 7f25b2ffd6c0 Level-0 table #641: 0 bytes OK
|
||||
2024/12/12-21:40:17.185036 7f25b2ffd6c0 Delete type=0 #639
|
||||
2024/12/12-21:40:17.191191 7f25b2ffd6c0 Manual compaction at level-0 from '!items!0ErhyqifZLDCmMfT' @ 72057594037927935 : 1 .. '!items!yE8UH6YAgNGjKDEu' @ 0 : 0; will stop at (end)
|
||||
2024/12/12-21:40:17.191219 7f25b2ffd6c0 Manual compaction at level-1 from '!items!0ErhyqifZLDCmMfT' @ 72057594037927935 : 1 .. '!items!yE8UH6YAgNGjKDEu' @ 0 : 0; will stop at (end)
|
||||
2026/01/18-20:07:47.766393 7f14d8ff96c0 Recovering log #983
|
||||
2026/01/18-20:07:47.781538 7f14d8ff96c0 Delete type=3 #981
|
||||
2026/01/18-20:07:47.781589 7f14d8ff96c0 Delete type=0 #983
|
||||
2026/01/18-20:13:43.983716 7f1243fff6c0 Level-0 table #988: started
|
||||
2026/01/18-20:13:43.983740 7f1243fff6c0 Level-0 table #988: 0 bytes OK
|
||||
2026/01/18-20:13:44.023789 7f1243fff6c0 Delete type=0 #986
|
||||
2026/01/18-20:13:44.053229 7f1243fff6c0 Manual compaction at level-0 from '!items!0ErhyqifZLDCmMfT' @ 72057594037927935 : 1 .. '!items!yE8UH6YAgNGjKDEu' @ 0 : 0; will stop at (end)
|
||||
|
||||
Binary file not shown.
BIN
packs/equipment/MANIFEST-000989
Normal file
BIN
packs/equipment/MANIFEST-000989
Normal file
Binary file not shown.
Binary file not shown.
BIN
packs/fightoptions/000975.ldb
Normal file
BIN
packs/fightoptions/000975.ldb
Normal file
Binary file not shown.
@@ -1 +1 @@
|
||||
MANIFEST-000641
|
||||
MANIFEST-000988
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
2024/12/12-21:46:21.761604 7f25b97fa6c0 Recovering log #639
|
||||
2024/12/12-21:46:21.881404 7f25b97fa6c0 Delete type=3 #637
|
||||
2024/12/12-21:46:21.881471 7f25b97fa6c0 Delete type=0 #639
|
||||
2024/12/12-21:50:14.014800 7f25b2ffd6c0 Level-0 table #644: started
|
||||
2024/12/12-21:50:14.014827 7f25b2ffd6c0 Level-0 table #644: 0 bytes OK
|
||||
2024/12/12-21:50:14.022468 7f25b2ffd6c0 Delete type=0 #642
|
||||
2024/12/12-21:50:14.036201 7f25b2ffd6c0 Manual compaction at level-0 from '!items!AoT2c0af4lY6aBsx' @ 72057594037927935 : 1 .. '!items!vGydqADwTsHZ9B3j' @ 0 : 0; will stop at (end)
|
||||
2024/12/12-21:50:14.036225 7f25b2ffd6c0 Manual compaction at level-1 from '!items!AoT2c0af4lY6aBsx' @ 72057594037927935 : 1 .. '!items!vGydqADwTsHZ9B3j' @ 0 : 0; will stop at (end)
|
||||
2026/01/19-19:47:49.769389 7f14d8ff96c0 Recovering log #986
|
||||
2026/01/19-19:47:49.779377 7f14d8ff96c0 Delete type=3 #984
|
||||
2026/01/19-19:47:49.779429 7f14d8ff96c0 Delete type=0 #986
|
||||
2026/01/19-20:19:02.593611 7f1243fff6c0 Level-0 table #991: started
|
||||
2026/01/19-20:19:02.593633 7f1243fff6c0 Level-0 table #991: 0 bytes OK
|
||||
2026/01/19-20:19:02.599673 7f1243fff6c0 Delete type=0 #989
|
||||
2026/01/19-20:19:02.612871 7f1243fff6c0 Manual compaction at level-0 from '!items!AoT2c0af4lY6aBsx' @ 72057594037927935 : 1 .. '!items!vGydqADwTsHZ9B3j' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
2024/12/12-21:11:44.305269 7f25b3fff6c0 Recovering log #635
|
||||
2024/12/12-21:11:44.453136 7f25b3fff6c0 Delete type=3 #633
|
||||
2024/12/12-21:11:44.453199 7f25b3fff6c0 Delete type=0 #635
|
||||
2024/12/12-21:40:17.224453 7f25b2ffd6c0 Level-0 table #640: started
|
||||
2024/12/12-21:40:17.224477 7f25b2ffd6c0 Level-0 table #640: 0 bytes OK
|
||||
2024/12/12-21:40:17.230480 7f25b2ffd6c0 Delete type=0 #638
|
||||
2024/12/12-21:40:17.243407 7f25b2ffd6c0 Manual compaction at level-0 from '!items!AoT2c0af4lY6aBsx' @ 72057594037927935 : 1 .. '!items!vGydqADwTsHZ9B3j' @ 0 : 0; will stop at (end)
|
||||
2024/12/12-21:40:17.243464 7f25b2ffd6c0 Manual compaction at level-1 from '!items!AoT2c0af4lY6aBsx' @ 72057594037927935 : 1 .. '!items!vGydqADwTsHZ9B3j' @ 0 : 0; will stop at (end)
|
||||
2026/01/18-20:07:47.909338 7f14d9ffb6c0 Recovering log #982
|
||||
2026/01/18-20:07:47.941648 7f14d9ffb6c0 Delete type=3 #980
|
||||
2026/01/18-20:07:47.941699 7f14d9ffb6c0 Delete type=0 #982
|
||||
2026/01/18-20:13:44.233085 7f1243fff6c0 Level-0 table #987: started
|
||||
2026/01/18-20:13:44.233108 7f1243fff6c0 Level-0 table #987: 0 bytes OK
|
||||
2026/01/18-20:13:44.259693 7f1243fff6c0 Delete type=0 #985
|
||||
2026/01/18-20:13:44.336426 7f1243fff6c0 Manual compaction at level-0 from '!items!AoT2c0af4lY6aBsx' @ 72057594037927935 : 1 .. '!items!vGydqADwTsHZ9B3j' @ 0 : 0; will stop at (end)
|
||||
|
||||
Binary file not shown.
BIN
packs/fightoptions/MANIFEST-000988
Normal file
BIN
packs/fightoptions/MANIFEST-000988
Normal file
Binary file not shown.
Binary file not shown.
BIN
packs/fightoptionsfanmade/000458.ldb
Normal file
BIN
packs/fightoptionsfanmade/000458.ldb
Normal file
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user