Commit Graph

94 Commits

Author SHA1 Message Date
Deukhoofd 779f0b08cf
Fixed CreatureException not saving error string.
continuous-integration/drone/push Build is passing Details
2020-01-11 19:25:16 +01:00
Deukhoofd c3877e0151
Make Script functions use pointers for out variables, instead of references.
continuous-integration/drone/push Build is passing Details
2020-01-11 16:05:39 +01:00
Deukhoofd 836a201b2d
Add initialize function to script resolver, where it can access the battle library.
continuous-integration/drone/push Build is passing Details
2020-01-11 11:35:59 +01:00
Deukhoofd 144d17d859
Fixed changing stat boost by negative actually increasing it.
continuous-integration/drone/push Build is passing Details
2020-01-05 14:57:17 +01:00
Deukhoofd fbfcc53a02
Furter fixes for changing stats.
continuous-integration/drone/push Build is passing Details
2020-01-05 14:39:10 +01:00
Deukhoofd f9494d4c38
Fix changing stat falling through enum and throwing exception.
continuous-integration/drone/push Build is failing Details
2020-01-05 14:25:48 +01:00
Deukhoofd 568232c7a5
Split off initialization of Creature into new function that's not called in the constructor.
continuous-integration/drone/push Build is passing Details
This has to do with specific implementations of stat calculator requiring an inherited type of the Creature class, and by calling it in the constructor casting to this inherited type will fail.
2020-01-05 13:43:47 +01:00
Deukhoofd dd8d4d738d
Allow getting Static Library from BattleLibrary.
continuous-integration/drone/push Build is passing Details
2020-01-02 19:33:10 +01:00
Deukhoofd 18236981ed
Fixed syntax error.
continuous-integration/drone/push Build is passing Details
2020-01-02 18:43:16 +01:00
Deukhoofd 1a246f57e8
Make Creature class variables mostly protected instead of private.
continuous-integration/drone/push Build is failing Details
2020-01-02 18:38:56 +01:00
Deukhoofd b98b470f0d
Mark destructors of several libraries as virtual.
continuous-integration/drone/push Build is passing Details
2020-01-02 17:48:14 +01:00
Deukhoofd f0c3f84a29
Remove use of unused field
continuous-integration/drone/push Build is passing Details
2020-01-02 16:19:32 +01:00
Deukhoofd b3d07f5a0e
Removed unused field from CreateCreature.hpp
continuous-integration/drone/push Build is failing Details
2020-01-02 16:18:46 +01:00
Deukhoofd 4d3dc28606
Allow most libraries to reserve capacity for their database.
continuous-integration/drone/push Build is passing Details
2019-12-31 10:48:52 +01:00
Deukhoofd db2eb0c3fa
Make DataLibrary destructor virtual.
continuous-integration/drone/push Build is passing Details
2019-12-30 16:03:46 +01:00
Deukhoofd 243b3a768c
Remove unused fields in CreateCreature class
continuous-integration/drone/push Build is passing Details
2019-12-27 12:36:32 +01:00
Deukhoofd ae4d8f5e12
Removes some variables that are better handled in implementations.
continuous-integration/drone/push Build is failing Details
2019-12-27 12:19:38 +01:00
Deukhoofd 9e0d8d76fb
Change GenericTemplates.cpp to GenericTemplates.hpp, as to include it in header files.
continuous-integration/drone/push Build is passing Details
2019-12-26 12:27:54 +01:00
Deukhoofd 8e53ffb53d
Implements functions for getting display species and variant.
continuous-integration/drone/push Build is passing Details
2019-12-21 14:32:45 +01:00
Deukhoofd db002c784f
Resolve memory issue with Event Hooks.
continuous-integration/drone/push Build is passing Details
2019-12-15 12:27:56 +01:00
Deukhoofd 410487c86b
Initial support for Event Hooks.
continuous-integration/drone/push Build is failing Details
2019-12-15 12:24:08 +01:00
Deukhoofd 6ba708ad12
Implements running from battle.
continuous-integration/drone/push Build is passing Details
2019-12-15 11:52:10 +01:00
Deukhoofd 0fad615050
Make LookupGrowthRate use unsigned integers instead of signed ones, to resolve Windows error.
continuous-integration/drone/push Build is passing Details
2019-12-14 14:09:07 +01:00
Deukhoofd f5a71ca807
Fixed memory leak in growth rate library.
continuous-integration/drone/push Build is failing Details
2019-12-14 13:42:34 +01:00
Deukhoofd 649de39571
Implements experience gain on opponent faint.
continuous-integration/drone/push Build is failing Details
2019-12-14 13:28:23 +01:00
Deukhoofd 3baed93597
Implements marking opponents as seen.
continuous-integration/drone/push Build is passing Details
2019-12-14 12:40:50 +01:00
Deukhoofd c25d7b865e
Implements creature switching as turn choice.
continuous-integration/drone/push Build is passing Details
2019-12-14 12:15:30 +01:00
Deukhoofd 2ee181bca7
Fixed _onBattleField field of Creature leading to cascading errors on release configuration.
continuous-integration/drone/push Build is passing Details
2019-12-12 11:14:50 +01:00
Deukhoofd dc9296194e
Fixed battle ending after any faint.
continuous-integration/drone/push Build is failing Details
2019-12-07 22:52:43 +01:00
Deukhoofd f5aa168f1b Also set warnings to errors for Windows build, fix one of those warnings.
continuous-integration/drone/push Build is passing Details
2019-12-07 22:15:50 +01:00
Deukhoofd 7c642f7df5 Fixes for damage calculations always using a base power of 0. 2019-12-07 22:09:06 +01:00
Deukhoofd 262279bd2c Support for ending battles when only one side has creatures that are available for battle. 2019-12-07 21:56:29 +01:00
Deukhoofd 0483e635ea Reworks test suite, tweaks to Cmake config for Windows.
continuous-integration/drone/push Build is failing Details
2019-12-07 13:45:44 +01:00
Deukhoofd 8897f2282f Put the check for slots filled behind the check whether all choices are set.
This because this check can be more expensive, and should run as little times
as possible. In this case it should only run when all choices are set,
which should be in most cases once a turn.
2019-12-07 12:49:18 +01:00
Deukhoofd 57f16bc420
Better handling of filling empty slots.
continuous-integration/drone/push Build is passing Details
2019-12-07 12:13:12 +01:00
Deukhoofd 6f32d1245b
Implemented and fixed all code required to run at least a single turn.
continuous-integration/drone/push Build is passing Details
2019-12-05 12:56:41 +01:00
Deukhoofd 5d6ac316eb
Renamed Target class to CreatureIndex 2019-12-05 09:53:48 +01:00
Deukhoofd a8730d983f
Used ClangFormat style guide I'm happy with.
continuous-integration/drone/push Build is passing Details
2019-11-28 12:55:22 +01:00
Deukhoofd 3b685ae782
Added layout for CreatureParty 2019-11-28 12:16:03 +01:00
Deukhoofd aa356d74d7
Set data for executing attacks.
continuous-integration/drone/push Build is passing Details
2019-11-24 11:06:51 +01:00
Deukhoofd 583bde3768
Adds more script hooks 2019-11-24 10:34:42 +01:00
Deukhoofd f6415fba27
Added more script hooks
continuous-integration/drone/push Build is passing Details
2019-11-23 11:53:00 +01:00
Deukhoofd 49bd4813f6 Initialize Creature talent script when battle library is set, allow talent overriding
continuous-integration/drone/push Build is passing Details
2019-11-18 18:41:55 +01:00
Deukhoofd 4d796204f8 Implements functionality for loading scripts. 2019-11-18 08:29:17 +01:00
Deukhoofd 86f8a1e37b
Adds talent script to Creature class
continuous-integration/drone/push Build is passing Details
2019-11-17 11:25:52 +01:00
Deukhoofd fd16152121 Make scriptset return scripts in order of insertion, unit tests for ScriptSource 2019-11-12 18:38:09 +01:00
Deukhoofd cdd1ac992f
Fix build on Linux.
continuous-integration/drone/push Build is passing Details
2019-11-11 20:04:59 +01:00
Deukhoofd 859cd02478 Tests for script aggregator.
continuous-integration/drone/push Build is failing Details
2019-11-10 19:55:01 +01:00
Deukhoofd d8332f9e40 Another rework for scripthooks, for better performance.
continuous-integration/drone/push Build is passing Details
This new version caches pointers to the pointers to scripts, so that we can build the data once and then simply iterate over it whenever we want to run a hook.
2019-11-10 17:08:42 +01:00
Deukhoofd e1a8d80863 Add default implementation for OnBeforeTurn script hook.
continuous-integration/drone/push Build is passing Details
2019-11-10 14:45:07 +01:00