1 | /* |
1 | /* |
2 | * static char *rcsid_map_c = |
2 | * static char *rcsid_map_c = |
3 | * "$Id: map.C,v 1.2 2006/08/15 15:00:20 elmex Exp $"; |
3 | * "$Id: map.C,v 1.3 2006/08/15 17:35:50 elmex Exp $"; |
4 | */ |
4 | */ |
5 | |
5 | |
6 | /* |
6 | /* |
7 | CrossFire, A Multiplayer game for X-windows |
7 | CrossFire, A Multiplayer game for X-windows |
8 | |
8 | |
… | |
… | |
268 | retval |= P_NEW_MAP; |
268 | retval |= P_NEW_MAP; |
269 | if (newmap) *newmap = mp; |
269 | if (newmap) *newmap = mp; |
270 | if (nx) *nx = newx; |
270 | if (nx) *nx = newx; |
271 | if (ny) *ny = newy; |
271 | if (ny) *ny = newy; |
272 | retval |= mp->spaces[newx + mp->width * newy].flags; |
272 | retval |= mp->spaces[newx + mp->width * newy].flags; |
273 | if (mp->safe_map) |
273 | |
|
|
274 | if (retval & P_SAFE) |
274 | retval |= P_NO_MAGIC | P_NO_CLERIC | P_SAFE_MAP; |
275 | retval |= P_NO_MAGIC | P_NO_CLERIC; // P_SAFE does imply these |
|
|
276 | |
275 | return retval; |
277 | return retval; |
276 | } |
278 | } |
277 | |
279 | |
278 | |
280 | |
279 | /* |
281 | /* |
… | |
… | |
1824 | flags |= P_IS_ALIVE; |
1826 | flags |= P_IS_ALIVE; |
1825 | if (QUERY_FLAG(tmp,FLAG_NO_MAGIC)) |
1827 | if (QUERY_FLAG(tmp,FLAG_NO_MAGIC)) |
1826 | flags |= P_NO_MAGIC; |
1828 | flags |= P_NO_MAGIC; |
1827 | if (QUERY_FLAG(tmp,FLAG_DAMNED)) |
1829 | if (QUERY_FLAG(tmp,FLAG_DAMNED)) |
1828 | flags |= P_NO_CLERIC; |
1830 | flags |= P_NO_CLERIC; |
|
|
1831 | if (tmp->type == SAFE_FLOOR) |
|
|
1832 | flags |= P_SAFE; |
1829 | |
1833 | |
1830 | if (QUERY_FLAG(tmp,FLAG_BLOCKSVIEW)) |
1834 | if (QUERY_FLAG(tmp,FLAG_BLOCKSVIEW)) |
1831 | flags |= P_BLOCKSVIEW; |
1835 | flags |= P_BLOCKSVIEW; |
1832 | } /* for stack of objects */ |
1836 | } /* for stack of objects */ |
1833 | |
1837 | |