Commit Graph

175 Commits

Author SHA1 Message Date
Deukhoofd 2c4c0f2277
Rework LearnableAttacks to use ArbUt::BorrowedPtr
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-11 19:09:58 +02:00
Deukhoofd 7ac63839b8
Fixes and improvements for LearnableAttacks,
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-11 18:53:01 +02:00
Deukhoofd f3d22f7ba9
Support getting distinct level attacks from LearnableAttacks.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-11 17:25:04 +02:00
Deukhoofd b2931c0964
C Interface hook for getting number of creatures per side.
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-11 16:56:39 +02:00
Deukhoofd 2ca4f53b0c
Support for adding flags to CreatureSpecies and CreatureVariant.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-10 17:46:09 +02:00
Deukhoofd 1807e720dd
Support for packing party.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-10 17:37:30 +02:00
Deukhoofd 3a75a40671
Support getting an item from BaseLibrary by index, for iterating purposes.
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-10 17:01:21 +02:00
Deukhoofd 48660f3a4c
Adds getter for UniqueIdentifier
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-09 11:48:40 +02:00
Deukhoofd fb56d0920d
Add C Interface for Variants count.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-08 19:08:24 +02:00
Deukhoofd 15100f3cd5
Add functionality to retrieve a variants list.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-08 18:56:00 +02:00
Deukhoofd 4ffc8ba01f
Support for getting type names from TypeLibrary.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-08 12:54:28 +02:00
Deukhoofd 4ef24dd122
Helper method to restore all attack uses on a Creature.
continuous-integration/drone/push Build is passing Details
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-08 11:32:25 +02:00
Deukhoofd 665227a033
C Interface for new event hooks.
Signed-off-by: Deukhoofd <Deukhoofd@gmail.com>
2020-08-07 11:51:43 +02:00
Deukhoofd 9d56aaa52a
Changed C Interface ChangeAttack to use C functionality.
continuous-integration/drone/push Build is passing Details
2020-08-04 17:59:50 +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 df0eca1716
C Interface explicit constructors for different events.
continuous-integration/drone/push Build is passing Details
2020-07-31 15:01:25 +02:00
Deukhoofd b1ecb56f10
Add C Interface for Battle::GetCurrentTurn.
continuous-integration/drone/push Build is passing Details
2020-07-31 14:21:46 +02:00
Deukhoofd a4c4cad59b
Merge the two different libs together into the same library.
continuous-integration/drone/push Build is passing Details
2020-07-31 10:51:03 +02:00
Deukhoofd 29013bb6ac
Fix issue with having two different libraries sharing the same CreatureLib Exception C Interface.
continuous-integration/drone/push Build is passing Details
2020-07-30 20:06:23 +02:00
Deukhoofd 99a562812d
Fixed issue where initial exception in the C Interface kept being blank.
continuous-integration/drone/push Build is failing Details
2020-07-30 18:41:38 +02:00
Deukhoofd 13c4609cdd
Tweaks for exception handling.
continuous-integration/drone/push Build is passing Details
2020-07-28 19:37:03 +02:00
Deukhoofd 29eb7c603a
More reworks of exceptions. 2020-07-26 17:29:06 +02:00
Deukhoofd 9ec41fdd2d
Rework how the C Interface shows exceptions
continuous-integration/drone/push Build is passing Details
2020-07-26 17:22:36 +02:00
Deukhoofd 418d811d18
Rework of C Interface exception handler.
continuous-integration/drone/push Build is passing Details
2020-07-26 16:30:00 +02:00
Deukhoofd 8ba564d4b7
C Interface for getting party from BattleParty.
continuous-integration/drone/push Build is passing Details
2020-07-26 15:46:11 +02:00
Deukhoofd 7ed118e5de
Fixed issue in BattleParty C Interface.
continuous-integration/drone/push Build is passing Details
2020-07-26 15:29:16 +02:00
Deukhoofd a6ed6d63cc
Add individual C Interface destructors for turn choices.
continuous-integration/drone/push Build is passing Details
2020-07-26 11:37:05 +02:00
Deukhoofd 141f0338bf
Fixed naming in AttackTurnChoice C Interface.
continuous-integration/drone/push Build is passing Details
2020-07-26 11:24:31 +02:00
Deukhoofd 436e68293e
Support for passing a random seed.
continuous-integration/drone/push Build is passing Details
2020-07-26 10:16:25 +02:00
Deukhoofd e6f84f182a
Add Creature getter for the library.
continuous-integration/drone/push Build is passing Details
2020-07-25 15:02:11 +02:00
Deukhoofd 8f921ce89b
Add support for swapping in and out of a party.
continuous-integration/drone/push Build is passing Details
2020-07-25 14:35:13 +02:00
Deukhoofd 3f447a3e16
Add C Interface for Creature::GetActiveTalent.
continuous-integration/drone/push Build is passing Details
2020-07-24 10:16:57 +02:00
Deukhoofd a4faa1351b
Mark exported functions as maybe unused. 2020-07-24 10:14:10 +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 75810b9d0c
Implements C Interface for SpeciesVariant.GetRandomTalent
continuous-integration/drone/push Build is passing Details
2020-07-18 12:20:47 +02:00
Deukhoofd 4fe0c70635
Implements C Interface for Species.GetRandomGender
continuous-integration/drone/push Build is passing Details
2020-07-17 14:43:04 +02:00
Deukhoofd 367ed7fcbb
Cleanup CMake file. 2020-07-17 13:12:21 +02:00
Deukhoofd 2225d32432
Cleanup of C Interface, remove use of operator->, as it will throw when null.
continuous-integration/drone/push Build is passing Details
2020-07-07 15:43:31 +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 f55ae5a809
Syntax fixes.
continuous-integration/drone/push Build is passing Details
2020-06-20 18:53:10 +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 657d646fda
Make the last couple classes use smart pointers.
continuous-integration/drone/push Build is passing Details
2020-06-02 18:30:37 +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 e8650e2a03
Fixed build error.
continuous-integration/drone/push Build is passing Details
2020-06-02 14:02:32 +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 18203138d1
Use algorithm for IsResponsibleForIndex check.
continuous-integration/drone/push Build is failing Details
2020-06-02 12:14:49 +02:00
Deukhoofd 69f6a89c0d
Make CreatureParty use smart pointers.
continuous-integration/drone/push Build is passing Details
2020-05-31 19:04:40 +02:00
Deukhoofd 01f6e59cb6
Make battle class fields all smart pointers.
continuous-integration/drone/push Build is passing Details
2020-05-31 19:01:45 +02:00
Deukhoofd 29cb4eac37
Make ChoiceQueue use smart pointers.
continuous-integration/drone/push Build is passing Details
2020-05-31 18:00:39 +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 d746b3ecce
Make staticlib in battle library an unique ptr.
continuous-integration/drone/push Build is passing Details
2020-05-26 16:38:55 +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 b17c0648ff
Make DataLibrary use unique_ptr.
continuous-integration/drone/push Build is passing Details
2020-05-24 19:01:47 +02:00
Deukhoofd c056ddc6b3
Adds getter for parties to battle.
continuous-integration/drone/push Build is passing Details
2020-05-24 12:57:12 +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 6c40f4291d
Fixed C Interface for DamageLibrary returning floats instead of expected bytes.
continuous-integration/drone/push Build is passing Details
2020-05-20 15:02:53 +02:00
Deukhoofd 5cd5059e42
Adds C Interface for destructor of different growthrates.
continuous-integration/drone/push Build is passing Details
2020-05-06 11:36:56 +02:00
Deukhoofd 3a9e55aae5
C interface to add species variant.
continuous-integration/drone/push Build is passing Details
2020-05-04 20:40:45 +02:00
Deukhoofd 293386ac0d
Implements EffectParameter C Interface
continuous-integration/drone/push Build is passing Details
2020-05-02 21:46:16 +02:00
Deukhoofd 40e80d8100
Fixes GetTalent C Interface for SpeciesVariant being broken 2020-05-02 21:46:06 +02:00
Deukhoofd 91ba93462b
Fixed issues with C Interface
continuous-integration/drone/push Build is passing Details
2020-05-02 20:03:18 +02:00
Deukhoofd 2821eec263
Fixed SpeciesVariant C Interface requiring byte for base speed instead of short.
continuous-integration/drone/push Build is passing Details
2020-05-02 17:16:16 +02:00
Deukhoofd 09ec643cf9
Fixes for Creature C Interface construct method having C++ classes.
continuous-integration/drone/push Build is failing Details
2020-05-02 14:14:29 +02:00
Deukhoofd 7fd3687564
Cleanup of ExecutingAttack, removing TargetData, and reducing the number of allocations needed.
continuous-integration/drone/push Build is failing Details
2020-04-25 20:09:20 +02:00
Deukhoofd 8eb22ad68d
Pass HitData as reference to damage calculation library, to prevent multiple lookup.
continuous-integration/drone/push Build is passing Details
2020-04-25 16:51:10 +02:00
Deukhoofd 0e874346bb
Pass ExecutingAttack values by reference instead of pointer.
continuous-integration/drone/push Build is passing Details
2020-04-25 16:04:17 +02:00
Deukhoofd 5146a70d8b
Fixed naming error.
continuous-integration/drone/push Build is passing Details
2020-04-19 19:15:50 +02:00
Deukhoofd cb942c4e89
Rename C interface for getting last exception
continuous-integration/drone/push Build is passing Details
2020-04-14 15:43:30 +02:00
Deukhoofd 04bf061115
Removed OnStatusMove hook, now just uses OnSecondaryEffect hook.
continuous-integration/drone/push Build is passing Details
2020-04-10 23:06:19 +02:00
Deukhoofd 5ac2b7b3c9
Turn SecondaryEffect class into pointer type, owned by AttackData.
continuous-integration/drone/push Build is passing Details
2020-04-10 22:17:48 +02:00
Deukhoofd e934e13950
Replace void* for script parameter with EffectParameter class.
continuous-integration/drone/push Build is passing Details
2020-04-10 17:54:45 +02:00
Deukhoofd e89d2a9e0c
Adds secondary effect parameter system.
continuous-integration/drone/push Build is failing Details
2020-04-10 16:35:24 +02:00
Deukhoofd 70fc8d2d5f
Add C interface for ExecutingAttack.
continuous-integration/drone/push Build is passing Details
2020-04-06 17:05:32 +02:00
Deukhoofd 9ff5df1b70
Add C interface for secondary effect data.
continuous-integration/drone/push Build is passing Details
2020-04-06 12:53:49 +02:00
Deukhoofd 340520e0e3
Reworks attack scripts to handle effect chance and effect name through data files.
continuous-integration/drone/push Build is passing Details
2020-04-06 12:02:29 +02:00
Deukhoofd e2675d06fb
C interface for Battle Random.
continuous-integration/drone/push Build is passing Details
2020-04-04 18:24:59 +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 3429f1647c
Made C Interface for BattleLibrary constructor try.
continuous-integration/drone/push Build is passing Details
2020-04-04 13:42:06 +02:00
Deukhoofd 937071df59
Revert commited out battlelibrary changes.
continuous-integration/drone/push Build is passing Details
2020-04-04 13:40:14 +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 91bea44113
Added LearnedAttack C Interface.
continuous-integration/drone/push Build is passing Details
2020-04-04 13:36:13 +02:00
Deukhoofd aee5bcb088
Mark LearnableAttacks on SpeciesVariant as unique.
continuous-integration/drone/push Build is passing Details
2020-03-27 20:46:44 +01: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 b5894ea8f2
Added C Interface for Script.
continuous-integration/drone/push Build is passing Details
2020-03-25 19:47:37 +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 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 5672f2d2a7
Support for attack when other attacks can't be used in MiscLibrary.
continuous-integration/drone/push Build is failing Details
2020-03-12 11:15:00 +01:00
Deukhoofd 7435a2a678
Turnchoices C Interface.
continuous-integration/drone/push Build is passing Details
2020-03-11 12:22:13 +01:00
Deukhoofd 5a976e4031
Added display text event hook. 2020-03-09 17:43:36 +01:00
Deukhoofd 314b8997be
Added Faint event C Interface. 2020-03-09 16:30:36 +01:00
Deukhoofd 06336c64cd
Added canRevive parameter to Heal function, added Faint event. 2020-03-09 16:29:41 +01:00