Commit Graph

139 Commits

Author SHA1 Message Date
Vassyli 58147ed14b Updated bootstrap to call packages Bootstrap
The bootstrap procedure has been updated to search through all packages to get the ones with an lotgd-namespace extra field. These are then tested if they have or have not a bootstrap class implementing BootstrapInterface. If yes, they get added to a stack used to modify the bootstrap procedure. For know, bootstrap supports additional entity directories.
2016-07-29 09:35:46 +02:00
Austen McDonald 86b5f075fa Fix configuration bug with new game settings and add tests
Merge pull request #52 from lotgd/feature/fix-config
2016-07-28 13:38:29 -07:00
Austen McDonald 50ea982985 Fix configuration bug with new game settings and add tests 2016-07-28 13:20:16 -07:00
Austen McDonald 06794f2ec2 Add time keeper to Game. 2016-07-27 21:25:23 +00:00
Austen McDonald 0e70b7f0b1 Add time keeper configuration values. 2016-07-27 21:25:11 +00:00
Austen McDonald 8e8b2de219 Make reading lotgd-namespace directories more generic, to support crates for example
Merges #49
2016-07-26 12:44:26 +02:00
Austen McDonald a37a0dbc89 Add translateNamespaceToPath to ComposerManager 2016-07-26 09:48:02 +00:00
Austen McDonald ffa65b3042 Change module configs to take lotgd-namespace and lotgd-subscriptions 2016-07-25 22:08:06 +00:00
Austen McDonald bc297076fa Dont print password when we convert Configuration to a string, this is just too unsafe. 2016-07-25 21:36:04 +00:00
Austen McDonald 3090dece7f Reorder use statements in ModuleManagerTest 2016-07-25 21:35:10 +00:00
Austen McDonald 0873121151 Change bootstrap to look for metadata directories from modules. 2016-07-25 21:35:09 +00:00
Austen McDonald f5bea45317 Extract finding the autoloader into a helper method. 2016-07-25 21:35:05 +00:00
Austen McDonald e12741cff5 Change ComposerManager to take a logger instead of a game. 2016-07-25 20:19:46 +00:00
Austen McDonald a673efaf4e Add some help to the daenerys console command. 2016-07-22 06:26:23 +00:00
Austen McDonald 6efd89419b Add __toString() to Configuration class. 2016-07-22 06:26:17 +00:00
Austen McDonald 23c2b79094 Add console command to daenerys tool. 2016-07-22 06:26:07 +00:00
Austen McDonald 5078a8a889 Update the README to include information about the new configuration setup 2016-07-22 04:58:07 +00:00
Austen McDonald 8d31f715ad Add some documentation to the Configuration object. 2016-07-22 04:45:27 +00:00
Austen McDonald 2370528392 Transition from environment variables to a configuration file format. 2016-07-22 04:19:10 +00:00
Austen McDonald 8973dc943b Add Configuration object. 2016-07-22 04:18:08 +00:00
Austen McDonald f4859eeaf4 Add module instructions to README 2016-07-21 07:49:49 +00:00
Austen McDonald 31c0f4341c Change format of module configuration to make them implement their events on a single calss. 2016-07-21 07:49:46 +00:00
Austen McDonald 53b25a85ed Add Module interface for Modules to extend from. 2016-07-21 06:40:51 +00:00
Basilius Sauter 77aab6f9cb Making bin/daenerys more extensible
In order to make bin/daenerys more extensible and usable from outside with
more configuration, the bootstrap of the game object has been moved to
bin/daenerys where it is a closure stored in LotGD\Core\Console\Main.
Commands now call Main::createGame() instead of Bootstrap::createGame().

Added the command database:init

Merges #43
Closes #40
2016-07-19 18:01:46 +02:00
Austen McDonald 6083e5c170 Add logger to Game, along with some basic log messages 2016-07-18 23:03:52 +00:00
Austen McDonald 50879ec6f4 Update README.md
Added instructions for phpunit and included php7.0-sqlite, which is needed for tests.
2016-07-18 16:17:57 -07:00
Austen McDonald 8dc846d600 Update README.md
Added instructions for phpunit and included php7.0-sqlite, which is needed for tests.
2016-07-18 16:15:16 -07:00
Basilius Sauter 1132a731f5 Add API to extend annotation metadata directory
This commit adds the possibility for externals to add additional
directories in order to extend the directories doctrine uses to read
metadata from.

Closes #39
2016-06-20 22:40:42 +02:00
Basilius Sauter d4136909f8 Adds Lifetap and DamageReflection effects + tests
This commit adds buff effects for lifetap and damagereflection

Closes #35
2016-06-20 22:33:27 +02:00
Basilius Sauter a53ab601f5 Adds buff effects for regeneration and minions
This commit adds support for regeneration (both regen and deregen) and
minions (for both goodguy or badguy - or both at the same time). It also
adds tests to ensure correct code workflow.
2016-06-09 23:31:24 +02:00
Basilius Sauter 7b609e3b5c Add attack/defense/damage modifiers and invuln.
Adds attack, defense and damage modifiers for both "goodguy" (self) and
"badguy" (target) as well as a handler for goodguy/badguy invulnurability.

Modified the battle calculation to not recalculate if noone does damage as
long as at least 1 buff is active. This prevets infinite loops.
2016-06-09 23:31:23 +02:00
Basilius Sauter 4badaea249 Introduce general buff handling and tests
This commit introduces basic buff handling: Adding buffs, removing buffs,
expiring buffs. The Battle procedure controls the buffs and activates them
every round, expires them one round per round and removes the buff if the
number of rounds left is 0.

The BattleTest suite tests for the correct sequence and the correct
messages.
2016-06-09 23:31:22 +02:00
Basilius Sauter 5280e37617 Put license back
Closes #37
2016-06-09 23:25:33 +02:00
Basilius Sauter dfb732328b Change PHP version requirement as suggested
Change from >7.0.0 to ^7.0.0

Closes #37
2016-06-09 23:20:30 +02:00
Basilius Sauter ac16c54591 Changes composer dependencies to be more flexible.
Changes composer dependencies to be more flexible. Furthermore, it adds a
requirement for php version to be > 7.0.0.
2016-06-07 17:35:34 +02:00
Austen McDonald 51a9582a3d Change version of the Game to be 0.1.0 2016-06-04 12:01:54 -07:00
Austen McDonald ad49ab05f8 Reorder use statements. 2016-06-04 12:01:54 -07:00
Austen McDonald 24b6b84742 Print core verison along with daenerys version 2016-06-04 12:01:54 -07:00
Austen McDonald 58808bcbee Add simple version string to Game. Probably want something more complex in the future. 2016-06-04 12:01:54 -07:00
Austen McDonald 10b5719527 Update some modules 2016-06-04 12:01:54 -07:00
Austen McDonald 385e57c427 Make module:register command work 2016-06-04 12:01:54 -07:00
Austen McDonald a1bd0d55c7 Add completion message to module:validate command 2016-06-04 12:01:54 -07:00
Austen McDonald c0a9a623b4 Add helpful messaging to ClassNotFoundExceptions in EventManager 2016-06-04 12:01:54 -07:00
Austen McDonald 873fd5603e Search for the right autoloader in daenerys 2016-06-04 12:01:54 -07:00
Austen McDonald c30ceb0413 Add module:register command to daenerys 2016-06-04 12:01:54 -07:00
Austen McDonald 70bed16884 Add getPackageForLibrary to ComposerManager 2016-06-04 12:01:54 -07:00
Austen McDonald a73f4036a3 Add module:validate command to daenerys tool. 2016-06-04 12:01:54 -07:00
Austen McDonald aca3505aa1 Add getModuleManager() to Game 2016-06-04 12:01:54 -07:00
Austen McDonald 40383849b9 Oops, need this for ModuleManager::validate command. 2016-06-04 12:01:54 -07:00
Austen McDonald e35ae7dac1 Add additional tests for ModuleManager::validate 2016-06-04 12:01:54 -07:00