Commit Graph

334 Commits

Author SHA1 Message Date
Deukhoofd 13df99a6cc
Try and catch more edge cases where setIndex would be invalid.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-04-17 16:31:03 +02:00
Deukhoofd 8f9f2b2b8d
Fixes issue with iterating over two script sets.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-04-17 16:23:29 +02:00
Deukhoofd 9f091308b0
Reset on initialization in ScriptAggregator, fixes segfault when calling Reset on an empty Aggregator.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-04-17 15:08:26 +02:00
Deukhoofd 33f796eff8
Minor fixes for ScriptAggregator
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-04-17 14:44:33 +02:00
Deukhoofd 96cbd594a0
Better handling of clearning scripts.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-04-14 19:29:42 +02:00
Deukhoofd b42bf21315
Fixes segfault in ScriptSet::Clear
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-04-14 19:20:43 +02:00
Deukhoofd 8a9a6af0af
Pass battle pointer along with clone for battleside.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-04-13 22:45:48 +02:00
Deukhoofd ba5e937dbd
Remove copying historyholder for now, as it causes issues.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-04-11 23:29:00 +02:00
Deukhoofd e2cc20d1c5
Fixes HistoryHolder CopyOnto not actually copying memory.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-04-11 23:10:36 +02:00
Deukhoofd 2b1a1792bf
Make Clone functions const.
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-04-11 16:01:18 +02:00
Deukhoofd 84a14cff2b
Support for cloning battles for AI purposes.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-04-11 15:20:50 +02:00
Deukhoofd a3b7002cd4
Adds script hook to modify number of hits
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-28 19:43:26 +02:00
Deukhoofd 374a4d10a8
Pass creature along with OnEndTurn.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-28 18:37:10 +02:00
Deukhoofd 21231761ef
Adds OnEndTurn script hook.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-28 18:24:49 +02:00
Deukhoofd 23bd0da646
Adds swap event when two creatures swap positions.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-28 11:58:26 +02:00
Deukhoofd acacd02ef9
Adds script hook for preventing the opponent from switching out.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-27 22:54:51 +01:00
Deukhoofd 1ddbfd2357
Fixes for ScriptSet throwing when adding a not yet found volatile script.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-27 20:20:49 +01:00
Deukhoofd bfe83ef271
When adding volatile script, return the script object.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-27 16:36:20 +01:00
Deukhoofd d6858c2d44
Adds choice pointer to flee prevention script.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-27 15:10:56 +01:00
Deukhoofd 4dd3700352
Adds script hooks for preventing runaway.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-27 14:49:17 +01:00
Deukhoofd 46307fe71f
Initial work on attack fail handling.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-27 12:30:12 +01:00
Deukhoofd 9b7c271a20
Support for swapping two creatures on a side.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-26 12:01:18 +01:00
Deukhoofd cd3d665687
Adds OnInitialize function on Item Use Script.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-07 19:49:06 +01:00
Deukhoofd 14ebf20f23
Adds getter for pointer to script resolver on battle library.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-07 19:04:15 +01:00
Deukhoofd 3a4171f565
Use Item pointer for Script resolving for item use script.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-07 11:24:45 +01:00
Deukhoofd d908efff9d
Adds support for scripts for item use handling.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-07 10:54:42 +01:00
Deukhoofd 5178d5dcc0
Renamed Script --> BattleScript, some cleanup on it.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-07 10:26:41 +01:00
Deukhoofd 7aa31a838d
Several fixes for attack effects not triggering.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-01-22 13:38:05 +01:00
Deukhoofd abccc23851
Trigger event when stat boost changes.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-01-16 21:16:47 +01:00
Deukhoofd 987f60ee85
Clear scripts from creature when a battle is cleared from it.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-01-15 16:31:47 +01:00
Deukhoofd 66b95a6e4d
Reset seen opponents on ClearBattle.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-01-15 15:46:48 +01:00
Deukhoofd 3742e07b03
Rework clearing battle from creatures.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-12-28 15:10:49 +01:00
Deukhoofd a284641b5a
Fixes invalid pointers to a battle dangling when a battle is removed.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-12-28 13:40:39 +01:00
Deukhoofd 69476b6f9d
Adds setter for nickname.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-12-22 16:11:23 +01:00
Deukhoofd 87bbae678a
Style Fixes
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-12-13 12:26:54 +01:00
Deukhoofd e642f374b9
Update to latest Arbutils.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-12-13 12:15:40 +01:00
Deukhoofd 2055837980
Make learned attacks on Creature be optional.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-12-12 15:10:18 +01:00
Deukhoofd 4367d1f5cf
Make HeldItem OptionalBorrowedPtr.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-12-12 13:40:30 +01:00
Deukhoofd 3bd39cc035
Update to latest Arbutils.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-12-12 12:59:56 +01:00
Deukhoofd 185ec40ba5
Use std::optional for BaseLibrary TryGet.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-12-12 12:42:28 +01:00
Deukhoofd 5c39694f19
Overhaul memory model to new Arbutils memory.
continuous-integration/drone/push Build is failing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-12-12 12:22:48 +01:00
Deukhoofd 1dc3aafd33
Use vector instead of set for types.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-10-23 16:51:15 +02:00
Deukhoofd de8b5de7b4
Mark several classes as final for devirtualization performance benefits.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-10-15 18:21:50 +02:00
Deukhoofd 53bfbd36c2
Use a precompiled header.
continuous-integration/drone/push Build is failing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-09-25 13:05:15 +02:00
Deukhoofd def38e98c6
Support for getting a creatures actual talent.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-09-05 14:51:06 +02:00
Deukhoofd 3233daf9ab
More defensive programming.
continuous-integration/drone/push Build is failing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-30 13:14:33 +02:00
Deukhoofd 32f75f4a47
Store time in turn execution on battle class.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-28 12:24:10 +02:00
Deukhoofd b096fb9533
Dont set nickname to species internal name.
continuous-integration/drone/push Build is failing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-25 19:12:35 +02:00
Deukhoofd 86ed173d30
Defensive programming for Party
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-24 20:37:22 +02:00
Deukhoofd 39e1295013
Compile time option to change bit size of level.
continuous-integration/drone/push Build is failing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-19 20:11:00 +02:00