51 INLINE
void set_respect_prev_transform(
bool flag);
52 INLINE
bool get_respect_prev_transform()
const;
53 MAKE_PROPERTY(respect_preV_transform, get_respect_prev_transform,
54 set_respect_prev_transform);
55 MAKE_PROPERTY(respect_prev_transform, get_respect_prev_transform,
56 set_respect_prev_transform);
59 bool remove_collider(
const NodePath &collider);
60 bool has_collider(
const NodePath &collider)
const;
61 int get_num_colliders()
const;
63 MAKE_SEQ(get_colliders, get_num_colliders, get_collider);
65 void clear_colliders();
66 MAKE_SEQ_PROPERTY(colliders, get_num_colliders, get_collider);
68 BLOCKING
void traverse(
const NodePath &root);
70#if defined(DO_COLLISION_RECORDING) || !defined(CPPPARSER)
71 void set_recorder(CollisionRecorder *recorder);
72 INLINE
bool has_recorder()
const;
73 INLINE CollisionRecorder *get_recorder()
const;
74 INLINE
void clear_recorder();
75 MAKE_PROPERTY2(recorder, has_recorder, get_recorder,
76 set_recorder, clear_recorder);
78 CollisionVisualizer *show_collisions(
const NodePath &root);
79 void hide_collisions();
82 void output(std::ostream &out)
const;
83 void write(std::ostream &out,
int indent_level)
const;
85 EXTENSION(PyObject *__getstate__()
const);
86 EXTENSION(
void __setstate__(PyObject *state));
121 class OrderedColliderDef {
128 Colliders _colliders;
130 OrderedColliders _ordered_colliders;
135 Handlers::iterator remove_handler(Handlers::iterator hi);
137 bool _respect_prev_transform;
138#ifdef DO_COLLISION_RECORDING
139 CollisionRecorder *_recorder;
142 CollisionRecorder *_recorder_disabled =
nullptr;
143 NodePath _collision_visualizer_np_disabled;
155 PassCollectors _pass_collectors;
159 SolidCollideCollectors _solid_collide_collectors;
165 static void init_type() {
172 friend class SortByColliderSort;
Defines a single collision event.
void register_type(TypeHandle &type_handle, const std::string &name)
This inline function is just a convenient way to call TypeRegistry::register_type(),...