99838cbd00
Convert the passive healing clock to a more granular tick mechanism
...
Instead of counting turns, count clock ticks. A WaitAction adds 10 ticks to the
passive healing clock and a WalkAction adds 5. So, you will heal while walking
but at a slower rate.
2022-05-16 20:50:23 -07:00
31bec25dcf
Add a docstring to engine.Configuration
2022-05-16 20:49:42 -07:00
4124d1ae4e
Clean up some pylint warnings in interface/color.py
2022-05-16 20:49:28 -07:00
d5f6cbe73a
Clean up some pylint warnings in messages.py
...
Add a module doc string
Remove an extraneous else:
2022-05-16 20:49:01 -07:00
e5485300ef
Rename interface.bar.Bar -> interface.percentage_bar.PercentageBar
2022-05-16 16:47:21 -07:00
6e0112fd59
Add some documentation to the things in object.py
2022-05-16 16:40:45 -07:00
18a068cff6
Add some more basic colors and some semantic colors for the Health Bar
2022-05-16 16:40:29 -07:00
11aee12320
Add colors attribute to Bar class
...
This list lets you specify a set of colors that the bar should be painted with
depending on the percentage the bar is filled
2022-05-16 16:40:04 -07:00
6073454ed3
Add line 1 comment to interface/__init__.py
2022-05-16 16:39:19 -07:00
85569595a9
FIX THE COLLISION DETECTION BUG
2022-05-15 19:58:39 -07:00
d4e4684694
Show Entity under mouse cursor in a line above the hit points
2022-05-15 16:50:24 -07:00
4e585a2650
Implement passive healing
2022-05-15 16:19:03 -07:00
ccd2e04d0e
Doc strings in Messages module
2022-05-15 16:18:42 -07:00
9f27899572
Print some messages when damage and death happen!
2022-05-15 13:58:37 -07:00
72cbd15fb0
Render the MessageLog and clean up the interface (lots of math errors here)
2022-05-15 13:58:26 -07:00
08ef1af4e4
Add a MessageLog that keeps a record of in-game events
2022-05-15 13:58:06 -07:00
ff6763d354
Add a unique identifier to all entities (a monotonically increasing integer)
2022-05-15 13:57:32 -07:00
090272854d
Add a turn count that increments after successfully handling actions for that turn
2022-05-15 13:13:12 -07:00
5a9df0a322
Add my first interface element: a Bar!
...
It renders a bar of a certain width and a percentage full. Use it to render HP.
Add a new Python package called interface. The Bar class lives there. Also add a
bunch of color defintions to a module called interface.color.
2022-05-15 00:12:05 -07:00
388754e5dd
When the Hero dies, swap MainGameEventHandler for GameOverEventHandler
2022-05-14 23:43:38 -07:00
e5b3cbd2cd
Prepare for a GameOver state
...
- Factor a bunch of event handling into a base EventHandler class
- Rename the previous event handler MainGameEventHandler
- Add a GameOverEventHandler that only responds to Exit actions
2022-05-14 23:43:04 -07:00
5b0b33782f
Move handling hero actions and entity actions to the Engine
2022-05-14 23:41:43 -07:00
c44c4e7bc6
Move the event loop to Engine.run_event_loop()
2022-05-14 23:39:03 -07:00
2b367c7bb6
Quit the game on Escape
2022-05-12 20:40:46 -07:00
ee915bd7c1
Add a doc string and a terminal newline
2022-05-12 20:40:40 -07:00
ce63c825b0
Move all the logging to log.py and prefix all the log names with "erynrl"
2022-05-12 20:40:15 -07:00
f6fe9d0f09
Move the roguebasin package to erynrl
2022-05-12 09:05:27 -07:00