… | |
… | |
718 | tmp = arch_to_object (arch); |
718 | tmp = arch_to_object (arch); |
719 | else |
719 | else |
720 | { |
720 | { |
721 | tmp = object::create (); |
721 | tmp = object::create (); |
722 | /* record the name of the broken object */ |
722 | /* record the name of the broken object */ |
|
|
723 | //TODO: but do not log??? |
723 | tmp->name = str; |
724 | tmp->name = str; |
724 | } |
725 | } |
725 | |
726 | |
726 | // decativate the object we, as we are still going |
727 | // decativate the object we, as we are still going |
727 | // to read the speed value. Objects should be activated |
728 | // to read the speed value. Objects should be activated |
… | |
… | |
785 | op->other_arch = archetype::find (thawer.get_str ()); |
786 | op->other_arch = archetype::find (thawer.get_str ()); |
786 | break; |
787 | break; |
787 | |
788 | |
788 | case KW_animation: |
789 | case KW_animation: |
789 | { |
790 | { |
|
|
791 | CLEAR_FLAG (op, FLAG_ANIMATE); |
|
|
792 | op->animation_id = 0; |
|
|
793 | |
790 | const char *str = thawer.get_str (); |
794 | const char *str = thawer.get_str (); |
791 | |
|
|
792 | if (!str) |
|
|
793 | { |
|
|
794 | op->animation_id = 0; |
|
|
795 | CLEAR_FLAG (op, FLAG_ANIMATE); |
|
|
796 | } |
|
|
797 | else if ((op->animation_id = find_animation (str))) |
795 | if (str && (op->animation_id = find_animation (str))) |
798 | SET_FLAG (op, FLAG_ANIMATE); |
796 | SET_FLAG (op, FLAG_ANIMATE); |
799 | } |
797 | } |
800 | |
|
|
801 | break; |
798 | break; |
802 | |
799 | |
803 | case KW_last_heal: thawer.get (op->last_heal); break; |
800 | case KW_last_heal: thawer.get (op->last_heal); break; |
804 | case KW_last_sp: thawer.get (op->last_sp); break; |
801 | case KW_last_sp: thawer.get (op->last_sp); break; |
805 | case KW_last_grace: thawer.get (op->last_grace); break; |
802 | case KW_last_grace: thawer.get (op->last_grace); break; |
… | |
… | |
870 | case KW_path_denied: thawer.get (op->path_denied); break; |
867 | case KW_path_denied: thawer.get (op->path_denied); break; |
871 | case KW_invisible: thawer.get (op->invisible); break; |
868 | case KW_invisible: thawer.get (op->invisible); break; |
872 | case KW_magic: thawer.get (op->magic); break; |
869 | case KW_magic: thawer.get (op->magic); break; |
873 | case KW_state: thawer.get (op->state); break; |
870 | case KW_state: thawer.get (op->state); break; |
874 | case KW_move_slow_penalty: thawer.get (op->move_slow_penalty); break; |
871 | case KW_move_slow_penalty: thawer.get (op->move_slow_penalty); break; |
875 | case KW_material: thawer.get (op->material); break; |
872 | case KW_material: thawer.get (op->materials); break; //TODO: nuke |
876 | case KW_materialname: thawer.get (op->materialname); break; |
873 | case KW_materialname: thawer.get (op->materialname); break; |
877 | |
874 | |
878 | /* These are the new values */ |
875 | /* These are the new values */ |
879 | case KW_move_block: set_move (op->move_block, thawer.get_str ()); break; |
876 | case KW_move_block: set_move (op->move_block, thawer.get_str ()); break; |
880 | case KW_move_allow: set_move (op->move_allow, thawer.get_str ()); break; |
877 | case KW_move_allow: set_move (op->move_allow, thawer.get_str ()); break; |
… | |
… | |
1142 | add_button_link (op, op->map, thawer.get_sint32 ()); |
1139 | add_button_link (op, op->map, thawer.get_sint32 ()); |
1143 | break; |
1140 | break; |
1144 | |
1141 | |
1145 | case KW_randomitems: |
1142 | case KW_randomitems: |
1146 | op->randomitems = find_treasurelist (thawer.get_str ()); |
1143 | op->randomitems = find_treasurelist (thawer.get_str ()); |
|
|
1144 | //if (!op->randomitems) |
|
|
1145 | // LOG (llevError, "%s uses unknown randomitems '%s'.\n", op->debug_desc (), thawer.get_str ()); |
1147 | break; |
1146 | break; |
1148 | |
1147 | |
1149 | case KW_msg: |
1148 | case KW_msg: |
1150 | thawer.get_ml (KW_endmsg, op->msg); |
1149 | thawer.get_ml (KW_endmsg, op->msg); |
1151 | //TODO: allow longer messages |
1150 | //TODO: allow longer messages |
… | |
… | |
1539 | f.put (resist_save[i], op->resist[i]); |
1538 | f.put (resist_save[i], op->resist[i]); |
1540 | |
1539 | |
1541 | CMP_OUT (path_attuned); |
1540 | CMP_OUT (path_attuned); |
1542 | CMP_OUT (path_repelled); |
1541 | CMP_OUT (path_repelled); |
1543 | CMP_OUT (path_denied); |
1542 | CMP_OUT (path_denied); |
1544 | CMP_OUT (material); |
1543 | CMP_OUT2 (material, materials);//TODO: nuke |
1545 | CMP_OUT (materialname); |
1544 | CMP_OUT (materialname); |
1546 | CMP_OUT (value); |
1545 | CMP_OUT (value); |
1547 | CMP_OUT (carrying); |
1546 | CMP_OUT (carrying); |
1548 | CMP_OUT (weight); |
1547 | CMP_OUT (weight); |
1549 | CMP_OUT (invisible); |
1548 | CMP_OUT (invisible); |