Commit graph

48 commits

Author SHA1 Message Date
Johannes Loher
1e094691ff feat: display opponent defense in attack/spell rolls and make it adjustable via effects
This makes it so that the Talents “Verletzen” and “Verheerer” can sort of be automated.
Compendium packs have been updated accordingly.
2022-11-10 01:43:42 +01:00
Johannes Loher
c5d4ec1abd refactor: improve structure of src 2022-11-04 21:47:18 +01:00
Johannes Loher
9d7c570553 feat: replace spell category by spell groups
This also allows to assign a spell to multiple spell groups, which is the case for many spells in
the SRD.

Additionally, this makes many small improvements and fixes to the provided spell compendium.
2022-11-04 21:14:32 +01:00
Johannes Loher
20ea70d96a fix: make expression evaluation in active effects more secure 2022-10-31 22:58:04 +01:00
Johannes Loher
bb6d22d14a test: use vitest instead of jest 2022-08-22 23:42:42 +02:00
Johannes Loher
9cffa4df04 refactor: prefer type imports and sort imports 2022-02-17 01:03:42 +01:00
Johannes Loher
8d2cff77d7 refactor: use subclasses for different item types 2022-02-17 01:03:42 +01:00
Johannes Loher
da1f6999eb feat: only allow specific selectable values for the cooldown duration of spells
World data (including compendium packs) is migrated automatically. In order to also migrate packs
provided by modules, you can use the following macro:
```js
const pack = game.packs.get("<name-of-the-module>.<name-of-the-pack>");
game.ds4.migration.migrateCompendiumFromTo(pack, 4, 5);
```
2022-02-16 01:58:21 +01:00
Johannes Loher
666b61ec09 test: add tests for calculating the spell price 2022-02-13 19:53:18 +01:00
Johannes Loher
de060b381e refactor: improve testing setup 2022-02-13 19:50:43 +01:00
Johannes Loher
1aa284311f refactor: resturcture files so that lincensing info can be bundled properly 2022-01-31 15:31:45 +01:00
Johannes Loher
05933af152 cleanup 2021-07-08 08:00:58 +02:00
Johannes Loher
c46c2c4a0a Fix tests 2021-07-07 23:38:33 +02:00
Johannes Loher
2d647094f7 Use REUSE to specify licensing info 2021-06-26 22:02:00 +02:00
Johannes Loher
ff6427f5a9 Fix problem with check target numbers <= 0
The fix has 2 components:
1. The logic for evaluating checks now supports check target numbers<= 0
   by still using a single die in this case
2.  The CheckFactory sets the check target number to 0 even if it would
   be < 0. This is necessary because negative numbers would interfer
   with foundry's math evaluation in rolls and would not be picked up
   correctly.
2021-06-26 16:32:31 +02:00
Johannes Loher
9332baab82 Small fix in tsconfig.spec.json 2021-03-17 17:32:29 +01:00
Johannes Loher
eeb1aa61f4 Use coups, even if they are higher than the corresponding CTN 2021-03-13 20:58:59 +01:00
Johannes Loher
98deee1856 Add tests for evaluateCheck 2021-03-13 18:43:23 +01:00
Johannes Loher
9c1d2f081a Make dice viewable seperately in DS4Check 2021-03-13 17:43:48 +01:00
Johannes Loher
a542dd1575 add punctuation 2021-03-13 02:32:28 +01:00
Johannes Loher
ea5eee709e Add function to assign sub checks to dice 2021-03-13 02:27:09 +01:00
Johannes Loher
2e9bb975fc Update dependencies 2021-03-03 04:26:26 +01:00
Johannes Loher
af07168c5b Switch to jest 2021-02-11 13:42:38 +01:00
Oliver Rümpelein
7ada67b7c3 Merge master 2021-01-13 18:32:47 +01:00
Oliver Rümpelein
a19a996d1d Display (only!) selection options to the user. 2021-01-10 16:40:11 +01:00
Johannes Loher
c2ad8f7fe1 add test that english and german localization files have same keys 2021-01-10 03:07:08 +01:00
Oliver Rümpelein
22f53e5420 Allow multiple dice and error check. 2021-01-08 23:18:01 +01:00
Oliver Rümpelein
14ffff1985 Fix tests. 2021-01-07 02:33:22 +01:00
Oliver Rümpelein
9feaa5216d Make roll executor fir for modifier-approach. 2021-01-06 18:27:22 +01:00
Oliver Rümpelein
e2a42aee4b Add docs, type clarifications. 2021-01-04 21:21:06 +01:00
Oliver Rümpelein
fc88ce6c52 Rename Test to check, etc., restructure calculation code. 2021-01-04 19:38:26 +01:00
Oliver Rümpelein
c26e4bab9f Changes as per review.
Missing:
 - Open discussion on "test value" renames
 - docs
 - open discussion on last-die-handling
2021-01-03 15:08:38 +01:00
Oliver Rümpelein
f98da0cd99 Apply 2 suggestion(s) to 2 file(s) 2021-01-03 14:49:21 +01:00
Oliver Rümpelein
aaa10d7469 Add slaying dice behaviour. 2021-01-02 16:40:30 +01:00
Oliver Rümpelein
55beeb92c9 Implement swapping edge case, restructure sources. 2021-01-02 16:12:16 +01:00
Oliver Rümpelein
3f6f9f795f Additional tests for dice selection. 2021-01-02 13:55:18 +01:00
Oliver Rümpelein
00f7e30b41 Fix option parsing for rolls. 2021-01-02 13:54:59 +01:00
Oliver Rümpelein
75301b2c56 Bound to fail: Add slaying dice options and tests, no impl. 2021-01-02 13:16:08 +01:00
Oliver Rümpelein
8ca93fc9c9 Ease dice mocking. 2021-01-02 13:06:32 +01:00
Oliver Rümpelein
c76c2c23c3 Fix jasmine imports/symbol visibility. 2020-12-31 02:29:27 +01:00
Oliver Rümpelein
6b18e720a1 Additional tests and features as per Request. 2020-12-31 02:27:21 +01:00
Oliver Rümpelein
b569e5488e Add test for multiple rolls with min/max modifiers 2020-12-31 00:52:59 +01:00
Oliver Rümpelein
c315742412 Add tests for standard mutli dice rolls. 2020-12-31 00:47:31 +01:00
Oliver Rümpelein
3526e6ab99 Restructure single-dice tests. 2020-12-30 23:58:01 +01:00
Oliver Rümpelein
b3c89b4d32 Add missing cases for test <20. 2020-12-30 23:03:08 +01:00
Oliver Rümpelein
2178e745bc Add additional single-roll tests. 2020-12-30 22:19:36 +01:00
Oliver Rümpelein
8d274ed830 Ruhu, Cleanups! 2020-12-30 21:50:12 +01:00
Oliver Rümpelein
e0b65ca061 Make tests and implementation interact. 2020-12-30 21:28:22 +01:00