Commit Graph

380 Commits

Author SHA1 Message Date
Deukhoofd db2eb0c3fa
Make DataLibrary destructor virtual.
continuous-integration/drone/push Build is passing Details
2019-12-30 16:03:46 +01:00
Deukhoofd 243b3a768c
Remove unused fields in CreateCreature class
continuous-integration/drone/push Build is passing Details
2019-12-27 12:36:32 +01:00
Deukhoofd ae4d8f5e12
Removes some variables that are better handled in implementations.
continuous-integration/drone/push Build is failing Details
2019-12-27 12:19:38 +01:00
Deukhoofd 9e0d8d76fb
Change GenericTemplates.cpp to GenericTemplates.hpp, as to include it in header files.
continuous-integration/drone/push Build is passing Details
2019-12-26 12:27:54 +01:00
Deukhoofd 8e53ffb53d
Implements functions for getting display species and variant.
continuous-integration/drone/push Build is passing Details
2019-12-21 14:32:45 +01:00
Deukhoofd db002c784f
Resolve memory issue with Event Hooks.
continuous-integration/drone/push Build is passing Details
2019-12-15 12:27:56 +01:00
Deukhoofd 410487c86b
Initial support for Event Hooks.
continuous-integration/drone/push Build is failing Details
2019-12-15 12:24:08 +01:00
Deukhoofd 6ba708ad12
Implements running from battle.
continuous-integration/drone/push Build is passing Details
2019-12-15 11:52:10 +01:00
Deukhoofd 0fad615050
Make LookupGrowthRate use unsigned integers instead of signed ones, to resolve Windows error.
continuous-integration/drone/push Build is passing Details
2019-12-14 14:09:07 +01:00
Deukhoofd f5a71ca807
Fixed memory leak in growth rate library.
continuous-integration/drone/push Build is failing Details
2019-12-14 13:42:34 +01:00
Deukhoofd 649de39571
Implements experience gain on opponent faint.
continuous-integration/drone/push Build is failing Details
2019-12-14 13:28:23 +01:00
Deukhoofd 3baed93597
Implements marking opponents as seen.
continuous-integration/drone/push Build is passing Details
2019-12-14 12:40:50 +01:00
Deukhoofd c25d7b865e
Implements creature switching as turn choice.
continuous-integration/drone/push Build is passing Details
2019-12-14 12:15:30 +01:00
Deukhoofd 2ee181bca7
Fixed _onBattleField field of Creature leading to cascading errors on release configuration.
continuous-integration/drone/push Build is passing Details
2019-12-12 11:14:50 +01:00
Deukhoofd dc9296194e
Fixed battle ending after any faint.
continuous-integration/drone/push Build is failing Details
2019-12-07 22:52:43 +01:00
Deukhoofd f5aa168f1b Also set warnings to errors for Windows build, fix one of those warnings.
continuous-integration/drone/push Build is passing Details
2019-12-07 22:15:50 +01:00
Deukhoofd 7c642f7df5 Fixes for damage calculations always using a base power of 0. 2019-12-07 22:09:06 +01:00
Deukhoofd 262279bd2c Support for ending battles when only one side has creatures that are available for battle. 2019-12-07 21:56:29 +01:00
Deukhoofd 0483e635ea Reworks test suite, tweaks to Cmake config for Windows.
continuous-integration/drone/push Build is failing Details
2019-12-07 13:45:44 +01:00
Deukhoofd 8897f2282f Put the check for slots filled behind the check whether all choices are set.
This because this check can be more expensive, and should run as little times
as possible. In this case it should only run when all choices are set,
which should be in most cases once a turn.
2019-12-07 12:49:18 +01:00
Deukhoofd 57f16bc420
Better handling of filling empty slots.
continuous-integration/drone/push Build is passing Details
2019-12-07 12:13:12 +01:00
Deukhoofd 6f32d1245b
Implemented and fixed all code required to run at least a single turn.
continuous-integration/drone/push Build is passing Details
2019-12-05 12:56:41 +01:00
Deukhoofd 5d6ac316eb
Renamed Target class to CreatureIndex 2019-12-05 09:53:48 +01:00
Deukhoofd a8730d983f
Used ClangFormat style guide I'm happy with.
continuous-integration/drone/push Build is passing Details
2019-11-28 12:55:22 +01:00
Deukhoofd 3b685ae782
Added layout for CreatureParty 2019-11-28 12:16:03 +01:00
Deukhoofd aa356d74d7
Set data for executing attacks.
continuous-integration/drone/push Build is passing Details
2019-11-24 11:06:51 +01:00
Deukhoofd 583bde3768
Adds more script hooks 2019-11-24 10:34:42 +01:00
Deukhoofd f6415fba27
Added more script hooks
continuous-integration/drone/push Build is passing Details
2019-11-23 11:53:00 +01:00
Deukhoofd 49bd4813f6 Initialize Creature talent script when battle library is set, allow talent overriding
continuous-integration/drone/push Build is passing Details
2019-11-18 18:41:55 +01:00
Deukhoofd 4d796204f8 Implements functionality for loading scripts. 2019-11-18 08:29:17 +01:00
Deukhoofd 86f8a1e37b
Adds talent script to Creature class
continuous-integration/drone/push Build is passing Details
2019-11-17 11:25:52 +01:00
Deukhoofd fd16152121 Make scriptset return scripts in order of insertion, unit tests for ScriptSource 2019-11-12 18:38:09 +01:00
Deukhoofd cdd1ac992f
Fix build on Linux.
continuous-integration/drone/push Build is passing Details
2019-11-11 20:04:59 +01:00
Deukhoofd 859cd02478 Tests for script aggregator.
continuous-integration/drone/push Build is failing Details
2019-11-10 19:55:01 +01:00
Deukhoofd d8332f9e40 Another rework for scripthooks, for better performance.
continuous-integration/drone/push Build is passing Details
This new version caches pointers to the pointers to scripts, so that we can build the data once and then simply iterate over it whenever we want to run a hook.
2019-11-10 17:08:42 +01:00
Deukhoofd e1a8d80863 Add default implementation for OnBeforeTurn script hook.
continuous-integration/drone/push Build is passing Details
2019-11-10 14:45:07 +01:00
Deukhoofd df3905fa49 Give Creature a virtual destructor.
continuous-integration/drone/push Build is failing Details
2019-11-10 14:37:06 +01:00
Deukhoofd 2a98f051c9 Give ExecutingAttack a virtual destructor.
continuous-integration/drone/push Build is failing Details
2019-11-10 14:33:26 +01:00
Deukhoofd 3488784409 Furter rework on script hooks, simplifying required logic. 2019-11-10 14:32:05 +01:00
Deukhoofd f72fd5f905 Make ExecutingAttack be a pointer, as we probably want to keep it around after it has finished executing.
continuous-integration/drone/push Build is failing Details
2019-11-09 13:18:45 +01:00
Deukhoofd 96d1b6251f Implements OnSecondaryEffect script hook 2019-11-09 13:09:39 +01:00
Deukhoofd aca3359c98 Fixed compile error in OnAfterHits script hook. 2019-11-09 12:57:12 +01:00
Deukhoofd 658672a246 More handling of script hooks. 2019-11-09 12:55:48 +01:00
Deukhoofd ee14efe22e Implemented better script handling. 2019-11-09 12:15:45 +01:00
Deukhoofd c3bfbb569e Initial setup for script hooks (likely to be revamped)
continuous-integration/drone/push Build is passing Details
2019-11-08 18:45:43 +01:00
Deukhoofd 19e1308f93 Improve performance for setting choices. 2019-11-06 18:08:21 +01:00
Deukhoofd beac87f981 Reset choices on side when executing turn. 2019-11-06 18:06:48 +01:00
Deukhoofd 5fc2bf564a Support turn queue return prematurely when a creature is recalled, and the ability to resume it later. 2019-11-06 18:04:00 +01:00
Deukhoofd f184572837 Add virtual destructor to the CriticalLibrary
continuous-integration/drone/push Build is passing Details
2019-11-05 18:26:27 +01:00
Deukhoofd 2ecc5cfccd Implements critical calculation, fixes some library pointers being unset, causing segfaults.
continuous-integration/drone/push Build is failing Details
2019-11-05 17:42:45 +01:00
Deukhoofd b290f16a15 Give DamageLibrary an implementation for its destructor.
continuous-integration/drone/push Build is failing Details
2019-11-05 17:27:54 +01:00
Deukhoofd efa994c88d Fixes dependency issue, lack of virtual destructor for DamageLibrary
continuous-integration/drone/push Build is failing Details
2019-11-05 16:20:47 +01:00
Deukhoofd 549ba4c1c2 Fixed memory leak when deleting library.
continuous-integration/drone/push Build is failing Details
2019-11-05 14:32:30 +01:00
Deukhoofd 1848d7b617 Implementation of damage calculation.
continuous-integration/drone/push Build was killed Details
2019-11-05 14:31:54 +01:00
Deukhoofd db2a577a85 Further implementation of types. 2019-11-05 08:06:12 +01:00
Deukhoofd 168e14d394 Implement basic type library.
continuous-integration/drone/push Build is passing Details
2019-11-04 17:58:26 +01:00
Deukhoofd b4e08049ce
Handle executing moves.
continuous-integration/drone/push Build is passing Details
2019-11-03 13:47:50 +01:00
Deukhoofd fc675efdf5
More work on basic turn layout.
continuous-integration/drone/push Build is passing Details
2019-11-02 13:57:43 +01:00
Deukhoofd 163752a8ea
Fix memory leak in attack library 2019-10-31 13:30:22 +01:00
Deukhoofd 65f814b006
Implemented better exceptions
continuous-integration/drone/push Build is failing Details
2019-10-31 13:26:56 +01:00
Deukhoofd ffba5fb24c
Basic layout for turn execution 2019-10-31 13:13:36 +01:00
Deukhoofd 42c1623985
Fully handle turn ordering
continuous-integration/drone/push Build is passing Details
2019-10-31 12:31:31 +01:00
Deukhoofd 972af35ecf
Initial support for ordering choices and getting them ready for execution.
continuous-integration/drone/push Build is passing Details
2019-10-31 12:02:23 +01:00
Deukhoofd af611070c5
Fixed syntax error
continuous-integration/drone/push Build is passing Details
2019-10-29 11:30:52 +01:00
Deukhoofd 99315174a8
Initial support for setting battle choices.
continuous-integration/drone/push Build is failing Details
2019-10-29 11:19:25 +01:00
Deukhoofd 3938500595 Pass settings by reference instead of value.
continuous-integration/drone/push Build is passing Details
2019-10-25 20:14:24 +02:00
Deukhoofd 7d6de3557c Support learning moves with CreateCreature class
continuous-integration/drone/push Build is passing Details
2019-10-25 20:08:25 +02:00
Deukhoofd 9588236183
Remove creature classes from Library lib, merged with Battling lib.
continuous-integration/drone/push Build is passing Details
2019-10-24 13:37:55 +02:00
Deukhoofd bb8978314f
Support for learnable moves
continuous-integration/drone/push Build is passing Details
2019-10-24 11:04:19 +02:00
Deukhoofd cfb7663d78
Fix build by adding get functions for otherwise inaccessible fields.
continuous-integration/drone/push Build is passing Details
2019-10-23 19:21:21 +02:00
Deukhoofd cdaa056810 Initial support for learned moves
continuous-integration/drone/push Build is failing Details
2019-10-23 18:57:50 +02:00
Deukhoofd 1e4f422117 Add changing level API to BattleCreature 2019-10-23 18:51:36 +02:00
Deukhoofd cd21e6c685 Implement stat boosting 2019-10-23 18:41:45 +02:00
Deukhoofd 3e9d030dc4 Automatically recalculate boosted stat after recalculating flat stat 2019-10-23 18:28:58 +02:00
Deukhoofd 65cf190367 Split off battle creature stats into boosted and non-boosted 2019-10-23 18:27:31 +02:00
Deukhoofd d580d81163
Initial work on battling
continuous-integration/drone/push Build is failing Details
2019-10-17 14:33:25 +02:00
Deukhoofd 212a7d1ad6
Added functionality to get full stats from creature 2019-10-10 15:08:34 +02:00
Deukhoofd aaa4209cfc
Fixed trailing backslash-newline in generic templates
continuous-integration/drone/push Build is failing Details
2019-10-06 14:21:34 +02:00
Deukhoofd 2966ba268f
Fix creature memory leaks
continuous-integration/drone/push Build is failing Details
2019-10-06 14:06:17 +02:00
Deukhoofd 265923231f
Initial commit 2019-10-06 13:50:52 +02:00