diff options
author | XANTRONIX Development | 2022-03-15 16:39:46 -0400 |
---|---|---|
committer | XANTRONIX Development | 2022-03-15 16:39:46 -0400 |
commit | 546e07855b117b22ae3a5053a5dcfef1183b0718 (patch) | |
tree | 60d09a2f2a2f53366c78ffba4d7c632954cd819c | |
parent | 420a446e1d3928cac5f3804dc70832ea91b58187 (diff) | |
download | xas-546e07855b117b22ae3a5053a5dcfef1183b0718.tar.gz xas-546e07855b117b22ae3a5053a5dcfef1183b0718.tar.bz2 xas-546e07855b117b22ae3a5053a5dcfef1183b0718.zip |
You know who deserves to have moods? Drones.
-rw-r--r-- | include/xas/drone.h | 17 | ||||
-rw-r--r-- | src/drone.c | 8 |
2 files changed, 24 insertions, 1 deletions
diff --git a/include/xas/drone.h b/include/xas/drone.h index 96db18b..d50e305 100644 --- a/include/xas/drone.h +++ b/include/xas/drone.h @@ -14,11 +14,22 @@ #define XAS_DRONE_CHAMBER_BASS_FREQUENCY 20 /* Hz */ #define XAS_DRONE_CHAMBER_BASS_TYPE XAS_SYNTH_SQUARE +enum xas_drone_mood { + XAS_DRONE_MOOD_NEUTRAL, + XAS_DRONE_MOOD_HAPPY, + XAS_DRONE_MOOD_FLIRTY, + XAS_DRONE_MOOD_SAD, + XAS_DRONE_MOOD_ANGRY, + XAS_DRONE_MOOD_DISTRESSED +}; + typedef struct _xas_drone { xas_bank *bank; + + enum xas_drone_mood mood; + xas_spatial_scene *scene; xas_spatial_object *obj; - } xas_drone; typedef struct _xas_drone_vox { @@ -55,6 +66,10 @@ xas_drone *xas_drone_new(xas_spatial_scene *scene, void xas_drone_destroy(xas_drone *drone); +enum xas_drone_mood xas_drone_mood_get(xas_drone *drone); + +void xas_drone_mood_set(xas_drone *drone, enum xas_drone_mood mood); + xas_spatial_object *xas_drone_get_spatial_object(xas_drone *drone); ssize_t xas_drone_sample_record(xas_drone *drone, diff --git a/src/drone.c b/src/drone.c index 188f546..4dbb7ed 100644 --- a/src/drone.c +++ b/src/drone.c @@ -49,6 +49,14 @@ void xas_drone_destroy(xas_drone *drone) { free(drone); } +enum xas_drone_mood xas_drone_mood_get(xas_drone *drone) { + return drone->mood; +} + +void xas_drone_mood_set(xas_drone *drone, enum xas_drone_mood mood) { + drone->mood = mood; +} + xas_spatial_object *xas_drone_get_spatial_object(xas_drone *drone) { return drone->obj; } |