65f054bfab
Added functions for battle to manipulate volatile scripts.
continuous-integration/drone/push Build is passing
2020-02-16 17:44:41 +01:00
428483e73d
Make GetRandom in Battle class a pointer.
continuous-integration/drone/push Build is passing
2020-02-16 17:24:33 +01:00
f3b5f9e8f9
Move reference to cpp file outside of header.
continuous-integration/drone/push Build is passing
2020-02-16 16:31:06 +01:00
54e366fc1b
Implements BattleRandom class with support for Effect Chance, and script hooks to modify this.
continuous-integration/drone/push Build is passing
2020-02-16 15:08:22 +01:00
579ee82f02
Pass ExecutingAttack for target as pointer instead of reference.
continuous-integration/drone/push Build is passing
2020-02-16 12:02:17 +01:00
d6ea16b467
Implement basic library class that other libraries inherit from for performance.
continuous-integration/drone/push Build is passing
2020-02-15 18:51:21 +01:00
8d4860f553
Support for Heal function for Creatures.
continuous-integration/drone/push Build is passing
2020-02-13 14:48:09 +01:00
0ef909cf55
Use ENUM macro for ScriptCategory enum.
2020-02-13 12:53:48 +01:00
e45a36d78e
Move Script ownership to script holder, added OnRemove script hook.
continuous-integration/drone/push Build is passing
2020-02-05 14:52:50 +01:00
cd7ddcf78e
Actually implement handling of StopBeforeAttack script hook
continuous-integration/drone/push Build is passing
2020-02-03 19:11:44 +01:00
c6620021a7
Fix issues.
continuous-integration/drone/push Build is passing
2020-02-03 18:32:03 +01:00
59f7d3aa4f
Make Script functions pass out parameters by pointer instead of reference.
continuous-integration/drone/push Build is failing
2020-02-03 18:27:39 +01:00
c4d0a73df6
Remove display script hook functions, replace them with easy to use interface on Creature class.
continuous-integration/drone/push Build is passing
2020-02-03 16:49:28 +01:00
c3b573c7da
Initialize Battle pointers with nullptr in Create class.
continuous-integration/drone/push Build is passing
2020-02-02 14:39:57 +01:00
fc5826edb1
Check whether a battle has been set when calling Damage function.
continuous-integration/drone/push Build is passing
2020-02-02 12:34:02 +01:00
dba271681d
Change LibrarySettings to be a pointer instead of value, to allow for overriding in implementations.
continuous-integration/drone/push Build is passing
2020-02-01 13:30:51 +01:00
23c4e89c2d
Removed unused function from ExecutingAttack
2020-01-26 13:10:45 +01:00
1256d7d2e3
Add virtual modifiers to LearnedAttack.hpp
continuous-integration/drone/push Build is passing
2020-01-25 12:37:05 +01:00
cc46cd46a7
Commit TurnHandler from earlier revert.
continuous-integration/drone/push Build is passing
2020-01-18 13:44:02 +01:00
e3bbc369fc
Revert "Make Script functions use pointers for out variables, instead of references."
...
This reverts commit c3877e01
2020-01-18 13:38:47 +01:00
b02577554f
Remove GetProperty macro, as it wasn't that intuitive, and caused issues later.
continuous-integration/drone/push Build is passing
2020-01-12 17:04:42 +01:00
c3877e0151
Make Script functions use pointers for out variables, instead of references.
continuous-integration/drone/push Build is passing
2020-01-11 16:05:39 +01:00
836a201b2d
Add initialize function to script resolver, where it can access the battle library.
continuous-integration/drone/push Build is passing
2020-01-11 11:35:59 +01:00
144d17d859
Fixed changing stat boost by negative actually increasing it.
continuous-integration/drone/push Build is passing
2020-01-05 14:57:17 +01:00
fbfcc53a02
Furter fixes for changing stats.
continuous-integration/drone/push Build is passing
2020-01-05 14:39:10 +01:00
568232c7a5
Split off initialization of Creature into new function that's not called in the constructor.
...
continuous-integration/drone/push Build is passing
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
dd8d4d738d
Allow getting Static Library from BattleLibrary.
continuous-integration/drone/push Build is passing
2020-01-02 19:33:10 +01:00
18236981ed
Fixed syntax error.
continuous-integration/drone/push Build is passing
2020-01-02 18:43:16 +01:00
1a246f57e8
Make Creature class variables mostly protected instead of private.
continuous-integration/drone/push Build is failing
2020-01-02 18:38:56 +01:00
f0c3f84a29
Remove use of unused field
continuous-integration/drone/push Build is passing
2020-01-02 16:19:32 +01:00
b3d07f5a0e
Removed unused field from CreateCreature.hpp
continuous-integration/drone/push Build is failing
2020-01-02 16:18:46 +01:00
243b3a768c
Remove unused fields in CreateCreature class
continuous-integration/drone/push Build is passing
2019-12-27 12:36:32 +01:00
ae4d8f5e12
Removes some variables that are better handled in implementations.
continuous-integration/drone/push Build is failing
2019-12-27 12:19:38 +01:00
9e0d8d76fb
Change GenericTemplates.cpp to GenericTemplates.hpp, as to include it in header files.
continuous-integration/drone/push Build is passing
2019-12-26 12:27:54 +01:00
8e53ffb53d
Implements functions for getting display species and variant.
continuous-integration/drone/push Build is passing
2019-12-21 14:32:45 +01:00
db002c784f
Resolve memory issue with Event Hooks.
continuous-integration/drone/push Build is passing
2019-12-15 12:27:56 +01:00
410487c86b
Initial support for Event Hooks.
continuous-integration/drone/push Build is failing
2019-12-15 12:24:08 +01:00
6ba708ad12
Implements running from battle.
continuous-integration/drone/push Build is passing
2019-12-15 11:52:10 +01:00
649de39571
Implements experience gain on opponent faint.
continuous-integration/drone/push Build is failing
2019-12-14 13:28:23 +01:00
3baed93597
Implements marking opponents as seen.
continuous-integration/drone/push Build is passing
2019-12-14 12:40:50 +01:00
c25d7b865e
Implements creature switching as turn choice.
continuous-integration/drone/push Build is passing
2019-12-14 12:15:30 +01:00
2ee181bca7
Fixed _onBattleField field of Creature leading to cascading errors on release configuration.
continuous-integration/drone/push Build is passing
2019-12-12 11:14:50 +01:00
dc9296194e
Fixed battle ending after any faint.
continuous-integration/drone/push Build is failing
2019-12-07 22:52:43 +01:00
f5aa168f1b
Also set warnings to errors for Windows build, fix one of those warnings.
continuous-integration/drone/push Build is passing
2019-12-07 22:15:50 +01:00
7c642f7df5
Fixes for damage calculations always using a base power of 0.
2019-12-07 22:09:06 +01:00
262279bd2c
Support for ending battles when only one side has creatures that are available for battle.
2019-12-07 21:56:29 +01:00
0483e635ea
Reworks test suite, tweaks to Cmake config for Windows.
continuous-integration/drone/push Build is failing
2019-12-07 13:45:44 +01:00
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
57f16bc420
Better handling of filling empty slots.
continuous-integration/drone/push Build is passing
2019-12-07 12:13:12 +01:00
6f32d1245b
Implemented and fixed all code required to run at least a single turn.
continuous-integration/drone/push Build is passing
2019-12-05 12:56:41 +01:00