Compare commits

...

17 Commits

Author SHA1 Message Date
425a2a1fc0 Fix odd difficulties
Some checks failed
Release Creation / build (release) Failing after 45s
2025-08-24 22:18:39 +02:00
203d7add66 FIx journals color
Some checks failed
Release Creation / build (release) Failing after 1m38s
2025-07-08 22:34:13 +02:00
8ae193dc34 Fix items sheets
Some checks failed
Release Creation / build (release) Failing after 1m0s
2025-05-15 18:18:40 +02:00
3904f595b5 Add repo
Some checks failed
Release Creation / build (release) Failing after 1m1s
2025-05-15 15:29:49 +02:00
1bf21fae7f Add repo 2025-05-15 14:29:11 +02:00
22579c21bc Update for Foundry v13
Some checks failed
Release Creation / build (release) Failing after 58s
2025-05-09 21:58:37 +02:00
50c5c31e7b Update for Foundry v13 2025-05-09 21:56:03 +02:00
a8c05cd4de Update for Foundry v13 2025-05-09 21:54:29 +02:00
e1cea78059 Update for Foundry v13 2025-05-09 21:54:10 +02:00
c2f9934f5f Fix welcome message 2025-03-31 07:21:30 +02:00
313c8a85fa Fix welcome message 2025-03-31 07:15:38 +02:00
74f6d4d54a Fix empty lands, Fix #33 2025-02-12 07:02:24 +01:00
2eb153ce14 Various fixes for translations 2025-02-11 21:55:04 +01:00
fe513e821a Fix AIS from ARESIA inputs 2025-02-11 21:45:30 +01:00
1b72c9c467 Various fixes for rulebook module 2025-02-10 20:28:13 +01:00
3c3a0901da Fix issues #30 and #31 2025-02-09 21:08:20 +01:00
3fc6d3e3df Fix issues #30 and #31 2025-02-09 21:08:02 +01:00
171 changed files with 438 additions and 491 deletions

View File

@@ -1,6 +1,6 @@
name: Release Creation
on:
on:
release:
types: [published]
@@ -8,47 +8,47 @@ jobs:
build:
runs-on: ubuntu-latest
steps:
- run: echo "💡 The ${{ gitea.repository }} repository will cloned to the runner."
#- uses: actions/checkout@v3
- uses: RouxAntoine/checkout@v3.5.4
with:
ref: 'v10'
- run: echo "💡 The ${{ gitea.repository }} repository will cloned to the runner."
# get part of the tag after the `v`
- name: Extract tag version number
id: get_version
uses: battila7/get-version-action@v2
#- uses: actions/checkout@v3
- uses: RouxAntoine/checkout@v3.5.4
with:
ref: "v13"
# Substitute the Manifest and Download URLs in the module.json
- name: Substitute Manifest and Download Links For Versioned Ones
id: sub_manifest_link_version
uses: microsoft/variable-substitution@v1
with:
files: 'system.json'
env:
version: ${{steps.get_version.outputs.version-without-v}}
url: https://www.uberwald.me/gitea/public/bol
manifest: https://www.uberwald.me/gitea/public/bol/releases/latest/system.json
download: https://www.uberwald.me/gitea/public/bol/releases/download/${{github.event.release.tag_name}}/bol.zip
# Create a zip file with all files required by the module to add to the release
- run: |
apt update -y
apt install -y zip
# get part of the tag after the `v`
- name: Extract tag version number
id: get_version
uses: battila7/get-version-action@v2
- run: zip -r ./bol.zip system.json template.json README.md LICENSE assets/ 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'
- name: Use Go Action
id: use-go-action
uses: https://gitea.com/actions/release-action@main
with:
files: |-
./bol.zip
system.json
api_key: '${{secrets.RELEASE_TOKEN_UBERWALD}}'
# Substitute the Manifest and Download URLs in the module.json
- name: Substitute Manifest and Download Links For Versioned Ones
id: sub_manifest_link_version
uses: microsoft/variable-substitution@v1
with:
files: "system.json"
env:
version: ${{steps.get_version.outputs.version-without-v}}
url: https://www.uberwald.me/gitea/public/bol
manifest: https://www.uberwald.me/gitea/public/bol/releases/latest/system.json
download: https://www.uberwald.me/gitea/public/bol/releases/download/${{github.event.release.tag_name}}/bol.zip
# Create a zip file with all files required by the module to add to the release
- run: |
apt update -y
apt install -y zip
- 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"
- name: Use Go Action
id: use-go-action
uses: https://gitea.com/actions/release-action@main
with:
files: |-
./bol.zip
system.json
api_key: "${{secrets.RELEASE_TOKEN_UBERWALD}}"

View File

@@ -1,25 +1,33 @@
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
- Ajout de la traduction Espagnole
- Nouvelles clés de traduction
- Petites amélioration diverses
# v11.1.2
- Ajout des traductions manquantes en anglais
@@ -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é

View File

@@ -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, youd 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 its harder to notice things whilst wearing a helmet).</p><p>Most Heroes take their helmets off, unless preparing for battle.</p>"
},
"Grand bouclier": {

View File

@@ -14,7 +14,7 @@
"description": ""
},
"Esprit -1": {
"name": "Miond -1",
"name": "Mind -1",
"description": ""
},
"Vigueur -1": {

View File

@@ -175,7 +175,7 @@
},
"Traqué": {
"name": "Hunted",
"description": "<h1>Hunted</h1><p>Your character is ridiculously tight- lipped. Its a rare day on which he uses a sentence of more than three words, and its 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>"
}
}
}

View File

@@ -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, sil faut en croire les récits de chasseurs et dexplorateurs qui ont relevé des traces de présence. Mais à ce jour, personne na découvert le moindre village ou hameau, et on ignore tout de lapparence 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 quil soit toujours considéré comme un étranger, où quil 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",

View File

@@ -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>larme favorite des héros. Elle se décline en différents modèles utilisés un peu partout en Lémurie, comme les sabres dabordage, les tulwars, les cimeterres ou les épées longues. Inscrivez le nom de larme que vous voulez sur la fiche de votre personnage en fonction de limage que vous vous faites de ce dernier. Mais au final, une épée reste une longue lame utilisée pour tuer lennemi.</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 darmes": {
"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 arent 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 arent very effective used this way.</p>"
},
"Masse darmes (Lancer)": {
"name": "Masse darmes (Lancer)",
"description": "<h1>Masse darmes</h1><p>cette arme a la même forme quun gourdin, mais possède une tête en métal, souvent agrémentée de pointes ou dailettes pour plus defficacité. Les masses darmes à 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 arent 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 lextrémité, plus volumineuse, sert à fracasser le crâne de ses adversaires, doù 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 lextrémité, plus volumineuse, sert à fracasser le crâne de ses adversaires, doù 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",

View File

@@ -140,9 +140,9 @@ ul.no-bullets {
flex-flow: row wrap;
justify-content: flex-start;
}
.flexrow > * {
/* Wrong in v13.flexrow > * {
flex: 1;
}
} */
.flexrow .flex1 {
flex: 1;
}
@@ -170,13 +170,13 @@ ul.no-bullets {
.flexrow .flex9 {
flex: 9;
}
.flexcol {
/*.flexcol {
display: flex;
flex-flow: column nowrap;
}
.flexcol > * {
flex: 1;
}
}*/
.flexcol .flex1 {
flex: 1;
}
@@ -523,12 +523,12 @@ ul.no-bullets {
}
.items-list .item-name-fixed-medium {
min-width: 8rem;
width: 8rem;
width: 8rem;
}
.items-list .item-field-fixed-short {
max-width: 3rem;
min-width: 3rem;
width: 3rem;
width: 3rem;
}
.bougette-dice-img {
color:rgba(150, 44, 44, 0.70);
@@ -793,6 +793,10 @@ body.system-bol img#logo {
width: 250px;
max-width: 250px;
}
.journal-page-content {
color:rgba(0, 0, 0, 0.95);
}
.bol.sheet.actor .window-content form .sidebar .profile-img {
cursor: pointer;
border: none;
@@ -1017,7 +1021,7 @@ body.system-bol img#logo {
display: inline-block;
}
.tooltip-container .tooltiptext {
text-align: center;
text-align: center;
/* Position the tooltip text */
position: absolute;
z-index: 1;
@@ -1040,7 +1044,7 @@ body.system-bol img#logo {
/** HUD SECTION */
.tokenhudext {
display: flex;
display: flex;
flex: 0 !important;
font-family: CaslonPro;
font-weight: 600;
@@ -1074,9 +1078,9 @@ body.system-bol img#logo {
height: fit-content;
min-width: 6rem;
flex-basis: auto;
padding: 0;
line-height: 1rem;
margin: 0.25rem;
padding: 0.20rem;
line-height: 1.1rem;
margin: 0.20rem;
}
.control-icon.tokenhudicon.right {
margin-left: 8px;

View File

@@ -468,6 +468,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",

View File

@@ -47,7 +47,7 @@
"BOL.ui.astrologerPoints": "Points d'Astrologie",
"BOL.ui.astrologerPointsLabel": "Points d'Astrologie actuels",
"BOL.ui.ishoroscopemajor": "Horoscope Majeur (ie de groupe) ?",
"BOL.ui.answer": "Réponse",
"BOL.ui.answer": "Réponse",
"BOL.ui.horoscopefavorable": "Favorable (1dB)",
"BOL.ui.horoscopeunfavorable": "Défavorable (1dM)",
"BOL.ui.horoscopes": "Horoscopes",
@@ -132,7 +132,7 @@
"BOL.ui.defender": "Defender",
"BOL.ui.difficulty": "Difficulty",
"BOL.ui.spellProperties": "Spell Properties",
"BOL.ui.duration": "Duration",
"BOL.ui.duration": "Duration",
"BOL.ui.spellkeep": "Maintain",
"BOL.ui.concentrate": "Concentrate",
"BOL.ui.registerInit": "Register Init.",
@@ -156,7 +156,7 @@
"BOL.ui.makeAlchemy": "Make Alchemy",
"BOL.ui.alchemyCostTotal": "Alchemy Points Total Cost",
"BOL.ui.alchemyInvest": "Invest Alchemy Points",
"BOL.ui.alchemyCurrent": "Current Alchemy Points in Object",
"BOL.ui.alchemyCurrent": "Current Alchemy Points in Object",
"BOL.ui.advance": "Status",
"BOL.ui.isadvantage": "Provides a bonus dice?",
"BOL.ui.bonusmalus": "Additional bonus/penalty",
@@ -173,8 +173,8 @@
"BOL.ui.status": "Status",
"BOL.ui.toactivated": "Active (>Deactivated)",
"BOL.ui.todeactivated": "Inactive (>Active)",
"BOL.ui.armorAgiMalus": "Armor+Shield Modifier (Agi)",
"BOL.ui.armorInitMalus": "Armor Modifier (Init)",
"BOL.ui.armorAgiMalus": "Armor+Shield Modifier (Agi)",
"BOL.ui.armorInitMalus": "Armor Modifier (Init)",
"BOL.ui.attackValue": "Attack Value",
"BOL.ui.attackModifier": "Attack Modifier",
"BOL.ui.weaponbonus": "Cette arme bénéficie déja d'un Dé de Bonus (Arme Favorite prise en compte, par exemple)",
@@ -251,7 +251,7 @@
"BOL.featureSubtypes.xplog": "XP Journal",
"BOL.bougette.nomoney": "Nothing",
"BOL.bougette.tolive": "To live",
"BOL.bougette.tolive": "To live",
"BOL.bougette.easylife": "Easy Life",
"BOL.bougette.luxury" : "Luxury life",
"BOL.bougette.rich": "Rich!",
@@ -299,15 +299,15 @@
"BOL.protectionCategory.helm": "Helm",
"BOL.protectionCategory.other": "Other",
"BOL.spellItem.charm": "Charm",
"BOL.spellItem.circle1": "First Circle",
"BOL.spellItem.circle2": "Second Circle",
"BOL.spellItem.circle3": "Third Circle",
"BOL.spellItem.charm": "Charm",
"BOL.spellItem.circle1": "First Circle",
"BOL.spellItem.circle2": "Second Circle",
"BOL.spellItem.circle3": "Third Circle",
"BOL.alchemyItem.common": "Common",
"BOL.alchemyItem.scarce": "Scarce",
"BOL.alchemyItem.legend": "Legendary",
"BOL.alchemyItem.mythic": "Mythic",
"BOL.alchemyItem.common": "Common",
"BOL.alchemyItem.scarce": "Scarce",
"BOL.alchemyItem.legend": "Legendary",
"BOL.alchemyItem.mythic": "Mythic",
"BOL.weaponCategory.melee": "Melee",
"BOL.weaponCategory.ranged": "Ranged",
@@ -458,7 +458,7 @@
"BOL.size.colossal": "Colossal",
"BOL.chat.fightactive": "{name} activates the fight option {foName} for this round !",
"BOL.chat.fightunactive": "{name} deactivates the fight option {foName} for this round !",
"BOL.chat.fightunactive": "{name} deactivates the fight option {foName} for this round !",
"BOL.chat.isdead": "{name} is dead !",
"BOL.chat.epitaph": "Keep his name and memory in honor !",
"BOL.chat.vitalityzero": "Lifeblood of {name} is now {hp} : he is going to fall unconscious !",
@@ -543,17 +543,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)",
@@ -562,7 +569,7 @@
"BOL.dialog.long": "Long (-2)",
"BOL.dialog.distant": "Distant (-4)",
"BOL.dialog.extreme": "Extreme (-6)",
"BOL.dialog.utmost": "Utmost (-8)",
"BOL.dialog.utmost": "Utmost (-8)",
"BOL.ui.name": "Name",
"BOL.ui.xp": "Experience",
@@ -578,11 +585,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",

View File

@@ -534,6 +534,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)",

View File

@@ -50,7 +50,7 @@
"BOL.ui.astrologerPoints": "Points d'Astrologie",
"BOL.ui.astrologerPointsLabel": "Points d'Astrologie actuels",
"BOL.ui.ishoroscopemajor": "Horoscope Majeur (ie de groupe) ?",
"BOL.ui.answer": "Réponse",
"BOL.ui.answer": "Réponse",
"BOL.ui.horoscopefavorable": "Favorable (1dB)",
"BOL.ui.horoscopeunfavorable": "Défavorable (1dM)",
"BOL.ui.horoscopes": "Horoscopes",
@@ -137,7 +137,7 @@
"BOL.ui.duration": "Durée",
"BOL.ui.spellkeep": "Prolongation possible ?",
"BOL.ui.concentrate": "Concentration à maintenir ?",
"BOL.ui.aggressive": "Sort aggressif ?",
"BOL.ui.aggressive": "Sort aggressif ?",
"BOL.ui.registerInit": "Enregistrer comme Init. de combat",
"BOL.ui.initMalus": "Malus d'initiative",
"BOL.ui.magicnewrules": "Règles supplémentaires (cf. supplément fan-made Sorcellerie!)",
@@ -147,7 +147,7 @@
"BOL.ui.flaw":"Désanvatage",
"BOL.ui.cost":"Cout XP",
"BOL.ui.date":"Date",
"BOL.ui.isSorcerer": "Carrière de Sorcier ?",
"BOL.ui.isAlchemist": "Carrière d'Alchimiste ?",
"BOL.ui.isPriest": "Carrière de Prêtre/Druide ?",
@@ -259,7 +259,7 @@
"BOL.bougette.easylife": "A l'aise",
"BOL.bougette.luxury": "Luxe&Volupté",
"BOL.bougette.rich": "Richissime",
"BOL.featureSubtypes.origin": "Origine",
"BOL.featureSubtypes.race": "Race",
"BOL.featureSubtypes.career": "Carrière",
@@ -393,7 +393,7 @@
"BOL.itemProperty.crewDamageMultiplier": "Multiplicateur",
"BOL.itemProperty.isboarding": "Abordage",
"BOL.itemProperty.isspur": "Eperonnage",
"BOL.itemProperty.isbreakrow": "Briser les rames",
"BOL.itemProperty.isbreakrow": "Briser les rames",
"BOL.itemStat.quantity": "Quantité",
"BOL.itemStat.weight": "Poids",
@@ -486,7 +486,7 @@
"BOL.size.colossal": "Monstrueuse",
"BOL.chat.fightactive": "{name} active son option de combat {foName} pour ce round !",
"BOL.chat.fightunactive": "{name} désactive son option de combat {foName} pour ce round !",
"BOL.chat.fightunactive": "{name} désactive son option de combat {foName} pour ce round !",
"BOL.chat.isdead": "{name} est mort !",
"BOL.chat.epitaph": "Que son nom soit honoré sur les champs de batailles de Lémurie !",
"BOL.chat.vitalityzero": "La Vitalité de {name} est {hp} : il va s'écrouler au sol et sombrer dans l'inconscience !",
@@ -569,21 +569,27 @@
"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.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,9 +617,9 @@
"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 !",
@@ -643,4 +649,4 @@
"EFFECT.StatusProne": "A terre",
"EFFECT.StatusDead": "Mort"
}
}

View File

@@ -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() {
@@ -59,7 +59,7 @@ export class BoLActorSheet extends ActorSheet {
let system = foundry.utils.duplicate(game.bol.config.defaultNaturalProtection)
this.actor.createEmbeddedDocuments('Item', [{ name: game.i18n.localize("BOL.ui.newNaturalProtection"), type: "item", system }], { renderSheet: true });
});
html.find(".toggle-fight-option").click((ev) => {
const li = $(ev.currentTarget).parents(".item")
this.actor.toggleFightOption(li.data("itemId"))
@@ -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()

View File

@@ -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

View File

@@ -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

View File

@@ -31,7 +31,7 @@ Hooks.once('init', async function () {
config: BOL
};
// Game socket
// Game socket
game.socket.on("system.bol", sockmsg => {
BoLUtility.onSocketMessage(sockmsg);
})
@@ -51,13 +51,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()
@@ -78,32 +78,38 @@ Hooks.once('init', async function () {
Babele.get().setSystemTranslationsDir("compendiums");
}
});
/* -------------------------------------------- */
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") ){
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.")
ui.notifications.warn("WARNING ! English language selected, but babele module is not installed !<br>Please install babele from the module tab in Foundry interface.")
}
}
@@ -160,13 +166,11 @@ Hooks.once('ready', async function () {
"d6B": "d6H (Bonus)",
"d6BB": "d6H + Bonus die",
}
if (game.i18n.lang === "fr") {
game.bol.config.damageValues = damageFR;
} else {
game.bol.config.damageValues = damageEN;
}
})

View File

@@ -305,7 +305,7 @@ export class BoLRoll {
// Keep track of the final effect modifier
this.rollData.effectModifier = effectModifier
// Final number of dices
// Final number of dices
this.rollData.nbDice = 2 + Math.abs(this.rollData.bmDice)
// Bonus or Malus ?
if (this.rollData.bmDice == 0) {
@@ -489,7 +489,7 @@ export class BoLRoll {
if (defender) { // If target is selected
rollData.defence = defender.defenseValue
rollData.armorMalus = defender.armorMalusValue
rollData.defenderHeroPoints = defender.getHeroPoints()
rollData.defenderHeroPoints = defender.getHeroPoints()
rollData.shieldBlock = 'none'
let shields = defender.shields
//console.log("Defender stats", defender)
@@ -535,7 +535,7 @@ export class BoLRoll {
rollData.weaponModifier = 0
rollData.attackBonusDice = false
rollData.armorMalus = 0
// Specific stuff
// Specific stuff
this.preProcessWeapon(rollData, defender)
this.preProcessFightOption(rollData)
this.updateArmorMalus(rollData)
@@ -551,7 +551,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,
@@ -582,7 +582,7 @@ export class BoLRoll {
rollbase = 0
}
let diceData = BoLUtility.getDiceData()
let malusInit = rollData.combatData?.malusInit || 0
let malusInit = rollData.combatData?.malusInit || 0
const modifiers = rollbase + rollData.careerBonus + rollData.mod + rollData.weaponModifier - rollData.defence - rollData.modArmorMalus + rollData.shieldMalus + rollData.attackModifier + rollData.appliedArmorMalus + rollData.effectModifier - malusInit
const formula = (isMalus) ? rollData.nbDice + "d" + diceData.diceFormula + "kl2 + " + modifiers : rollData.nbDice + "d" + diceData.diceFormula + "kh2 + " + modifiers
rollData.formula = formula
@@ -635,15 +635,15 @@ export class BoLDefaultRoll {
this.rollData.roll = r
this.rollData.isFumble = (diceTotal <= diceData.criticalFailureValue)
if ( this.rollData.isFumble ) {
this.rollData.isSuccess = false
this.rollData.isSuccess = false
this.rollData.isCritical = false
this.rollData.isRealCritical = false
this.rollData.isHeroic = false
this.rollData.isFailure = true
this.rollData.isFailure = true
} else {
this.rollData.isCritical = (diceTotal >= diceData.criticalSuccessValue)
if ( this.rollData.isCritical) {
this.rollData.isSuccess = true
this.rollData.isSuccess = true
} else {
this.rollData.isSuccess = (r.total >= diceData.successValue)
}
@@ -805,13 +805,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)
}
}

View File

@@ -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.

View File

@@ -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);

View File

@@ -221,10 +221,10 @@ export class BoLCalendar extends Application {
let hn = defHeure.heure;
let chiffreAstral = this.getCurrentNombreAstral() ?? 0;
heuresChancesMalchances[0] = { value : "+4", heures: [this.getHeureNumber((hn + chiffreAstral) % RDD_HEURES_PAR_JOUR).label]};
heuresChancesMalchances[1] = { value : "+2", heures: [this.getHeureNumber((hn + chiffreAstral+4) % RDD_HEURES_PAR_JOUR).label,
heuresChancesMalchances[1] = { value : "+2", heures: [this.getHeureNumber((hn + chiffreAstral+4) % RDD_HEURES_PAR_JOUR).label,
this.getHeureNumber((hn + chiffreAstral + 8) % RDD_HEURES_PAR_JOUR).label ] };
heuresChancesMalchances[2] = { value : "-4", heures: [this.getHeureNumber((hn + chiffreAstral+6) % RDD_HEURES_PAR_JOUR).label]};
heuresChancesMalchances[3] = { value : "-2", heures: [this.getHeureNumber((hn + chiffreAstral+3) % RDD_HEURES_PAR_JOUR).label,
heuresChancesMalchances[3] = { value : "-2", heures: [this.getHeureNumber((hn + chiffreAstral+3) % RDD_HEURES_PAR_JOUR).label,
this.getHeureNumber((hn + chiffreAstral + 9) % RDD_HEURES_PAR_JOUR).label ]};
}
return heuresChancesMalchances;
@@ -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);
@@ -360,7 +360,7 @@ export class BoLCalendar extends Application {
let heureNaissance = actor.getHeureNaissance();
if ( heureNaissance) {
heuresParActeur[actor.name] = this.getHeuresChanceMalchance(heureNaissance);
}
}
}
//console.log("ASTRO", astrologieArray);
calendrierData.astrologieData = astrologieArray;
@@ -398,7 +398,7 @@ export class BoLCalendar extends Application {
let isRightMB = false;
if ("which" in ev) { // Gecko (Firefox), WebKit (Safari/Chrome) & Opera
isRightMB = ev.which == 3;
} else if ("button" in ev) { // IE, Opera
} else if ("button" in ev) { // IE, Opera
isRightMB = ev.button == 2;
}

View File

@@ -28,7 +28,7 @@ export class BoLUtility {
})
game.settings.register("bol", "auto-remove-dead", {
name: game.i18n.localize("BOL.settings.removeDead"),
hint: game.i18n.localize("BOL.settings.removeDeadTooltip"),
hint: game.i18n.localize("BOL.settings.removeDeadTooltip"),
scope: "world",
config: true,
default: false,
@@ -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)

View File

@@ -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"
}

View File

@@ -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,8 +73,8 @@ export default function registerHooks() {
button.addEventListener('click', () => {
game.bol.charSummary.render(true)
})
html.find('.header-actions').after(button)
$(html).find('.header-actions').after(button)
}
})
}

View File

@@ -60,11 +60,11 @@ export const preloadHandlebarsTemplates = async function () {
"systems/bol/templates/dialogs/effect-roll-part.hbs",
"systems/bol/templates/dialogs/boons-roll-part.hbs",
"systems/bol/templates/dialogs/flaws-roll-part.hbs",
"systems/bol/templates/dialogs/total-roll-part.hbs",
"systems/bol/templates/dialogs/total-roll-part.hbs",
"systems/bol/templates/dialogs/fightoptions-roll-part.hbs",
"systems/bol/templates/dialogs/horoscope-roll-part.hbs"
];
// Load the template parts
return loadTemplates(templatePaths);
return foundry.applications.handlebars.loadTemplates(templatePaths);
};

Binary file not shown.

Binary file not shown.

View File

@@ -1 +1 @@
MANIFEST-000674
MANIFEST-000829

View File

@@ -1,8 +1,8 @@
2025/01/24-22:58:11.204366 7f4bd8ff96c0 Recovering log #672
2025/01/24-22:58:11.312055 7f4bd8ff96c0 Delete type=3 #670
2025/01/24-22:58:11.312130 7f4bd8ff96c0 Delete type=0 #672
2025/01/24-23:03:05.072297 7f4bd3fff6c0 Level-0 table #677: started
2025/01/24-23:03:05.072325 7f4bd3fff6c0 Level-0 table #677: 0 bytes OK
2025/01/24-23:03:05.105134 7f4bd3fff6c0 Delete type=0 #675
2025/01/24-23:03:05.134497 7f4bd3fff6c0 Manual compaction at level-0 from '!journal!3xJg1rCxnWvEmoxS' @ 72057594037927935 : 1 .. '!journal.pages!veAAxCtCKcFIsnln.0kUgZspxXO7VS8bd' @ 0 : 0; will stop at (end)
2025/01/24-23:03:05.134550 7f4bd3fff6c0 Manual compaction at level-1 from '!journal!3xJg1rCxnWvEmoxS' @ 72057594037927935 : 1 .. '!journal.pages!veAAxCtCKcFIsnln.0kUgZspxXO7VS8bd' @ 0 : 0; will stop at (end)
2025/08/24-22:12:29.445152 7f99c9ffb6c0 Recovering log #828
2025/08/24-22:12:29.462784 7f99c9ffb6c0 Delete type=0 #828
2025/08/24-22:12:29.462971 7f99c9ffb6c0 Delete type=3 #827
2025/08/24-22:17:57.344923 7f99c8ff96c0 Level-0 table #832: started
2025/08/24-22:17:57.344948 7f99c8ff96c0 Level-0 table #832: 0 bytes OK
2025/08/24-22:17:57.351082 7f99c8ff96c0 Delete type=0 #830
2025/08/24-22:17:57.357899 7f99c8ff96c0 Manual compaction at level-0 from '!journal!3xJg1rCxnWvEmoxS' @ 72057594037927935 : 1 .. '!journal.pages!veAAxCtCKcFIsnln.0kUgZspxXO7VS8bd' @ 0 : 0; will stop at (end)
2025/08/24-22:17:57.357974 7f99c8ff96c0 Manual compaction at level-1 from '!journal!3xJg1rCxnWvEmoxS' @ 72057594037927935 : 1 .. '!journal.pages!veAAxCtCKcFIsnln.0kUgZspxXO7VS8bd' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,3 @@
2025/01/24-22:56:58.893801 7f9bde7fc6c0 Recovering log #668
2025/01/24-22:56:58.904030 7f9bde7fc6c0 Delete type=3 #666
2025/01/24-22:56:58.904088 7f9bde7fc6c0 Delete type=0 #668
2025/01/24-22:57:20.999613 7f993ffff6c0 Level-0 table #673: started
2025/01/24-22:57:20.999661 7f993ffff6c0 Level-0 table #673: 0 bytes OK
2025/01/24-22:57:21.043288 7f993ffff6c0 Delete type=0 #671
2025/01/24-22:57:21.081408 7f993ffff6c0 Manual compaction at level-0 from '!journal!3xJg1rCxnWvEmoxS' @ 72057594037927935 : 1 .. '!journal.pages!veAAxCtCKcFIsnln.0kUgZspxXO7VS8bd' @ 0 : 0; will stop at (end)
2025/01/24-22:57:21.081455 7f993ffff6c0 Manual compaction at level-1 from '!journal!3xJg1rCxnWvEmoxS' @ 72057594037927935 : 1 .. '!journal.pages!veAAxCtCKcFIsnln.0kUgZspxXO7VS8bd' @ 0 : 0; will stop at (end)
2025/07/08-23:08:26.633879 7f27caffd6c0 Recovering log #825
2025/07/08-23:08:26.726668 7f27caffd6c0 Delete type=3 #823
2025/07/08-23:08:26.726762 7f27caffd6c0 Delete type=0 #825

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
packs/armors/000679.ldb Normal file

Binary file not shown.

View File

@@ -1 +1 @@
MANIFEST-000580
MANIFEST-000734

View File

@@ -1,8 +1,8 @@
2025/01/24-22:58:11.012287 7f4bd97fa6c0 Recovering log #578
2025/01/24-22:58:11.075603 7f4bd97fa6c0 Delete type=3 #576
2025/01/24-22:58:11.075671 7f4bd97fa6c0 Delete type=0 #578
2025/01/24-23:03:05.105257 7f4bd3fff6c0 Level-0 table #583: started
2025/01/24-23:03:05.105282 7f4bd3fff6c0 Level-0 table #583: 0 bytes OK
2025/01/24-23:03:05.134279 7f4bd3fff6c0 Delete type=0 #581
2025/01/24-23:03:05.134512 7f4bd3fff6c0 Manual compaction at level-0 from '!items!G3dZTHIabA3LA1hY' @ 72057594037927935 : 1 .. '!items!xhEcsi3WHjbt2ro9' @ 0 : 0; will stop at (end)
2025/01/24-23:03:05.134561 7f4bd3fff6c0 Manual compaction at level-1 from '!items!G3dZTHIabA3LA1hY' @ 72057594037927935 : 1 .. '!items!xhEcsi3WHjbt2ro9' @ 0 : 0; will stop at (end)
2025/08/24-22:12:29.405756 7f99ca7fc6c0 Recovering log #733
2025/08/24-22:12:29.422650 7f99ca7fc6c0 Delete type=0 #733
2025/08/24-22:12:29.422749 7f99ca7fc6c0 Delete type=3 #732
2025/08/24-22:17:57.331397 7f99c8ff96c0 Level-0 table #737: started
2025/08/24-22:17:57.331439 7f99c8ff96c0 Level-0 table #737: 0 bytes OK
2025/08/24-22:17:57.338367 7f99c8ff96c0 Delete type=0 #735
2025/08/24-22:17:57.357871 7f99c8ff96c0 Manual compaction at level-0 from '!items!G3dZTHIabA3LA1hY' @ 72057594037927935 : 1 .. '!items!xhEcsi3WHjbt2ro9' @ 0 : 0; will stop at (end)
2025/08/24-22:17:57.357921 7f99c8ff96c0 Manual compaction at level-1 from '!items!G3dZTHIabA3LA1hY' @ 72057594037927935 : 1 .. '!items!xhEcsi3WHjbt2ro9' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,3 @@
2025/01/24-22:56:58.850868 7f9bddffb6c0 Recovering log #574
2025/01/24-22:56:58.860980 7f9bddffb6c0 Delete type=3 #572
2025/01/24-22:56:58.861037 7f9bddffb6c0 Delete type=0 #574
2025/01/24-22:57:20.960265 7f993ffff6c0 Level-0 table #579: started
2025/01/24-22:57:20.960286 7f993ffff6c0 Level-0 table #579: 0 bytes OK
2025/01/24-22:57:20.999485 7f993ffff6c0 Delete type=0 #577
2025/01/24-22:57:21.081395 7f993ffff6c0 Manual compaction at level-0 from '!items!G3dZTHIabA3LA1hY' @ 72057594037927935 : 1 .. '!items!xhEcsi3WHjbt2ro9' @ 0 : 0; will stop at (end)
2025/01/24-22:57:21.081429 7f993ffff6c0 Manual compaction at level-1 from '!items!G3dZTHIabA3LA1hY' @ 72057594037927935 : 1 .. '!items!xhEcsi3WHjbt2ro9' @ 0 : 0; will stop at (end)
2025/07/08-23:08:26.441331 7f27cb7fe6c0 Recovering log #730
2025/07/08-23:08:26.530755 7f27cb7fe6c0 Delete type=3 #728
2025/07/08-23:08:26.530857 7f27cb7fe6c0 Delete type=0 #730

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
packs/boons/000772.ldb Normal file

Binary file not shown.

View File

@@ -1 +1 @@
MANIFEST-000673
MANIFEST-000827

View File

@@ -1,8 +1,8 @@
2025/01/24-22:58:10.527878 7f4bd97fa6c0 Recovering log #671
2025/01/24-22:58:10.595705 7f4bd97fa6c0 Delete type=3 #669
2025/01/24-22:58:10.595759 7f4bd97fa6c0 Delete type=0 #671
2025/01/24-23:03:04.779886 7f4bd3fff6c0 Level-0 table #676: started
2025/01/24-23:03:04.779915 7f4bd3fff6c0 Level-0 table #676: 0 bytes OK
2025/01/24-23:03:04.809134 7f4bd3fff6c0 Delete type=0 #674
2025/01/24-23:03:04.844346 7f4bd3fff6c0 Manual compaction at level-0 from '!items!039ZF3E3MtAGwbiX' @ 72057594037927935 : 1 .. '!items!zgspy1QKaxdEetEw' @ 0 : 0; will stop at (end)
2025/01/24-23:03:04.844386 7f4bd3fff6c0 Manual compaction at level-1 from '!items!039ZF3E3MtAGwbiX' @ 72057594037927935 : 1 .. '!items!zgspy1QKaxdEetEw' @ 0 : 0; will stop at (end)
2025/08/24-22:12:29.248763 7f99ca7fc6c0 Recovering log #826
2025/08/24-22:12:29.265084 7f99ca7fc6c0 Delete type=0 #826
2025/08/24-22:12:29.265267 7f99ca7fc6c0 Delete type=3 #825
2025/08/24-22:17:57.283861 7f99c8ff96c0 Level-0 table #830: started
2025/08/24-22:17:57.283894 7f99c8ff96c0 Level-0 table #830: 0 bytes OK
2025/08/24-22:17:57.291128 7f99c8ff96c0 Delete type=0 #828
2025/08/24-22:17:57.304610 7f99c8ff96c0 Manual compaction at level-0 from '!items!039ZF3E3MtAGwbiX' @ 72057594037927935 : 1 .. '!items!zgspy1QKaxdEetEw' @ 0 : 0; will stop at (end)
2025/08/24-22:17:57.304654 7f99c8ff96c0 Manual compaction at level-1 from '!items!039ZF3E3MtAGwbiX' @ 72057594037927935 : 1 .. '!items!zgspy1QKaxdEetEw' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,3 @@
2025/01/24-22:56:58.743871 7f9bddffb6c0 Recovering log #667
2025/01/24-22:56:58.753920 7f9bddffb6c0 Delete type=3 #665
2025/01/24-22:56:58.753974 7f9bddffb6c0 Delete type=0 #667
2025/01/24-22:57:20.657299 7f993ffff6c0 Level-0 table #672: started
2025/01/24-22:57:20.657334 7f993ffff6c0 Level-0 table #672: 0 bytes OK
2025/01/24-22:57:20.695832 7f993ffff6c0 Delete type=0 #670
2025/01/24-22:57:20.771535 7f993ffff6c0 Manual compaction at level-0 from '!items!039ZF3E3MtAGwbiX' @ 72057594037927935 : 1 .. '!items!zgspy1QKaxdEetEw' @ 0 : 0; will stop at (end)
2025/01/24-22:57:20.771602 7f993ffff6c0 Manual compaction at level-1 from '!items!039ZF3E3MtAGwbiX' @ 72057594037927935 : 1 .. '!items!zgspy1QKaxdEetEw' @ 0 : 0; will stop at (end)
2025/07/08-23:08:25.672177 7f27d0dfa6c0 Recovering log #823
2025/07/08-23:08:25.754818 7f27d0dfa6c0 Delete type=3 #821
2025/07/08-23:08:25.754973 7f27d0dfa6c0 Delete type=0 #823

Binary file not shown.

BIN
packs/boons/MANIFEST-000827 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1 +1 @@
MANIFEST-000673
MANIFEST-000827

View File

@@ -1,8 +1,8 @@
2025/01/24-22:58:10.598406 7f4bda7fc6c0 Recovering log #671
2025/01/24-22:58:10.661535 7f4bda7fc6c0 Delete type=3 #669
2025/01/24-22:58:10.661593 7f4bda7fc6c0 Delete type=0 #671
2025/01/24-23:03:04.743093 7f4bd3fff6c0 Level-0 table #676: started
2025/01/24-23:03:04.743122 7f4bd3fff6c0 Level-0 table #676: 0 bytes OK
2025/01/24-23:03:04.779757 7f4bd3fff6c0 Delete type=0 #674
2025/01/24-23:03:04.844334 7f4bd3fff6c0 Manual compaction at level-0 from '!items!CoqlfsDV1gL5swbK' @ 72057594037927935 : 1 .. '!items!yofwG0YrsL902G77' @ 0 : 0; will stop at (end)
2025/01/24-23:03:04.844395 7f4bd3fff6c0 Manual compaction at level-1 from '!items!CoqlfsDV1gL5swbK' @ 72057594037927935 : 1 .. '!items!yofwG0YrsL902G77' @ 0 : 0; will stop at (end)
2025/08/24-22:12:29.268701 7f99c9ffb6c0 Recovering log #826
2025/08/24-22:12:29.286119 7f99c9ffb6c0 Delete type=0 #826
2025/08/24-22:12:29.286273 7f99c9ffb6c0 Delete type=3 #825
2025/08/24-22:17:57.276889 7f99c8ff96c0 Level-0 table #830: started
2025/08/24-22:17:57.277006 7f99c8ff96c0 Level-0 table #830: 0 bytes OK
2025/08/24-22:17:57.283724 7f99c8ff96c0 Delete type=0 #828
2025/08/24-22:17:57.304584 7f99c8ff96c0 Manual compaction at level-0 from '!items!CoqlfsDV1gL5swbK' @ 72057594037927935 : 1 .. '!items!yofwG0YrsL902G77' @ 0 : 0; will stop at (end)
2025/08/24-22:17:57.304663 7f99c8ff96c0 Manual compaction at level-1 from '!items!CoqlfsDV1gL5swbK' @ 72057594037927935 : 1 .. '!items!yofwG0YrsL902G77' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,3 @@
2025/01/24-22:56:58.757318 7f9bdd7fa6c0 Recovering log #667
2025/01/24-22:56:58.767702 7f9bdd7fa6c0 Delete type=3 #665
2025/01/24-22:56:58.767770 7f9bdd7fa6c0 Delete type=0 #667
2025/01/24-22:57:20.695957 7f993ffff6c0 Level-0 table #672: started
2025/01/24-22:57:20.695985 7f993ffff6c0 Level-0 table #672: 0 bytes OK
2025/01/24-22:57:20.733474 7f993ffff6c0 Delete type=0 #670
2025/01/24-22:57:20.771558 7f993ffff6c0 Manual compaction at level-0 from '!items!CoqlfsDV1gL5swbK' @ 72057594037927935 : 1 .. '!items!yofwG0YrsL902G77' @ 0 : 0; will stop at (end)
2025/01/24-22:57:20.771612 7f993ffff6c0 Manual compaction at level-1 from '!items!CoqlfsDV1gL5swbK' @ 72057594037927935 : 1 .. '!items!yofwG0YrsL902G77' @ 0 : 0; will stop at (end)
2025/07/08-23:08:25.758158 7f27caffd6c0 Recovering log #823
2025/07/08-23:08:25.846513 7f27caffd6c0 Delete type=3 #821
2025/07/08-23:08:25.846609 7f27caffd6c0 Delete type=0 #823

Binary file not shown.

Binary file not shown.

BIN
packs/careers/000772.ldb Normal file

Binary file not shown.

View File

@@ -1 +1 @@
MANIFEST-000673
MANIFEST-000827

View File

@@ -1,8 +1,8 @@
2025/01/24-22:58:10.723544 7f4bd9ffb6c0 Recovering log #671
2025/01/24-22:58:10.784164 7f4bd9ffb6c0 Delete type=3 #669
2025/01/24-22:58:10.784232 7f4bd9ffb6c0 Delete type=0 #671
2025/01/24-23:03:04.708366 7f4bd3fff6c0 Level-0 table #676: started
2025/01/24-23:03:04.708441 7f4bd3fff6c0 Level-0 table #676: 0 bytes OK
2025/01/24-23:03:04.742910 7f4bd3fff6c0 Delete type=0 #674
2025/01/24-23:03:04.844320 7f4bd3fff6c0 Manual compaction at level-0 from '!items!4S4xAfMXGnuU0O1a' @ 72057594037927935 : 1 .. '!items!zxY3sW0iCJBvwjOS' @ 0 : 0; will stop at (end)
2025/01/24-23:03:04.844366 7f4bd3fff6c0 Manual compaction at level-1 from '!items!4S4xAfMXGnuU0O1a' @ 72057594037927935 : 1 .. '!items!zxY3sW0iCJBvwjOS' @ 0 : 0; will stop at (end)
2025/08/24-22:12:29.309108 7f99c97fa6c0 Recovering log #826
2025/08/24-22:12:29.326235 7f99c97fa6c0 Delete type=0 #826
2025/08/24-22:12:29.326334 7f99c97fa6c0 Delete type=3 #825
2025/08/24-22:17:57.298031 7f99c8ff96c0 Level-0 table #830: started
2025/08/24-22:17:57.298066 7f99c8ff96c0 Level-0 table #830: 0 bytes OK
2025/08/24-22:17:57.304287 7f99c8ff96c0 Delete type=0 #828
2025/08/24-22:17:57.304643 7f99c8ff96c0 Manual compaction at level-0 from '!items!4S4xAfMXGnuU0O1a' @ 72057594037927935 : 1 .. '!items!zxY3sW0iCJBvwjOS' @ 0 : 0; will stop at (end)
2025/08/24-22:17:57.304686 7f99c8ff96c0 Manual compaction at level-1 from '!items!4S4xAfMXGnuU0O1a' @ 72057594037927935 : 1 .. '!items!zxY3sW0iCJBvwjOS' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,3 @@
2025/01/24-22:56:58.783697 7f9bdcff96c0 Recovering log #667
2025/01/24-22:56:58.794240 7f9bdcff96c0 Delete type=3 #665
2025/01/24-22:56:58.794286 7f9bdcff96c0 Delete type=0 #667
2025/01/24-22:57:20.733604 7f993ffff6c0 Level-0 table #672: started
2025/01/24-22:57:20.733643 7f993ffff6c0 Level-0 table #672: 0 bytes OK
2025/01/24-22:57:20.771363 7f993ffff6c0 Delete type=0 #670
2025/01/24-22:57:20.771580 7f993ffff6c0 Manual compaction at level-0 from '!items!4S4xAfMXGnuU0O1a' @ 72057594037927935 : 1 .. '!items!zxY3sW0iCJBvwjOS' @ 0 : 0; will stop at (end)
2025/01/24-22:57:20.771621 7f993ffff6c0 Manual compaction at level-1 from '!items!4S4xAfMXGnuU0O1a' @ 72057594037927935 : 1 .. '!items!zxY3sW0iCJBvwjOS' @ 0 : 0; will stop at (end)
2025/07/08-23:08:25.944394 7f27d0dfa6c0 Recovering log #823
2025/07/08-23:08:26.048846 7f27d0dfa6c0 Delete type=3 #821
2025/07/08-23:08:26.048920 7f27d0dfa6c0 Delete type=0 #823

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1 +1 @@
MANIFEST-000671
MANIFEST-000825

View File

@@ -1,8 +1,8 @@
2025/01/24-22:58:11.735608 7f4bda7fc6c0 Recovering log #669
2025/01/24-22:58:11.787937 7f4bda7fc6c0 Delete type=3 #667
2025/01/24-22:58:11.788018 7f4bda7fc6c0 Delete type=0 #669
2025/01/24-23:03:05.274588 7f4bd3fff6c0 Level-0 table #674: started
2025/01/24-23:03:05.274644 7f4bd3fff6c0 Level-0 table #674: 0 bytes OK
2025/01/24-23:03:05.308226 7f4bd3fff6c0 Delete type=0 #672
2025/01/24-23:03:05.418815 7f4bd3fff6c0 Manual compaction at level-0 from '!items!6fTZ6hOKR4pWbWOe' @ 72057594037927935 : 1 .. '!items!zwSNMO9HpiqUCMt8' @ 0 : 0; will stop at (end)
2025/01/24-23:03:05.418858 7f4bd3fff6c0 Manual compaction at level-1 from '!items!6fTZ6hOKR4pWbWOe' @ 72057594037927935 : 1 .. '!items!zwSNMO9HpiqUCMt8' @ 0 : 0; will stop at (end)
2025/08/24-22:12:29.580738 7f99c97fa6c0 Recovering log #824
2025/08/24-22:12:29.595627 7f99c97fa6c0 Delete type=0 #824
2025/08/24-22:12:29.595756 7f99c97fa6c0 Delete type=3 #823
2025/08/24-22:17:57.386170 7f99c8ff96c0 Level-0 table #828: started
2025/08/24-22:17:57.386228 7f99c8ff96c0 Level-0 table #828: 0 bytes OK
2025/08/24-22:17:57.392763 7f99c8ff96c0 Delete type=0 #826
2025/08/24-22:17:57.413366 7f99c8ff96c0 Manual compaction at level-0 from '!items!6fTZ6hOKR4pWbWOe' @ 72057594037927935 : 1 .. '!items!zwSNMO9HpiqUCMt8' @ 0 : 0; will stop at (end)
2025/08/24-22:17:57.413456 7f99c8ff96c0 Manual compaction at level-1 from '!items!6fTZ6hOKR4pWbWOe' @ 72057594037927935 : 1 .. '!items!zwSNMO9HpiqUCMt8' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,3 @@
2025/01/24-22:56:58.985856 7f9bdd7fa6c0 Recovering log #665
2025/01/24-22:56:58.997067 7f9bdd7fa6c0 Delete type=3 #663
2025/01/24-22:56:58.997144 7f9bdd7fa6c0 Delete type=0 #665
2025/01/24-22:57:21.358010 7f993ffff6c0 Level-0 table #670: started
2025/01/24-22:57:21.358045 7f993ffff6c0 Level-0 table #670: 0 bytes OK
2025/01/24-22:57:21.395676 7f993ffff6c0 Delete type=0 #668
2025/01/24-22:57:21.395933 7f993ffff6c0 Manual compaction at level-0 from '!items!6fTZ6hOKR4pWbWOe' @ 72057594037927935 : 1 .. '!items!zwSNMO9HpiqUCMt8' @ 0 : 0; will stop at (end)
2025/01/24-22:57:21.395978 7f993ffff6c0 Manual compaction at level-1 from '!items!6fTZ6hOKR4pWbWOe' @ 72057594037927935 : 1 .. '!items!zwSNMO9HpiqUCMt8' @ 0 : 0; will stop at (end)
2025/07/08-23:08:27.319272 7f27cb7fe6c0 Recovering log #821
2025/07/08-23:08:27.425255 7f27cb7fe6c0 Delete type=3 #819
2025/07/08-23:08:27.425385 7f27cb7fe6c0 Delete type=0 #821

Binary file not shown.

Binary file not shown.

BIN
packs/equipment/000773.ldb Normal file

Binary file not shown.

View File

@@ -1 +1 @@
MANIFEST-000674
MANIFEST-000828

View File

@@ -1,8 +1,8 @@
2025/01/24-22:58:10.904910 7f4bd8ff96c0 Recovering log #672
2025/01/24-22:58:10.959379 7f4bd8ff96c0 Delete type=3 #670
2025/01/24-22:58:10.959457 7f4bd8ff96c0 Delete type=0 #672
2025/01/24-23:03:04.914639 7f4bd3fff6c0 Level-0 table #677: started
2025/01/24-23:03:04.914673 7f4bd3fff6c0 Level-0 table #677: 0 bytes OK
2025/01/24-23:03:04.957862 7f4bd3fff6c0 Delete type=0 #675
2025/01/24-23:03:04.994334 7f4bd3fff6c0 Manual compaction at level-0 from '!items!0ErhyqifZLDCmMfT' @ 72057594037927935 : 1 .. '!items!yE8UH6YAgNGjKDEu' @ 0 : 0; will stop at (end)
2025/01/24-23:03:04.994412 7f4bd3fff6c0 Manual compaction at level-1 from '!items!0ErhyqifZLDCmMfT' @ 72057594037927935 : 1 .. '!items!yE8UH6YAgNGjKDEu' @ 0 : 0; will stop at (end)
2025/08/24-22:12:29.367077 7f99c97fa6c0 Recovering log #827
2025/08/24-22:12:29.384085 7f99c97fa6c0 Delete type=0 #827
2025/08/24-22:12:29.384253 7f99c97fa6c0 Delete type=3 #826
2025/08/24-22:17:57.311415 7f99c8ff96c0 Level-0 table #831: started
2025/08/24-22:17:57.311469 7f99c8ff96c0 Level-0 table #831: 0 bytes OK
2025/08/24-22:17:57.318366 7f99c8ff96c0 Delete type=0 #829
2025/08/24-22:17:57.331140 7f99c8ff96c0 Manual compaction at level-0 from '!items!0ErhyqifZLDCmMfT' @ 72057594037927935 : 1 .. '!items!yE8UH6YAgNGjKDEu' @ 0 : 0; will stop at (end)
2025/08/24-22:17:57.331199 7f99c8ff96c0 Manual compaction at level-1 from '!items!0ErhyqifZLDCmMfT' @ 72057594037927935 : 1 .. '!items!yE8UH6YAgNGjKDEu' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,3 @@
2025/01/24-22:56:58.822760 7f9bde7fc6c0 Recovering log #668
2025/01/24-22:56:58.833771 7f9bde7fc6c0 Delete type=3 #666
2025/01/24-22:56:58.833837 7f9bde7fc6c0 Delete type=0 #668
2025/01/24-22:57:20.808743 7f993ffff6c0 Level-0 table #673: started
2025/01/24-22:57:20.808776 7f993ffff6c0 Level-0 table #673: 0 bytes OK
2025/01/24-22:57:20.844313 7f993ffff6c0 Delete type=0 #671
2025/01/24-22:57:20.923913 7f993ffff6c0 Manual compaction at level-0 from '!items!0ErhyqifZLDCmMfT' @ 72057594037927935 : 1 .. '!items!yE8UH6YAgNGjKDEu' @ 0 : 0; will stop at (end)
2025/01/24-22:57:20.923965 7f993ffff6c0 Manual compaction at level-1 from '!items!0ErhyqifZLDCmMfT' @ 72057594037927935 : 1 .. '!items!yE8UH6YAgNGjKDEu' @ 0 : 0; will stop at (end)
2025/07/08-23:08:26.243476 7f27d0dfa6c0 Recovering log #824
2025/07/08-23:08:26.338900 7f27d0dfa6c0 Delete type=3 #822
2025/07/08-23:08:26.338971 7f27d0dfa6c0 Delete type=0 #824

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1 +1 @@
MANIFEST-000673
MANIFEST-000827

View File

@@ -1,8 +1,8 @@
2025/01/24-22:58:11.508458 7f4bda7fc6c0 Recovering log #671
2025/01/24-22:58:11.563173 7f4bda7fc6c0 Delete type=3 #669
2025/01/24-22:58:11.563248 7f4bda7fc6c0 Delete type=0 #671
2025/01/24-23:03:05.173833 7f4bd3fff6c0 Level-0 table #676: started
2025/01/24-23:03:05.173864 7f4bd3fff6c0 Level-0 table #676: 0 bytes OK
2025/01/24-23:03:05.206681 7f4bd3fff6c0 Delete type=0 #674
2025/01/24-23:03:05.274416 7f4bd3fff6c0 Manual compaction at level-0 from '!items!AoT2c0af4lY6aBsx' @ 72057594037927935 : 1 .. '!items!vGydqADwTsHZ9B3j' @ 0 : 0; will stop at (end)
2025/01/24-23:03:05.274453 7f4bd3fff6c0 Manual compaction at level-1 from '!items!AoT2c0af4lY6aBsx' @ 72057594037927935 : 1 .. '!items!vGydqADwTsHZ9B3j' @ 0 : 0; will stop at (end)
2025/08/24-22:12:29.504579 7f99ca7fc6c0 Recovering log #826
2025/08/24-22:12:29.522239 7f99ca7fc6c0 Delete type=0 #826
2025/08/24-22:12:29.522380 7f99ca7fc6c0 Delete type=3 #825
2025/08/24-22:17:57.365378 7f99c8ff96c0 Level-0 table #830: started
2025/08/24-22:17:57.365420 7f99c8ff96c0 Level-0 table #830: 0 bytes OK
2025/08/24-22:17:57.371744 7f99c8ff96c0 Delete type=0 #828
2025/08/24-22:17:57.385960 7f99c8ff96c0 Manual compaction at level-0 from '!items!AoT2c0af4lY6aBsx' @ 72057594037927935 : 1 .. '!items!vGydqADwTsHZ9B3j' @ 0 : 0; will stop at (end)
2025/08/24-22:17:57.386047 7f99c8ff96c0 Manual compaction at level-1 from '!items!AoT2c0af4lY6aBsx' @ 72057594037927935 : 1 .. '!items!vGydqADwTsHZ9B3j' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,3 @@
2025/01/24-22:56:58.933062 7f9bdd7fa6c0 Recovering log #667
2025/01/24-22:56:58.942971 7f9bdd7fa6c0 Delete type=3 #665
2025/01/24-22:56:58.943021 7f9bdd7fa6c0 Delete type=0 #667
2025/01/24-22:57:21.081539 7f993ffff6c0 Level-0 table #672: started
2025/01/24-22:57:21.081581 7f993ffff6c0 Level-0 table #672: 0 bytes OK
2025/01/24-22:57:21.123467 7f993ffff6c0 Delete type=0 #670
2025/01/24-22:57:21.240040 7f993ffff6c0 Manual compaction at level-0 from '!items!AoT2c0af4lY6aBsx' @ 72057594037927935 : 1 .. '!items!vGydqADwTsHZ9B3j' @ 0 : 0; will stop at (end)
2025/01/24-22:57:21.240077 7f993ffff6c0 Manual compaction at level-1 from '!items!AoT2c0af4lY6aBsx' @ 72057594037927935 : 1 .. '!items!vGydqADwTsHZ9B3j' @ 0 : 0; will stop at (end)
2025/07/08-23:08:26.934392 7f27d0dfa6c0 Recovering log #823
2025/07/08-23:08:27.046098 7f27d0dfa6c0 Delete type=3 #821
2025/07/08-23:08:27.046189 7f27d0dfa6c0 Delete type=0 #823

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1 +1 @@
MANIFEST-000156
MANIFEST-000310

View File

@@ -1,8 +1,8 @@
2025/01/24-22:58:11.566054 7f4bd8ff96c0 Recovering log #154
2025/01/24-22:58:11.619002 7f4bd8ff96c0 Delete type=3 #152
2025/01/24-22:58:11.619069 7f4bd8ff96c0 Delete type=0 #154
2025/01/24-23:03:05.235779 7f4bd3fff6c0 Level-0 table #159: started
2025/01/24-23:03:05.235804 7f4bd3fff6c0 Level-0 table #159: 0 bytes OK
2025/01/24-23:03:05.274273 7f4bd3fff6c0 Delete type=0 #157
2025/01/24-23:03:05.274439 7f4bd3fff6c0 Manual compaction at level-0 from '!items!CLRp0k5qV8mD03pW' @ 72057594037927935 : 1 .. '!items!wYEpnhbyYaMkaNdL' @ 0 : 0; will stop at (end)
2025/01/24-23:03:05.274466 7f4bd3fff6c0 Manual compaction at level-1 from '!items!CLRp0k5qV8mD03pW' @ 72057594037927935 : 1 .. '!items!wYEpnhbyYaMkaNdL' @ 0 : 0; will stop at (end)
2025/08/24-22:12:29.525219 7f99c97fa6c0 Recovering log #309
2025/08/24-22:12:29.541600 7f99c97fa6c0 Delete type=0 #309
2025/08/24-22:12:29.541760 7f99c97fa6c0 Delete type=3 #308
2025/08/24-22:17:57.358157 7f99c8ff96c0 Level-0 table #313: started
2025/08/24-22:17:57.358191 7f99c8ff96c0 Level-0 table #313: 0 bytes OK
2025/08/24-22:17:57.365202 7f99c8ff96c0 Delete type=0 #311
2025/08/24-22:17:57.385931 7f99c8ff96c0 Manual compaction at level-0 from '!items!CLRp0k5qV8mD03pW' @ 72057594037927935 : 1 .. '!items!wYEpnhbyYaMkaNdL' @ 0 : 0; will stop at (end)
2025/08/24-22:17:57.386028 7f99c8ff96c0 Manual compaction at level-1 from '!items!CLRp0k5qV8mD03pW' @ 72057594037927935 : 1 .. '!items!wYEpnhbyYaMkaNdL' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,3 @@
2025/01/24-22:56:58.945158 7f9bde7fc6c0 Recovering log #150
2025/01/24-22:56:58.956395 7f9bde7fc6c0 Delete type=3 #148
2025/01/24-22:56:58.956478 7f9bde7fc6c0 Delete type=0 #150
2025/01/24-22:57:21.203496 7f993ffff6c0 Level-0 table #155: started
2025/01/24-22:57:21.203530 7f993ffff6c0 Level-0 table #155: 0 bytes OK
2025/01/24-22:57:21.239914 7f993ffff6c0 Delete type=0 #153
2025/01/24-22:57:21.240069 7f993ffff6c0 Manual compaction at level-0 from '!items!CLRp0k5qV8mD03pW' @ 72057594037927935 : 1 .. '!items!wYEpnhbyYaMkaNdL' @ 0 : 0; will stop at (end)
2025/01/24-22:57:21.240091 7f993ffff6c0 Manual compaction at level-1 from '!items!CLRp0k5qV8mD03pW' @ 72057594037927935 : 1 .. '!items!wYEpnhbyYaMkaNdL' @ 0 : 0; will stop at (end)
2025/07/08-23:08:27.049425 7f27cb7fe6c0 Recovering log #306
2025/07/08-23:08:27.136671 7f27cb7fe6c0 Delete type=3 #304
2025/07/08-23:08:27.136834 7f27cb7fe6c0 Delete type=0 #306

Binary file not shown.

Binary file not shown.

BIN
packs/flaws/000772.ldb Normal file

Binary file not shown.

View File

@@ -1 +1 @@
MANIFEST-000673
MANIFEST-000827

Some files were not shown because too many files have changed in this diff Show More