cf9ec2d17e 
								
							 
						 
						
							
							
								
								Move Monster to the object module  
							
							 
							
							
							
						 
						
							2022-05-08 09:48:05 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								cf0b120fad 
								
							 
						 
						
							
							
								
								Add a Fighter component that tracks hit points, attack power, defense, etc  
							
							 
							
							
							
						 
						
							2022-05-08 09:46:32 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								f5a8a55182 
								
							 
						 
						
							
							
								
								Add WaitAction to the class hierarchy  
							
							 
							
							
							
						 
						
							2022-05-08 08:55:08 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								a9ebc38078 
								
							 
						 
						
							
							
								
								Update the Makefile to use .venv as the virtual env directory  
							
							 
							
							
							
						 
						
							2022-05-08 08:54:54 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								4f7e477b24 
								
							 
						 
						
							
							
								
								Add a WaitAction and trigger it with .  
							
							 
							
							
							
						 
						
							2022-05-07 22:34:43 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								85423e739c 
								
							 
						 
						
							
							
								
								Remove the shbang from map.py  
							
							 
							
							
							
						 
						
							2022-05-07 17:44:30 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								eea49ed3c1 
								
							 
						 
						
							
							
								
								Resolve all the pylint warnings in geometry  
							
							 
							
							
							
						 
						
							2022-05-07 12:37:35 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								427e7c8e84 
								
							 
						 
						
							
							
								
								Remove some unused imports  
							
							 
							
							
							
						 
						
							2022-05-07 12:28:02 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								8b3c0137a5 
								
							 
						 
						
							
							
								
								Refactor event handling into EventHandler  
							
							 
							
							... 
							
							
							
							Move all the event handling code from Engine to EventHandler. EventHandler has a
reference to Engine and can deal with entities from its methods.
Refactor Action to take an optional Entity in its initializer. Some actions
don't require an Entity, but many do/will. 
							
						 
						
							2022-05-07 12:25:46 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								d75c9faea3 
								
							 
						 
						
							
							
								
								Little bits of cleanup  
							
							 
							
							
							
						 
						
							2022-05-07 12:25:44 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								15e188b9f2 
								
							 
						 
						
							
							
								
								Convert the keysym matching to match/case from if/elif  
							
							 
							
							
							
						 
						
							2022-05-07 11:57:08 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								7b747fb4d3 
								
							 
						 
						
							
							
								
								Doc comments and stuff  
							
							 
							
							
							
						 
						
							2022-05-07 11:56:55 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								54568d70c2 
								
							 
						 
						
							
							
								
								Add a sight_radius parameter to the Species dataclass  
							
							 
							
							
							
						 
						
							2022-05-07 11:43:02 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								04aa61fe4b 
								
							 
						 
						
							
							
								
								Doc strings and import reordering per pylint  
							
							 
							
							
							
						 
						
							2022-05-07 11:42:48 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								d0a2e2c2ef 
								
							 
						 
						
							
							
								
								Clean up imports and terminal newlines in files according to pylint  
							
							 
							
							
							
						 
						
							2022-05-07 11:22:54 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								372cd5f295 
								
							 
						 
						
							
							
								
								Generate a .pylintrc and tweak it slightly for this project  
							
							 
							
							
							
						 
						
							2022-05-07 11:20:57 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								3510bab79a 
								
							 
						 
						
							
							
								
								Document return value of MapGenerator.generate  
							
							 
							
							
							
						 
						
							2022-05-07 11:20:41 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								4002b64640 
								
							 
						 
						
							
							
								
								Attack!!!  
							
							 
							
							... 
							
							
							
							Refactor MovePlayerAction into a few different Action subclasses. Move direction
to a parent MoveAction, and create three new subclasses of MoveAction:
    - BumpAction: perform the test that an action can be performed in the given direction
    - WalkAction, take a step in the given direction
    - MeleeAction, attack another Entity in the given direction
Add an ActionResult class that communicates the result of performing an Action.
    - ActionResult.succeeded indicates whether the action succeeded.
    - ActionResult.done indicates if the action is fully complete or requires followup.
    - ActionResult.alternate specifies the follow-up action to perform.
Convert all the key handling actions to BumpActions.
In the Engine's event handler method, loop until an action is completed,
performing specified alternate actions until the result object indicates the
action is done. 
							
						 
						
							2022-05-07 11:16:17 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								57bbb2c3fc 
								
							 
						 
						
							
							
								
								Some more fixes from the linter  
							
							 
							
							
							
						 
						
							2022-05-07 09:57:39 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								7720bc525a 
								
							 
						 
						
							
							
								
								Address some linter issues; add doc strings  
							
							 
							
							... 
							
							
							
							- Clean up some import ordering
- Write some Numpy style doc strings for classes and functions 
							
						 
						
							2022-05-07 08:55:10 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								f3d5e273db 
								
							 
						 
						
							
							
								
								Remove this unimplemented method  
							
							 
							
							
							
						 
						
							2022-05-07 08:54:46 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								16b4b64099 
								
							 
						 
						
							
							
								
								Clean up the logging; use % formats instead of f-strings  
							
							 
							
							
							
						 
						
							2022-05-07 08:53:58 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								a1c1609908 
								
							 
						 
						
							
							
								
								Enable linting  
							
							 
							
							
							
						 
						
							2022-05-07 08:51:55 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								ded318e659 
								
							 
						 
						
							
							
								
								Reorganize the package  
							
							 
							
							... 
							
							
							
							- Create an __init__.py, which makes this directory a Python package.
- Replace the contents of __main__.py with the contents of main.py 
							
						 
						
							2022-05-07 08:51:44 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								d99c97408c 
								
							 
						 
						
							
							
								
								Generate orcs and trolls randomly throughout the dungeon  
							
							 
							
							
							
						 
						
							2022-05-06 21:16:39 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								08b1841bdf 
								
							 
						 
						
							
							
								
								Add monsters module and define Species, Monster, Orc, and Troll  
							
							 
							
							
							
						 
						
							2022-05-06 21:16:19 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								1e69667ba8 
								
							 
						 
						
							
							
								
								Create a Hero class for the character the player moves; stop using tcod.Color for foreground and background; use tuples instead  
							
							 
							
							
							
						 
						
							2022-05-06 21:16:00 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								5f6247ef13 
								
							 
						 
						
							
							
								
								I decided: every dungeon map has rooms  
							
							 
							
							
							
						 
						
							2022-05-06 21:14:42 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								c2c67ae9ef 
								
							 
						 
						
							
							
								
								Move logging hero movement into the if block where it actually does the move  
							
							 
							
							
							
						 
						
							2022-05-06 21:13:37 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								00462f6005 
								
							 
						 
						
							
							
								
								Change Engine.Configuration to a clas and convert moved_entities to a set  
							
							 
							
							
							
						 
						
							2022-05-06 14:34:26 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								6a431ee574 
								
							 
						 
						
							
							
								
								Tweaking the room size ratios  
							
							 
							
							
							
						 
						
							2022-05-05 08:55:49 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								1d4882a8ac 
								
							 
						 
						
							
							
								
								Do not allow entities to move into squares previously moved entities have moved to  
							
							 
							
							
							
						 
						
							2022-05-05 08:45:30 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								a43e403e9c 
								
							 
						 
						
							
							
								
								Let NPCs randomly walk  
							
							 
							
							
							
						 
						
							2022-05-05 08:38:06 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								1cd45d366b 
								
							 
						 
						
							
							
								
								Add Direction.all() that returns an iterator that produces all the Direction values  
							
							 
							
							
							
						 
						
							2022-05-05 08:37:48 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								1247617b87 
								
							 
						 
						
							
							
								
								Add diagonal movement  
							
							 
							
							
							
						 
						
							2022-05-04 09:25:35 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								084385f8f2 
								
							 
						 
						
							
							
								
								Add a map shroud over tiles and compute field of view based on player position!!!  
							
							 
							
							
							
						 
						
							2022-05-04 09:22:40 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								25aa5506c8 
								
							 
						 
						
							
							
								
								Convert the generator.Configuration class to a dataclass  
							
							 
							
							
							
						 
						
							2022-05-04 09:22:06 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								0b577ad5ea 
								
							 
						 
						
							
							
								
								Merge branch 'diggin-tunnels'  
							
							 
							
							
							
						 
						
							2022-05-03 19:05:57 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								39832c7f74 
								
							 
						 
						
							
							
								
								A little script to visualize how BSP works; emits a DOT graph  
							
							 
							
							
							
						 
						
							2022-05-03 19:05:53 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								c638ee506a 
								
							 
						 
						
							
							
								
								Carve walls and floors out of Empty tiles  
							
							 
							
							... 
							
							
							
							Walls fill all the Empty tiles around Floors, including rooms and hallways. 
							
						 
						
							2022-05-03 19:04:59 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								7c5c3c57ec 
								
							 
						 
						
							
							
								
								Fill the map with Empty tiles instead of Wall tiles  
							
							 
							
							
							
						 
						
							2022-05-03 19:03:31 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								fcfab9fc1b 
								
							 
						 
						
							
							
								
								Add Rect.inset_rect  
							
							 
							
							
							
						 
						
							2022-05-03 19:02:39 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								09bdf8a7a6 
								
							 
						 
						
							
							
								
								Place NPCs randomly in a generated room  
							
							 
							
							
							
						 
						
							2022-05-03 19:00:45 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								58e732c923 
								
							 
						 
						
							
							
								
								Clean up and document room rect generation  
							
							 
							
							
							
						 
						
							2022-05-03 18:25:30 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								7ba33cc6eb 
								
							 
						 
						
							
							
								
								Fix this type annotation  
							
							 
							
							
							
						 
						
							2022-05-03 18:24:14 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								50d6550e17 
								
							 
						 
						
							
							
								
								Parameterize maximum room size; make minimum_room_size the actual floor size, not counting walls  
							
							 
							
							
							
						 
						
							2022-05-03 18:23:48 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								e1044f3a73 
								
							 
						 
						
							
							
								
								Move MovePlayerAction.Direction to geometry.Direction  
							
							 
							
							
							
						 
						
							2022-05-03 18:21:24 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								8aa7cd30ae 
								
							 
						 
						
							
							
								
								Merge remote-tracking branch 'origin/main'  
							
							 
							
							
							
						 
						
							2022-05-03 07:17:39 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
								
								
							
							
							
								
							
							
								558bd86b16 
								
							 
						 
						
							
							
								
								Initial commit  
							
							 
							
							
							
						 
						
							2022-05-03 07:15:41 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								010c67fd78 
								
							 
						 
						
							
							
								
								Attempt  #1  to dig tunnels -- it does not work  
							
							 
							
							
							
						 
						
							2022-05-01 18:03:47 -07:00