Commit Graph

78 Commits

Author SHA1 Message Date
Deukhoofd 5aa04a4b15 Add TurnStart, TurnEnd and ExperienceGain event triggers.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-07 11:02:37 +02:00
Deukhoofd d55a9e8494
Add more assertions to prevent segfaults.
continuous-integration/drone/push Build is passing Details
2020-08-02 09:52:11 +02:00
Deukhoofd 670abd7229
Fixed Segfault when overriding talent.
continuous-integration/drone/push Build is passing Details
2020-08-01 10:27:46 +02:00
Deukhoofd 0eaae43444
Reworked event hook to a system with pre-allocated memory, owned by the battle. This deals with cleaning up event data memory.
continuous-integration/drone/push Build is passing Details
2020-07-31 16:19:39 +02:00
Deukhoofd 36f1e5beeb
Further work on better exceptions.
continuous-integration/drone/push Build is passing Details
2020-07-26 17:41:11 +02:00
Deukhoofd be82abeece
Change nickname to string from string_view.
continuous-integration/drone/push Build is passing Details
2020-07-19 12:15:14 +02:00
Deukhoofd 772619db0f
Changed LoadScript to StringView.
continuous-integration/drone/push Build is failing Details
2020-06-26 18:23:40 +02:00
Deukhoofd 48639eeee5
Update to new Arbutils
continuous-integration/drone/push Build is passing Details
2020-06-26 17:08:23 +02:00
Deukhoofd 3358bf7378
Fixed comparing int32_t with uint32_t.
continuous-integration/drone/push Build is passing Details
2020-06-10 14:46:45 +02:00
Deukhoofd c8314d6018
Support for changing variants.
continuous-integration/drone/push Build is failing Details
2020-06-10 14:39:20 +02:00
Deukhoofd 9e7607338f
Moved Creature types to creature itself, instead of using the variant types.
continuous-integration/drone/push Build is passing Details
2020-06-05 16:38:27 +02:00
Deukhoofd 7262ae9e8b
Make ExecutingAttack use smart pointers. 2020-06-02 18:02:37 +02:00
Deukhoofd 62583ecb17
Make Creature use smart pointers.
continuous-integration/drone/push Build is passing Details
2020-06-02 16:20:47 +02:00
Deukhoofd 1ef50fd3a6
Use unique pointers in scriptset.
continuous-integration/drone/push Build is passing Details
2020-06-02 15:03:31 +02:00
Deukhoofd e4b9550efa
Make all individual scripts smart pointers.
continuous-integration/drone/push Build is failing Details
2020-06-02 13:43:44 +02:00
Deukhoofd f898698f49
Use smart pointers for BattleSide.
continuous-integration/drone/push Build is failing Details
2020-06-02 13:06:24 +02:00
Deukhoofd ff181204ae
Make LearnedAttack of Creature a smart pointer.
continuous-integration/drone/push Build is passing Details
2020-05-31 17:26:39 +02:00
Deukhoofd 25f65eb47b
Update to newer Arbutils version.
continuous-integration/drone/push Build is passing Details
2020-05-26 18:31:06 +02:00
Deukhoofd 16b67b0d54
Make most of the battle library use unique_ptr.
continuous-integration/drone/push Build is passing Details
2020-05-26 15:11:04 +02:00
Deukhoofd 8418c814b4
Make SpeciesVariants smart pointers.
continuous-integration/drone/push Build was killed Details
2020-05-26 14:35:18 +02:00
Deukhoofd 36208da2fb
Remove shared_ptr, instead use borrowed_ptr to more accurately depict ownership of the objects in the BaseLibraries.
continuous-integration/drone/push Build is passing Details
2020-05-26 14:13:30 +02:00
Deukhoofd d82792e27a
Make BaseLibraries use shared_ptr.
continuous-integration/drone/push Build is passing Details
2020-05-24 20:57:22 +02:00
Deukhoofd 2e860192c7
Support for blocking a creature from gaining experience, don't give experience when a creature is fainted.
continuous-integration/drone/push Build is passing Details
2020-05-20 15:18:27 +02:00
Deukhoofd 864a9d933d
Inlined get stats from Creature. These are frequently called one line methods.
continuous-integration/drone/push Build is passing Details
2020-04-25 16:15:27 +02:00
Deukhoofd 734d056449
Performance improvement for collecting scripts, by reserving size in ScriptSource.
continuous-integration/drone/push Build is passing Details
2020-04-25 11:33:25 +02:00
Deukhoofd dd668f2b1c
Cleanup of ScriptAggregator class.
continuous-integration/drone/push Build is passing Details
2020-04-23 23:23:58 +02:00
Deukhoofd 97fa37ea7d
Implements clamped statistics for stat boost.
continuous-integration/drone/push Build is passing Details
2020-04-22 21:48:00 +02:00
Deukhoofd 75baf19ebd
Cleanup 2020-04-22 21:20:07 +02:00
Deukhoofd 83f427368e
Pass LearnedAttack list to creature by reference.
continuous-integration/drone/push Build is passing Details
2020-04-21 14:44:57 +02:00
Deukhoofd 2e5d463e45
Throw clean exception when no volatile script is found when adding one.
continuous-integration/drone/push Build is passing Details
2020-04-11 00:22:08 +02:00
Deukhoofd 3dd5aeffd8
C interface for Battle Side.
continuous-integration/drone/push Build is passing Details
2020-04-04 17:03:06 +02:00
Deukhoofd 1e0d00d3b7
Revert "Use smart pointers for basic libraries."
continuous-integration/drone/push Build is passing Details
This reverts commit 214ff819
2020-04-04 13:37:06 +02:00
Deukhoofd 214ff81992
Use smart pointers for basic libraries.
continuous-integration/drone/push Build is passing Details
2020-03-26 22:46:14 +01:00
Deukhoofd 7ce3e6940d
Rework for C Interfaces to handle exceptions a bit better.
continuous-integration/drone/push Build is passing Details
2020-03-25 19:09:17 +01:00
Deukhoofd 27288563cd
Replace most collections with Arbutils collections for more safety.
continuous-integration/drone/push Build is passing Details
2020-03-22 19:21:40 +01:00
Deukhoofd 899e432271
Added lots of security using asserts.
continuous-integration/drone/push Build is failing Details
2020-03-22 13:42:26 +01:00
Deukhoofd a7b87ab4f8
Merge Core library into Library, as with its utility functionality merged into Arbutils, it's becoming less and less useful.
continuous-integration/drone/push Build is failing Details
2020-03-22 10:11:53 +01:00
Deukhoofd 06336c64cd
Added canRevive parameter to Heal function, added Faint event. 2020-03-09 16:29:41 +01:00
Deukhoofd e990c13109
Added Creature C Interface, misc fixes and changes for Creature.
continuous-integration/drone/push Build is passing Details
2020-03-05 11:25:41 +01:00
Deukhoofd 0c1580ade6
Reworked retrieving talent, new method is cleaner and harder to misunderstand.
continuous-integration/drone/push Build was killed Details
2020-03-02 13:59:49 +01:00
Deukhoofd 5a05a2f4d3
Add ConstString to several other places where context isn't changed much during runtime.
continuous-integration/drone/push Build is passing Details
2020-02-28 19:23:24 +01:00
Deukhoofd 412e0a4d63
Implements ConstString in several core places in the library, improving performance.
continuous-integration/drone/push Build is passing Details
2020-02-27 18:23:23 +01:00
Deukhoofd 3802587313
Added HasVolatileScript function to Creature and Battle.
continuous-integration/drone/push Build is failing Details
2020-02-23 16:17:57 +01:00
Deukhoofd 5f891cd4ed
Added Remove Volatile functions for battle and creatures.
continuous-integration/drone/push Build is passing Details
2020-02-23 11:11:47 +01:00
Deukhoofd 645ba95bbc
Performance improvements for battle and creature AddVolatileScript methods when passing a string as parameter.
continuous-integration/drone/push Build is passing Details
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
Deukhoofd 142889ad8a
Add functions to add volatile scripts to Creature.cpp.
continuous-integration/drone/push Build is passing Details
2020-02-22 15:53:51 +01:00
Deukhoofd d4fd7282f5
Move ScriptCategory enum outside of class scope of ScriptResolver.
continuous-integration/drone/push Build is passing Details
2020-02-20 13:05:15 +01:00
Deukhoofd f22c23d593
Make ScriptMacro a header instead of source file.
continuous-integration/drone/push Build is passing Details
2020-02-19 15:32:43 +01:00
Deukhoofd ce31309b2a
Functions to set Creature Held Item, and helper function to check whether Creature is holding a specific held item.
continuous-integration/drone/push Build is passing Details
2020-02-17 17:16:28 +01:00
Deukhoofd da90c3d59e
Reset active scripts on Creature when battle is set.
continuous-integration/drone/push Build is passing Details
2020-02-17 10:05:32 +01:00