Commit Graph

338 Commits

Author SHA1 Message Date
Deukhoofd 670abd7229
Fixed Segfault when overriding talent.
continuous-integration/drone/push Build is passing Details
2020-08-01 10:27:46 +02:00
Deukhoofd fa5184ad77
Tweaks for EventHook.
continuous-integration/drone/push Build is passing Details
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 Details
2020-07-31 18:39:47 +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 Details
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 bd7ecb6b33
More work on exceptions.
continuous-integration/drone/push Build is passing Details
2020-07-31 14:17:38 +02:00
Deukhoofd 9c93ca6995
Fixed exception messages being wrong.
continuous-integration/drone/push Build is passing Details
2020-07-31 11:23:23 +02:00
Deukhoofd 5a41208fdb
Further clearer error handling.
continuous-integration/drone/push Build is passing Details
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 Details
2020-07-30 20:15:58 +02:00
Deukhoofd b3b9698831
More clearer exception messages. 2020-07-30 20:15:27 +02:00
Deukhoofd 13c4609cdd
Tweaks for exception handling.
continuous-integration/drone/push Build is passing Details
2020-07-28 19:37:03 +02:00
Deukhoofd e2e706693b
Clearer errors for C Interface.
continuous-integration/drone/push Build is passing Details
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 Details
2020-07-26 18:00:58 +02:00
Deukhoofd 36f1e5beeb
Further work on better exceptions.
continuous-integration/drone/push Build is passing Details
2020-07-26 17:41:11 +02:00
Deukhoofd 29eb7c603a
More reworks of exceptions. 2020-07-26 17:29:06 +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 Details
2020-07-26 16:08:41 +02:00
Deukhoofd 436e68293e
Support for passing a random seed.
continuous-integration/drone/push Build is passing Details
2020-07-26 10:16:25 +02:00
Deukhoofd e6f84f182a
Add Creature getter for the library.
continuous-integration/drone/push Build is passing Details
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 Details
2020-07-25 14:35:13 +02:00
Deukhoofd be82abeece
Change nickname to string from string_view.
continuous-integration/drone/push Build is passing Details
2020-07-19 12:15:14 +02:00
Deukhoofd 367ed7fcbb
Cleanup CMake file. 2020-07-17 13:12:21 +02:00
Deukhoofd 5032377554
Remove Random passes by pointer.
continuous-integration/drone/push Build is passing Details
2020-07-12 15:26:00 +02:00
Deukhoofd c6974b6b5b
Adds getter for Script for ExecutingAttack. Mostly useful for unit tests etc.
continuous-integration/drone/push Build is passing Details
2020-07-04 18:13:36 +02:00
Deukhoofd 47515399fe
Supports iterating over BaseLibrary.
continuous-integration/drone/push Build is passing Details
2020-07-04 17:18:24 +02:00
Deukhoofd 772619db0f
Changed LoadScript to StringView.
continuous-integration/drone/push Build is failing Details
2020-06-26 18:23:40 +02:00
Deukhoofd 48639eeee5
Update to new Arbutils
continuous-integration/drone/push Build is passing Details
2020-06-26 17:08:23 +02:00
Deukhoofd f50f76e993
Move priority scripthook to more sensible place in turn flow.
continuous-integration/drone/push Build is passing Details
2020-06-20 19:51:34 +02:00
Deukhoofd b3366f7b58
Script hook for changing priority.
continuous-integration/drone/push Build is passing Details
2020-06-20 19:44:41 +02:00
Deukhoofd f55ae5a809
Syntax fixes.
continuous-integration/drone/push Build is passing Details
2020-06-20 18:53:10 +02:00
Deukhoofd 14458ec30c
Bring Library class in line with style lines.
continuous-integration/drone/push Build is failing Details
2020-06-20 18:50:55 +02:00
Deukhoofd add77325a4
Several additional checks to ensure battle does not finish turn when ended.
continuous-integration/drone/push Build is passing Details
2020-06-12 16:48:49 +02:00
Deukhoofd fd1c6e9a0a
If no side is still alive, mark battle as inconclusive ended.
continuous-integration/drone/push Build is passing Details
2020-06-12 16:25:21 +02:00
Deukhoofd 32bb641f75
Fixed issue with underflow in ScriptAggregator.
continuous-integration/drone/push Build is passing Details
2020-06-12 15:49:37 +02:00
Deukhoofd 3358bf7378
Fixed comparing int32_t with uint32_t.
continuous-integration/drone/push Build is passing Details
2020-06-10 14:46:45 +02:00
Deukhoofd c8314d6018
Support for changing variants.
continuous-integration/drone/push Build is failing Details
2020-06-10 14:39:20 +02:00
Deukhoofd 637649c993
Deal with talent indices that are out of bounds.
continuous-integration/drone/push Build is passing Details
2020-06-10 12:29:38 +02:00
Deukhoofd fccf339e76
Implements genderless mons.
continuous-integration/drone/push Build is passing Details
2020-06-10 12:16:09 +02:00
Deukhoofd fddf2cabab
Rework ScriptIterator to jump to first value on reset.
continuous-integration/drone/push Build is failing Details
2020-06-05 18:06:45 +02:00
Deukhoofd 9e7607338f
Moved Creature types to creature itself, instead of using the variant types.
continuous-integration/drone/push Build is passing Details
2020-06-05 16:38:27 +02:00
Deukhoofd 3c5b3d5c03
Fixed potential reaching end of function.
continuous-integration/drone/push Build is passing Details
2020-06-05 15:42:28 +02:00
Deukhoofd 66379bfa65
Initial support for handling multi target attacks.
continuous-integration/drone/push Build is failing Details
2020-06-05 15:32:05 +02:00
Deukhoofd f463ba8496
Simplify check whether mon is on battle field.
continuous-integration/drone/push Build is passing Details
2020-06-05 14:35:23 +02:00
Deukhoofd 44de4a0799
Use std::algorithm for Battle::CreatureInField
continuous-integration/drone/push Build is passing Details
2020-06-05 14:15:20 +02:00
Deukhoofd 57e8595bdf
Make ExecutingAttack creature list a raw C array, as this is a hot spot and could use some optimization.
continuous-integration/drone/push Build is passing Details
2020-06-04 21:58:28 +02:00
Deukhoofd 657d646fda
Make the last couple classes use smart pointers.
continuous-integration/drone/push Build is passing Details
2020-06-02 18:30:37 +02:00
Deukhoofd 7262ae9e8b
Make ExecutingAttack use smart pointers. 2020-06-02 18:02:37 +02:00
Deukhoofd a5a613ba5c
Make CreateCreature use smart pointers. 2020-06-02 17:19:23 +02:00
Deukhoofd 62583ecb17
Make Creature use smart pointers.
continuous-integration/drone/push Build is passing Details
2020-06-02 16:20:47 +02:00
Deukhoofd 1ef50fd3a6
Use unique pointers in scriptset.
continuous-integration/drone/push Build is passing Details
2020-06-02 15:03:31 +02:00
Deukhoofd 23e2bc73bc
Style fixes.
continuous-integration/drone/push Build is passing Details
2020-06-02 14:14:24 +02:00