--- deliantra/server/common/map.C 2007/05/17 21:32:08 1.102 +++ deliantra/server/common/map.C 2007/06/04 13:04:00 1.107 @@ -1,25 +1,25 @@ /* - * CrossFire, A Multiplayer game + * This file is part of Crossfire TRT, the Multiplayer Online Role Playing Game. * - * Copyright (C) 2005, 2006, 2007 Marc Lehmann & Crossfire+ Development Team - * Copyright (C) 2001-2003 Mark Wedel & Crossfire Development Team - * Copyright (C) 1992 Frank Tore Johansen + * Copyright (©) 2005,2006,2007 Marc Alexander Lehmann / Robin Redeker / the Crossfire TRT team + * Copyright (©) 2001-2003,2007 Mark Wedel & Crossfire Development Team + * Copyright (©) 1992,2007 Frank Tore Johansen * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. + * Crossfire TRT is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2 of the License, or (at your option) + * any later version. * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - * The authors can be reached via e-mail at + * You should have received a copy of the GNU General Public License along + * with Crossfire TRT; if not, write to the Free Software Foundation, Inc. 51 + * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * The authors can be reached via e-mail to */ #include @@ -222,12 +222,11 @@ if (OB_MOVE_BLOCK (ob, tmp)) return 1; - if (QUERY_FLAG (tmp, FLAG_ALIVE) + if (tmp->flag [FLAG_ALIVE] && tmp->head_ () != ob && tmp != ob && tmp->type != DOOR - && !tmp->flag [FLAG_WIZ] - && tmp->contr->hidden) + && !(tmp->flag [FLAG_WIZ] && tmp->contr->hidden)) return 1; } @@ -281,7 +280,7 @@ for (tmp = ob->arch; tmp; tmp = tmp->more) { - flag = get_map_flags (m, &m1, x + tmp->clone.x, y + tmp->clone.y, &sx, &sy); + flag = get_map_flags (m, &m1, x + tmp->x, y + tmp->y, &sx, &sy); if (flag & P_OUT_OF_MAP) return P_OUT_OF_MAP; @@ -673,9 +672,9 @@ { for (;;) { - keyword kw = thawer.get_kv (); + thawer.next (); - switch (kw) + switch (thawer.kw) { case KW_msg: thawer.get_ml (KW_endmsg, msg); @@ -872,8 +871,9 @@ if (spaces) { for (mapspace *ms = spaces + size (); ms-- > spaces; ) - while (object *op = ms->bot->head_ ()) + while (object *op = ms->bot) { + op = op->head_ (); op->destroy_inv (false); op->destroy (); } @@ -979,7 +979,7 @@ total_exp += op->stats.exp; if (archetype *at = type_to_archetype (GENERATE_TYPE (op))) - total_exp += at->clone.stats.exp * 8; + total_exp += at->stats.exp * 8; monster_cnt++; }