return labels_send(level->labels, gc, scope, rest);
} else if (strcmp(target, "box") == 0) {
return boxes_send(level->boxes, gc, scope, rest);
+ } else if (strcmp(target, "body") == 0) {
+ long int id = 0, x = 0, y = 0;
+ res = match_list(gc, "ddd", rest, &id, &x, &y);
+ if (res.is_error) {
+ return res;
+ }
+
+ rigid_bodies_apply_force(level->rigid_bodies, (size_t) id, vec((float) x, (float) y));
+ return eval_success(NIL(gc));
}
return unknown_target(gc, "level", target);