Skip to content

Commit c799be8

Browse files
author
L'In20Cible
committed
- Exported Collision_Group_t as CollisionGroup (forwarded to entities.constants).
1 parent 5f36587 commit c799be8

File tree

4 files changed

+63
-0
lines changed

4 files changed

+63
-0
lines changed

addons/source-python/packages/source-python/entities/constants.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
# Source.Python Imports
2828
# Entities
2929
from _entities._constants import BASEDAMAGE_NOT_SPECIFIED
30+
from _entities._constants import CollisionGroup
3031
from _entities._constants import DMG_BULLET
3132
from _entities._constants import DMG_SLASH
3233
from _entities._constants import DMG_BURN
@@ -104,6 +105,7 @@
104105
# >> ALL DECLARATION
105106
# =============================================================================
106107
__all__ = ('BASEDAMAGE_NOT_SPECIFIED',
108+
'CollisionGroup',
107109
'DamageTypes',
108110
'DATA_DESC_MAP_OFFSET',
109111
'EntityEffects',

src/core/modules/entities/csgo/entities_constants_wrap_python.h

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,4 +79,15 @@ void export_engine_specific_render_effects(T RenderEffects)
7979
}
8080

8181

82+
//-----------------------------------------------------------------------------
83+
// Expose Collision_Group_t.
84+
//-----------------------------------------------------------------------------
85+
template<class T>
86+
void export_engine_specific_collision_group(T CollisionGroup)
87+
{
88+
CollisionGroup.value("PZ_CLIP", COLLISION_GROUP_PZ_CLIP);
89+
CollisionGroup.value("DEBRIS_BLOCK_PROJECTILE", COLLISION_GROUP_DEBRIS_BLOCK_PROJECTILE);
90+
}
91+
92+
8293
#endif // _ENTITIES_CONSTANTS_CSGO_WRAP_PYTHON_H

src/core/modules/entities/entities_constants_wrap_python.cpp

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ void export_solid_flags(scope);
5454
void export_entity_effects(scope);
5555
void export_render_mode(scope);
5656
void export_render_effects(scope);
57+
void export_collision_group(scope);
5758

5859

5960
//-----------------------------------------------------------------------------
@@ -70,6 +71,7 @@ DECLARE_SP_SUBMODULE(_entities, _constants)
7071
export_entity_effects(_constants);
7172
export_render_mode(_constants);
7273
export_render_effects(_constants);
74+
export_collision_group(_constants);
7375
}
7476

7577

@@ -325,3 +327,41 @@ void export_render_effects(scope _constants)
325327
// Engine specific stuff...
326328
export_engine_specific_render_effects(RenderEffects);
327329
}
330+
331+
332+
//-----------------------------------------------------------------------------
333+
// Expose Collision_Group_t.
334+
//-----------------------------------------------------------------------------
335+
void export_collision_group(scope _constants)
336+
{
337+
enum_<Collision_Group_t> CollisionGroup("CollisionGroup");
338+
339+
// Values...
340+
CollisionGroup.value("NONE", COLLISION_GROUP_NONE);
341+
CollisionGroup.value("DEBRIS", COLLISION_GROUP_DEBRIS);
342+
CollisionGroup.value("DEBRIS_TRIGGER", COLLISION_GROUP_DEBRIS_TRIGGER);
343+
CollisionGroup.value("INTERACTIVE_DEBRIS", COLLISION_GROUP_INTERACTIVE_DEBRIS);
344+
CollisionGroup.value("INTERACTIVE", COLLISION_GROUP_INTERACTIVE);
345+
CollisionGroup.value("PLAYER", COLLISION_GROUP_PLAYER);
346+
CollisionGroup.value("BREAKABLE_GLASS", COLLISION_GROUP_BREAKABLE_GLASS);
347+
CollisionGroup.value("VEHICLE", COLLISION_GROUP_VEHICLE);
348+
CollisionGroup.value("PLAYER_MOVEMENT", COLLISION_GROUP_PLAYER_MOVEMENT);
349+
CollisionGroup.value("NPC", COLLISION_GROUP_NPC);
350+
CollisionGroup.value("IN_VEHICLE", COLLISION_GROUP_IN_VEHICLE);
351+
CollisionGroup.value("WEAPON", COLLISION_GROUP_WEAPON);
352+
CollisionGroup.value("VEHICLE_CLIP", COLLISION_GROUP_VEHICLE_CLIP);
353+
CollisionGroup.value("PROJECTILE", COLLISION_GROUP_PROJECTILE);
354+
CollisionGroup.value("DOOR_BLOCKER", COLLISION_GROUP_DOOR_BLOCKER);
355+
CollisionGroup.value("PASSABLE_DOOR", COLLISION_GROUP_PASSABLE_DOOR);
356+
CollisionGroup.value("DISSOLVING", COLLISION_GROUP_DISSOLVING);
357+
CollisionGroup.value("PUSHAWAY", COLLISION_GROUP_PUSHAWAY);
358+
CollisionGroup.value("NPC_ACTOR", COLLISION_GROUP_NPC_ACTOR);
359+
CollisionGroup.value("NPC_SCRIPTED", COLLISION_GROUP_NPC_SCRIPTED);
360+
361+
// CS:GO specific values...
362+
NOT_IMPLEMENTED_VALUE(Collision_Group_t, "PZ_CLIP");
363+
NOT_IMPLEMENTED_VALUE(Collision_Group_t, "DEBRIS_BLOCK_PROJECTILE");
364+
365+
// Engine specific stuff...
366+
export_engine_specific_collision_group(CollisionGroup);
367+
}

src/core/modules/entities/orangebox/entities_constants_wrap_python.h

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,4 +84,14 @@ void export_engine_specific_render_effects(T RenderEffects)
8484
}
8585

8686

87+
//-----------------------------------------------------------------------------
88+
// Expose Collision_Group_t.
89+
//-----------------------------------------------------------------------------
90+
template<class T>
91+
void export_engine_specific_collision_group(T CollisionGroup)
92+
{
93+
// Nothing specific to OrangeBox...
94+
}
95+
96+
8797
#endif // _ENTITIES_CONSTANTS_ORANGEBOX_WRAP_PYTHON_H

0 commit comments

Comments
 (0)