… | |
… | |
963 | case KW_body_waist: slot[body_waist] .info = f.get_sint32 (); break; |
963 | case KW_body_waist: slot[body_waist] .info = f.get_sint32 (); break; |
964 | case KW_can_apply: |
964 | case KW_can_apply: |
965 | break; |
965 | break; |
966 | |
966 | |
967 | case KW_connected: |
967 | case KW_connected: |
968 | add_button_link (this, map, f.get_sint32 ()); |
968 | { |
|
|
969 | shstr connected; |
|
|
970 | |
|
|
971 | f.get (connected); |
|
|
972 | add_link (map, connected); |
|
|
973 | } |
969 | break; |
974 | break; |
970 | |
975 | |
971 | case KW_randomitems: |
976 | case KW_randomitems: |
972 | if (f.get_str ()) |
977 | if (f.get_str ()) |
973 | { |
978 | { |
… | |
… | |
1310 | if (op->face != tmp->face ) f.put (KW_face , op->face ? &faces [op->face ] : 0); |
1315 | if (op->face != tmp->face ) f.put (KW_face , op->face ? &faces [op->face ] : 0); |
1311 | if (op->sound != tmp->sound ) f.put (KW_sound , op->sound ? &faces [op->sound ] : 0); |
1316 | if (op->sound != tmp->sound ) f.put (KW_sound , op->sound ? &faces [op->sound ] : 0); |
1312 | if (op->sound_destroy != tmp->sound_destroy) f.put (KW_sound_destroy, op->sound_destroy ? &faces [op->sound_destroy] : 0); |
1317 | if (op->sound_destroy != tmp->sound_destroy) f.put (KW_sound_destroy, op->sound_destroy ? &faces [op->sound_destroy] : 0); |
1313 | |
1318 | |
1314 | if (op->animation_id != tmp->animation_id) |
1319 | if (op->animation_id != tmp->animation_id) |
1315 | if (op->animation_id) |
1320 | if (op->has_anim ()) |
1316 | f.put (KW_animation, animations[GET_ANIM_ID (op)].name); |
1321 | f.put (KW_animation, op->anim ().name); |
1317 | else |
1322 | else |
1318 | { |
1323 | { |
1319 | f.put (KW_animation, (const char *)0); |
1324 | f.put (KW_animation, (const char *)0); |
1320 | op->flag [FLAG_ANIMATE] = false; // TODO: why force to false here? |
1325 | op->flag [FLAG_ANIMATE] = false; // TODO: why force to false here? |
1321 | } |
1326 | } |
… | |
… | |
1378 | CMP_OUT (last_grace); |
1383 | CMP_OUT (last_grace); |
1379 | CMP_OUT (last_eat); |
1384 | CMP_OUT (last_eat); |
1380 | CMP_OUT (glow_radius); |
1385 | CMP_OUT (glow_radius); |
1381 | |
1386 | |
1382 | if (op->flag [FLAG_IS_LINKED]) |
1387 | if (op->flag [FLAG_IS_LINKED]) |
1383 | if (int i = get_button_value (op)) |
1388 | if (auto (ol, op->find_link ())) |
1384 | f.put (KW_connected, i); |
1389 | f.put (KW_connected, ol->id); |
1385 | |
1390 | |
1386 | CMP_OUT (randomitems); |
1391 | CMP_OUT (randomitems); |
1387 | CMP_OUT2 (container, weight_limit); |
1392 | CMP_OUT2 (container, weight_limit); |
1388 | |
1393 | |
1389 | CMP_OUT (run_away); |
1394 | CMP_OUT (run_away); |