version 1.48 | | version 1.49 |
---|
| | |
/* | | /* |
* static char *rcsid_map_c = | | * static char *rcsid_map_c = |
* "$Id: map.c,v 1.48 2002/11/26 08:57:55 garbled Exp $"; | | * "$Id: map.c,v 1.49 2002/11/30 04:17:41 mwedel Exp $"; |
*/ | | */ |
| | |
/* | | /* |
| | |
if (tmp->glow_radius > light) light = tmp->glow_radius; | | if (tmp->glow_radius > light) light = tmp->glow_radius; |
| | |
/* This call is needed in order to update objects the player | | /* This call is needed in order to update objects the player |
* is standign in that have animations (ie, grass, fire, etc). | | * is standing in that have animations (ie, grass, fire, etc). |
* However, it also causes the look window to be re-drawn | | * However, it also causes the look window to be re-drawn |
* 3 times each time the player moves, because many of the | | * 3 times each time the player moves, because many of the |
* functions the move_player calls eventualy call this. | | * functions the move_player calls eventualy call this. |
| | |
* Always put the player down for drawing. | | * Always put the player down for drawing. |
*/ | | */ |
if (!tmp->invisible) { | | if (!tmp->invisible) { |
if ((tmp->type==PLAYER || QUERY_FLAG(tmp, FLAG_MONSTER))) | | if ((tmp->type==PLAYER || QUERY_FLAG(tmp, FLAG_MONSTER))) { |
{ | | |
top = tmp->face; | | top = tmp->face; |
top_obj = tmp; | | top_obj = tmp; |
} | | } |
| | |
/* Flag anywhere have high priority */ | | /* Flag anywhere have high priority */ |
else if (QUERY_FLAG(tmp, FLAG_SEE_ANYWHERE)) { | | else if (QUERY_FLAG(tmp, FLAG_SEE_ANYWHERE)) { |
middle = tmp->face; | | middle = tmp->face; |
| | |
middle_obj = tmp; | | middle_obj = tmp; |
anywhere =1; | | anywhere =1; |
} | | } |
| | |
* visibilities, we still want the one nearer to the | | * visibilities, we still want the one nearer to the |
* top | | * top |
*/ | | */ |
else if (middle == blank_face || (tmp->face->visibility > middle->visibility && !anywhere)) | | else if (middle == blank_face || (tmp->face->visibility > middle->visibility && !anywhere)) { |
{ | | |
middle = tmp->face; | | middle = tmp->face; |
middle_obj = tmp; | | middle_obj = tmp; |
} | | } |
| | |
* may be possible for the faces to match but be different objects. | | * may be possible for the faces to match but be different objects. |
*/ | | */ |
if (top == middle) middle=blank_face; | | if (top == middle) middle=blank_face; |
| | |
/* There are three posibilities at this point: | | /* There are three posibilities at this point: |
* 1) top face is set, need middle to be set. | | * 1) top face is set, need middle to be set. |
* 2) middle is set, need to set top. | | * 2) middle is set, need to set top. |