Kwarde
907581eb29
Once again, set MAX_LEVENSHTEIN_DISTANCE to 3 in game_config.py
...
No levenshtein installed on my local PC (except via pipenv), but I run tests via vscode without pipenv so I keep disabling this, and then forgetting to put it back when pushing it to dev :')
2024-01-19 07:48:11 +01:00
Kwarde
782d4f93b1
Merge pull request #18 from KW46/type-annotations
...
Type annotations
2024-01-19 07:44:33 +01:00
5735ab4cde
Not making an issue for this: Print empty line before casting spells to make it look a bit clearer
2024-01-19 07:43:26 +01:00
e76d315832
Add type annotations for class variables and function return types
2024-01-19 07:41:38 +01:00
Kwarde
d19c467a7c
Merge pull request #17 from KW46/seperate-rounds-from-game
...
Seperate rounds from game
2024-01-19 07:29:35 +01:00
cb491f62a6
Update README.md: Run entry.py instead of game.py
2024-01-19 07:27:39 +01:00
f80da65977
Split game.py into game.py and entry.py, should make code better readable
2024-01-19 07:26:50 +01:00
Kwarde
be70fa4bf4
Merge pull request #16 from KW46/improvement-use-dicts
...
Switch to dictionaries, better imports, adds game_config.py and DEBUG_MODE
2024-01-18 17:05:09 +01:00
1dff4f524b
FIX: KeyError when returning a mistyped spell with Levenshtein distance
2024-01-18 17:03:21 +01:00
fc8bee2f73
Move MAX_LEVENSHTEIN_DISTANCE to game_config.py
2024-01-18 16:57:32 +01:00
7cb65f5895
Better import usage, adds game_config.py, adds a debug mode (sets all spell chances to 100%)
2024-01-18 16:43:20 +01:00
1485f171be
Make game.py compatible with the new dicts
2024-01-18 16:31:43 +01:00
aea461499c
Make player.py compatible with wands and spells dicts
2024-01-18 15:30:08 +01:00
7d28ac961c
Convert wands to dict
2024-01-18 07:05:31 +01:00
c4bb8f7d80
Remove tmp.py: Used it for a quick testrun since I had a confusion with the new dictionary
2024-01-17 16:52:00 +01:00
355eab297c
Make spells.py compatible with the new dictionary. Also: only import distance from Levenshtein if MAX_LEVENSHTEIN_DISTANCE > 0
2024-01-17 16:50:38 +01:00
c138250c1c
FIX: Actually make spell dictionary. ('key': value) and not ('key', value)
2024-01-17 16:14:04 +01:00
89318e7321
Convert spell objects to a dictionary
2024-01-17 16:06:56 +01:00
Kwarde
9b87f2aa30
Merge pull request #11 from KW46/fix-issue-10
...
FIX: New rounds starting while a player has 0 hp (fixes #10 )
2024-01-16 16:46:11 +01:00
7f900a6541
FIX: New rounds starting while a player has 0 hp ( fixes #10 )
2024-01-16 16:45:43 +01:00
Kwarde
8e96f8d1de
Merge pull request #9 from KW46/fix-issue-7
...
Fix issues #6 and #7 (protego working when it should not, stunned_rounds being off by one)
2024-01-16 16:20:34 +01:00
88605ad251
Remove damage_modifier (if self.decreased_spell_damage) from spell_crucio
2024-01-16 16:20:21 +01:00
Kwarde
93cfb5caa9
Merge pull request #8 from KW46/fix-issue-1
...
FIX: Returning list when using help instead of just queried item
2024-01-16 16:17:37 +01:00
66ef9b3570
FIX: Protego working while it was supposed to fail
2024-01-16 16:14:54 +01:00
bb6e1239e3
FIX: Returning list when using help instead of just queried item. Fixes #1
2024-01-16 16:06:49 +01:00
4a01544ebf
Address issues in #6 and #7
...
FIX: Stunned rounds being off by one (fixes #6 )
FIX: Output messages if player is stunned
FIX: Protego working while being stunned (fixes #7 )
FIX: Finite Incantatem not working
FIX: (sneakily added this fix without creating an issue) Blinded effect not doing anything
2024-01-16 16:02:35 +01:00
bcffdda12b
Define player.active_spell_succes; it was (partially) implemented but not defined
2024-01-16 07:16:45 +01:00
Kwarde
8fd6a74bb1
Merge pull request #5 from KW46/fix-issue-3
...
FIX: #3 that fixes #2
2024-01-15 20:35:21 +01:00
0d139cfd86
FIX: #3 that fixes #2
2024-01-15 20:34:56 +01:00
Kwarde
ca8228935d
Merge pull request #3 from KW46/fix-issue-2
...
FIX: None existing attributed player.stunned_rounds, fixes #2
2024-01-15 20:31:21 +01:00
KW46
046178a768
FIX: None existing attributed player.stunned_rounds, fixes #2
2024-01-15 20:30:23 +01:00
b745d3be6b
Update README.md
2024-01-15 17:23:03 +01:00
1bd4a1f034
Set MAX_PLAYER_HEALTH to 1000 (it was set to 500 for quicker test runs)
2024-01-15 17:20:50 +01:00
c5f61b178c
Finish cast_spell(), few tweaks done
2024-01-15 17:20:03 +01:00
90715ab43f
Add .active_spell to Player (removes playerN_active_spell), finish duelling logic
2024-01-15 16:00:44 +01:00
0909e47780
Determine fastest caster
2024-01-15 15:49:21 +01:00
fd8b6567f7
Cast spells if one of two player fails to cast their spell. Adds player.cast_spell(): Not scripted yet, currently just a placeholder so that cast_spell() prints somethin when called! (and modifies health)
2024-01-15 15:36:37 +01:00
7f6ccb15ef
Get player spell from input (or show a help message)
2024-01-15 15:11:13 +01:00
885f407383
Get player wands, intro to battle, adds spells.random_battle_spell()
2024-01-15 14:56:20 +01:00
7cbcf4dbf4
Intro message, ask for player name, improve wand's representation (readability)
2024-01-15 14:27:08 +01:00
b20532ae4a
Add methods and variables for running game
2024-01-15 14:11:24 +01:00
5f1cdcfc7f
Implement Levenshtein.distance() in spells.find_spell_by_name()
2024-01-15 13:40:34 +01:00
6a9e3b126a
Add decreased_spell_speed/damage to Player class and cast_spell_result()- used to print outcome message of a spell cast
2024-01-15 13:31:26 +01:00
c039b38c82
Add Player class
2024-01-15 13:27:46 +01:00
b24ea5b610
Create wands
2024-01-15 13:22:19 +01:00
0c7ae19d40
Modify Pipfile with a version for levenshtein
2024-01-15 13:13:31 +01:00
83c4825651
Initialize pipenv with package levenshtein
2024-01-15 13:11:54 +01:00
4eceac132f
Add spells.find_spell_by_name()
2024-01-15 13:09:54 +01:00
b9ef609f1c
Add spells.print_spells()
2024-01-15 12:58:29 +01:00
e35cea92bf
Add spell objects
2024-01-15 12:52:21 +01:00