Commit Graph

74 Commits

Author SHA1 Message Date
5fd8abb3a8 Reworks ScriptSources so we can get individual scripts on a source. Fixed OnEndTurn making no sense.
Some checks failed
continuous-integration/drone/push Build is failing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-10-29 19:31:08 +02:00
19375c2f87 Adds functions to add, remove, and get volatile scripts from a BattleSide.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-10-28 14:49:24 +02:00
47c3429295 Adds optional optimization to history helper functions to limit the max amount of turns searched through.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-10-24 11:10:30 +02:00
7354c835e6 Fixes memory leak.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-10-23 18:38:12 +02:00
51897e42da Make HistoryHolder a pointer instead of value.
Some checks failed
continuous-integration/drone/push Build is failing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-10-23 17:17:34 +02:00
20b53833c4 Cleans up HistoryHolder to be a lot less complicated (although possibly a bit slower), adds DamageHistory.
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-10-23 16:57:58 +02:00
188e88ab80 Store CreatureIndex on Creature, includes helper function to get a creatures party from a battle.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-05-08 11:53:32 +02:00
2b1a1792bf Make Clone functions const.
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-04-11 16:01:18 +02:00
84a14cff2b Support for cloning battles for AI purposes.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-04-11 15:20:50 +02:00
1ddbfd2357 Fixes for ScriptSet throwing when adding a not yet found volatile script.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-27 20:20:49 +01:00
bfe83ef271 When adding volatile script, return the script object.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-27 16:36:20 +01:00
5178d5dcc0 Renamed Script --> BattleScript, some cleanup on it.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-07 10:26:41 +01:00
3742e07b03 Rework clearing battle from creatures.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-12-28 15:10:49 +01:00
a284641b5a Fixes invalid pointers to a battle dangling when a battle is removed.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-12-28 13:40:39 +01:00
e642f374b9 Update to latest Arbutils.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-12-13 12:15:40 +01:00
5c39694f19 Overhaul memory model to new Arbutils memory.
Some checks failed
continuous-integration/drone/push Build is failing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-12-12 12:22:48 +01:00
53bfbd36c2 Use a precompiled header.
Some checks failed
continuous-integration/drone/push Build is failing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-09-25 13:05:15 +02:00
32f75f4a47 Store time in turn execution on battle class.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-28 12:24:10 +02:00
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
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
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
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
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
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
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
1ef50fd3a6 Use unique pointers in scriptset.
All checks were successful
continuous-integration/drone/push Build is passing
2020-06-02 15:03:31 +02:00
f898698f49 Use smart pointers for BattleSide.
Some checks failed
continuous-integration/drone/push Build is failing
2020-06-02 13:06:24 +02:00
01f6e59cb6 Make battle class fields all smart pointers.
All checks were successful
continuous-integration/drone/push Build is passing
2020-05-31 19:01:45 +02:00
29cb4eac37 Make ChoiceQueue use smart pointers.
All checks were successful
continuous-integration/drone/push Build is passing
2020-05-31 18:00:39 +02:00
25f65eb47b Update to newer Arbutils version.
All checks were successful
continuous-integration/drone/push Build is passing
2020-05-26 18:31:06 +02:00
c056ddc6b3 Adds getter for parties to battle.
All checks were successful
continuous-integration/drone/push Build is passing
2020-05-24 12:57:12 +02:00
734d056449 Performance improvement for collecting scripts, by reserving size in ScriptSource.
All checks were successful
continuous-integration/drone/push Build is passing
2020-04-25 11:33:25 +02:00
1eb751538d Updated to latest Arbutils.
All checks were successful
continuous-integration/drone/push Build is passing
2020-04-25 10:41:15 +02:00
ddbf4c23b8 Fix for compilation issue when using NO_ASSERT.
All checks were successful
continuous-integration/drone/push Build is passing
2020-04-22 12:54:11 +02:00
a200c7cde8 Make Battle fields protected instead of private.
All checks were successful
continuous-integration/drone/push Build is passing
2020-04-18 15:22:38 +02:00
7ce3e6940d Rework for C Interfaces to handle exceptions a bit better.
All checks were successful
continuous-integration/drone/push Build is passing
2020-03-25 19:09:17 +01:00
27288563cd Replace most collections with Arbutils collections for more safety.
All checks were successful
continuous-integration/drone/push Build is passing
2020-03-22 19:21:40 +01:00
475392f9b6 Fixed issue where base stats of a variant got corrupted.
All checks were successful
continuous-integration/drone/push Build is passing
2020-03-22 15:25:38 +01:00
899e432271 Added lots of security using asserts.
Some checks failed
continuous-integration/drone/push Build is failing
2020-03-22 13:42:26 +01:00
5a976e4031 Added display text event hook. 2020-03-09 17:43:36 +01:00
ce2fc320bd Tweaks for Battle and ScriptSet, added Battle C interface.
All checks were successful
continuous-integration/drone/push Build is passing
2020-03-09 10:16:57 +01:00
1d18066bcc Made Battle take battleparties as a pointer instead of value for external use.
All checks were successful
continuous-integration/drone/push Build is passing
2020-03-07 11:00:48 +01:00
5a05a2f4d3 Add ConstString to several other places where context isn't changed much during runtime.
All checks were successful
continuous-integration/drone/push Build is passing
2020-02-28 19:23:24 +01:00
3802587313 Added HasVolatileScript function to Creature and Battle.
Some checks failed
continuous-integration/drone/push Build is failing
2020-02-23 16:17:57 +01:00
5f891cd4ed Added Remove Volatile functions for battle and creatures.
All checks were successful
continuous-integration/drone/push Build is passing
2020-02-23 11:11:47 +01:00
645ba95bbc Performance improvements for battle and creature AddVolatileScript methods when passing a string as parameter.
All checks were successful
continuous-integration/drone/push Build is passing
Instead of loading a script, then passing it to the ScriptSet class and checking if it already exists before invoking stack, we now check whether the ScriptSet has that script. If one already exists we just invoke stack on it, if not we continue to the process of creating a new script instance.
2020-02-22 16:01:01 +01:00