
Preparing for 4.2 release
Collapse
X
-
-
👍 1Leave a comment:
-
-
Too bad C doesnt have anonymous functions. Then you could package up the loop contents in a function, and execute the whole thing with a single subroutine call.Leave a comment:
-
It's nice but I think something like this is nicer because you can keep using for loop, though bit wordy.
Code:struct loc_iterator { struct loc cur; struct loc begin; struct loc end; }; struct loc_iterator loc_iterator(struct loc begin, struct loc end) { struct loc_iterator iter; iter.cur = iter.begin = begin; iter.end = end; return iter; } bool loc_iterator_test(const struct loc_iterator* iter) { return iter->cur.y != iter->end.y; } void loc_iterator_next(struct loc_iterator* iter) { iter->cur.x++; if (iter->cur.x == iter->end.x) { iter->cur.x = iter->begin.x; iter->cur.y++; } }
Code:for (y = y1; y < y2; y++) { for (x = x1; x < x2; x++) {
Code:for (struct loc_iterator iter = loc_iterator(loc(x1, y1), loc(x2, y2)); loc_iterator_test(&iter); loc_iterator_next(&iter)) { /* use iter.cur */ int x = iter.cur.x; int y = iter.cur.y;
Code:for (y = y1 - 1; y < y2 + 1; y++) { for (x = x1 - 1; x < x2 + 1; x++) {
Code:for (struct loc_iterator iter = loc_iterator(loc(x1 - 1, y1 - 1), loc(x2 + 1, y2 + 1)); loc_iterator_test(&iter); loc_iterator_next(&iter)) {
Last edited by Kusunose; July 31, 2019, 09:34.Leave a comment:
-
Nice. Though I think it would be clearer if split into loc_iterate_inside and loc_iterate instead of passing a flag. (Also, you can just write iter = grid1 instead of loc_copy, surely?)Leave a comment:
-
-
I thought I'd post this here. It's a little function that I added while porting the struct loc refactoring to PWMAngband to make some code clearer. Here it is:
Code:bool loc_iterator(struct loc *iter, struct loc *grid1, struct loc *grid2, bool strict) { iter->x++; if (iter->x == (strict? grid2->x: grid2->x + 1)) { iter->x = grid1->x; iter->y++; if (iter->y == (strict? grid2->y: grid2->y + 1)) return false; } return true; }
Code:for (y = y1; y < y2; y++) { for (x = x1; x < x2; x++) { foo(y, x); } }
Code:loc_copy(&iter, &grid1); do { foo(&iter); } while (loc_iterator(&iter, &grid1, &grid2, true)); (or "false" to do "<=" instead of "<")
Leave a comment:
-
It seems the shield has the "impair hitpoint recovery" curse, which gives an item the "impaired hitpoint recovery" property. Both curse and property are runes you can learn; it is the property that displays on the ImpHP line.
What *should* happen is that when you learn the curse you learn the property. Could you check the knowledge menu ('~') for runes and se whether you have both? The curse is under "Curses", the property under "Other".
Thanks!
I didn't know about the Runes knowledge menu. Cool.
They're both there.Leave a comment:
-
What *should* happen is that when you learn the curse you learn the property. Could you check the knowledge menu ('~') for runes and se whether you have both? The curse is under "Curses", the property under "Other".Leave a comment:
-
I like the new character expanded screen.
I picked up a wicker shield on Angband.Live with "makes you slow to recover hit points".
I would expect a + in the ImpHP but nothing was there.Leave a comment:
-
New builds now up on the nightlies page and angband.live with the following changes:- Shockbolt tiles for the new foods (if someone wants to do something about the other tilesets, great)
- Fixes to SDL2 submitted by fumsoft
- Several fixes to pathfinding - thanks emar
- Finished updating help (apart from thanks, which gets done right before release)
- Adjust high elf XP factor to 145% (vs 100 for humans and 120 for everyone else)
- Make the trap immunity rune register properly
- Enlarge the character display for resists, abilities etc in both 'C' screen and character dumps
- Correct some unique drops (thanks Voovus)
- Don't display XP for killing monsters which only appear as a shapechange in monster lore (Voovus again)
- Make !Surprise actually capable of scrambling stats (thanks Chud, and sorry if I spoiled anyone's surprise)
- Fix dead monster display bug (thanks PowerWyrm)
- Make =Escaping only +2 speed, ,Shadows more common
Leave a comment:
-
All looks great. I'm going to do an updated build fairly soon, and I'll pull your stuff in then.Leave a comment:
Leave a comment: