@@ -115,7 +115,7 @@ ECSACT_CORE_API_FN(void, ecsact_get_entities)
115
115
/**
116
116
* Adds a component to the specified entity.
117
117
*
118
- * @note This method should be avoided if possible. Adding a component in a
118
+ * NOTE: This method should be avoided if possible. Adding a component in a
119
119
* system or system execution options is preferred.
120
120
* SEE: `ecsact_execute_systems`
121
121
*/
@@ -127,22 +127,31 @@ ECSACT_CORE_API_FN(ecsact_add_error, ecsact_add_component)
127
127
const void * component_data
128
128
);
129
129
130
+ /**
131
+ * Checks if a given entity has component with id @p component_id
132
+ * @param ... if the component has indexed fields then those fields must be
133
+ * supplied to the variadic arguments in declaration order.
134
+ */
130
135
ECSACT_CORE_API_FN (bool , ecsact_has_component )
131
136
( //
132
137
ecsact_registry_id registry_id ,
133
138
ecsact_entity_id entity_id ,
134
- ecsact_component_id component_id
139
+ ecsact_component_id component_id ,
140
+ ...
135
141
);
136
142
137
143
/**
144
+ * @param ... if the component has indexed fields then those fields must be
145
+ * supplied to the variadic arguments in declaration order.
138
146
* @returns non-owning pointer of the component data
139
- * @note This method should be avoided if possible.
147
+ * NOTE: This method should be avoided if possible.
140
148
*/
141
149
ECSACT_CORE_API_FN (const void * , ecsact_get_component )
142
150
( //
143
151
ecsact_registry_id registry_id ,
144
152
ecsact_entity_id entity_id ,
145
- ecsact_component_id component_id
153
+ ecsact_component_id component_id ,
154
+ ...
146
155
);
147
156
148
157
/**
@@ -184,7 +193,10 @@ ECSACT_CORE_API_FN(void, ecsact_each_component)
184
193
/**
185
194
* Update a component for the specified entity.
186
195
*
187
- * @note This method should be avoided if possible. Updating a component in a
196
+ * @param ... if the component has indexed fields then those fields must be
197
+ * supplied to the variadic arguments in declaration order.
198
+ *
199
+ * NOTE: This method should be avoided if possible. Updating a component in a
188
200
* system or system execution options is preferred.
189
201
* SEE: `ecsact_execute_systems`
190
202
*/
@@ -193,21 +205,26 @@ ECSACT_CORE_API_FN(ecsact_update_error, ecsact_update_component)
193
205
ecsact_registry_id registry_id ,
194
206
ecsact_entity_id entity_id ,
195
207
ecsact_component_id component_id ,
196
- const void * component_data
208
+ const void * component_data ,
209
+ ...
197
210
);
198
211
199
212
/**
200
213
* Removes a component from the specified entity.
201
214
*
202
- * @note This method should be avoided if possible. Removing a component in a
215
+ * @param ... if the component has indexed fields then those fields must be
216
+ * supplied to the variadic arguments in declaration order.
217
+ *
218
+ * NOTE: This method should be avoided if possible. Removing a component in a
203
219
* system or system execution options is preferred.
204
220
* SEE: `ecsact_execute_systems`
205
221
*/
206
222
ECSACT_CORE_API_FN (void , ecsact_remove_component )
207
223
( //
208
224
ecsact_registry_id registry_id ,
209
225
ecsact_entity_id entity_id ,
210
- ecsact_component_id component_id
226
+ ecsact_component_id component_id ,
227
+ ...
211
228
);
212
229
213
230
/**
0 commit comments