Commit graph

1494 commits

Author SHA1 Message Date
Vsevolod Kremianskii
3482719e4f Use forward declaration in libvideo 2021-06-20 13:23:56 +07:00
Vsevolod Kremianskii
e9bbc08ec3 Use forward declaration in libscript 2021-06-20 13:08:03 +07:00
Vsevolod Kremianskii
ad6df32c97 Use forward declaration in libgraphics 2021-06-20 12:41:39 +07:00
Vsevolod Kremianskii
fdda384297 Use forward declaration in libaudio 2021-06-20 10:32:24 +07:00
Vsevolod Kremianskii
0b66e87bac Use forward declaration in libresource
This improves incremental compilation time due to reduced coupling
between header files.
2021-06-20 10:12:23 +07:00
Vsevolod Kremianskii
1ef00f4728 Reorganize unit tests
- Link to a single executable
- One file per class
- Group files into folders by module
2021-06-19 07:47:39 +07:00
Vsevolod Kremianskii
a5f891141d Limit maximum number of bones to 24 per model node
Vanilla cap seems to be 18 bones per model node. We would only need more
if we decide to add support for other model formats which I don't see as
likely.
2021-06-18 10:30:46 +07:00
Vsevolod Kremianskii
373087790b Always set bone matrix uniforms
This fixes a skeletal animation artifact with PFHC03.
2021-06-18 10:16:33 +07:00
Vsevolod Kremianskii
d5d6b87107 Fade only lights that have fading flag set 2021-06-18 09:28:45 +07:00
Vsevolod Kremianskii
357388914c Make game ID and GUI color resolution part of the Game class
Because _game.isKotOR() and _game.getGUIColorBase() are more readable
than isKotOR(_game.gameId()) and getBaseColor(_game.gameId())
respectively.
2021-06-18 09:11:15 +07:00
Vsevolod Kremianskii
9e51780378 Refactor InventoryMenu to use control binding 2021-06-18 08:24:02 +07:00
Vsevolod Kremianskii
59a990b5e2 Implement gold related functions
- GetGold
- GiveGoldToCreature
- TakeGoldFromCreature
2021-06-18 07:50:59 +07:00
Vsevolod Kremianskii
9cacd1ddd0 Group tests by module
That is to reduce total number of executables.
2021-06-14 11:58:07 +07:00
Vsevolod Kremianskii
b4432595b4 Simplify filenames in scene/node 2021-06-14 11:44:53 +07:00
Vsevolod Kremianskii
afdd80f3b3 Simplify filenames in game/camera 2021-06-14 11:23:28 +07:00
Vsevolod Kremianskii
d88156748f Simplify filenames in game/action
E.g., `#include "action/docommand.h"` reads better than `#include "action/commandaction.h"`.
2021-06-14 11:09:06 +07:00
e77e40085b Update minimum required cmake version
Signed-off-by: William Brawner <me@wbrawner.com>
2021-06-14 04:55:38 +07:00
Vsevolod Kremianskii
e4fb659206 Remove Coverity Scan badge
At least until the build has been fixed.

[ci skip]
2021-06-13 12:08:02 +07:00
Vsevolod Kremianskii
32be20aeb3 Fix all MSVC compilation warnings 2021-06-13 11:24:41 +07:00
Vsevolod Kremianskii
452baa3a16 Drop Stopwatch class
I don't see it being used any time used.
2021-06-13 10:40:59 +07:00
Vsevolod Kremianskii
e2f6ee3b7a Refactor Dialog and Computer GUI to use control binding 2021-06-13 10:14:07 +07:00
Vsevolod Kremianskii
9ee347f725 Rephrase Legal Stance in README
[ci skip]
2021-06-13 07:54:19 +07:00
Vsevolod Kremianskii
4480914dc5 Use forward declarations in game/camera
Forward declaration improves compilation time at the cost of some
verbosity.
2021-06-12 19:08:10 +07:00
Vsevolod Kremianskii
7f7bc412b4 Refactor SaveLoad and PartySelection GUI to use control binding 2021-06-12 18:20:10 +07:00
Vsevolod Kremianskii
483f0a8f10 Rephrase our legal stance in README
Specifically mention decompilation.

[ci skip]
2021-06-12 16:14:14 +07:00
Vsevolod Kremianskii
c15b8d69a6 Refactor HUD and LoadingScreeen GUI to use control binding 2021-06-12 15:48:36 +07:00
Vsevolod Kremianskii
0695fe9d51 Add a Legal Stance section to the README
[ci skip]
2021-06-12 10:04:36 +07:00
Vsevolod Kremianskii
b98ffc5bec Update README: we are at a mid-stage of development
[ci skip]
2021-06-12 09:18:27 +07:00
Vsevolod Kremianskii
e1dd7b7661 Refactor MainMenu GUI to use control binding 2021-06-12 09:09:58 +07:00
Vsevolod Kremianskii
41caea6048 Refactor BarkBubble and Container GUI to use control binding 2021-06-11 16:57:21 +07:00
Vsevolod Kremianskii
e87822556a Remove leftover unnecessary includes 2021-06-11 16:06:13 +07:00
Fernando Urbano
c3f52a29fe Fix APPLE builds 2021-06-11 14:29:37 +07:00
ef12fff06b Fix builds on macOS 2021-06-11 11:10:29 +07:00
Vsevolod Kremianskii
e265fb43d2 Use precompiled headers to improve compilation time 2021-06-11 10:44:08 +07:00
2aceec0ed2 Use constants for binding lists sizes
Signed-off-by: William Brawner <me@wbrawner.com>
2021-06-10 08:38:14 +07:00
077b2bba70 Add isKotOR() util method
Signed-off-by: William Brawner <me@wbrawner.com>
2021-06-10 08:38:14 +07:00
bd0698eb0d Remove unnecessary whitespace
Signed-off-by: William Brawner <me@wbrawner.com>
2021-06-10 08:38:14 +07:00
143288876b Remove unnecessary initialization of shared_ptrs
Signed-off-by: William Brawner <me@wbrawner.com>
2021-06-10 08:38:14 +07:00
a0f6e13ac7 Use binding struct in Character menu 2021-06-10 08:38:14 +07:00
f3465b742a Add Slider control 2021-06-10 08:38:14 +07:00
7a3e8d3f55 Remove default options in extract script
Signed-off-by: William Brawner <me@wbrawner.com>
2021-06-08 21:53:10 +07:00
7b276b706b Make extract script executable on unix
Signed-off-by: William Brawner <me@wbrawner.com>
2021-06-08 21:53:10 +07:00
f4a0f3561b Load directory paths from environment if present
Signed-off-by: William Brawner <me@wbrawner.com>
2021-06-08 21:53:10 +07:00
7781e7aa53 Add "assume yes" option to extraction script
Signed-off-by: William Brawner <me@wbrawner.com>
2021-06-08 21:53:10 +07:00
Vsevolod Kremianskii
1690864689 Add placeholders for all script routines
Except those used for mini-games.
2021-06-06 13:22:37 +07:00
Vsevolod Kremianskii
8d5cdbdc7d Fix blaster bolts trajectory 2021-06-05 09:53:49 +07:00
Vsevolod Kremianskii
79a4af45ad Fix erasing animation channels in Blend mode
This fixes combat animations being stuck.
2021-06-05 09:53:46 +07:00
Vsevolod Kremianskii
582b87b540 Implement saving/loading party members and global variables
While at it, refactor GFF field construction.
2021-06-05 02:50:21 +07:00
Vsevolod Kremianskii
842a8fe3b0 Implement two-weapon fighting: penalties, off-hand attacks 2021-06-05 00:57:51 +07:00
Vsevolod Kremianskii
93b389fcd4 Implement critical hits in combat 2021-06-05 00:26:29 +07:00