void model_piece_add_animate(void) { int idx; if (model.npose==0) { os_dialog_alert("Add Animation","You need to have at least one pose before creating an animation."); return; } model_play(model_play_mode_stop); idx=model_animate_add(&model); if (idx==-1) { os_dialog_alert("Add Animation","You've reached the animation limit for this model."); return; } state.model.cur_item=item_model_animate; state.model.cur_animate_idx=idx; state.model.cur_animate_pose_move_idx=-1; state.model.cur_animate_pose_move_particle_idx=-1; state.model.cur_animate_pose_move_ring_idx=-1; model_palette_scroll_into_view(item_model_animate,idx); dialog_property_string_run(list_string_value_string,(void*)model.animates[idx].name,name_str_len,0,0); }
int model_animate_duplicate(model_type *model,int animate_idx) { int dup_animate_idx; dup_animate_idx=model_animate_add(model); if (dup_animate_idx==-1) return(-1); memmove(&model->animates[dup_animate_idx],&model->animates[animate_idx],sizeof(model_animate_type)); strcat(model->animates[dup_animate_idx].name," copy"); return(dup_animate_idx); }