56 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
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
d4fd7282f5
Move ScriptCategory enum outside of class scope of ScriptResolver.
All checks were successful
continuous-integration/drone/push Build is passing
2020-02-20 13:05:15 +01:00
445f7eb3d5
Add virtual destructor to Battle. 2020-02-17 15:52:02 +01:00
65f054bfab
Added functions for battle to manipulate volatile scripts.
All checks were successful
continuous-integration/drone/push Build is passing
2020-02-16 17:44:41 +01:00
428483e73d
Make GetRandom in Battle class a pointer.
All checks were successful
continuous-integration/drone/push Build is passing
2020-02-16 17:24:33 +01:00
54e366fc1b
Implements BattleRandom class with support for Effect Chance, and script hooks to modify this.
All checks were successful
continuous-integration/drone/push Build is passing
2020-02-16 15:08:22 +01:00
e45a36d78e
Move Script ownership to script holder, added OnRemove script hook.
All checks were successful
continuous-integration/drone/push Build is passing
2020-02-05 14:52:50 +01:00
db002c784f
Resolve memory issue with Event Hooks.
All checks were successful
continuous-integration/drone/push Build is passing
2019-12-15 12:27:56 +01:00
410487c86b
Initial support for Event Hooks.
Some checks failed
continuous-integration/drone/push Build is failing
2019-12-15 12:24:08 +01:00
6ba708ad12
Implements running from battle.
All checks were successful
continuous-integration/drone/push Build is passing
2019-12-15 11:52:10 +01:00
3baed93597
Implements marking opponents as seen.
All checks were successful
continuous-integration/drone/push Build is passing
2019-12-14 12:40:50 +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.
Some checks failed
continuous-integration/drone/push Build is failing
2019-12-07 13:45:44 +01:00
57f16bc420
Better handling of filling empty slots.
All checks were successful
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.
All checks were successful
continuous-integration/drone/push Build is passing
2019-12-05 12:56:41 +01:00
5d6ac316eb
Renamed Target class to CreatureIndex 2019-12-05 09:53:48 +01:00
a8730d983f
Used ClangFormat style guide I'm happy with.
All checks were successful
continuous-integration/drone/push Build is passing
2019-11-28 12:55:22 +01:00
d8332f9e40 Another rework for scripthooks, for better performance.
All checks were successful
continuous-integration/drone/push Build is passing
This new version caches pointers to the pointers to scripts, so that we can build the data once and then simply iterate over it whenever we want to run a hook.
2019-11-10 17:08:42 +01:00
3488784409 Furter rework on script hooks, simplifying required logic. 2019-11-10 14:32:05 +01:00