Commit Graph
100 Commits
Author SHA1 Message Date
Deukhoofd 9547b92f14 Log level size used in cmake.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-22 10:21:39 +02:00
Deukhoofd ecc52f3e3a Try to print conan option as string.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-20 15:30:45 +02:00
Deukhoofd 7e2e19fb64 Removed temp compiler version again.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-20 15:17:51 +02:00
Deukhoofd a5d5257420 Tweaks and fixes for Windows
continuous-integration/drone/push Build is failing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-20 15:12:19 +02:00
Deukhoofd a6bfac61a8 Log which level size we're using from conan.
continuous-integration/drone/push Build is failing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-20 14:56:10 +02:00
Deukhoofd 6d6e6ab026 Log warning and fall back to uint8_t if level size wasn't specified.
continuous-integration/drone/push Build is failing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-20 13:48:00 +02:00
Deukhoofd 6ba0bb7298 Raise error if level size wasn't specified.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-20 13:45:27 +02:00
Deukhoofd 46ccf8e7bf Style fix.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-20 13:39:16 +02:00
Deukhoofd 8420f143d7 Add conan option to change level size.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-20 12:11:43 +02:00
Deukhoofd 39e1295013 Compile time option to change bit size of level.
continuous-integration/drone/push Build is failing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-19 20:11:00 +02:00
Deukhoofd ba97fa8579 C Interface to initialize creature.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-17 17:23:03 +02:00
Deukhoofd 98dacbccde Use Arbutils exception Macros, instead of own ones.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-17 12:18:01 +02:00
Deukhoofd 9d5316edff Skip exception test in valgrind run.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-16 17:53:04 +02:00
Deukhoofd a828e2d09c Update to latest Arbutils
continuous-integration/drone/push Build is failing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-16 17:41:56 +02:00
Deukhoofd 56b92a22a6 Style fix
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-15 19:59:34 +02:00
Deukhoofd 4c266bcd43 Fixes failing test on Release build and Windows.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-15 19:54:59 +02:00
Deukhoofd 2b703954a5 Some fixes for stacktraces.
continuous-integration/drone/push Build is failing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-15 17:47:01 +02:00
Deukhoofd de07dcda4d Initialize static variable
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-15 16:39:37 +02:00
Deukhoofd 93a763ab78 Rework exceptions.
continuous-integration/drone/push Build is failing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-15 16:34:52 +02:00
Deukhoofd c921d3127b Update to latest Arbutils, include stacktrace.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-15 15:10:48 +02:00
Deukhoofd 46ab060b99 C Interface to get targets array from ExecutingAttack.
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-14 17:59:56 +02:00
Deukhoofd 73f48eab7a C Interface for History.
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-14 17:24:12 +02:00
Deukhoofd cb4765e0cc Adds support for History data, allowing us to store specific interesting occurrences in the data flow, and recall them later.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-14 15:18:00 +02:00
Deukhoofd 939fee3f50 Add -fconcepts for GCC.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-14 14:26:40 +02:00
Deukhoofd 103c703208 Add cool new c++ 20 constraint to EventHook.
continuous-integration/drone/push Build is failing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-14 14:10:13 +02:00
Deukhoofd 5536a6b83d Implements Attack Use event.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-14 14:00:41 +02:00
Deukhoofd 64b08d4ff0 Cleaned up Events, added events on species and variant changes.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-14 13:52:22 +02:00
Deukhoofd c484c376c3 When changing species, account for gender changes.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-13 12:23:49 +02:00
Deukhoofd 50236f4ece Adds Miss event.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-13 11:17:04 +02:00
Deukhoofd bb35248174 Support changing species for a creature.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-13 10:38:56 +02:00
Deukhoofd 51325943ab Support swapping attacks.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-12 18:54:01 +02:00
Deukhoofd 9c6d149ad9 Support for adding and replacing attacks.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-12 17:51:06 +02:00
Deukhoofd e39b352934 Make BaseLibrary members protected instead of private.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-11 19:54:10 +02:00
Deukhoofd 2c4c0f2277 Rework LearnableAttacks to use ArbUt::BorrowedPtr
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-11 19:09:58 +02:00
Deukhoofd 7ac63839b8 Fixes and improvements for LearnableAttacks,
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-11 18:53:01 +02:00
Deukhoofd f3d22f7ba9 Support getting distinct level attacks from LearnableAttacks.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-11 17:25:04 +02:00
Deukhoofd b2931c0964 C Interface hook for getting number of creatures per side.
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-11 16:56:39 +02:00
Deukhoofd 2ca4f53b0c Support for adding flags to CreatureSpecies and CreatureVariant.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-10 17:46:09 +02:00
Deukhoofd 1807e720dd Support for packing party.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-10 17:37:30 +02:00
Deukhoofd 3a75a40671 Support getting an item from BaseLibrary by index, for iterating purposes.
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-10 17:01:21 +02:00
Deukhoofd 48660f3a4c Adds getter for UniqueIdentifier
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-09 11:48:40 +02:00
Deukhoofd fb56d0920d Add C Interface for Variants count.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-08 19:08:24 +02:00
Deukhoofd 15100f3cd5 Add functionality to retrieve a variants list.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-08 18:56:00 +02:00
Deukhoofd 4ffc8ba01f Support for getting type names from TypeLibrary.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-08 12:54:28 +02:00
Deukhoofd 9cab330dbd Update Arbutils.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-08 12:28:20 +02:00
Deukhoofd d6335359eb Style fix.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-08 11:38:11 +02:00
Deukhoofd 4ef24dd122 Helper method to restore all attack uses on a Creature.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-08 11:32:25 +02:00
Deukhoofd 3d21b7c42d Remove event hook threads, as it caused issues when being called from dotnet.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-07 20:11:03 +02:00
Deukhoofd 5b1c73a2af Fixed valgrind issues.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-07 12:27:46 +02:00
Deukhoofd 208bb097dd Make event listeners threaded.
continuous-integration/drone/push Build is failing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-07 12:20:59 +02:00
Deukhoofd 665227a033 C Interface for new event hooks.
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-07 11:51:43 +02:00
Deukhoofd 5aa04a4b15 Add TurnStart, TurnEnd and ExperienceGain event triggers.
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-07 11:02:37 +02:00
Deukhoofd 3a170d8924 Adds creature Switch event.
continuous-integration/drone/push Build is passing
2020-08-07 10:38:35 +02:00
Deukhoofd 9d56aaa52a Changed C Interface ChangeAttack to use C functionality.
continuous-integration/drone/push Build is passing
2020-08-04 17:59:50 +02:00
Deukhoofd 9b9b644143 Tweak EventHook data allocation based on testing.
continuous-integration/drone/push Build is passing
2020-08-04 13:43:51 +02:00
Deukhoofd 5cd5a634e2 Further memory fixes for getting HitData in ExecutingAttack.
continuous-integration/drone/push Build is passing
2020-08-04 12:45:11 +02:00
Deukhoofd f38161f573 Fixed issue where hitdata read wrong memory.
continuous-integration/drone/push Build is passing
2020-08-04 12:22:05 +02:00
Deukhoofd 08ef84f6d6 Defensive programming.
continuous-integration/drone/push Build is passing
2020-08-03 17:44:29 +02:00
Deukhoofd 93b3847b31 Revert "Disable EventHook system for now for testing."
continuous-integration/drone/push Build is passing
This reverts commit 84e03021
2020-08-03 17:28:43 +02:00
Deukhoofd 84e030213d Disable EventHook system for now for testing.
continuous-integration/drone/push Build is passing
2020-08-02 10:14:56 +02:00
Deukhoofd d55a9e8494 Add more assertions to prevent segfaults.
continuous-integration/drone/push Build is passing
2020-08-02 09:52:11 +02:00
Deukhoofd 1b9da9a721 Added more security to EventHook.
continuous-integration/drone/push Build is passing
2020-08-01 11:34:25 +02:00
Deukhoofd 301f9b9656 Removed StringView initialization, and use the default uninitialized pointer for it.
continuous-integration/drone/push Build is passing
2020-08-01 10:34:40 +02:00
Deukhoofd 670abd7229 Fixed Segfault when overriding talent.
continuous-integration/drone/push Build is passing
2020-08-01 10:27:46 +02:00
Deukhoofd fa5184ad77 Tweaks for EventHook.
continuous-integration/drone/push Build is passing
2020-07-31 19:52:12 +02:00
Deukhoofd c3de280ebb Fixes for EventHook corruptions, unit tests for EventHooks.
continuous-integration/drone/push Build is passing
2020-07-31 18:39:47 +02:00
Deukhoofd 077c00a1a3 Set shared library on if so requested.
continuous-integration/drone/push Build is passing
2020-07-31 17:31:23 +02:00
Deukhoofd 2b86e2cb95 Fixed conan cpp_info.libs.
continuous-integration/drone/push Build is passing
2020-07-31 17:05:09 +02:00
Deukhoofd 0eaae43444 Reworked event hook to a system with pre-allocated memory, owned by the battle. This deals with cleaning up event data memory.
continuous-integration/drone/push Build is passing
2020-07-31 16:19:39 +02:00
Deukhoofd 3e8f9340f3 Dont delete events after triggering the event listener. Once they're in the event listeners hands, it's their responsibility to properly clean up the memory. 2020-07-31 15:47:18 +02:00
Deukhoofd df0eca1716 C Interface explicit constructors for different events.
continuous-integration/drone/push Build is passing
2020-07-31 15:01:25 +02:00
Deukhoofd b1ecb56f10 Add C Interface for Battle::GetCurrentTurn.
continuous-integration/drone/push Build is passing
2020-07-31 14:21:46 +02:00
Deukhoofd bd7ecb6b33 More work on exceptions.
continuous-integration/drone/push Build is passing
2020-07-31 14:17:38 +02:00
Deukhoofd 9c93ca6995 Fixed exception messages being wrong.
continuous-integration/drone/push Build is passing
2020-07-31 11:23:23 +02:00
Deukhoofd a4c4cad59b Merge the two different libs together into the same library.
continuous-integration/drone/push Build is passing
2020-07-31 10:51:03 +02:00
Deukhoofd 5a41208fdb Further clearer error handling.
continuous-integration/drone/push Build is passing
2020-07-31 10:45:20 +02:00
Deukhoofd b56226076e Fixed issue where multiple targets would cause the same target to be hit over and over again.
continuous-integration/drone/push Build is passing
2020-07-30 20:15:58 +02:00
Deukhoofd b3b9698831 More clearer exception messages. 2020-07-30 20:15:27 +02:00
Deukhoofd 29013bb6ac Fix issue with having two different libraries sharing the same CreatureLib Exception C Interface.
continuous-integration/drone/push Build is passing
2020-07-30 20:06:23 +02:00
Deukhoofd 99a562812d Fixed issue where initial exception in the C Interface kept being blank.
continuous-integration/drone/push Build is failing
2020-07-30 18:41:38 +02:00
Deukhoofd 13c4609cdd Tweaks for exception handling.
continuous-integration/drone/push Build is passing
2020-07-28 19:37:03 +02:00
Deukhoofd e2e706693b Clearer errors for C Interface.
continuous-integration/drone/push Build is passing
2020-07-28 17:22:43 +02:00
Deukhoofd 1d03adf0d1 Implements replacement attack when an attack can't be used anymore, adds clearer exception handling.
continuous-integration/drone/push Build is passing
2020-07-26 18:00:58 +02:00
Deukhoofd 36f1e5beeb Further work on better exceptions.
continuous-integration/drone/push Build is passing
2020-07-26 17:41:11 +02:00
Deukhoofd 29eb7c603a More reworks of exceptions. 2020-07-26 17:29:06 +02:00
Deukhoofd 9ec41fdd2d Rework how the C Interface shows exceptions
continuous-integration/drone/push Build is passing
2020-07-26 17:22:36 +02:00
Deukhoofd 418d811d18 Rework of C Interface exception handler.
continuous-integration/drone/push Build is passing
2020-07-26 16:30:00 +02:00
Deukhoofd a4bb8864a0 When creating a CreatureParty with a size, don't just reserve the space, but append nullptr as well.
continuous-integration/drone/push Build is passing
2020-07-26 16:08:41 +02:00
Deukhoofd 8ba564d4b7 C Interface for getting party from BattleParty.
continuous-integration/drone/push Build is passing
2020-07-26 15:46:11 +02:00
Deukhoofd 7ed118e5de Fixed issue in BattleParty C Interface.
continuous-integration/drone/push Build is passing
2020-07-26 15:29:16 +02:00
Deukhoofd a6ed6d63cc Add individual C Interface destructors for turn choices.
continuous-integration/drone/push Build is passing
2020-07-26 11:37:05 +02:00
Deukhoofd 141f0338bf Fixed naming in AttackTurnChoice C Interface.
continuous-integration/drone/push Build is passing
2020-07-26 11:24:31 +02:00
Deukhoofd 436e68293e Support for passing a random seed.
continuous-integration/drone/push Build is passing
2020-07-26 10:16:25 +02:00
Deukhoofd e6f84f182a Add Creature getter for the library.
continuous-integration/drone/push Build is passing
2020-07-25 15:02:11 +02:00
Deukhoofd 8f921ce89b Add support for swapping in and out of a party.
continuous-integration/drone/push Build is passing
2020-07-25 14:35:13 +02:00
Deukhoofd 3f447a3e16 Add C Interface for Creature::GetActiveTalent.
continuous-integration/drone/push Build is passing
2020-07-24 10:16:57 +02:00
Deukhoofd a4faa1351b Mark exported functions as maybe unused. 2020-07-24 10:14:10 +02:00
Deukhoofd be82abeece Change nickname to string from string_view.
continuous-integration/drone/push Build is passing
2020-07-19 12:15:14 +02:00
Deukhoofd 75810b9d0c Implements C Interface for SpeciesVariant.GetRandomTalent
continuous-integration/drone/push Build is passing
2020-07-18 12:20:47 +02:00
Deukhoofd 4fe0c70635 Implements C Interface for Species.GetRandomGender
continuous-integration/drone/push Build is passing
2020-07-17 14:43:04 +02:00