Commit Graph

125 Commits

Author SHA1 Message Date
de6d39376f Rework script handling to use smart pointers properly
Some checks failed
continuous-integration/drone/push Build is failing
2022-05-14 16:07:32 +02:00
0117cb9d64 Use smart ArbUt pointers for returning scripts.
All checks were successful
continuous-integration/drone/push Build is passing
2022-05-14 15:09:58 +02:00
cd50b2c2e8 Fixed nullptr dereference in ItemUse 2022-05-14 14:56:00 +02:00
bc1f78c8bd More sanitizer fixes
All checks were successful
continuous-integration/drone/push Build is passing
2022-03-25 19:21:02 +01:00
eccf2c9121 Add nullability to large parts of the codebase
All checks were successful
continuous-integration/drone/push Build is passing
2022-03-23 18:30:35 +01:00
3cc19de61f Update to latest Arbutils, use new integer defines 2022-03-23 13:56:45 +01:00
5fce541ffb Adds script hook to change choice speed when determining turn order
All checks were successful
continuous-integration/drone/push Build is passing
2022-02-19 16:11:25 +01:00
c40f063683 Initial work on item use handling
All checks were successful
continuous-integration/drone/push Build is passing
2022-02-13 13:40:33 +01:00
9270dcca8c Adds OnFaintingOpponent script hook.
All checks were successful
continuous-integration/drone/push Build is passing
2021-11-21 13:29:41 +01:00
f1d706b356 Update to new THROW macro.
All checks were successful
continuous-integration/drone/push Build is passing
2021-11-21 12:39:07 +01:00
54eddba913 Changed my mind about some parameter naming to be clearer.
All checks were successful
continuous-integration/drone/push Build is passing
2021-11-21 10:47:16 +01:00
44dbb5601f Adds hook to prevent critical hits.
All checks were successful
continuous-integration/drone/push Build is passing
2021-11-21 10:46:02 +01:00
f811fc0654 Adds OnIncomingHit script hook.
All checks were successful
continuous-integration/drone/push Build is passing
2021-11-19 18:01:58 +01:00
33d384c464 Support for failing an AttackTurnChoice.
All checks were successful
continuous-integration/drone/push Build is passing
This is handled before the actual ExecutingAttack is created, so allows for failing a move a lot earlier than before.
2021-11-12 12:54:34 +01:00
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
4274a44fa5 Fixes for GCC warnings
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-06-26 11:26:20 +02:00
762915b1f7 Add new Creature::IsUsable function, which replaces IsFainted functionality in several places.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-06-19 12:33:31 +02:00
8241a2d7b1 Check if target of attack is a valid target for that attack.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-05-24 10:57:17 +02:00
69dab061da Further cleanup of TargetResolver.
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-05-24 10:34:42 +02:00
b036efaf18 Clean up TargetResolver.
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-05-24 10:31:15 +02:00
b48353822c Change script when ChangeAttack script hook changes the used attack.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-05-14 10:42:05 +02:00
13153b3119 Support overriding attacks through script hooks.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-05-13 13:16:52 +02:00
a3b7002cd4 Adds script hook to modify number of hits
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-28 19:43:26 +02:00
374a4d10a8 Pass creature along with OnEndTurn.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-28 18:37:10 +02:00
21231761ef Adds OnEndTurn script hook.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-28 18:24:49 +02:00
acacd02ef9 Adds script hook for preventing the opponent from switching out.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-27 22:54:51 +01:00
d6858c2d44 Adds choice pointer to flee prevention script.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-27 15:10:56 +01:00
4dd3700352 Adds script hooks for preventing runaway.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-27 14:49:17 +01:00
46307fe71f Initial work on attack fail handling.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-03-27 12:30:12 +01:00
7aa31a838d Several fixes for attack effects not triggering.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2021-01-22 13:38:05 +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
3233daf9ab More defensive programming.
Some checks failed
continuous-integration/drone/push Build is failing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-30 13:14:33 +02:00
98dacbccde Use Arbutils exception Macros, instead of own ones.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-17 12:18:01 +02:00
93a763ab78 Rework exceptions.
Some checks failed
continuous-integration/drone/push Build is failing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-15 16:34:52 +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
5536a6b83d Implements Attack Use event.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-14 14:00:41 +02:00
64b08d4ff0 Cleaned up Events, added events on species and variant changes.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-14 13:52:22 +02:00
50236f4ece Adds Miss event.
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-13 11:17:04 +02:00
08ef84f6d6 Defensive programming.
All checks were successful
continuous-integration/drone/push Build is passing
2020-08-03 17:44:29 +02:00
bd7ecb6b33 More work on exceptions.
All checks were successful
continuous-integration/drone/push Build is passing
2020-07-31 14:17:38 +02:00
9c93ca6995 Fixed exception messages being wrong.
All checks were successful
continuous-integration/drone/push Build is passing
2020-07-31 11:23:23 +02:00
5a41208fdb Further clearer error handling.
All checks were successful
continuous-integration/drone/push Build is passing
2020-07-31 10:45:20 +02:00
b56226076e Fixed issue where multiple targets would cause the same target to be hit over and over again.
All checks were successful
continuous-integration/drone/push Build is passing
2020-07-30 20:15:58 +02:00
b3b9698831 More clearer exception messages. 2020-07-30 20:15:27 +02:00
e2e706693b Clearer errors for C Interface.
All checks were successful
continuous-integration/drone/push Build is passing
2020-07-28 17:22:43 +02:00
1d03adf0d1 Implements replacement attack when an attack can't be used anymore, adds clearer exception handling.
All checks were successful
continuous-integration/drone/push Build is passing
2020-07-26 18:00:58 +02:00