Forge test

This commit is contained in:
luboslenco
2024-12-10 22:26:17 +01:00
parent e55edbbb67
commit b969935e68
7 changed files with 38 additions and 9 deletions
+9 -2
View File
@@ -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);
}
+2 -2
View File
@@ -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);
}
}
+3
View File
@@ -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();
}
});
}