Closed Mikolaj closed 13 years ago
That's it, final edit, done.
P.S. I like the new Turn.hs, using Action.hs. I agree with all your comments in Turn.hs (though I will need to see how the even queue is used to understand the idea).About score for items: in the long run let's not give score points for items other than gold. For now, most items are worthless, hence the score, to make gathering them engaging.
These remarks are already discussed/obsolete/used either in LambdaHack or Allure, so I'm OK to close this issue. Thank you again for the old and for the new review; most of the suggestions were very fruitful. whether I agreed with them or not.
Here I will gradually add pieces of the the promised review of your modifications/reversions of my commits. Thank you again for taking time to look at the commits in detail.
I can live with it, it's a single small detail, but in my experience:
In a game engine, running behaviour should indeed be easily configurable. But in concrete games build upon the engine, usually only one setting is optimal (diagonal moves, if there's a time limit and no instant death threats (e.g. paralization); avoiding diagonal moves otherwise), so a player-configurable option falls under the "bad option" category above. OTOH, as a debug or experiment option, it's a very good idea and I should have done it in a configurable way, instead of just changing the behaviour according to how I imagine LambdaHack will evolve (no hurry exploring and pretty dangerous attacks).
Agreed on all accounts.
I'm happy to learn and adhere to your stylistic preferences (I'm a Haskell newbie, after all), but I have to explain a few things, because my "minor tweaks" were not all about style, but about experience with modifying the code, after a failed experiment on a different branch. There is no point in you reading the branch nor in me explaining the details, so just a few concrete points about the code before I changed it in my commit:
Agreed. Macros are "good options". I've only removed resting on space, because confirmations where done with space or enter, so space was often pressed by accident. If all confirmations are done with y/n, the space can stay or replace dot. OTOH, we shouldn't take 2 keys (3 with keypad '5') for the same task without a good reason. Let the player take as much of them as he want via macros and let's leave him lots of unused keys to work with.
I may be wrong, but I think if you have bad permissions on the file or play from / or from live CD or broken NFS, you will never learn, until you become suspicious about the score table not growing longer with time. The patch let's you see it ASAP via an exception displayed on command line.
I'm not 100% sure, but I seem to remember I tested it and came to the following conclusion:
That's it. The PassiveHandler removal is surely for the best. Agreed about PLAYING.markdown. I've done a diff between my and your changed version of all the commits and it seems you didn't lose even a single line while juggling the patches and producing the git art. Thanks again for the review.