Added get_animation_queue to DrivenEngine

This commit is contained in:
2023-07-24 17:21:44 -04:00
parent 5db04b3abc
commit ab005fc968
7 changed files with 89 additions and 0 deletions

View File

@@ -31,6 +31,22 @@ struct EngineWrapper {
PlayLogfile *wlog;
ReplayLogfile *rlog;
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
//
// STRUCTURES
//
// These structures are used to return complicated values.
//
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
struct AnimEntry {
uint64_t hash;
uint32_t size;
const char *data;
};
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
//
@@ -116,12 +132,26 @@ struct EngineWrapper {
// Do a scan to find tangibles near the specified player.
//
// Returns a count and a pointer to an array of tangible IDs. The returned
// pointer is valid until the next call into the engine.
//
void (*get_tangibles_near)(EngineWrapper *w, uint64_t tanid, double rx, double ry, double rz, uint32_t *count, int64_t **ids);
// Get the hash value of the final animation step for each tangible.
//
// You must supply an array of tangible IDs. The animation queue hash for
// each such tangible will be looked up. You must supply a buffer to
// hold the returned hashes.
//
void (*get_animation_queue_hashes)(EngineWrapper *w, uint32_t count, const int64_t *ids, uint64_t *hashes);
// Get the entire contents of an animation queue.
//
// Returns a count and a pointer to an array of AnimEntry. The returned
// pointer is valid until the next call into the engine.
//
void (*get_animation_queue)(EngineWrapper *w, int64_t tanid, uint32_t *count, AnimEntry **buffer);
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
//