|
@@ -127,6 +127,7 @@ uint32_t CollisionObject2D::get_collision_mask() const {
|
|
}
|
|
}
|
|
|
|
|
|
void CollisionObject2D::set_collision_layer_bit(int p_bit, bool p_value) {
|
|
void CollisionObject2D::set_collision_layer_bit(int p_bit, bool p_value) {
|
|
|
|
+ ERR_FAIL_INDEX_MSG(p_bit, 32, "Collision layer bit must be between 0 and 31 inclusive.");
|
|
uint32_t collision_layer = get_collision_layer();
|
|
uint32_t collision_layer = get_collision_layer();
|
|
if (p_value) {
|
|
if (p_value) {
|
|
collision_layer |= 1 << p_bit;
|
|
collision_layer |= 1 << p_bit;
|
|
@@ -137,10 +138,12 @@ void CollisionObject2D::set_collision_layer_bit(int p_bit, bool p_value) {
|
|
}
|
|
}
|
|
|
|
|
|
bool CollisionObject2D::get_collision_layer_bit(int p_bit) const {
|
|
bool CollisionObject2D::get_collision_layer_bit(int p_bit) const {
|
|
|
|
+ ERR_FAIL_INDEX_V_MSG(p_bit, 32, false, "Collision layer bit must be between 0 and 31 inclusive.");
|
|
return get_collision_layer() & (1 << p_bit);
|
|
return get_collision_layer() & (1 << p_bit);
|
|
}
|
|
}
|
|
|
|
|
|
void CollisionObject2D::set_collision_mask_bit(int p_bit, bool p_value) {
|
|
void CollisionObject2D::set_collision_mask_bit(int p_bit, bool p_value) {
|
|
|
|
+ ERR_FAIL_INDEX_MSG(p_bit, 32, "Collision mask bit must be between 0 and 31 inclusive.");
|
|
uint32_t mask = get_collision_mask();
|
|
uint32_t mask = get_collision_mask();
|
|
if (p_value) {
|
|
if (p_value) {
|
|
mask |= 1 << p_bit;
|
|
mask |= 1 << p_bit;
|
|
@@ -151,6 +154,7 @@ void CollisionObject2D::set_collision_mask_bit(int p_bit, bool p_value) {
|
|
}
|
|
}
|
|
|
|
|
|
bool CollisionObject2D::get_collision_mask_bit(int p_bit) const {
|
|
bool CollisionObject2D::get_collision_mask_bit(int p_bit) const {
|
|
|
|
+ ERR_FAIL_INDEX_V_MSG(p_bit, 32, false, "Collision mask bit must be between 0 and 31 inclusive.");
|
|
return get_collision_mask() & (1 << p_bit);
|
|
return get_collision_mask() & (1 << p_bit);
|
|
}
|
|
}
|
|
|
|
|