Commit Graph

732 Commits

Author SHA1 Message Date
Deukhoofd 152ac7e407
Don't throw an exception when teaching an attack when we don't have the max amount of attacks yet.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-08-29 17:16:36 +02:00
Deukhoofd b84db6aa2d
Actually use the given libtype when building library
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-08-29 16:03:19 +02:00
Deukhoofd 512a39e158
Deal with Creatures being deleted before a battle they're part of.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-08-28 19:05:52 +02:00
Deukhoofd d89e0b0d77
Adds function on battleside to get a creature at an index.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-08-23 21:38:47 +02:00
Deukhoofd 9a72c1051e
fixes typo
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-07-09 15:53:24 +02:00
Deukhoofd 08120d5433
Adds status handling functions
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-07-09 15:33:30 +02:00
Deukhoofd 9303ec53e0
Adds C Interface for AllowedExperienceGain
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-06-26 11:48:13 +02:00
Deukhoofd 4274a44fa5
Fixes for GCC warnings
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-06-26 11:26:20 +02:00
Deukhoofd 762915b1f7
Add new Creature::IsUsable function, which replaces IsFainted functionality in several places.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-06-19 12:33:31 +02:00
Deukhoofd 8241a2d7b1
Check if target of attack is a valid target for that attack.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-05-24 10:57:17 +02:00
Deukhoofd 69dab061da
Further cleanup of TargetResolver.
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-05-24 10:34:42 +02:00
Deukhoofd b036efaf18
Clean up TargetResolver.
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-05-24 10:31:15 +02:00
Deukhoofd b48353822c
Change script when ChangeAttack script hook changes the used attack.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-05-14 10:42:05 +02:00
Deukhoofd 13153b3119
Support overriding attacks through script hooks.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-05-13 13:16:52 +02:00
Deukhoofd 188e88ab80
Store CreatureIndex on Creature, includes helper function to get a creatures party from a battle.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-05-08 11:53:32 +02:00
Deukhoofd 305eb5efb2
Cleanup for Creature class battle data.
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-05-08 11:26:35 +02:00
Deukhoofd be10b3515c
Reworks script aggregator. Cleans up API and code, and now handles scripts being removed from a set while we're iterating.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-04-18 12:50:48 +02:00
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 8baa647940
Sign build script.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-04-12 19:26:20 +02:00
Deukhoofd 6be4496560
Removes conan deploy step.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-04-12 19:24:08 +02:00
Deukhoofd ef50b4c7ab
Pass on options to Arbutils
continuous-integration/drone/push Build is failing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-04-12 19:05:30 +02:00
Deukhoofd b5d8b89c38
Friendship with conan is over, ExternalProject is my best friend now.
continuous-integration/drone/push Build is failing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-04-12 18:50:50 +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 cd8a29e8fd
Adds unit test for randomness.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-04-11 16:03:08 +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 6ef8edc2df
Update CreatureLib to changed stacktraces in Arbutils.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-26 14:09:22 +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 715da74320
Make Effect field in Item OptionalUniquePtr.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-07 12:39:15 +01:00
Deukhoofd 26c36f8ece
Adds effect field to Items.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-07 11:56:07 +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