Commit Graph

123 Commits

Author SHA1 Message Date
Deukhoofd ea8afcd0b3
C interface for BattleLibrary.
continuous-integration/drone/push Build is passing Details
2020-03-04 17:04:44 +01:00
Deukhoofd 81ae0e8454
Make Attack name a ConstString.
continuous-integration/drone/push Build is passing Details
2020-03-02 15:29:42 +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 5e6572aca5
Move several classes from Core to Arbutils.
continuous-integration/drone/push Build is failing Details
2020-02-26 13:51:16 +01:00
Deukhoofd 428b318baf
Mark ScriptSet.Has as const.
continuous-integration/drone/push Build is failing Details
2020-02-23 16:20:11 +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 a606fbbc7b
Make basic Script class abstract, require implementation of GetName function.
continuous-integration/drone/push Build is passing Details
2020-02-23 12:58:13 +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 32584ac406
Fixed Windows build.
continuous-integration/drone/push Build is passing Details
2020-02-22 15:11:18 +01:00
Deukhoofd 442d6cd5b1
Added Helper function to ChoiceQueue to move a specific creature's choice up next. 2020-02-22 14:16:38 +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 b886f0aebf
Add Damage library script hooks.
continuous-integration/drone/push Build is passing Details
2020-02-19 10:12:36 +01:00
Deukhoofd 5e29f50ea1
Mark SetHeldItem with item object as const ptr.
continuous-integration/drone/push Build is passing Details
2020-02-17 17:24:55 +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 75bce0e329
Add virtual destructor to CreatureParty.
continuous-integration/drone/push Build is passing Details
2020-02-17 15:52:59 +01:00
Deukhoofd 445f7eb3d5
Add virtual destructor to Battle. 2020-02-17 15:52:02 +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
Deukhoofd 17552c33ca
Only get active scripts from side if side exists.
continuous-integration/drone/push Build is passing Details
2020-02-17 09:57:15 +01:00
Deukhoofd 65f054bfab
Added functions for battle to manipulate volatile scripts.
continuous-integration/drone/push Build is passing Details
2020-02-16 17:44:41 +01:00
Deukhoofd 428483e73d
Make GetRandom in Battle class a pointer.
continuous-integration/drone/push Build is passing Details
2020-02-16 17:24:33 +01:00
Deukhoofd f3b5f9e8f9
Move reference to cpp file outside of header.
continuous-integration/drone/push Build is passing Details
2020-02-16 16:31:06 +01:00
Deukhoofd 54e366fc1b
Implements BattleRandom class with support for Effect Chance, and script hooks to modify this.
continuous-integration/drone/push Build is passing Details
2020-02-16 15:08:22 +01:00
Deukhoofd 579ee82f02
Pass ExecutingAttack for target as pointer instead of reference.
continuous-integration/drone/push Build is passing Details
2020-02-16 12:02:17 +01:00
Deukhoofd d6ea16b467
Implement basic library class that other libraries inherit from for performance.
continuous-integration/drone/push Build is passing Details
2020-02-15 18:51:21 +01:00
Deukhoofd 8d4860f553
Support for Heal function for Creatures.
continuous-integration/drone/push Build is passing Details
2020-02-13 14:48:09 +01:00
Deukhoofd 0ef909cf55
Use ENUM macro for ScriptCategory enum. 2020-02-13 12:53:48 +01:00
Deukhoofd e45a36d78e
Move Script ownership to script holder, added OnRemove script hook.
continuous-integration/drone/push Build is passing Details
2020-02-05 14:52:50 +01:00
Deukhoofd cd7ddcf78e
Actually implement handling of StopBeforeAttack script hook
continuous-integration/drone/push Build is passing Details
2020-02-03 19:11:44 +01:00
Deukhoofd c6620021a7
Fix issues.
continuous-integration/drone/push Build is passing Details
2020-02-03 18:32:03 +01:00
Deukhoofd 59f7d3aa4f
Make Script functions pass out parameters by pointer instead of reference.
continuous-integration/drone/push Build is failing Details
2020-02-03 18:27:39 +01:00
Deukhoofd c4d0a73df6
Remove display script hook functions, replace them with easy to use interface on Creature class.
continuous-integration/drone/push Build is passing Details
2020-02-03 16:49:28 +01:00
Deukhoofd c3b573c7da
Initialize Battle pointers with nullptr in Create class.
continuous-integration/drone/push Build is passing Details
2020-02-02 14:39:57 +01:00
Deukhoofd fc5826edb1
Check whether a battle has been set when calling Damage function.
continuous-integration/drone/push Build is passing Details
2020-02-02 12:34:02 +01:00
Deukhoofd dba271681d
Change LibrarySettings to be a pointer instead of value, to allow for overriding in implementations.
continuous-integration/drone/push Build is passing Details
2020-02-01 13:30:51 +01:00
Deukhoofd 23c4e89c2d
Removed unused function from ExecutingAttack 2020-01-26 13:10:45 +01:00
Deukhoofd 1256d7d2e3
Add virtual modifiers to LearnedAttack.hpp
continuous-integration/drone/push Build is passing Details
2020-01-25 12:37:05 +01:00
Deukhoofd cc46cd46a7
Commit TurnHandler from earlier revert.
continuous-integration/drone/push Build is passing Details
2020-01-18 13:44:02 +01:00
Deukhoofd e3bbc369fc
Revert "Make Script functions use pointers for out variables, instead of references."
This reverts commit c3877e01
2020-01-18 13:38:47 +01:00
Deukhoofd b02577554f
Remove GetProperty macro, as it wasn't that intuitive, and caused issues later.
continuous-integration/drone/push Build is passing Details
2020-01-12 17:04:42 +01:00
Deukhoofd c3877e0151
Make Script functions use pointers for out variables, instead of references.
continuous-integration/drone/push Build is passing Details
2020-01-11 16:05:39 +01:00
Deukhoofd 836a201b2d
Add initialize function to script resolver, where it can access the battle library.
continuous-integration/drone/push Build is passing Details
2020-01-11 11:35:59 +01:00
Deukhoofd 144d17d859
Fixed changing stat boost by negative actually increasing it.
continuous-integration/drone/push Build is passing Details
2020-01-05 14:57:17 +01:00
Deukhoofd fbfcc53a02
Furter fixes for changing stats.
continuous-integration/drone/push Build is passing Details
2020-01-05 14:39:10 +01:00
Deukhoofd 568232c7a5
Split off initialization of Creature into new function that's not called in the constructor.
continuous-integration/drone/push Build is passing Details
This has to do with specific implementations of stat calculator requiring an inherited type of the Creature class, and by calling it in the constructor casting to this inherited type will fail.
2020-01-05 13:43:47 +01:00
Deukhoofd dd8d4d738d
Allow getting Static Library from BattleLibrary.
continuous-integration/drone/push Build is passing Details
2020-01-02 19:33:10 +01:00