… | |
… | |
551 | */ |
551 | */ |
552 | archetype *arch = archetype::find (str); |
552 | archetype *arch = archetype::find (str); |
553 | |
553 | |
554 | object *tmp; |
554 | object *tmp; |
555 | |
555 | |
556 | if (arch != NULL) |
556 | if (arch) |
557 | tmp = arch_to_object (arch); |
557 | tmp = arch_to_object (arch); |
558 | else |
558 | else |
559 | { |
559 | { |
560 | tmp = object::create (); |
560 | tmp = object::create (); |
561 | /* record the name of the broken object */ |
561 | /* record the name of the broken object */ |
562 | tmp->name = str; |
562 | tmp->name = str; |
563 | } |
563 | } |
|
|
564 | |
|
|
565 | // decativate the object we, as we are still going |
|
|
566 | // to read the speed value. Objects should be activated |
|
|
567 | // when the map, object or player is completly loaded. |
|
|
568 | tmp->deactivate (); |
564 | |
569 | |
565 | parse_object (tmp, thawer, map_flags); |
570 | parse_object (tmp, thawer, map_flags); |
566 | |
571 | |
567 | if (tmp->arch) |
572 | if (tmp->arch) |
568 | { |
573 | { |
… | |
… | |
601 | { |
606 | { |
602 | /* This is the actual archetype definition then */ |
607 | /* This is the actual archetype definition then */ |
603 | op->arch = archetype::find (str); |
608 | op->arch = archetype::find (str); |
604 | |
609 | |
605 | if (op->arch) |
610 | if (op->arch) |
|
|
611 | { |
606 | op->arch->clone.copy_to (op); |
612 | op->arch->clone.copy_to (op); |
|
|
613 | // copy_to activates, this should be fixed properly |
|
|
614 | op->deactivate (); |
|
|
615 | } |
607 | else if (!arch_init) |
616 | else if (!arch_init) |
608 | /* record the name of the broken object */ |
617 | /* record the name of the broken object */ |
609 | op->name = str; |
618 | op->name = str; |
610 | } |
619 | } |
611 | } |
620 | } |
… | |
… | |
1461 | |
1470 | |
1462 | for (object *tmp = op->inv; tmp; tmp = tmp->below) |
1471 | for (object *tmp = op->inv; tmp; tmp = tmp->below) |
1463 | save_object (fp, tmp, flag); |
1472 | save_object (fp, tmp, flag); |
1464 | |
1473 | |
1465 | fp.put (op); |
1474 | fp.put (op); |
1466 | fp.put (KW_end, 0); |
1475 | fp.put (KW_end); |
1467 | } |
1476 | } |
1468 | |
1477 | |