Forge test
This commit is contained in:
@@ -81,14 +81,14 @@ function sim_stop() {
|
||||
}
|
||||
}
|
||||
|
||||
function sim_add(o: object_t, shape: physics_shape_t, mass: f32) {
|
||||
function sim_add_body(o: object_t, shape: physics_shape_t, mass: f32) {
|
||||
let body: physics_body_t = physics_body_create();
|
||||
body.shape = shape;
|
||||
body.mass = mass;
|
||||
physics_body_init(body, o);
|
||||
}
|
||||
|
||||
function sim_remove(uid: i32) {
|
||||
function sim_remove_body(uid: i32) {
|
||||
physics_body_remove(uid);
|
||||
}
|
||||
|
||||
@@ -113,3 +113,10 @@ function sim_duplicate() {
|
||||
physics_body_init(pbdup, dup.base);
|
||||
}
|
||||
}
|
||||
|
||||
function sim_delete() {
|
||||
let so: mesh_object_t = context_raw.selected_object.ext;
|
||||
array_remove(project_paint_objects, so);
|
||||
mesh_object_remove(so);
|
||||
sim_remove_body(so.base.uid);
|
||||
}
|
||||
|
||||
@@ -157,9 +157,9 @@ function tab_object_draw(htab: ui_handle_t) {
|
||||
ui_check(hdynamic, "Dynamic");
|
||||
|
||||
if (hshape.changed || hdynamic.changed) {
|
||||
sim_remove(context_raw.selected_object.uid);
|
||||
sim_remove_body(context_raw.selected_object.uid);
|
||||
if (hshape.position > 0) {
|
||||
sim_add(context_raw.selected_object, hshape.position - 1, hdynamic.selected ? 1.0 : 0.0);
|
||||
sim_add_body(context_raw.selected_object, hshape.position - 1, hdynamic.selected ? 1.0 : 0.0);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -88,6 +88,9 @@ function tab_scene_draw_list(ui: ui_t, list_handle: ui_handle_t, current_object:
|
||||
if (ui_menu_button(ui, tr("Duplicate"))) {
|
||||
sim_duplicate();
|
||||
}
|
||||
if (ui_menu_button(ui, tr("Delete"))) {
|
||||
sim_delete();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user