1 | |
|
|
2 | /* |
1 | /* |
3 | CrossFire, A Multiplayer game for X-windows |
2 | CrossFire, A Multiplayer game for X-windows |
4 | |
3 | |
5 | Copyright (C) 2002 Mark Wedel & Crossfire Development Team |
4 | Copyright (C) 2002 Mark Wedel & Crossfire Development Team |
6 | Copyright (C) 1992 Frank Tore Johansen |
5 | Copyright (C) 1992 Frank Tore Johansen |
… | |
… | |
17 | |
16 | |
18 | You should have received a copy of the GNU General Public License |
17 | You should have received a copy of the GNU General Public License |
19 | along with this program; if not, write to the Free Software |
18 | along with this program; if not, write to the Free Software |
20 | Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. |
19 | Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. |
21 | |
20 | |
22 | The authors can be reached via e-mail at crossfire-devel@real-time.com |
21 | The authors can be reached via e-mail at <crossfire@schmorp.de> |
23 | */ |
22 | */ |
24 | |
23 | |
25 | /* Eneq(@csd.uu.se): Added weight-modifiers in environment of objects. |
24 | /* Eneq(@csd.uu.se): Added weight-modifiers in environment of objects. |
26 | sub/add_weight will transcend the environment updating the carrying |
25 | sub/add_weight will transcend the environment updating the carrying |
27 | variable. */ |
26 | variable. */ |
… | |
… | |
564 | { |
563 | { |
565 | /* If op->arch has been set, then this new object |
564 | /* If op->arch has been set, then this new object |
566 | * must be part of the inventory. So process |
565 | * must be part of the inventory. So process |
567 | * appropriately. |
566 | * appropriately. |
568 | */ |
567 | */ |
569 | archetype *arch = find_archetype (str); |
568 | archetype *arch = archetype::find (str); |
570 | |
569 | |
571 | object *tmp; |
570 | object *tmp; |
572 | |
571 | |
573 | if (arch != NULL) |
572 | if (arch != NULL) |
574 | tmp = arch_to_object (arch); |
573 | tmp = arch_to_object (arch); |
… | |
… | |
615 | } |
614 | } |
616 | } |
615 | } |
617 | else |
616 | else |
618 | { |
617 | { |
619 | /* This is the actual archetype definition then */ |
618 | /* This is the actual archetype definition then */ |
620 | op->arch = find_archetype (str); |
619 | op->arch = archetype::find (str); |
621 | |
620 | |
622 | if (op->arch != NULL) |
621 | if (op->arch != NULL) |
623 | copy_object (&op->arch->clone, op); |
622 | copy_object (&op->arch->clone, op); |
624 | else if (!arch_init) |
623 | else if (!arch_init) |
625 | /* record the name of the broken object */ |
624 | /* record the name of the broken object */ |
… | |
… | |
627 | } |
626 | } |
628 | } |
627 | } |
629 | break; |
628 | break; |
630 | |
629 | |
631 | case KW_other_arch: |
630 | case KW_other_arch: |
632 | op->other_arch = find_archetype (thawer.get_str ()); |
631 | op->other_arch = archetype::find (thawer.get_str ()); |
633 | break; |
632 | break; |
634 | |
633 | |
635 | case KW_animation: |
634 | case KW_animation: |
636 | { |
635 | { |
637 | const char *str = thawer.get_str (); |
636 | const char *str = thawer.get_str (); |
… | |
… | |
885 | else |
884 | else |
886 | op->move_off &= ~MOVE_FLY_LOW; |
885 | op->move_off &= ~MOVE_FLY_LOW; |
887 | } |
886 | } |
888 | break; |
887 | break; |
889 | |
888 | |
890 | //TODO: remove these after convertign archetypes |
889 | //TODO: remove these after converting archetypes |
891 | case KW_can_use_wand: |
890 | case KW_can_use_wand: |
892 | GET_FLAG (op, FLAG_USE_RANGE); |
891 | GET_FLAG (op, FLAG_USE_RANGE); |
893 | break; |
892 | break; |
894 | |
893 | |
895 | /* These are all legacy - any new objects should use the move_ .. values */ |
894 | /* These are all legacy - any new objects should use the move_ .. values */ |