[crossfire] Create earth wall / earth to dust issue

Mark Wedel mwedel at sonic.net
Mon May 8 01:55:36 CDT 2006

Nicolas Weeger (Laposte) wrote:
> Hello.
> juhaj on IRC reported a earth to dust bug.
> Looking at the code, I see 2 issues:
> * in server/spell_effect.c, lines 705/706, it should be imo for(i= 
> -range;i<=range;i++) instead of for(i= -range;i<range;i++) since we want to 
> do [-range..range] inclusive
> * earth to dust fails because no object with move_block is on the spot. This 
> is because earth wall that was created has no move_block set - wall is alive, 
> thus player/monsters can't get on it. I'm not totally sure what's the best 
> way to fix that. Maybe spell should have a move_block set?

  I think that the earthwalls should have move_block set.

  While most of the movement code basically has logic of 'if living creature on 
this space, you can't move on it', IMO, at some point that needs to change.  A 
flying creature should be able to fly over (on top) of a creature on the ground 
without problems.

  It appears that move_player_attack() does the right thing - doesn't care why 
the player can't move on the space - it just goes and examines the objects on 
the space to see if it if soemething the player should attack.

More information about the crossfire mailing list