Commit Graph

250 Commits

Author SHA1 Message Date
c921d3127b Update to latest Arbutils, include stacktrace.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-15 15:10:48 +02:00
46ab060b99 C Interface to get targets array from ExecutingAttack.
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-14 17:59:56 +02:00
cb4765e0cc Adds support for History data, allowing us to store specific interesting occurrences in the data flow, and recall them later.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-14 15:18:00 +02:00
103c703208 Add cool new c++ 20 constraint to EventHook.
Some checks failed
continuous-integration/drone/push Build is failing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-14 14:10:13 +02:00
64b08d4ff0 Cleaned up Events, added events on species and variant changes.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-14 13:52:22 +02:00
c484c376c3 When changing species, account for gender changes.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-13 12:23:49 +02:00
bb35248174 Support changing species for a creature.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-13 10:38:56 +02:00
51325943ab Support swapping attacks.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-12 18:54:01 +02:00
9c6d149ad9 Support for adding and replacing attacks.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-12 17:51:06 +02:00
1807e720dd Support for packing party.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-10 17:37:30 +02:00
48660f3a4c Adds getter for UniqueIdentifier
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-09 11:48:40 +02:00
9cab330dbd Update Arbutils.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-08 12:28:20 +02:00
d6335359eb Style fix.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-08 11:38:11 +02:00
4ef24dd122 Helper method to restore all attack uses on a Creature.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-08 11:32:25 +02:00
3d21b7c42d Remove event hook threads, as it caused issues when being called from dotnet.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-07 20:11:03 +02:00
208bb097dd Make event listeners threaded.
Some checks failed
continuous-integration/drone/push Build is failing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-07 12:20:59 +02:00
5aa04a4b15 Add TurnStart, TurnEnd and ExperienceGain event triggers.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-07 11:02:37 +02:00
3a170d8924 Adds creature Switch event.
All checks were successful
continuous-integration/drone/push Build is passing
2020-08-07 10:38:35 +02:00
5cd5a634e2 Further memory fixes for getting HitData in ExecutingAttack.
All checks were successful
continuous-integration/drone/push Build is passing
2020-08-04 12:45:11 +02:00
f38161f573 Fixed issue where hitdata read wrong memory.
All checks were successful
continuous-integration/drone/push Build is passing
2020-08-04 12:22:05 +02:00
d55a9e8494 Add more assertions to prevent segfaults.
All checks were successful
continuous-integration/drone/push Build is passing
2020-08-02 09:52:11 +02:00
301f9b9656 Removed StringView initialization, and use the default uninitialized pointer for it.
All checks were successful
continuous-integration/drone/push Build is passing
2020-08-01 10:34:40 +02:00
670abd7229 Fixed Segfault when overriding talent.
All checks were successful
continuous-integration/drone/push Build is passing
2020-08-01 10:27:46 +02:00
fa5184ad77 Tweaks for EventHook.
All checks were successful
continuous-integration/drone/push Build is passing
2020-07-31 19:52:12 +02:00
c3de280ebb Fixes for EventHook corruptions, unit tests for EventHooks.
All checks were successful
continuous-integration/drone/push Build is passing
2020-07-31 18:39:47 +02:00
0eaae43444 Reworked event hook to a system with pre-allocated memory, owned by the battle. This deals with cleaning up event data memory.
All checks were successful
continuous-integration/drone/push Build is passing
2020-07-31 16:19:39 +02:00
13c4609cdd Tweaks for exception handling.
All checks were successful
continuous-integration/drone/push Build is passing
2020-07-28 19:37:03 +02:00
e2e706693b Clearer errors for C Interface.
All checks were successful
continuous-integration/drone/push Build is passing
2020-07-28 17:22:43 +02:00
1d03adf0d1 Implements replacement attack when an attack can't be used anymore, adds clearer exception handling.
All checks were successful
continuous-integration/drone/push Build is passing
2020-07-26 18:00:58 +02:00
36f1e5beeb Further work on better exceptions.
All checks were successful
continuous-integration/drone/push Build is passing
2020-07-26 17:41:11 +02:00
a4bb8864a0 When creating a CreatureParty with a size, don't just reserve the space, but append nullptr as well.
All checks were successful
continuous-integration/drone/push Build is passing
2020-07-26 16:08:41 +02:00
436e68293e Support for passing a random seed.
All checks were successful
continuous-integration/drone/push Build is passing
2020-07-26 10:16:25 +02:00
e6f84f182a Add Creature getter for the library.
All checks were successful
continuous-integration/drone/push Build is passing
2020-07-25 15:02:11 +02:00
8f921ce89b Add support for swapping in and out of a party.
All checks were successful
continuous-integration/drone/push Build is passing
2020-07-25 14:35:13 +02:00
be82abeece Change nickname to string from string_view.
All checks were successful
continuous-integration/drone/push Build is passing
2020-07-19 12:15:14 +02:00
367ed7fcbb Cleanup CMake file. 2020-07-17 13:12:21 +02:00
5032377554 Remove Random passes by pointer.
All checks were successful
continuous-integration/drone/push Build is passing
2020-07-12 15:26:00 +02:00
c6974b6b5b Adds getter for Script for ExecutingAttack. Mostly useful for unit tests etc.
All checks were successful
continuous-integration/drone/push Build is passing
2020-07-04 18:13:36 +02:00
772619db0f Changed LoadScript to StringView.
Some checks failed
continuous-integration/drone/push Build is failing
2020-06-26 18:23:40 +02:00
48639eeee5 Update to new Arbutils
All checks were successful
continuous-integration/drone/push Build is passing
2020-06-26 17:08:23 +02:00
add77325a4 Several additional checks to ensure battle does not finish turn when ended.
All checks were successful
continuous-integration/drone/push Build is passing
2020-06-12 16:48:49 +02:00
fd1c6e9a0a If no side is still alive, mark battle as inconclusive ended.
All checks were successful
continuous-integration/drone/push Build is passing
2020-06-12 16:25:21 +02:00
3358bf7378 Fixed comparing int32_t with uint32_t.
All checks were successful
continuous-integration/drone/push Build is passing
2020-06-10 14:46:45 +02:00
c8314d6018 Support for changing variants.
Some checks failed
continuous-integration/drone/push Build is failing
2020-06-10 14:39:20 +02:00
9e7607338f Moved Creature types to creature itself, instead of using the variant types.
All checks were successful
continuous-integration/drone/push Build is passing
2020-06-05 16:38:27 +02:00
66379bfa65 Initial support for handling multi target attacks.
Some checks failed
continuous-integration/drone/push Build is failing
2020-06-05 15:32:05 +02:00
f463ba8496 Simplify check whether mon is on battle field.
All checks were successful
continuous-integration/drone/push Build is passing
2020-06-05 14:35:23 +02:00
44de4a0799 Use std::algorithm for Battle::CreatureInField
All checks were successful
continuous-integration/drone/push Build is passing
2020-06-05 14:15:20 +02:00
57e8595bdf Make ExecutingAttack creature list a raw C array, as this is a hot spot and could use some optimization.
All checks were successful
continuous-integration/drone/push Build is passing
2020-06-04 21:58:28 +02:00
657d646fda Make the last couple classes use smart pointers.
All checks were successful
continuous-integration/drone/push Build is passing
2020-06-02 18:30:37 +02:00